lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Chords in LilyPond


From: Charles Winston
Subject: Chords in LilyPond
Date: Wed, 24 May 2017 18:17:44 -0400

Hi LilyPond users,

I’m participating in the Google Summer of Code working on improving LilyPond’s 
internal representation of chords. The goal here is to create a data structure 
that will represent a chord’s semantics beyond just a list of notes in the 
chord. The current representation contains almost no information other than a 
list of notes, and we want to change this to include other semantic 
information, i.e. the root, quality, extensions. The current representation 
causes the chord naming process to infer the correct name from only the notes 
in the chord, which can create some problems—it would be much better to 
maintain the information provided by the user in chord mode about the semantics 
of the chord through to the naming process. Here is a rough list of semantic 
information I believe should be included in the data structure:

        root note
        quality (major, minor, augmented, diminished)
        extension (7, 9, 11, 13, etc.)
        added notes (6, 9, etc.)
        suspensions (sus4, sus2, etc.)
        alterations (flat-5, sharp-9, etc.)
        omitted notes
        added bass note
        inversions

Some things that should be thought about:

        Is the 7 an extension? Or included in the quality the chord? Or maybe 
something else?
        How do we deal with semantics that may overlap between these 
categories? For example: is a sharp-5 an alteration or just an augmented chord?
        What else do we want to include? This list certainly isn’t exhaustive. 
We probably want to support more complete chord structures, one example being 
polytonal/stacked chords (like Cmaj / Bbmaj). One issue is that these complex 
structures have a higher degree of ambiguity and can often be names in multiple 
different ways. This is something that should be addressed.

I would love to hear any ideas from the user community about this. And beyond 
the specific issues I’m talking about here, what aspects of LilyPond’s support 
for chords do you believe should be improved or changed?

I hope many of you are excited about this conversation. I am certainly excited 
to start working on it!

Best,
Charles Winston


reply via email to

[Prev in Thread] Current Thread [Next in Thread]