[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
- Chords in LilyPond,
Charles Winston <=