Module: OutroRails::TransposerHelper
- Included in:
- ChordChartsHelper
- Defined in:
- app/helpers/outro_rails/transposer_helper.rb
Instance Method Summary collapse
- #semitone_shift_label(semitones) ⇒ Object
- #transposer_key_options ⇒ Object
- #transposer_mode_options ⇒ Object
Instance Method Details
#semitone_shift_label(semitones) ⇒ Object
20 21 22 23 24 25 |
# File 'app/helpers/outro_rails/transposer_helper.rb', line 20 def semitone_shift_label(semitones) return "same key (0 semitones)" if semitones.zero? label = "+#{semitones} #{"semitone".pluralize(semitones)} up" semitones > 6 ? "#{label} (−#{12 - semitones} down)" : label end |
#transposer_key_options ⇒ Object
13 14 15 16 17 18 |
# File 'app/helpers/outro_rails/transposer_helper.rb', line 13 def { "Major keys" => Theory::Key.canonical(:major).map(&:to_s), "Minor keys" => Theory::Key.canonical(:minor).map(&:to_s) } end |
#transposer_mode_options ⇒ Object
5 6 7 8 9 10 11 |
# File 'app/helpers/outro_rails/transposer_helper.rb', line 5 def [ [ "Chords → Chords (new key)", "chords_to_chords" ], [ "Chords → Nashville Numbers", "chords_to_nashville" ], [ "Nashville Numbers → Chords", "nashville_to_chords" ] ] end |