Hi all,

There have been some great discussions about new chord functionality you’d like 
to see in LilyPond. The first step is defining the internal representation. 
From there, I think all these issues can be much more easily solved. We have 
the EventChord structure, which contains an ‘articulations and ‘elements entry. 
The ‘elements entry contains some information about the root and inversion, but 
otherwise it is a list of NoteEvents to be iterated over. My plan is to add a 
‘semantics entry whose elements will be semantic aspects of the chord:

        -root
        -quality of the third (minor, major, none)
        -quality of the fifth (diminished, perfect, augmented, none)
        -extensions (7, 9, 11, etc.)
                        my plan for this is to have a list of extensions, each 
extension associated with a bool indicating its presence in the chord,          
         and associated with an alteration.
        -added notes (6, 9, etc.)
                        implemented similarly to extensions above
        -suspensions (sus4, sus2, etc.)
        -added bass note
        -inversions

Let me know what more should be added to this list.

So after this is implemented, we have an internal representation of a chord, 
EventChord, which contains both note information and semantic information, and 
each of these can be utilized independently in different contexts.

Let me know what you guys think.

Thanks,
Charles
_______________________________________________
lilypond-user mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to