]> git.notmuchmail.org Git - scherzo/commitdiff
Switch to a degree-specific scheme for specifying chord signatures
authorCarl Worth <cworth@cworth.org>
Sun, 22 Sep 2013 22:57:14 +0000 (15:57 -0700)
committerCarl Worth <cworth@cworth.org>
Sun, 22 Sep 2013 22:57:14 +0000 (15:57 -0700)
The old scheme specified each chord signature by the number of half
steps between the root note and each note of the chord. This made it
impossible to distinguish between alternate names of enharmonic chords
(such as an augmented 4th and a diminished 5th which both have 6 half
steps).

The new specification indicates which degree should appear in the
chord, and which modification each degree has, (from -2 to +2 half
steps).

So, under the old scheme an augmented 5th/diminished 4th would appear as:

{0, 6} /* Half steps from root to each note */

And in the new scheme these can be identified separately as:

{{1, 0}, {4, +1}} /* Augmented 4th */
{{1, 0}, {5, -1}} /* Diminished 5th */

We don't yet have much of a user-visibile change with this commit,
(other than that the above interval will now only be identified as a
"Diminished 5th" rathern than the "Augmented 4th/Diminished 5th" we
had before).

But this gives us the necessary information we will need in order to
correctly spell chords on a staff after the chord has been identified.


No differences found