Add key signature highlighting
In the #workshop channel of the FamiTracker Discord server on 2017-12-17, sc00pj0hn wrote:
the good thing about hookpad is that it seems i can hold my notes to a key of the song, while when trying to make a original song without something like that it can be road off
This wouldn't be a bad idea for Dn-FamiTracker either.
For each song, the user would specify a key signature (e.g. G major or D minor). The user could also choose to override the key using bookmarks. Then the tracker would highlight notes differently if the note is out of the key and not in a noise or DPCM channel.
The twelve major keys have seven notes (0-2-4-5-7-9-11 semitones above tonic). The twelve minor keys have eight notes (0-2-3-5-7-8-10-11), the union of the natural minor (Aeolian mode) and the harmonic minor. Examples:
- C major: C-, D-, E-, F-, G-, A-, B-
- E major: E-, F#, G#, A-, B-, C#, D#
- A minor: A-, B-, C-, D-, E-, F-, G-, G#
- C minor: C-, D-, D#, F-, G-, G#, A#, B-
Related:
- Original feature request on 0CC-FamiTracker issue tracker via Wayback Machine
- #41 Choose sharps and flats for note spellings
Also related: https://github.com/nyanpasu64/j0CC-FamiTracker/issues/70
I'm interested in this. I've always been very confused about how music works. I would love to be able to see things like this in demo songs to see how it's used.
Aside from the common major and minor scales, what other scales are to be considered? how to deal with scales that are different when going up vs when going down? (ascending & descending harmonic minor)