outro_rails 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/MIT-LICENSE +20 -0
- data/README.md +295 -0
- data/Rakefile +6 -0
- data/app/assets/images/outro_rails/add.svg +1 -0
- data/app/assets/images/outro_rails/capo.svg +18 -0
- data/app/assets/images/outro_rails/check.svg +1 -0
- data/app/assets/images/outro_rails/circle.svg +15 -0
- data/app/assets/images/outro_rails/clear.svg +1 -0
- data/app/assets/images/outro_rails/edit.svg +1 -0
- data/app/assets/images/outro_rails/filter.svg +1 -0
- data/app/assets/images/outro_rails/guitar.svg +1 -0
- data/app/assets/images/outro_rails/instruments.svg +2 -0
- data/app/assets/images/outro_rails/library.svg +7 -0
- data/app/assets/images/outro_rails/music.svg +1 -0
- data/app/assets/images/outro_rails/piano.svg +4 -0
- data/app/assets/images/outro_rails/save.svg +1 -0
- data/app/assets/images/outro_rails/scales.svg +2 -0
- data/app/assets/images/outro_rails/search.svg +1 -0
- data/app/assets/images/outro_rails/shapes.svg +1 -0
- data/app/assets/images/outro_rails/transposer.svg +2 -0
- data/app/assets/images/outro_rails/undo.svg +1 -0
- data/app/assets/javascripts/outro_rails/outro_rails.js +451 -0
- data/app/assets/stylesheets/outro_rails/outro_rails.css +1260 -0
- data/app/controllers/concerns/outro_rails/guitar_tuning_selectable.rb +17 -0
- data/app/controllers/concerns/outro_rails/instrument_selectable.rb +15 -0
- data/app/controllers/concerns/outro_rails/invalid_params_redirectable.rb +29 -0
- data/app/controllers/concerns/outro_rails/root_selectable.rb +19 -0
- data/app/controllers/outro_rails/application_controller.rb +6 -0
- data/app/controllers/outro_rails/caged/pickers_controller.rb +16 -0
- data/app/controllers/outro_rails/caged_controller.rb +57 -0
- data/app/controllers/outro_rails/capo_controller.rb +14 -0
- data/app/controllers/outro_rails/chord_charts/voicings_controller.rb +109 -0
- data/app/controllers/outro_rails/chord_voicings_controller.rb +12 -0
- data/app/controllers/outro_rails/chords/pickers_controller.rb +32 -0
- data/app/controllers/outro_rails/chords_controller.rb +61 -0
- data/app/controllers/outro_rails/circle_of_fifths_controller.rb +38 -0
- data/app/controllers/outro_rails/home_controller.rb +8 -0
- data/app/controllers/outro_rails/instruments/pickers_controller.rb +21 -0
- data/app/controllers/outro_rails/instruments_controller.rb +24 -0
- data/app/controllers/outro_rails/scales/pickers_controller.rb +27 -0
- data/app/controllers/outro_rails/scales_controller.rb +58 -0
- data/app/controllers/outro_rails/transposer_controller.rb +33 -0
- data/app/helpers/outro_rails/application_helper.rb +7 -0
- data/app/helpers/outro_rails/capo_helper.rb +9 -0
- data/app/helpers/outro_rails/chord_charts_helper.rb +51 -0
- data/app/helpers/outro_rails/chords_helper.rb +30 -0
- data/app/helpers/outro_rails/circle_of_fifths_helper.rb +44 -0
- data/app/helpers/outro_rails/instruments_helper.rb +41 -0
- data/app/helpers/outro_rails/scales_helper.rb +34 -0
- data/app/helpers/outro_rails/transposer_helper.rb +27 -0
- data/app/jobs/outro_rails/application_job.rb +4 -0
- data/app/mailers/outro_rails/application_mailer.rb +6 -0
- data/app/models/outro_rails/application_record.rb +7 -0
- data/app/models/outro_rails/chord.rb +85 -0
- data/app/models/outro_rails/chord_chart/voicing.rb +54 -0
- data/app/models/outro_rails/chord_chart.rb +106 -0
- data/app/models/outro_rails/chord_voicing.rb +45 -0
- data/app/views/layouts/outro_rails/application.html.erb +29 -0
- data/app/views/outro_rails/caged/show.html.erb +78 -0
- data/app/views/outro_rails/capo/show.html.erb +62 -0
- data/app/views/outro_rails/chord_charts/_chart.html.erb +286 -0
- data/app/views/outro_rails/chord_charts/_fields.html.erb +50 -0
- data/app/views/outro_rails/chord_voicings/_chord_voicing.html.erb +41 -0
- data/app/views/outro_rails/chord_voicings/_figure.html.erb +37 -0
- data/app/views/outro_rails/chord_voicings/_guitar.html.erb +13 -0
- data/app/views/outro_rails/chord_voicings/_piano.html.erb +17 -0
- data/app/views/outro_rails/chord_voicings/show.html.erb +17 -0
- data/app/views/outro_rails/chords/_chord.html.erb +50 -0
- data/app/views/outro_rails/chords/_chords.html.erb +29 -0
- data/app/views/outro_rails/chords/_filter.html.erb +87 -0
- data/app/views/outro_rails/chords/index.html.erb +31 -0
- data/app/views/outro_rails/chords/show.html.erb +24 -0
- data/app/views/outro_rails/circle_of_fifths/_wheel.html.erb +64 -0
- data/app/views/outro_rails/circle_of_fifths/show.html.erb +95 -0
- data/app/views/outro_rails/home/index.html.erb +75 -0
- data/app/views/outro_rails/instruments/_guitar.html.erb +37 -0
- data/app/views/outro_rails/instruments/_guitar_figure.html.erb +145 -0
- data/app/views/outro_rails/instruments/_guitar_midi.html.erb +137 -0
- data/app/views/outro_rails/instruments/_piano.html.erb +9 -0
- data/app/views/outro_rails/instruments/_piano_figure.html.erb +82 -0
- data/app/views/outro_rails/instruments/_piano_midi.html.erb +74 -0
- data/app/views/outro_rails/instruments/index.html.erb +50 -0
- data/app/views/outro_rails/instruments/show.html.erb +31 -0
- data/app/views/outro_rails/scales/_chords_table.html.erb +39 -0
- data/app/views/outro_rails/scales/_picker.html.erb +37 -0
- data/app/views/outro_rails/scales/_related_scales.html.erb +65 -0
- data/app/views/outro_rails/scales/index.html.erb +52 -0
- data/app/views/outro_rails/scales/show.html.erb +102 -0
- data/app/views/outro_rails/shared/_breadcrumb.html.erb +31 -0
- data/app/views/outro_rails/shared/_header.html.erb +12 -0
- data/app/views/outro_rails/transposer/show.html.erb +85 -0
- data/config/routes.rb +68 -0
- data/db/migrate/20260702141708_create_outro_rails_chords.rb +21 -0
- data/db/migrate/20260702141728_create_outro_rails_chord_voicings.rb +23 -0
- data/db/migrate/20260815090000_create_outro_rails_chord_charts.rb +23 -0
- data/db/migrate/20260815090100_create_outro_rails_chord_chart_voicing_selections.rb +30 -0
- data/db/seeds/chord_voicings/a/a-guitar.yml +71 -0
- data/db/seeds/chord_voicings/a/a-piano.yml +32 -0
- data/db/seeds/chord_voicings/a/a11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a11-piano.yml +71 -0
- data/db/seeds/chord_voicings/a/a13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a13-piano.yml +71 -0
- data/db/seeds/chord_voicings/a/a13flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a13flat9-piano.yml +71 -0
- data/db/seeds/chord_voicings/a/a13sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a13sharp11-piano.yml +83 -0
- data/db/seeds/chord_voicings/a/a13sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a13sharp9-piano.yml +71 -0
- data/db/seeds/chord_voicings/a/a13sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a13sus4-piano.yml +71 -0
- data/db/seeds/chord_voicings/a/a5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/a/a5-piano.yml +21 -0
- data/db/seeds/chord_voicings/a/a6-guitar.yml +83 -0
- data/db/seeds/chord_voicings/a/a6-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/a7-guitar.yml +83 -0
- data/db/seeds/chord_voicings/a/a7-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/a7flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a7flat13-piano.yml +54 -0
- data/db/seeds/chord_voicings/a/a7flat5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/a7flat5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a7flat5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a/a7flat5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a7flat5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a/a7flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a7flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a/a7flat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a7flat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/a/a7flat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a7flat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/a/a7sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a7sharp11-piano.yml +54 -0
- data/db/seeds/chord_voicings/a/a7sharp5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/a7sharp5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a7sharp5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a/a7sharp5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a7sharp5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a/a7sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a7sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a/a7sharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a7sharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/a/a7sus2-guitar.yml +47 -0
- data/db/seeds/chord_voicings/a/a7sus2-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/a7sus4-guitar.yml +59 -0
- data/db/seeds/chord_voicings/a/a7sus4-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/a9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a/a9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/a/a9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/a/a9sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/a9sus4-piano.yml +54 -0
- data/db/seeds/chord_voicings/a/aadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/aadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/aadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/aadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/aadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/aadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/aadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/aadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/aadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/aadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/aaug-guitar.yml +35 -0
- data/db/seeds/chord_voicings/a/aaug-piano.yml +32 -0
- data/db/seeds/chord_voicings/a/adim-guitar.yml +23 -0
- data/db/seeds/chord_voicings/a/adim-piano.yml +32 -0
- data/db/seeds/chord_voicings/a/adim7-guitar.yml +23 -0
- data/db/seeds/chord_voicings/a/adim7-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/am-guitar.yml +47 -0
- data/db/seeds/chord_voicings/a/am-maj7-guitar.yml +47 -0
- data/db/seeds/chord_voicings/a/am-maj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/am-piano.yml +32 -0
- data/db/seeds/chord_voicings/a/am11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/am11-piano.yml +71 -0
- data/db/seeds/chord_voicings/a/am13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/am13-piano.yml +71 -0
- data/db/seeds/chord_voicings/a/am6-guitar.yml +59 -0
- data/db/seeds/chord_voicings/a/am6-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/am7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/a/am7-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/am7add11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/am7add11-piano.yml +54 -0
- data/db/seeds/chord_voicings/a/am7flat5-guitar.yml +35 -0
- data/db/seeds/chord_voicings/a/am7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/am9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/am9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a/amadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/amadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/amadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/amadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/amadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/amadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/amadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/amadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/amadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a/amadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/amaj7-guitar.yml +71 -0
- data/db/seeds/chord_voicings/a/amaj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/amaj7sharp5-guitar.yml +35 -0
- data/db/seeds/chord_voicings/a/amaj7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/a/asus2-guitar.yml +35 -0
- data/db/seeds/chord_voicings/a/asus2-piano.yml +32 -0
- data/db/seeds/chord_voicings/a/asus4-guitar.yml +47 -0
- data/db/seeds/chord_voicings/a/asus4-piano.yml +32 -0
- data/db/seeds/chord_voicings/a-flat/aflat-guitar.yml +59 -0
- data/db/seeds/chord_voicings/a-flat/aflat-piano.yml +32 -0
- data/db/seeds/chord_voicings/a-flat/aflat11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat11-piano.yml +71 -0
- data/db/seeds/chord_voicings/a-flat/aflat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat13-piano.yml +71 -0
- data/db/seeds/chord_voicings/a-flat/aflat13flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat13flat9-piano.yml +71 -0
- data/db/seeds/chord_voicings/a-flat/aflat13sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat13sharp11-piano.yml +83 -0
- data/db/seeds/chord_voicings/a-flat/aflat13sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat13sharp9-piano.yml +71 -0
- data/db/seeds/chord_voicings/a-flat/aflat13sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat13sus4-piano.yml +71 -0
- data/db/seeds/chord_voicings/a-flat/aflat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/a-flat/aflat5-piano.yml +21 -0
- data/db/seeds/chord_voicings/a-flat/aflat6-guitar.yml +59 -0
- data/db/seeds/chord_voicings/a-flat/aflat6-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflat7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/a-flat/aflat7-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflat7flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat7flat13-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-flat/aflat7flat5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflat7flat5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat7flat5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-flat/aflat7flat5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat7flat5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-flat/aflat7flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat7flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-flat/aflat7flat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat7flat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/a-flat/aflat7flat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat7flat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/a-flat/aflat7sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat7sharp11-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-flat/aflat7sharp5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflat7sharp5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat7sharp5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-flat/aflat7sharp5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat7sharp5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-flat/aflat7sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat7sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-flat/aflat7sharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat7sharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/a-flat/aflat7sus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/a-flat/aflat7sus2-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflat7sus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/a-flat/aflat7sus4-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-flat/aflat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/a-flat/aflat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/a-flat/aflat9sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflat9sus4-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-flat/aflatadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflatadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflatadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflatadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflatadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflatadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflatadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflatadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflatadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflatadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflataug-guitar.yml +23 -0
- data/db/seeds/chord_voicings/a-flat/aflataug-piano.yml +32 -0
- data/db/seeds/chord_voicings/a-flat/aflatdim-guitar.yml +23 -0
- data/db/seeds/chord_voicings/a-flat/aflatdim-piano.yml +32 -0
- data/db/seeds/chord_voicings/a-flat/aflatdim7-guitar.yml +23 -0
- data/db/seeds/chord_voicings/a-flat/aflatdim7-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflatm-guitar.yml +35 -0
- data/db/seeds/chord_voicings/a-flat/aflatm-maj7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/a-flat/aflatm-maj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflatm-piano.yml +32 -0
- data/db/seeds/chord_voicings/a-flat/aflatm11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflatm11-piano.yml +71 -0
- data/db/seeds/chord_voicings/a-flat/aflatm13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflatm13-piano.yml +71 -0
- data/db/seeds/chord_voicings/a-flat/aflatm6-guitar.yml +35 -0
- data/db/seeds/chord_voicings/a-flat/aflatm6-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflatm7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/a-flat/aflatm7-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflatm7add11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflatm7add11-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-flat/aflatm7flat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/a-flat/aflatm7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflatm9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflatm9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-flat/aflatmadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflatmadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflatmadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflatmadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflatmadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflatmadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflatmadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflatmadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflatmadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-flat/aflatmadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflatmaj7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/a-flat/aflatmaj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflatmaj7sharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/a-flat/aflatmaj7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-flat/aflatsus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/a-flat/aflatsus2-piano.yml +32 -0
- data/db/seeds/chord_voicings/a-flat/aflatsus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/a-flat/aflatsus4-piano.yml +32 -0
- data/db/seeds/chord_voicings/a-sharp/asharp-guitar.yml +59 -0
- data/db/seeds/chord_voicings/a-sharp/asharp-piano.yml +32 -0
- data/db/seeds/chord_voicings/a-sharp/asharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp11-piano.yml +71 -0
- data/db/seeds/chord_voicings/a-sharp/asharp13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp13-piano.yml +71 -0
- data/db/seeds/chord_voicings/a-sharp/asharp13flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp13flat9-piano.yml +71 -0
- data/db/seeds/chord_voicings/a-sharp/asharp13sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp13sharp11-piano.yml +83 -0
- data/db/seeds/chord_voicings/a-sharp/asharp13sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp13sharp9-piano.yml +71 -0
- data/db/seeds/chord_voicings/a-sharp/asharp13sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp13sus4-piano.yml +71 -0
- data/db/seeds/chord_voicings/a-sharp/asharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/a-sharp/asharp5-piano.yml +21 -0
- data/db/seeds/chord_voicings/a-sharp/asharp6-guitar.yml +59 -0
- data/db/seeds/chord_voicings/a-sharp/asharp6-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7flat13-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7flat5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7flat5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7flat5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7flat5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7flat5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7flat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7flat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7flat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7flat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7sharp11-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7sharp5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7sharp5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7sharp5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7sharp5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7sharp5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7sharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7sharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7sus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7sus2-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7sus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/a-sharp/asharp7sus4-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-sharp/asharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/a-sharp/asharp9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/a-sharp/asharp9sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharp9sus4-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-sharp/asharpadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharpadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharpadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharpadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharpadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharpadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharpadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharpadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharpadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharpadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharpaug-guitar.yml +23 -0
- data/db/seeds/chord_voicings/a-sharp/asharpaug-piano.yml +32 -0
- data/db/seeds/chord_voicings/a-sharp/asharpdim-guitar.yml +23 -0
- data/db/seeds/chord_voicings/a-sharp/asharpdim-piano.yml +32 -0
- data/db/seeds/chord_voicings/a-sharp/asharpdim7-guitar.yml +47 -0
- data/db/seeds/chord_voicings/a-sharp/asharpdim7-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharpm-guitar.yml +35 -0
- data/db/seeds/chord_voicings/a-sharp/asharpm-maj7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/a-sharp/asharpm-maj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharpm-piano.yml +32 -0
- data/db/seeds/chord_voicings/a-sharp/asharpm11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharpm11-piano.yml +71 -0
- data/db/seeds/chord_voicings/a-sharp/asharpm13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharpm13-piano.yml +71 -0
- data/db/seeds/chord_voicings/a-sharp/asharpm6-guitar.yml +35 -0
- data/db/seeds/chord_voicings/a-sharp/asharpm6-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharpm7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/a-sharp/asharpm7-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharpm7add11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharpm7add11-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-sharp/asharpm7flat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/a-sharp/asharpm7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharpm9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharpm9-piano.yml +54 -0
- data/db/seeds/chord_voicings/a-sharp/asharpmadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharpmadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharpmadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharpmadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharpmadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharpmadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharpmadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharpmadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharpmadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/a-sharp/asharpmadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharpmaj7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/a-sharp/asharpmaj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharpmaj7sharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/a-sharp/asharpmaj7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/a-sharp/asharpsus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/a-sharp/asharpsus2-piano.yml +32 -0
- data/db/seeds/chord_voicings/a-sharp/asharpsus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/a-sharp/asharpsus4-piano.yml +32 -0
- data/db/seeds/chord_voicings/b/b-guitar.yml +59 -0
- data/db/seeds/chord_voicings/b/b-piano.yml +32 -0
- data/db/seeds/chord_voicings/b/b11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b11-piano.yml +71 -0
- data/db/seeds/chord_voicings/b/b13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b13-piano.yml +71 -0
- data/db/seeds/chord_voicings/b/b13flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b13flat9-piano.yml +71 -0
- data/db/seeds/chord_voicings/b/b13sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b13sharp11-piano.yml +83 -0
- data/db/seeds/chord_voicings/b/b13sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b13sharp9-piano.yml +71 -0
- data/db/seeds/chord_voicings/b/b13sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b13sus4-piano.yml +71 -0
- data/db/seeds/chord_voicings/b/b5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/b/b5-piano.yml +21 -0
- data/db/seeds/chord_voicings/b/b6-guitar.yml +59 -0
- data/db/seeds/chord_voicings/b/b6-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/b7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/b/b7-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/b7flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b7flat13-piano.yml +54 -0
- data/db/seeds/chord_voicings/b/b7flat5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/b7flat5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b7flat5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/b/b7flat5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b7flat5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/b/b7flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b7flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/b/b7flat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b7flat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/b/b7flat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b7flat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/b/b7sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b7sharp11-piano.yml +54 -0
- data/db/seeds/chord_voicings/b/b7sharp5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/b7sharp5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b7sharp5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/b/b7sharp5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b7sharp5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/b/b7sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b7sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/b/b7sharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b7sharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/b/b7sus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/b/b7sus2-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/b7sus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/b/b7sus4-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/b9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b9-piano.yml +54 -0
- data/db/seeds/chord_voicings/b/b9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/b/b9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/b/b9sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/b9sus4-piano.yml +54 -0
- data/db/seeds/chord_voicings/b/badd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/badd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/badd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/badd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/badd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/badd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/badd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/badd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/badd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/badd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/baug-guitar.yml +23 -0
- data/db/seeds/chord_voicings/b/baug-piano.yml +32 -0
- data/db/seeds/chord_voicings/b/bdim-guitar.yml +23 -0
- data/db/seeds/chord_voicings/b/bdim-piano.yml +32 -0
- data/db/seeds/chord_voicings/b/bdim7-guitar.yml +23 -0
- data/db/seeds/chord_voicings/b/bdim7-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/bm-guitar.yml +35 -0
- data/db/seeds/chord_voicings/b/bm-maj7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/b/bm-maj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/bm-piano.yml +32 -0
- data/db/seeds/chord_voicings/b/bm11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/bm11-piano.yml +71 -0
- data/db/seeds/chord_voicings/b/bm13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/bm13-piano.yml +71 -0
- data/db/seeds/chord_voicings/b/bm6-guitar.yml +35 -0
- data/db/seeds/chord_voicings/b/bm6-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/bm7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/b/bm7-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/bm7add11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/bm7add11-piano.yml +54 -0
- data/db/seeds/chord_voicings/b/bm7flat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/b/bm7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/bm9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/bm9-piano.yml +54 -0
- data/db/seeds/chord_voicings/b/bmadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/bmadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/bmadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/bmadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/bmadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/bmadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/bmadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/bmadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/bmadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b/bmadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/bmaj7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/b/bmaj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/bmaj7sharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/b/bmaj7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/b/bsus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/b/bsus2-piano.yml +32 -0
- data/db/seeds/chord_voicings/b/bsus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/b/bsus4-piano.yml +32 -0
- data/db/seeds/chord_voicings/b-flat/bflat-guitar.yml +59 -0
- data/db/seeds/chord_voicings/b-flat/bflat-piano.yml +32 -0
- data/db/seeds/chord_voicings/b-flat/bflat11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat11-piano.yml +71 -0
- data/db/seeds/chord_voicings/b-flat/bflat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat13-piano.yml +71 -0
- data/db/seeds/chord_voicings/b-flat/bflat13flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat13flat9-piano.yml +71 -0
- data/db/seeds/chord_voicings/b-flat/bflat13sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat13sharp11-piano.yml +83 -0
- data/db/seeds/chord_voicings/b-flat/bflat13sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat13sharp9-piano.yml +71 -0
- data/db/seeds/chord_voicings/b-flat/bflat13sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat13sus4-piano.yml +71 -0
- data/db/seeds/chord_voicings/b-flat/bflat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/b-flat/bflat5-piano.yml +21 -0
- data/db/seeds/chord_voicings/b-flat/bflat6-guitar.yml +59 -0
- data/db/seeds/chord_voicings/b-flat/bflat6-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflat7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/b-flat/bflat7-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflat7flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat7flat13-piano.yml +54 -0
- data/db/seeds/chord_voicings/b-flat/bflat7flat5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflat7flat5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat7flat5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/b-flat/bflat7flat5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat7flat5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/b-flat/bflat7flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat7flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/b-flat/bflat7flat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat7flat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/b-flat/bflat7flat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat7flat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/b-flat/bflat7sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat7sharp11-piano.yml +54 -0
- data/db/seeds/chord_voicings/b-flat/bflat7sharp5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflat7sharp5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat7sharp5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/b-flat/bflat7sharp5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat7sharp5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/b-flat/bflat7sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat7sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/b-flat/bflat7sharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat7sharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/b-flat/bflat7sus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/b-flat/bflat7sus2-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflat7sus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/b-flat/bflat7sus4-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/b-flat/bflat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/b-flat/bflat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/b-flat/bflat9sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflat9sus4-piano.yml +54 -0
- data/db/seeds/chord_voicings/b-flat/bflatadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflatadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflatadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflatadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflatadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflatadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflatadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflatadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflatadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflatadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflataug-guitar.yml +23 -0
- data/db/seeds/chord_voicings/b-flat/bflataug-piano.yml +32 -0
- data/db/seeds/chord_voicings/b-flat/bflatdim-guitar.yml +23 -0
- data/db/seeds/chord_voicings/b-flat/bflatdim-piano.yml +32 -0
- data/db/seeds/chord_voicings/b-flat/bflatdim7-guitar.yml +47 -0
- data/db/seeds/chord_voicings/b-flat/bflatdim7-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflatm-guitar.yml +35 -0
- data/db/seeds/chord_voicings/b-flat/bflatm-maj7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/b-flat/bflatm-maj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflatm-piano.yml +32 -0
- data/db/seeds/chord_voicings/b-flat/bflatm11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflatm11-piano.yml +71 -0
- data/db/seeds/chord_voicings/b-flat/bflatm13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflatm13-piano.yml +71 -0
- data/db/seeds/chord_voicings/b-flat/bflatm6-guitar.yml +35 -0
- data/db/seeds/chord_voicings/b-flat/bflatm6-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflatm7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/b-flat/bflatm7-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflatm7add11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflatm7add11-piano.yml +54 -0
- data/db/seeds/chord_voicings/b-flat/bflatm7flat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/b-flat/bflatm7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflatm9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflatm9-piano.yml +54 -0
- data/db/seeds/chord_voicings/b-flat/bflatmadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflatmadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflatmadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflatmadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflatmadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflatmadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflatmadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflatmadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflatmadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/b-flat/bflatmadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflatmaj7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/b-flat/bflatmaj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflatmaj7sharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/b-flat/bflatmaj7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/b-flat/bflatsus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/b-flat/bflatsus2-piano.yml +32 -0
- data/db/seeds/chord_voicings/b-flat/bflatsus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/b-flat/bflatsus4-piano.yml +32 -0
- data/db/seeds/chord_voicings/c/c-guitar.yml +83 -0
- data/db/seeds/chord_voicings/c/c-piano.yml +32 -0
- data/db/seeds/chord_voicings/c/c11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c11-piano.yml +71 -0
- data/db/seeds/chord_voicings/c/c13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c13-piano.yml +71 -0
- data/db/seeds/chord_voicings/c/c13flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c13flat9-piano.yml +71 -0
- data/db/seeds/chord_voicings/c/c13sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c13sharp11-piano.yml +83 -0
- data/db/seeds/chord_voicings/c/c13sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c13sharp9-piano.yml +71 -0
- data/db/seeds/chord_voicings/c/c13sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c13sus4-piano.yml +71 -0
- data/db/seeds/chord_voicings/c/c5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/c/c5-piano.yml +21 -0
- data/db/seeds/chord_voicings/c/c6-guitar.yml +83 -0
- data/db/seeds/chord_voicings/c/c6-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/c7-guitar.yml +83 -0
- data/db/seeds/chord_voicings/c/c7-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/c7flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c7flat13-piano.yml +54 -0
- data/db/seeds/chord_voicings/c/c7flat5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/c7flat5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c7flat5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/c/c7flat5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c7flat5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/c/c7flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c7flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/c/c7flat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c7flat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/c/c7flat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c7flat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/c/c7sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c7sharp11-piano.yml +54 -0
- data/db/seeds/chord_voicings/c/c7sharp5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/c7sharp5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c7sharp5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/c/c7sharp5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c7sharp5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/c/c7sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c7sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/c/c7sharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c7sharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/c/c7sus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/c/c7sus2-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/c7sus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/c/c7sus4-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/c9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c9-piano.yml +54 -0
- data/db/seeds/chord_voicings/c/c9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/c/c9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/c/c9sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/c9sus4-piano.yml +54 -0
- data/db/seeds/chord_voicings/c/cadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/cadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/cadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/cadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/cadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/cadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/cadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/cadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/cadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/cadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/caug-guitar.yml +23 -0
- data/db/seeds/chord_voicings/c/caug-piano.yml +32 -0
- data/db/seeds/chord_voicings/c/cdim-guitar.yml +23 -0
- data/db/seeds/chord_voicings/c/cdim-piano.yml +32 -0
- data/db/seeds/chord_voicings/c/cdim7-guitar.yml +23 -0
- data/db/seeds/chord_voicings/c/cdim7-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/cm-guitar.yml +35 -0
- data/db/seeds/chord_voicings/c/cm-maj7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/c/cm-maj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/cm-piano.yml +32 -0
- data/db/seeds/chord_voicings/c/cm11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/cm11-piano.yml +71 -0
- data/db/seeds/chord_voicings/c/cm13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/cm13-piano.yml +71 -0
- data/db/seeds/chord_voicings/c/cm6-guitar.yml +35 -0
- data/db/seeds/chord_voicings/c/cm6-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/cm7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/c/cm7-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/cm7add11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/cm7add11-piano.yml +54 -0
- data/db/seeds/chord_voicings/c/cm7flat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/c/cm7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/cm9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/cm9-piano.yml +54 -0
- data/db/seeds/chord_voicings/c/cmadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/cmadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/cmadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/cmadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/cmadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/cmadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/cmadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/cmadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/cmadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c/cmadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/cmaj7-guitar.yml +83 -0
- data/db/seeds/chord_voicings/c/cmaj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/cmaj7sharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/c/cmaj7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/c/csus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/c/csus2-piano.yml +32 -0
- data/db/seeds/chord_voicings/c/csus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/c/csus4-piano.yml +32 -0
- data/db/seeds/chord_voicings/c-sharp/csharp-guitar.yml +59 -0
- data/db/seeds/chord_voicings/c-sharp/csharp-piano.yml +32 -0
- data/db/seeds/chord_voicings/c-sharp/csharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp11-piano.yml +71 -0
- data/db/seeds/chord_voicings/c-sharp/csharp13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp13-piano.yml +71 -0
- data/db/seeds/chord_voicings/c-sharp/csharp13flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp13flat9-piano.yml +71 -0
- data/db/seeds/chord_voicings/c-sharp/csharp13sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp13sharp11-piano.yml +83 -0
- data/db/seeds/chord_voicings/c-sharp/csharp13sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp13sharp9-piano.yml +71 -0
- data/db/seeds/chord_voicings/c-sharp/csharp13sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp13sus4-piano.yml +71 -0
- data/db/seeds/chord_voicings/c-sharp/csharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/c-sharp/csharp5-piano.yml +21 -0
- data/db/seeds/chord_voicings/c-sharp/csharp6-guitar.yml +59 -0
- data/db/seeds/chord_voicings/c-sharp/csharp6-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7flat13-piano.yml +54 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7flat5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7flat5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7flat5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7flat5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7flat5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7flat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7flat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7flat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7flat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7sharp11-piano.yml +54 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7sharp5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7sharp5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7sharp5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7sharp5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7sharp5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7sharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7sharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7sus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7sus2-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7sus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/c-sharp/csharp7sus4-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/c-sharp/csharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/c-sharp/csharp9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/c-sharp/csharp9sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharp9sus4-piano.yml +54 -0
- data/db/seeds/chord_voicings/c-sharp/csharpadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharpadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharpadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharpadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharpadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharpadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharpadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharpadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharpadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharpadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharpaug-guitar.yml +23 -0
- data/db/seeds/chord_voicings/c-sharp/csharpaug-piano.yml +32 -0
- data/db/seeds/chord_voicings/c-sharp/csharpdim-guitar.yml +23 -0
- data/db/seeds/chord_voicings/c-sharp/csharpdim-piano.yml +32 -0
- data/db/seeds/chord_voicings/c-sharp/csharpdim7-guitar.yml +23 -0
- data/db/seeds/chord_voicings/c-sharp/csharpdim7-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharpm-guitar.yml +35 -0
- data/db/seeds/chord_voicings/c-sharp/csharpm-maj7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/c-sharp/csharpm-maj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharpm-piano.yml +32 -0
- data/db/seeds/chord_voicings/c-sharp/csharpm11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharpm11-piano.yml +71 -0
- data/db/seeds/chord_voicings/c-sharp/csharpm13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharpm13-piano.yml +71 -0
- data/db/seeds/chord_voicings/c-sharp/csharpm6-guitar.yml +35 -0
- data/db/seeds/chord_voicings/c-sharp/csharpm6-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharpm7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/c-sharp/csharpm7-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharpm7add11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharpm7add11-piano.yml +54 -0
- data/db/seeds/chord_voicings/c-sharp/csharpm7flat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/c-sharp/csharpm7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharpm9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharpm9-piano.yml +54 -0
- data/db/seeds/chord_voicings/c-sharp/csharpmadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharpmadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharpmadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharpmadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharpmadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharpmadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharpmadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharpmadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharpmadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/c-sharp/csharpmadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharpmaj7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/c-sharp/csharpmaj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharpmaj7sharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/c-sharp/csharpmaj7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/c-sharp/csharpsus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/c-sharp/csharpsus2-piano.yml +32 -0
- data/db/seeds/chord_voicings/c-sharp/csharpsus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/c-sharp/csharpsus4-piano.yml +32 -0
- data/db/seeds/chord_voicings/d/d-guitar.yml +83 -0
- data/db/seeds/chord_voicings/d/d-piano.yml +32 -0
- data/db/seeds/chord_voicings/d/d11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d11-piano.yml +71 -0
- data/db/seeds/chord_voicings/d/d13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d13-piano.yml +71 -0
- data/db/seeds/chord_voicings/d/d13flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d13flat9-piano.yml +71 -0
- data/db/seeds/chord_voicings/d/d13sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d13sharp11-piano.yml +83 -0
- data/db/seeds/chord_voicings/d/d13sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d13sharp9-piano.yml +71 -0
- data/db/seeds/chord_voicings/d/d13sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d13sus4-piano.yml +71 -0
- data/db/seeds/chord_voicings/d/d5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d/d5-piano.yml +21 -0
- data/db/seeds/chord_voicings/d/d6-guitar.yml +95 -0
- data/db/seeds/chord_voicings/d/d6-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/d7-guitar.yml +95 -0
- data/db/seeds/chord_voicings/d/d7-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/d7flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d7flat13-piano.yml +54 -0
- data/db/seeds/chord_voicings/d/d7flat5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/d7flat5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d7flat5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d/d7flat5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d7flat5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d/d7flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d7flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d/d7flat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d7flat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/d/d7flat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d7flat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/d/d7sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d7sharp11-piano.yml +54 -0
- data/db/seeds/chord_voicings/d/d7sharp5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/d7sharp5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d7sharp5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d/d7sharp5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d7sharp5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d/d7sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d7sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d/d7sharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d7sharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/d/d7sus2-guitar.yml +59 -0
- data/db/seeds/chord_voicings/d/d7sus2-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/d7sus4-guitar.yml +71 -0
- data/db/seeds/chord_voicings/d/d7sus4-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/d9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d/d9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/d/d9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/d/d9sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/d9sus4-piano.yml +54 -0
- data/db/seeds/chord_voicings/d/dadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/dadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/dadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/dadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/dadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/dadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/dadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/dadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/dadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/dadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/daug-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d/daug-piano.yml +32 -0
- data/db/seeds/chord_voicings/d/ddim-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d/ddim-piano.yml +32 -0
- data/db/seeds/chord_voicings/d/ddim7-guitar.yml +47 -0
- data/db/seeds/chord_voicings/d/ddim7-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/dm-guitar.yml +59 -0
- data/db/seeds/chord_voicings/d/dm-maj7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/d/dm-maj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/dm-piano.yml +32 -0
- data/db/seeds/chord_voicings/d/dm11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/dm11-piano.yml +71 -0
- data/db/seeds/chord_voicings/d/dm13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/dm13-piano.yml +71 -0
- data/db/seeds/chord_voicings/d/dm6-guitar.yml +71 -0
- data/db/seeds/chord_voicings/d/dm6-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/dm7-guitar.yml +71 -0
- data/db/seeds/chord_voicings/d/dm7-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/dm7add11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/dm7add11-piano.yml +54 -0
- data/db/seeds/chord_voicings/d/dm7flat5-guitar.yml +47 -0
- data/db/seeds/chord_voicings/d/dm7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/dm9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/dm9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d/dmadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/dmadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/dmadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/dmadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/dmadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/dmadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/dmadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/dmadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/dmadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d/dmadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/dmaj7-guitar.yml +83 -0
- data/db/seeds/chord_voicings/d/dmaj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/dmaj7sharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d/dmaj7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/d/dsus2-guitar.yml +47 -0
- data/db/seeds/chord_voicings/d/dsus2-piano.yml +32 -0
- data/db/seeds/chord_voicings/d/dsus4-guitar.yml +59 -0
- data/db/seeds/chord_voicings/d/dsus4-piano.yml +32 -0
- data/db/seeds/chord_voicings/d-flat/dflat-guitar.yml +59 -0
- data/db/seeds/chord_voicings/d-flat/dflat-piano.yml +32 -0
- data/db/seeds/chord_voicings/d-flat/dflat11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat11-piano.yml +71 -0
- data/db/seeds/chord_voicings/d-flat/dflat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat13-piano.yml +71 -0
- data/db/seeds/chord_voicings/d-flat/dflat13flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat13flat9-piano.yml +71 -0
- data/db/seeds/chord_voicings/d-flat/dflat13sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat13sharp11-piano.yml +83 -0
- data/db/seeds/chord_voicings/d-flat/dflat13sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat13sharp9-piano.yml +71 -0
- data/db/seeds/chord_voicings/d-flat/dflat13sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat13sus4-piano.yml +71 -0
- data/db/seeds/chord_voicings/d-flat/dflat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d-flat/dflat5-piano.yml +21 -0
- data/db/seeds/chord_voicings/d-flat/dflat6-guitar.yml +59 -0
- data/db/seeds/chord_voicings/d-flat/dflat6-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflat7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/d-flat/dflat7-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflat7flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat7flat13-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-flat/dflat7flat5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflat7flat5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat7flat5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-flat/dflat7flat5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat7flat5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-flat/dflat7flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat7flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-flat/dflat7flat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat7flat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/d-flat/dflat7flat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat7flat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/d-flat/dflat7sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat7sharp11-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-flat/dflat7sharp5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflat7sharp5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat7sharp5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-flat/dflat7sharp5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat7sharp5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-flat/dflat7sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat7sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-flat/dflat7sharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat7sharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/d-flat/dflat7sus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d-flat/dflat7sus2-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflat7sus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/d-flat/dflat7sus4-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-flat/dflat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/d-flat/dflat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/d-flat/dflat9sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflat9sus4-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-flat/dflatadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflatadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflatadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflatadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflatadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflatadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflatadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflatadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflatadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflatadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflataug-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d-flat/dflataug-piano.yml +32 -0
- data/db/seeds/chord_voicings/d-flat/dflatdim-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d-flat/dflatdim-piano.yml +32 -0
- data/db/seeds/chord_voicings/d-flat/dflatdim7-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d-flat/dflatdim7-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflatm-guitar.yml +35 -0
- data/db/seeds/chord_voicings/d-flat/dflatm-maj7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/d-flat/dflatm-maj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflatm-piano.yml +32 -0
- data/db/seeds/chord_voicings/d-flat/dflatm11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflatm11-piano.yml +71 -0
- data/db/seeds/chord_voicings/d-flat/dflatm13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflatm13-piano.yml +71 -0
- data/db/seeds/chord_voicings/d-flat/dflatm6-guitar.yml +35 -0
- data/db/seeds/chord_voicings/d-flat/dflatm6-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflatm7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/d-flat/dflatm7-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflatm7add11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflatm7add11-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-flat/dflatm7flat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d-flat/dflatm7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflatm9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflatm9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-flat/dflatmadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflatmadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflatmadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflatmadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflatmadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflatmadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflatmadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflatmadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflatmadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-flat/dflatmadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflatmaj7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/d-flat/dflatmaj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflatmaj7sharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d-flat/dflatmaj7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-flat/dflatsus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d-flat/dflatsus2-piano.yml +32 -0
- data/db/seeds/chord_voicings/d-flat/dflatsus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/d-flat/dflatsus4-piano.yml +32 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp-guitar.yml +59 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp-piano.yml +32 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp11-piano.yml +71 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp13-piano.yml +71 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp13flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp13flat9-piano.yml +71 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp13sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp13sharp11-piano.yml +83 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp13sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp13sharp9-piano.yml +71 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp13sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp13sus4-piano.yml +71 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp5-piano.yml +21 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp6-guitar.yml +59 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp6-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7flat13-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7flat5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7flat5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7flat5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7flat5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7flat5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7flat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7flat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7flat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7flat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7sharp11-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7sharp5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7sharp5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7sharp5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7sharp5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7sharp5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7sharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7sharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7sus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7sus2-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7sus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp7sus4-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp9sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharp9sus4-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpaug-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpaug-piano.yml +32 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpdim-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpdim-piano.yml +32 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpdim7-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpdim7-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpm-guitar.yml +35 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpm-maj7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpm-maj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpm-piano.yml +32 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpm11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpm11-piano.yml +71 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpm13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpm13-piano.yml +71 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpm6-guitar.yml +35 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpm6-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpm7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpm7-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpm7add11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpm7add11-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpm7flat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpm7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpm9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpm9-piano.yml +54 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpmadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpmadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpmadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpmadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpmadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpmadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpmadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpmadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpmadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpmadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpmaj7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpmaj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpmaj7sharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpmaj7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpsus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpsus2-piano.yml +32 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpsus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/d-sharp/dsharpsus4-piano.yml +32 -0
- data/db/seeds/chord_voicings/e/e-guitar.yml +59 -0
- data/db/seeds/chord_voicings/e/e-piano.yml +32 -0
- data/db/seeds/chord_voicings/e/e11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e11-piano.yml +71 -0
- data/db/seeds/chord_voicings/e/e13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e13-piano.yml +71 -0
- data/db/seeds/chord_voicings/e/e13flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e13flat9-piano.yml +71 -0
- data/db/seeds/chord_voicings/e/e13sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e13sharp11-piano.yml +83 -0
- data/db/seeds/chord_voicings/e/e13sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e13sharp9-piano.yml +71 -0
- data/db/seeds/chord_voicings/e/e13sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e13sus4-piano.yml +71 -0
- data/db/seeds/chord_voicings/e/e5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/e/e5-piano.yml +21 -0
- data/db/seeds/chord_voicings/e/e6-guitar.yml +59 -0
- data/db/seeds/chord_voicings/e/e6-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/e7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/e/e7-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/e7flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e7flat13-piano.yml +54 -0
- data/db/seeds/chord_voicings/e/e7flat5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/e7flat5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e7flat5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/e/e7flat5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e7flat5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/e/e7flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e7flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/e/e7flat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e7flat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/e/e7flat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e7flat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/e/e7sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e7sharp11-piano.yml +54 -0
- data/db/seeds/chord_voicings/e/e7sharp5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/e7sharp5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e7sharp5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/e/e7sharp5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e7sharp5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/e/e7sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e7sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/e/e7sharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e7sharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/e/e7sus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/e/e7sus2-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/e7sus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/e/e7sus4-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/e9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e9-piano.yml +54 -0
- data/db/seeds/chord_voicings/e/e9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/e/e9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/e/e9sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/e9sus4-piano.yml +54 -0
- data/db/seeds/chord_voicings/e/eadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/eadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/eadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/eadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/eadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/eadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/eadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/eadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/eadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/eadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/eaug-guitar.yml +23 -0
- data/db/seeds/chord_voicings/e/eaug-piano.yml +32 -0
- data/db/seeds/chord_voicings/e/edim-guitar.yml +23 -0
- data/db/seeds/chord_voicings/e/edim-piano.yml +32 -0
- data/db/seeds/chord_voicings/e/edim7-guitar.yml +23 -0
- data/db/seeds/chord_voicings/e/edim7-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/em-guitar.yml +35 -0
- data/db/seeds/chord_voicings/e/em-maj7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/e/em-maj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/em-piano.yml +32 -0
- data/db/seeds/chord_voicings/e/em11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/em11-piano.yml +71 -0
- data/db/seeds/chord_voicings/e/em13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/em13-piano.yml +71 -0
- data/db/seeds/chord_voicings/e/em6-guitar.yml +35 -0
- data/db/seeds/chord_voicings/e/em6-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/em7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/e/em7-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/em7add11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/em7add11-piano.yml +54 -0
- data/db/seeds/chord_voicings/e/em7flat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/e/em7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/em9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/em9-piano.yml +54 -0
- data/db/seeds/chord_voicings/e/emadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/emadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/emadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/emadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/emadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/emadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/emadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/emadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/emadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e/emadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/emaj7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/e/emaj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/emaj7sharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/e/emaj7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/e/esus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/e/esus2-piano.yml +32 -0
- data/db/seeds/chord_voicings/e/esus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/e/esus4-piano.yml +32 -0
- data/db/seeds/chord_voicings/e-flat/eflat-guitar.yml +59 -0
- data/db/seeds/chord_voicings/e-flat/eflat-piano.yml +32 -0
- data/db/seeds/chord_voicings/e-flat/eflat11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat11-piano.yml +71 -0
- data/db/seeds/chord_voicings/e-flat/eflat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat13-piano.yml +71 -0
- data/db/seeds/chord_voicings/e-flat/eflat13flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat13flat9-piano.yml +71 -0
- data/db/seeds/chord_voicings/e-flat/eflat13sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat13sharp11-piano.yml +83 -0
- data/db/seeds/chord_voicings/e-flat/eflat13sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat13sharp9-piano.yml +71 -0
- data/db/seeds/chord_voicings/e-flat/eflat13sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat13sus4-piano.yml +71 -0
- data/db/seeds/chord_voicings/e-flat/eflat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/e-flat/eflat5-piano.yml +21 -0
- data/db/seeds/chord_voicings/e-flat/eflat6-guitar.yml +59 -0
- data/db/seeds/chord_voicings/e-flat/eflat6-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflat7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/e-flat/eflat7-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflat7flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat7flat13-piano.yml +54 -0
- data/db/seeds/chord_voicings/e-flat/eflat7flat5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflat7flat5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat7flat5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/e-flat/eflat7flat5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat7flat5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/e-flat/eflat7flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat7flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/e-flat/eflat7flat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat7flat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/e-flat/eflat7flat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat7flat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/e-flat/eflat7sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat7sharp11-piano.yml +54 -0
- data/db/seeds/chord_voicings/e-flat/eflat7sharp5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflat7sharp5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat7sharp5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/e-flat/eflat7sharp5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat7sharp5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/e-flat/eflat7sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat7sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/e-flat/eflat7sharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat7sharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/e-flat/eflat7sus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/e-flat/eflat7sus2-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflat7sus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/e-flat/eflat7sus4-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/e-flat/eflat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/e-flat/eflat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/e-flat/eflat9sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflat9sus4-piano.yml +54 -0
- data/db/seeds/chord_voicings/e-flat/eflatadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflatadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflatadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflatadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflatadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflatadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflatadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflatadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflatadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflatadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflataug-guitar.yml +23 -0
- data/db/seeds/chord_voicings/e-flat/eflataug-piano.yml +32 -0
- data/db/seeds/chord_voicings/e-flat/eflatdim-guitar.yml +23 -0
- data/db/seeds/chord_voicings/e-flat/eflatdim-piano.yml +32 -0
- data/db/seeds/chord_voicings/e-flat/eflatdim7-guitar.yml +23 -0
- data/db/seeds/chord_voicings/e-flat/eflatdim7-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflatm-guitar.yml +35 -0
- data/db/seeds/chord_voicings/e-flat/eflatm-maj7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/e-flat/eflatm-maj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflatm-piano.yml +32 -0
- data/db/seeds/chord_voicings/e-flat/eflatm11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflatm11-piano.yml +71 -0
- data/db/seeds/chord_voicings/e-flat/eflatm13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflatm13-piano.yml +71 -0
- data/db/seeds/chord_voicings/e-flat/eflatm6-guitar.yml +35 -0
- data/db/seeds/chord_voicings/e-flat/eflatm6-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflatm7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/e-flat/eflatm7-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflatm7add11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflatm7add11-piano.yml +54 -0
- data/db/seeds/chord_voicings/e-flat/eflatm7flat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/e-flat/eflatm7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflatm9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflatm9-piano.yml +54 -0
- data/db/seeds/chord_voicings/e-flat/eflatmadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflatmadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflatmadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflatmadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflatmadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflatmadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflatmadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflatmadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflatmadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/e-flat/eflatmadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflatmaj7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/e-flat/eflatmaj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflatmaj7sharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/e-flat/eflatmaj7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/e-flat/eflatsus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/e-flat/eflatsus2-piano.yml +32 -0
- data/db/seeds/chord_voicings/e-flat/eflatsus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/e-flat/eflatsus4-piano.yml +32 -0
- data/db/seeds/chord_voicings/f/f-guitar.yml +59 -0
- data/db/seeds/chord_voicings/f/f-piano.yml +32 -0
- data/db/seeds/chord_voicings/f/f11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f11-piano.yml +71 -0
- data/db/seeds/chord_voicings/f/f13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f13-piano.yml +71 -0
- data/db/seeds/chord_voicings/f/f13flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f13flat9-piano.yml +71 -0
- data/db/seeds/chord_voicings/f/f13sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f13sharp11-piano.yml +83 -0
- data/db/seeds/chord_voicings/f/f13sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f13sharp9-piano.yml +71 -0
- data/db/seeds/chord_voicings/f/f13sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f13sus4-piano.yml +71 -0
- data/db/seeds/chord_voicings/f/f5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/f/f5-piano.yml +21 -0
- data/db/seeds/chord_voicings/f/f6-guitar.yml +59 -0
- data/db/seeds/chord_voicings/f/f6-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/f7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/f/f7-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/f7flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f7flat13-piano.yml +54 -0
- data/db/seeds/chord_voicings/f/f7flat5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/f7flat5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f7flat5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/f/f7flat5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f7flat5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/f/f7flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f7flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/f/f7flat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f7flat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/f/f7flat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f7flat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/f/f7sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f7sharp11-piano.yml +54 -0
- data/db/seeds/chord_voicings/f/f7sharp5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/f7sharp5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f7sharp5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/f/f7sharp5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f7sharp5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/f/f7sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f7sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/f/f7sharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f7sharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/f/f7sus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/f/f7sus2-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/f7sus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/f/f7sus4-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/f9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f9-piano.yml +54 -0
- data/db/seeds/chord_voicings/f/f9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/f/f9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/f/f9sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/f9sus4-piano.yml +54 -0
- data/db/seeds/chord_voicings/f/fadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/fadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/fadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/fadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/fadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/fadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/fadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/fadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/fadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/fadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/faug-guitar.yml +23 -0
- data/db/seeds/chord_voicings/f/faug-piano.yml +32 -0
- data/db/seeds/chord_voicings/f/fdim-guitar.yml +23 -0
- data/db/seeds/chord_voicings/f/fdim-piano.yml +32 -0
- data/db/seeds/chord_voicings/f/fdim7-guitar.yml +23 -0
- data/db/seeds/chord_voicings/f/fdim7-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/fm-guitar.yml +35 -0
- data/db/seeds/chord_voicings/f/fm-maj7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/f/fm-maj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/fm-piano.yml +32 -0
- data/db/seeds/chord_voicings/f/fm11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/fm11-piano.yml +71 -0
- data/db/seeds/chord_voicings/f/fm13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/fm13-piano.yml +71 -0
- data/db/seeds/chord_voicings/f/fm6-guitar.yml +35 -0
- data/db/seeds/chord_voicings/f/fm6-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/fm7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/f/fm7-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/fm7add11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/fm7add11-piano.yml +54 -0
- data/db/seeds/chord_voicings/f/fm7flat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/f/fm7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/fm9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/fm9-piano.yml +54 -0
- data/db/seeds/chord_voicings/f/fmadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/fmadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/fmadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/fmadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/fmadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/fmadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/fmadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/fmadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/fmadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f/fmadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/fmaj7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/f/fmaj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/fmaj7sharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/f/fmaj7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/f/fsus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/f/fsus2-piano.yml +32 -0
- data/db/seeds/chord_voicings/f/fsus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/f/fsus4-piano.yml +32 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp-guitar.yml +59 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp-piano.yml +32 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp11-piano.yml +71 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp13-piano.yml +71 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp13flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp13flat9-piano.yml +71 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp13sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp13sharp11-piano.yml +83 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp13sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp13sharp9-piano.yml +71 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp13sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp13sus4-piano.yml +71 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp5-piano.yml +21 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp6-guitar.yml +59 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp6-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7flat13-piano.yml +54 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7flat5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7flat5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7flat5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7flat5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7flat5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7flat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7flat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7flat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7flat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7sharp11-piano.yml +54 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7sharp5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7sharp5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7sharp5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7sharp5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7sharp5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7sharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7sharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7sus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7sus2-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7sus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp7sus4-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp9sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharp9sus4-piano.yml +54 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpaug-guitar.yml +23 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpaug-piano.yml +32 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpdim-guitar.yml +23 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpdim-piano.yml +32 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpdim7-guitar.yml +23 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpdim7-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpm-guitar.yml +35 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpm-maj7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpm-maj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpm-piano.yml +32 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpm11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpm11-piano.yml +71 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpm13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpm13-piano.yml +71 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpm6-guitar.yml +35 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpm6-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpm7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpm7-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpm7add11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpm7add11-piano.yml +54 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpm7flat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpm7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpm9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpm9-piano.yml +54 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpmadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpmadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpmadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpmadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpmadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpmadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpmadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpmadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpmadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpmadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpmaj7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpmaj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpmaj7sharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpmaj7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpsus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpsus2-piano.yml +32 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpsus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/f-sharp/fsharpsus4-piano.yml +32 -0
- data/db/seeds/chord_voicings/g/g-guitar.yml +59 -0
- data/db/seeds/chord_voicings/g/g-piano.yml +32 -0
- data/db/seeds/chord_voicings/g/g11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g11-piano.yml +71 -0
- data/db/seeds/chord_voicings/g/g13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g13-piano.yml +71 -0
- data/db/seeds/chord_voicings/g/g13flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g13flat9-piano.yml +71 -0
- data/db/seeds/chord_voicings/g/g13sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g13sharp11-piano.yml +83 -0
- data/db/seeds/chord_voicings/g/g13sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g13sharp9-piano.yml +71 -0
- data/db/seeds/chord_voicings/g/g13sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g13sus4-piano.yml +71 -0
- data/db/seeds/chord_voicings/g/g5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g/g5-piano.yml +21 -0
- data/db/seeds/chord_voicings/g/g6-guitar.yml +59 -0
- data/db/seeds/chord_voicings/g/g6-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/g7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/g/g7-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/g7flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g7flat13-piano.yml +54 -0
- data/db/seeds/chord_voicings/g/g7flat5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/g7flat5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g7flat5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g/g7flat5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g7flat5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g/g7flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g7flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g/g7flat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g7flat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/g/g7flat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g7flat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/g/g7sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g7sharp11-piano.yml +54 -0
- data/db/seeds/chord_voicings/g/g7sharp5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/g7sharp5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g7sharp5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g/g7sharp5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g7sharp5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g/g7sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g7sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g/g7sharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g7sharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/g/g7sus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g/g7sus2-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/g7sus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/g/g7sus4-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/g9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g/g9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/g/g9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/g/g9sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/g9sus4-piano.yml +54 -0
- data/db/seeds/chord_voicings/g/gadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/gadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/gadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/gadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/gadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/gadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/gadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/gadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/gadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/gadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/gaug-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g/gaug-piano.yml +32 -0
- data/db/seeds/chord_voicings/g/gdim-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g/gdim-piano.yml +32 -0
- data/db/seeds/chord_voicings/g/gdim7-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g/gdim7-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/gm-guitar.yml +35 -0
- data/db/seeds/chord_voicings/g/gm-maj7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/g/gm-maj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/gm-piano.yml +32 -0
- data/db/seeds/chord_voicings/g/gm11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/gm11-piano.yml +71 -0
- data/db/seeds/chord_voicings/g/gm13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/gm13-piano.yml +71 -0
- data/db/seeds/chord_voicings/g/gm6-guitar.yml +35 -0
- data/db/seeds/chord_voicings/g/gm6-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/gm7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/g/gm7-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/gm7add11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/gm7add11-piano.yml +54 -0
- data/db/seeds/chord_voicings/g/gm7flat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g/gm7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/gm9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/gm9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g/gmadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/gmadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/gmadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/gmadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/gmadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/gmadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/gmadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/gmadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/gmadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g/gmadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/gmaj7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/g/gmaj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/gmaj7sharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g/gmaj7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/g/gsus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g/gsus2-piano.yml +32 -0
- data/db/seeds/chord_voicings/g/gsus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/g/gsus4-piano.yml +32 -0
- data/db/seeds/chord_voicings/g-flat/gflat-guitar.yml +59 -0
- data/db/seeds/chord_voicings/g-flat/gflat-piano.yml +32 -0
- data/db/seeds/chord_voicings/g-flat/gflat11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat11-piano.yml +71 -0
- data/db/seeds/chord_voicings/g-flat/gflat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat13-piano.yml +71 -0
- data/db/seeds/chord_voicings/g-flat/gflat13flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat13flat9-piano.yml +71 -0
- data/db/seeds/chord_voicings/g-flat/gflat13sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat13sharp11-piano.yml +83 -0
- data/db/seeds/chord_voicings/g-flat/gflat13sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat13sharp9-piano.yml +71 -0
- data/db/seeds/chord_voicings/g-flat/gflat13sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat13sus4-piano.yml +71 -0
- data/db/seeds/chord_voicings/g-flat/gflat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g-flat/gflat5-piano.yml +21 -0
- data/db/seeds/chord_voicings/g-flat/gflat6-guitar.yml +59 -0
- data/db/seeds/chord_voicings/g-flat/gflat6-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflat7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/g-flat/gflat7-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflat7flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat7flat13-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-flat/gflat7flat5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflat7flat5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat7flat5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-flat/gflat7flat5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat7flat5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-flat/gflat7flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat7flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-flat/gflat7flat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat7flat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/g-flat/gflat7flat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat7flat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/g-flat/gflat7sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat7sharp11-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-flat/gflat7sharp5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflat7sharp5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat7sharp5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-flat/gflat7sharp5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat7sharp5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-flat/gflat7sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat7sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-flat/gflat7sharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat7sharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/g-flat/gflat7sus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g-flat/gflat7sus2-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflat7sus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/g-flat/gflat7sus4-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-flat/gflat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/g-flat/gflat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/g-flat/gflat9sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflat9sus4-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-flat/gflatadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflatadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflatadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflatadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflatadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflatadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflatadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflatadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflatadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflatadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflataug-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g-flat/gflataug-piano.yml +32 -0
- data/db/seeds/chord_voicings/g-flat/gflatdim-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g-flat/gflatdim-piano.yml +32 -0
- data/db/seeds/chord_voicings/g-flat/gflatdim7-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g-flat/gflatdim7-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflatm-guitar.yml +35 -0
- data/db/seeds/chord_voicings/g-flat/gflatm-maj7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/g-flat/gflatm-maj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflatm-piano.yml +32 -0
- data/db/seeds/chord_voicings/g-flat/gflatm11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflatm11-piano.yml +71 -0
- data/db/seeds/chord_voicings/g-flat/gflatm13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflatm13-piano.yml +71 -0
- data/db/seeds/chord_voicings/g-flat/gflatm6-guitar.yml +35 -0
- data/db/seeds/chord_voicings/g-flat/gflatm6-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflatm7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/g-flat/gflatm7-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflatm7add11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflatm7add11-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-flat/gflatm7flat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g-flat/gflatm7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflatm9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflatm9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-flat/gflatmadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflatmadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflatmadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflatmadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflatmadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflatmadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflatmadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflatmadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflatmadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-flat/gflatmadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflatmaj7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/g-flat/gflatmaj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflatmaj7sharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g-flat/gflatmaj7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-flat/gflatsus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g-flat/gflatsus2-piano.yml +32 -0
- data/db/seeds/chord_voicings/g-flat/gflatsus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/g-flat/gflatsus4-piano.yml +32 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp-guitar.yml +59 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp-piano.yml +32 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp11-piano.yml +71 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp13-piano.yml +71 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp13flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp13flat9-piano.yml +71 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp13sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp13sharp11-piano.yml +83 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp13sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp13sharp9-piano.yml +71 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp13sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp13sus4-piano.yml +71 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp5-piano.yml +21 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp6-guitar.yml +59 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp6-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7flat13-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7flat5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7flat5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7flat5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7flat5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7flat5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7flat9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7flat9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7flat9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7flat9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7sharp11-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7sharp5-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7sharp5flat9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7sharp5flat9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7sharp5sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7sharp5sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7sharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7sharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7sharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7sharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7sus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7sus2-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7sus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp7sus4-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp9flat13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp9flat13-piano.yml +65 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp9sharp11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp9sharp11-piano.yml +65 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp9sus4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharp9sus4-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpaug-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpaug-piano.yml +32 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpdim-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpdim-piano.yml +32 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpdim7-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpdim7-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpm-guitar.yml +35 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpm-maj7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpm-maj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpm-piano.yml +32 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpm11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpm11-piano.yml +71 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpm13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpm13-piano.yml +71 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpm6-guitar.yml +35 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpm6-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpm7-guitar.yml +35 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpm7-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpm7add11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpm7add11-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpm7flat5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpm7flat5-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpm9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpm9-piano.yml +54 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpmadd11-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpmadd11-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpmadd13-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpmadd13-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpmadd2-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpmadd2-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpmadd4-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpmadd4-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpmadd9-guitar.yml +11 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpmadd9-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpmaj7-guitar.yml +59 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpmaj7-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpmaj7sharp5-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpmaj7sharp5-piano.yml +43 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpsus2-guitar.yml +23 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpsus2-piano.yml +32 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpsus4-guitar.yml +35 -0
- data/db/seeds/chord_voicings/g-sharp/gsharpsus4-piano.yml +32 -0
- data/db/seeds/chords/a-flat.yml +451 -0
- data/db/seeds/chords/a-sharp.yml +451 -0
- data/db/seeds/chords/a.yml +451 -0
- data/db/seeds/chords/b-flat.yml +451 -0
- data/db/seeds/chords/b.yml +451 -0
- data/db/seeds/chords/c-sharp.yml +451 -0
- data/db/seeds/chords/c.yml +451 -0
- data/db/seeds/chords/d-flat.yml +451 -0
- data/db/seeds/chords/d-sharp.yml +451 -0
- data/db/seeds/chords/d.yml +451 -0
- data/db/seeds/chords/e-flat.yml +451 -0
- data/db/seeds/chords/e.yml +451 -0
- data/db/seeds/chords/f-sharp.yml +451 -0
- data/db/seeds/chords/f.yml +451 -0
- data/db/seeds/chords/g-flat.yml +451 -0
- data/db/seeds/chords/g-sharp.yml +451 -0
- data/db/seeds/chords/g.yml +451 -0
- data/db/seeds.rb +72 -0
- data/lib/outro_rails/chord_chart_attribute.rb +40 -0
- data/lib/outro_rails/engine.rb +20 -0
- data/lib/outro_rails/form_builder_extensions.rb +7 -0
- data/lib/outro_rails/generators/chord_seed_generator.rb +219 -0
- data/lib/outro_rails/generators/guitar_voicing_generator.rb +196 -0
- data/lib/outro_rails/generators/voicing_seed_entry.rb +42 -0
- data/lib/outro_rails/generators/voicing_seed_writer.rb +53 -0
- data/lib/outro_rails/generators/voicing_stub_generator.rb +176 -0
- data/lib/outro_rails/instruments/guitar/capo.rb +54 -0
- data/lib/outro_rails/instruments/guitar/chord_shapes.rb +243 -0
- data/lib/outro_rails/instruments/guitar/tunings.rb +109 -0
- data/lib/outro_rails/instruments/guitar.rb +120 -0
- data/lib/outro_rails/instruments/piano.rb +68 -0
- data/lib/outro_rails/instruments.rb +15 -0
- data/lib/outro_rails/theory/chord_vocabulary.rb +198 -0
- data/lib/outro_rails/theory/interval.rb +59 -0
- data/lib/outro_rails/theory/key.rb +249 -0
- data/lib/outro_rails/theory/nashville_number.rb +154 -0
- data/lib/outro_rails/theory/note_name.rb +224 -0
- data/lib/outro_rails/theory/pitch.rb +112 -0
- data/lib/outro_rails/theory/scale.rb +338 -0
- data/lib/outro_rails/theory/transposer.rb +248 -0
- data/lib/outro_rails/theory.rb +15 -0
- data/lib/outro_rails/version.rb +5 -0
- data/lib/outro_rails.rb +19 -0
- data/lib/tasks/outro_rails_tasks.rake +92 -0
- metadata +2070 -0
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module OutroRails
|
|
4
|
+
module ChordsHelper
|
|
5
|
+
def chord_root_options
|
|
6
|
+
Theory::NoteName::CANONICAL_ROOTS
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
def chord_quality_options
|
|
10
|
+
Theory::ChordVocabulary::QUALITIES.keys.map do |quality|
|
|
11
|
+
[ quality.to_s.humanize, quality ]
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def chord_extension_options
|
|
16
|
+
[ [ "(none)", "none" ] ] +
|
|
17
|
+
Theory::ChordVocabulary::EXTENSIONS.keys.map do |extension|
|
|
18
|
+
[ extension.to_s, extension ]
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def chord_alteration_options
|
|
23
|
+
Theory::ChordVocabulary::ALTERATIONS.keys.map(&:to_s)
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def chord_added_tone_options
|
|
27
|
+
Theory::ChordVocabulary::ADDED_TONE_INTERVALS.keys.map(&:to_s)
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module OutroRails
|
|
4
|
+
module CircleOfFifthsHelper
|
|
5
|
+
WEDGE_DEGREES = 360.0 / 12
|
|
6
|
+
WEDGE_GAP_DEGREES = 1.0
|
|
7
|
+
|
|
8
|
+
def circle_point(cx, cy, radius, degrees)
|
|
9
|
+
radians = (degrees - 90) * Math::PI / 180
|
|
10
|
+
|
|
11
|
+
[ (cx + radius * Math.cos(radians)).round(2),
|
|
12
|
+
(cy + radius * Math.sin(radians)).round(2) ]
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def wedge_path(cx, cy, inner_radius, outer_radius, index)
|
|
16
|
+
from = (index * WEDGE_DEGREES) - (WEDGE_DEGREES / 2) + WEDGE_GAP_DEGREES
|
|
17
|
+
to = (index * WEDGE_DEGREES) + (WEDGE_DEGREES / 2) - WEDGE_GAP_DEGREES
|
|
18
|
+
|
|
19
|
+
o1 = circle_point(cx, cy, outer_radius, from)
|
|
20
|
+
o2 = circle_point(cx, cy, outer_radius, to)
|
|
21
|
+
i2 = circle_point(cx, cy, inner_radius, to)
|
|
22
|
+
i1 = circle_point(cx, cy, inner_radius, from)
|
|
23
|
+
|
|
24
|
+
"M #{o1[0]} #{o1[1]} " \
|
|
25
|
+
"A #{outer_radius} #{outer_radius} 0 0 1 #{o2[0]} #{o2[1]} " \
|
|
26
|
+
"L #{i2[0]} #{i2[1]} " \
|
|
27
|
+
"A #{inner_radius} #{inner_radius} 0 0 0 #{i1[0]} #{i1[1]} Z"
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def wedge_label_point(cx, cy, inner_radius, outer_radius, index)
|
|
31
|
+
circle_point(cx,
|
|
32
|
+
cy,
|
|
33
|
+
(inner_radius + outer_radius) / 2.0,
|
|
34
|
+
index * WEDGE_DEGREES)
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def key_signature_label(key)
|
|
38
|
+
count = key.signature
|
|
39
|
+
return "no sharps or flats" if count.zero?
|
|
40
|
+
|
|
41
|
+
pluralize(count.abs, count.positive? ? "sharp" : "flat")
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module OutroRails
|
|
4
|
+
module InstrumentsHelper
|
|
5
|
+
GUITAR_STANDARD_TUNING = Instruments::Guitar::STANDARD_TUNING
|
|
6
|
+
|
|
7
|
+
def guitar_tunings
|
|
8
|
+
Instruments::Guitar::Tunings.all
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def guitar_tuning_options
|
|
12
|
+
guitar_tunings.map { |tuning| [ tuning.label, tuning.slug ] }
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def note_to_midi(note)
|
|
16
|
+
Theory::Pitch.parse(note).midi
|
|
17
|
+
end
|
|
18
|
+
alias piano_note_to_midi note_to_midi # legacy name
|
|
19
|
+
|
|
20
|
+
def midi_to_note(midi, prefer: :sharps)
|
|
21
|
+
Theory::Pitch.from_midi(midi, prefer: prefer).to_s
|
|
22
|
+
end
|
|
23
|
+
alias piano_midi_to_note midi_to_note # legacy name
|
|
24
|
+
|
|
25
|
+
def midi_to_note_name(midi, prefer: :sharps)
|
|
26
|
+
Theory::Pitch.from_midi(midi, prefer: prefer).note_name.to_s
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
def guitar_open_midis(tuning = GUITAR_STANDARD_TUNING)
|
|
30
|
+
Instruments::Guitar.new(tuning: tuning).open_midis
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def guitar_positions(positions)
|
|
34
|
+
Instruments::Guitar.normalize_positions(positions)
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def piano_keys_between(start_note, end_note, prefer: :sharps)
|
|
38
|
+
Instruments::Piano.keys_between(start_note, end_note, prefer: prefer)
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module OutroRails
|
|
4
|
+
module ScalesHelper
|
|
5
|
+
def scale_root_options
|
|
6
|
+
Theory::NoteName::CANONICAL_ROOTS.map do |name|
|
|
7
|
+
note = Theory::NoteName.parse(name)
|
|
8
|
+
[ note.to_s, note.path_slug ]
|
|
9
|
+
end
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def scale_type_options
|
|
13
|
+
Theory::Scale::PATTERNS.keys.map do |name|
|
|
14
|
+
[ name.to_s.humanize, name.to_s.tr("_", "-") ]
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def scale_instrument_label(instrument)
|
|
19
|
+
instrument.to_s.titleize
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def scale_path_for(scale, instrument, tuning: nil)
|
|
23
|
+
if instrument == "guitar" && tuning && !tuning.standard?
|
|
24
|
+
guitar_tuning_scale_path(scale.root.path_slug, scale.slug, tuning.slug)
|
|
25
|
+
else
|
|
26
|
+
instrument_scale_path(instrument, scale.root.path_slug, scale.slug)
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def scale_link(scale, instrument, tuning: nil)
|
|
31
|
+
link_to scale.to_s, scale_path_for(scale, instrument, tuning: tuning)
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module OutroRails
|
|
4
|
+
module TransposerHelper
|
|
5
|
+
def transposer_mode_options
|
|
6
|
+
[
|
|
7
|
+
[ "Chords → Chords (new key)", "chords_to_chords" ],
|
|
8
|
+
[ "Chords → Nashville Numbers", "chords_to_nashville" ],
|
|
9
|
+
[ "Nashville Numbers → Chords", "nashville_to_chords" ]
|
|
10
|
+
]
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def transposer_key_options
|
|
14
|
+
{
|
|
15
|
+
"Major keys" => Theory::Key.canonical(:major).map(&:to_s),
|
|
16
|
+
"Minor keys" => Theory::Key.canonical(:minor).map(&:to_s)
|
|
17
|
+
}
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def semitone_shift_label(semitones)
|
|
21
|
+
return "same key (0 semitones)" if semitones.zero?
|
|
22
|
+
|
|
23
|
+
label = "+#{semitones} #{"semitone".pluralize(semitones)} up"
|
|
24
|
+
semitones > 6 ? "#{label} (−#{12 - semitones} down)" : label
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
module OutroRails
|
|
2
|
+
class Chord < ApplicationRecord
|
|
3
|
+
QUALITIES = {
|
|
4
|
+
major: 0,
|
|
5
|
+
minor: 1,
|
|
6
|
+
diminished: 2,
|
|
7
|
+
augmented: 3,
|
|
8
|
+
suspended_2: 4,
|
|
9
|
+
suspended_4: 5,
|
|
10
|
+
power: 6
|
|
11
|
+
}.freeze
|
|
12
|
+
|
|
13
|
+
EXTENSIONS = %w[6 7 maj7 dim7 9 11 13].freeze
|
|
14
|
+
ALTERATIONS = %w[b5 #5 b9 #9 #11 b13].freeze
|
|
15
|
+
ADDED_TONES = %w[add2 add4 add6 add9 add11 add13].freeze
|
|
16
|
+
|
|
17
|
+
enum :quality, QUALITIES
|
|
18
|
+
|
|
19
|
+
serialize :alterations, coder: JSON, type: Array
|
|
20
|
+
serialize :added_tones, coder: JSON, type: Array
|
|
21
|
+
serialize :intervals, coder: JSON, type: Array
|
|
22
|
+
|
|
23
|
+
has_many :voicings,
|
|
24
|
+
class_name: "OutroRails::ChordVoicing",
|
|
25
|
+
inverse_of: :chord,
|
|
26
|
+
dependent: :destroy
|
|
27
|
+
|
|
28
|
+
validate :added_tones_are_known
|
|
29
|
+
validate :alterations_are_known
|
|
30
|
+
validates :extension,
|
|
31
|
+
inclusion: { in: EXTENSIONS },
|
|
32
|
+
allow_nil: true
|
|
33
|
+
validates :quality, presence: true
|
|
34
|
+
validates :root_name, presence: true
|
|
35
|
+
validates :root_pitch_class,
|
|
36
|
+
presence: true,
|
|
37
|
+
inclusion: { in: 0..11 }
|
|
38
|
+
validates :slug,
|
|
39
|
+
presence: true,
|
|
40
|
+
uniqueness: true
|
|
41
|
+
validates :symbol,
|
|
42
|
+
presence: true,
|
|
43
|
+
uniqueness: true
|
|
44
|
+
|
|
45
|
+
scope :for_root_pitch_class, ->(pitch_class) { where(root_pitch_class: pitch_class) }
|
|
46
|
+
|
|
47
|
+
def to_param
|
|
48
|
+
slug
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
def display_extension
|
|
52
|
+
extension.presence || "-"
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
def display_alterations
|
|
56
|
+
Array(alterations).any? ? alterations.join(", ") : "-"
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
def display_added_tones
|
|
60
|
+
Array(added_tones).any? ? added_tones.join(", ") : "-"
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
def display_intervals
|
|
64
|
+
Array(intervals).join(" - ")
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
private
|
|
68
|
+
|
|
69
|
+
def alterations_are_known
|
|
70
|
+
unknown = Array(alterations) - ALTERATIONS
|
|
71
|
+
if unknown.any?
|
|
72
|
+
errors.add(:alterations,
|
|
73
|
+
"contains unknown values: #{unknown.join(', ')}")
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
def added_tones_are_known
|
|
78
|
+
unknown = Array(added_tones) - ADDED_TONES
|
|
79
|
+
if unknown.any?
|
|
80
|
+
errors.add(:added_tones,
|
|
81
|
+
"contains unknown values: #{unknown.join(', ')}")
|
|
82
|
+
end
|
|
83
|
+
end
|
|
84
|
+
end
|
|
85
|
+
end
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module OutroRails
|
|
4
|
+
class ChordChart
|
|
5
|
+
class Voicing < ApplicationRecord
|
|
6
|
+
self.table_name = "outro_rails_chord_chart_voicings"
|
|
7
|
+
|
|
8
|
+
enum :instrument, Instruments::ENUM_VALUES
|
|
9
|
+
|
|
10
|
+
belongs_to :chord_chart,
|
|
11
|
+
class_name: "OutroRails::ChordChart",
|
|
12
|
+
inverse_of: :voicings
|
|
13
|
+
belongs_to :chord, class_name: "OutroRails::Chord"
|
|
14
|
+
belongs_to :chord_voicing, class_name: "OutroRails::ChordVoicing"
|
|
15
|
+
|
|
16
|
+
before_validation :normalize_bass
|
|
17
|
+
|
|
18
|
+
validates :instrument, presence: true
|
|
19
|
+
validates :bass,
|
|
20
|
+
format: { with: /\A(?:#{Theory::NoteName::NAME_PATTERN})?\z/,
|
|
21
|
+
message: "must be a note name or blank" },
|
|
22
|
+
allow_nil: false
|
|
23
|
+
validates :chord_id,
|
|
24
|
+
uniqueness: { scope: %i[chord_chart_id instrument bass] }
|
|
25
|
+
validate :chord_voicing_matches_chord_and_instrument
|
|
26
|
+
|
|
27
|
+
def self.normalize_bass(value)
|
|
28
|
+
return "" if value.to_s.strip.empty?
|
|
29
|
+
|
|
30
|
+
Theory::NoteName.parse(value).to_s
|
|
31
|
+
rescue ArgumentError
|
|
32
|
+
value.to_s
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
private
|
|
36
|
+
|
|
37
|
+
def normalize_bass
|
|
38
|
+
self.bass = self.class.normalize_bass(bass)
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
def chord_voicing_matches_chord_and_instrument
|
|
42
|
+
return if chord_voicing.blank? || chord.blank?
|
|
43
|
+
|
|
44
|
+
if chord_voicing.chord_id != chord_id
|
|
45
|
+
errors.add(:chord_voicing, "must be a voicing of the selected chord")
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
if chord_voicing.instrument != instrument
|
|
49
|
+
errors.add(:chord_voicing, "must be a #{instrument} voicing")
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module OutroRails
|
|
4
|
+
class ChordChart < ApplicationRecord
|
|
5
|
+
self.table_name = "outro_rails_chord_charts"
|
|
6
|
+
|
|
7
|
+
KEY_OPTIONS = (
|
|
8
|
+
Theory::Key.canonical(:major).map(&:to_s) +
|
|
9
|
+
Theory::Key.canonical(:minor).map(&:to_s)
|
|
10
|
+
).freeze
|
|
11
|
+
|
|
12
|
+
belongs_to :record, polymorphic: true, touch: true
|
|
13
|
+
|
|
14
|
+
has_many :voicings,
|
|
15
|
+
class_name: "OutroRails::ChordChart::Voicing",
|
|
16
|
+
foreign_key: :chord_chart_id,
|
|
17
|
+
inverse_of: :chord_chart,
|
|
18
|
+
dependent: :destroy
|
|
19
|
+
|
|
20
|
+
before_validation :apply_defaults
|
|
21
|
+
|
|
22
|
+
validates :name, presence: true
|
|
23
|
+
validates :artist, presence: true
|
|
24
|
+
validates :song, presence: true
|
|
25
|
+
validates :body, presence: true
|
|
26
|
+
validates :tuning,
|
|
27
|
+
inclusion: { in: Instruments::Guitar::Tunings.slugs },
|
|
28
|
+
allow_blank: true
|
|
29
|
+
validates :capo,
|
|
30
|
+
inclusion: { in: Instruments::Guitar::Capo::FRETS },
|
|
31
|
+
allow_nil: true
|
|
32
|
+
validates :key, inclusion: { in: KEY_OPTIONS }, allow_blank: true
|
|
33
|
+
|
|
34
|
+
def to_key
|
|
35
|
+
Theory::Key.parse(key.presence || "C")
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
def to_tuning
|
|
39
|
+
Instruments::Guitar::Tunings.fetch(tuning)
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def chord_symbols
|
|
43
|
+
Theory::Transposer.scan_chords(body.to_s)
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
def display_chord_symbols(to_key: nil)
|
|
47
|
+
target = to_key.presence || key
|
|
48
|
+
symbols = chord_symbols
|
|
49
|
+
return symbols if symbols.empty? || target.to_s == key.to_s
|
|
50
|
+
|
|
51
|
+
Theory::Transposer.transpose_chords(symbols.join(" "),
|
|
52
|
+
from: self.to_key,
|
|
53
|
+
to: target).split(/\s+/)
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
def display_chords(to_key: nil)
|
|
57
|
+
symbols = display_chord_symbols(to_key: to_key)
|
|
58
|
+
base_symbols = symbols.index_with do |symbol|
|
|
59
|
+
Theory::Transposer.split_bass(symbol).first
|
|
60
|
+
end
|
|
61
|
+
chords = Chord.where(symbol: base_symbols.values.uniq).index_by(&:symbol)
|
|
62
|
+
|
|
63
|
+
symbols.each_with_object({}) do |symbol, found|
|
|
64
|
+
chord = chords[base_symbols[symbol]]
|
|
65
|
+
found[symbol] = chord if chord
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
def voicing_for(chord, instrument, transposed: false, bass: nil)
|
|
70
|
+
unless transposed
|
|
71
|
+
selection_bass = Voicing.normalize_bass(bass)
|
|
72
|
+
selection = voicings.detect do |candidate|
|
|
73
|
+
candidate.chord_id == chord.id &&
|
|
74
|
+
candidate.instrument == instrument.to_s &&
|
|
75
|
+
candidate.bass == selection_bass
|
|
76
|
+
end
|
|
77
|
+
return selection.chord_voicing if selection
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
default_voicing_for(chord, instrument, bass: bass)
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
def default_voicing_for(chord, instrument, bass: nil)
|
|
84
|
+
voicings = chord.voicings
|
|
85
|
+
.where(instrument: instrument)
|
|
86
|
+
.order(:position)
|
|
87
|
+
|
|
88
|
+
if bass.present?
|
|
89
|
+
bass_pitch_class = Theory::NoteName.parse(bass).pitch_class
|
|
90
|
+
slash_voicing = voicings.detect do |voicing|
|
|
91
|
+
voicing.bass_pitch_class == bass_pitch_class
|
|
92
|
+
end
|
|
93
|
+
return slash_voicing if slash_voicing
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
voicings.first
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
private
|
|
100
|
+
|
|
101
|
+
def apply_defaults
|
|
102
|
+
self.tuning = Instruments::Guitar::Tunings::DEFAULT_SLUG if tuning.blank?
|
|
103
|
+
self.key = "C" if key.blank?
|
|
104
|
+
end
|
|
105
|
+
end
|
|
106
|
+
end
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
module OutroRails
|
|
2
|
+
class ChordVoicing < ApplicationRecord
|
|
3
|
+
enum :instrument, Instruments::ENUM_VALUES
|
|
4
|
+
|
|
5
|
+
serialize :display_data, coder: JSON
|
|
6
|
+
serialize :notes, coder: JSON, type: Array
|
|
7
|
+
|
|
8
|
+
belongs_to :chord,
|
|
9
|
+
class_name: "OutroRails::Chord",
|
|
10
|
+
inverse_of: :voicings
|
|
11
|
+
|
|
12
|
+
validates :bass_pitch_class,
|
|
13
|
+
inclusion: { in: 0..11 },
|
|
14
|
+
allow_nil: true
|
|
15
|
+
validates :instrument, presence: true
|
|
16
|
+
validates :position,
|
|
17
|
+
presence: true,
|
|
18
|
+
uniqueness: {
|
|
19
|
+
scope: %i[chord_id instrument],
|
|
20
|
+
message: "already exists for this chord and instrument"
|
|
21
|
+
}
|
|
22
|
+
validates :symbol, presence: true
|
|
23
|
+
|
|
24
|
+
scope :for_instrument, ->(instrument) { where(instrument: instrument) }
|
|
25
|
+
|
|
26
|
+
def self.find_by_param(param)
|
|
27
|
+
*slug_parts, instrument, position = param.to_s.split("-")
|
|
28
|
+
chord = Chord.find_by(slug: slug_parts.join("-"))
|
|
29
|
+
|
|
30
|
+
chord&.voicings&.find_by(instrument: instrument, position: position.to_i)
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def to_param
|
|
34
|
+
"#{chord.slug}-#{instrument}-#{position}"
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def preferred_accidentals
|
|
38
|
+
Theory::NoteName.preferred_accidentals(Array(notes))
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
def display_notes
|
|
42
|
+
Array(notes).join(" - ")
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<title>
|
|
5
|
+
<% if content_for?(:title) %>
|
|
6
|
+
<%= yield(:title) %> | Outro
|
|
7
|
+
<% else %>
|
|
8
|
+
Outro
|
|
9
|
+
<% end %>
|
|
10
|
+
</title>
|
|
11
|
+
|
|
12
|
+
<meta charset="utf-8">
|
|
13
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
14
|
+
|
|
15
|
+
<%= csrf_meta_tags %>
|
|
16
|
+
<%= csp_meta_tag %>
|
|
17
|
+
|
|
18
|
+
<%= stylesheet_link_tag 'outro_rails/outro_rails' %>
|
|
19
|
+
<%= javascript_include_tag 'outro_rails/outro_rails', defer: true %>
|
|
20
|
+
|
|
21
|
+
<%= yield :head %>
|
|
22
|
+
</head>
|
|
23
|
+
|
|
24
|
+
<body class="outro-page">
|
|
25
|
+
<main>
|
|
26
|
+
<%= yield %>
|
|
27
|
+
</main>
|
|
28
|
+
</body>
|
|
29
|
+
</html>
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
<% content_for :title, "CAGED - #{@root} · #{@letter} shape" %>
|
|
2
|
+
|
|
3
|
+
<div class="outro outro-container">
|
|
4
|
+
|
|
5
|
+
<%= render "outro_rails/shared/header",
|
|
6
|
+
title: 'CAGED Shapes',
|
|
7
|
+
subtitle: "#{@letter}-shape chords rooted on #{@root}."
|
|
8
|
+
%>
|
|
9
|
+
|
|
10
|
+
<%= render "outro_rails/shared/breadcrumb", trail: [
|
|
11
|
+
[ "Outro Home", root_path ],
|
|
12
|
+
[ "CAGED Shapes", caged_path ],
|
|
13
|
+
[ "#{@root} · #{@letter} shape" ]
|
|
14
|
+
] %>
|
|
15
|
+
|
|
16
|
+
<%= form_with url: caged_picker_path, method: :get,
|
|
17
|
+
class: "outro-picker" do %>
|
|
18
|
+
<label class="outro-picker__field">
|
|
19
|
+
<span class="outro-label">Root</span>
|
|
20
|
+
<%= select_tag :root,
|
|
21
|
+
options_for_select(scale_root_options, @root.path_slug),
|
|
22
|
+
class: "outro-select",
|
|
23
|
+
onchange: "this.form.requestSubmit()" %>
|
|
24
|
+
</label>
|
|
25
|
+
|
|
26
|
+
<label class="outro-picker__field">
|
|
27
|
+
<span class="outro-label">Shape</span>
|
|
28
|
+
<%= select_tag :shape,
|
|
29
|
+
options_for_select(
|
|
30
|
+
OutroRails::Instruments::Guitar::ChordShapes::CAGED_LETTERS
|
|
31
|
+
.map { |l| [ "#{l} shape", l.downcase ] },
|
|
32
|
+
@letter.downcase
|
|
33
|
+
),
|
|
34
|
+
class: "outro-select",
|
|
35
|
+
onchange: "this.form.requestSubmit()" %>
|
|
36
|
+
</label>
|
|
37
|
+
|
|
38
|
+
<%= button_tag type: :submit, name: nil,
|
|
39
|
+
class: "outro-button",
|
|
40
|
+
"aria-label": "Show Shapes" do %>
|
|
41
|
+
<%= image_tag "outro_rails/shapes.svg", class: 'outro-button__icon' %>
|
|
42
|
+
Show Shapes
|
|
43
|
+
<% end %>
|
|
44
|
+
<% end %>
|
|
45
|
+
|
|
46
|
+
<div class="outro-grid outro-grid--wide">
|
|
47
|
+
<% @entries.each do |entry| %>
|
|
48
|
+
<%
|
|
49
|
+
frets = entry.positions.map(&:last)
|
|
50
|
+
start_fret = frets.min.positive? ? frets.min - 1 : 0
|
|
51
|
+
end_fret = [ frets.max + 1, start_fret + 4 ].max
|
|
52
|
+
|
|
53
|
+
slug = OutroRails::Theory::ChordVocabulary.slug(entry.symbol)
|
|
54
|
+
|
|
55
|
+
detail = entry.quality.to_s.humanize.downcase
|
|
56
|
+
detail += " #{entry.extension}" if entry.extension
|
|
57
|
+
%>
|
|
58
|
+
<section class="outro-card outro-caged-chord">
|
|
59
|
+
<h2 class="outro-caged-chord__heading">
|
|
60
|
+
<%= link_to entry.symbol,
|
|
61
|
+
chord_path(slug),
|
|
62
|
+
class: "outro-caged-chord__symbol" %>
|
|
63
|
+
<small class="outro-caged-chord__detail">
|
|
64
|
+
<%= detail %>
|
|
65
|
+
· <%= entry.shape.name.to_s.tr("_", " ") %> shape
|
|
66
|
+
</small>
|
|
67
|
+
</h2>
|
|
68
|
+
|
|
69
|
+
<%= render "outro_rails/instruments/guitar_midi",
|
|
70
|
+
start_fret: start_fret,
|
|
71
|
+
end_fret: end_fret,
|
|
72
|
+
highlight_frets: entry.positions,
|
|
73
|
+
root_frets: entry.root_positions,
|
|
74
|
+
prefer: @prefer.to_s %>
|
|
75
|
+
</section>
|
|
76
|
+
<% end %>
|
|
77
|
+
</div>
|
|
78
|
+
</div>
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
<% content_for :title, "Capo Chart - #{capo_fret_label(@fret)}" %>
|
|
2
|
+
|
|
3
|
+
<div class="outro outro-container">
|
|
4
|
+
|
|
5
|
+
<%= render "outro_rails/shared/header",
|
|
6
|
+
title: 'Guitar Capo Chart',
|
|
7
|
+
subtitle: 'Pick a capo position to see what each open shape actually
|
|
8
|
+
sounds like.'
|
|
9
|
+
%>
|
|
10
|
+
|
|
11
|
+
<%= render "outro_rails/shared/breadcrumb", trail: [
|
|
12
|
+
[ "Outro Home", root_path ],
|
|
13
|
+
[ "Guitar Capo Chart" ]
|
|
14
|
+
] %>
|
|
15
|
+
|
|
16
|
+
<div class="outro-panel outro-filters">
|
|
17
|
+
<span class="outro-label" id="capo-position-label">Capo position</span>
|
|
18
|
+
<nav class="outro-chip-row outro-capo-frets"
|
|
19
|
+
aria-labelledby="capo-position-label">
|
|
20
|
+
<% OutroRails::Instruments::Guitar::Capo::FRETS.each do |fret| %>
|
|
21
|
+
<% if fret == @fret %>
|
|
22
|
+
<span class="outro-chip outro-chip--current" aria-current="true">
|
|
23
|
+
<span class="outro-chip__label"><%= capo_fret_label(fret) %></span>
|
|
24
|
+
</span>
|
|
25
|
+
<% else %>
|
|
26
|
+
<%= link_to capo_fret_path(fret),
|
|
27
|
+
class: "outro-chip outro-chip--link" do %>
|
|
28
|
+
<span class="outro-chip__label"><%= capo_fret_label(fret) %></span>
|
|
29
|
+
<% end %>
|
|
30
|
+
<% end %>
|
|
31
|
+
<% end %>
|
|
32
|
+
</nav>
|
|
33
|
+
</div>
|
|
34
|
+
|
|
35
|
+
<section class="outro-card">
|
|
36
|
+
<h2 class="outro-section-heading">
|
|
37
|
+
<%= @fret.zero? ? "Capo off" : "Capo on fret #{@fret}" %>
|
|
38
|
+
<% if @fret.zero? %>
|
|
39
|
+
<span class="outro-symbol-list__detail">open position</span>
|
|
40
|
+
<% end %>
|
|
41
|
+
</h2>
|
|
42
|
+
|
|
43
|
+
<div class="outro-table-scroll">
|
|
44
|
+
<table class="outro-table outro-capo-chart">
|
|
45
|
+
<thead>
|
|
46
|
+
<tr>
|
|
47
|
+
<th scope="col">Shape</th>
|
|
48
|
+
<th scope="col">Sounds like</th>
|
|
49
|
+
</tr>
|
|
50
|
+
</thead>
|
|
51
|
+
<tbody>
|
|
52
|
+
<% @rows.each do |shape, sounding| %>
|
|
53
|
+
<tr>
|
|
54
|
+
<td>Shape <%= shape.caged_letter %></td>
|
|
55
|
+
<td class="outro-table__symbol"><%= sounding %></td>
|
|
56
|
+
</tr>
|
|
57
|
+
<% end %>
|
|
58
|
+
</tbody>
|
|
59
|
+
</table>
|
|
60
|
+
</div>
|
|
61
|
+
</section>
|
|
62
|
+
</div>
|