The most important thing to understand about the way Lilypond does chords,
is that there are three completely different parts.

1) Input syntax
2) Note sets
3) Chord symbols


1) Input syntax

To ask why writing "Csus" does not produce "Csus"?
Is to ask the wrong question.

Because the Input syntax for Lilypond is *not* the same as writing chord
changes.
It is its own special format.

You might complain, why invent another format?  Well, this input format
happens to be very well-defined:  there is only one valid interpretation of
*what notes are in the specified chord*.   Which is the entire point of
this syntax, to offer a shorthand for entering *sets of notes*.

(This is *not* the same thing as specifying the *type* of chord, since--as
many folks have opined--characterizing chords is not well-defined in many
cases.)


The input format is basically like:
[ root ][ duration ] : [ standard modification ] [ highest interval in
chord ] . [ additions and modifications ]

(I am not paying attention to deletions now because I am not familiar
enough with using them to generalize, and they are not part of common usage
of chord symbols.  Plus, anything that can be done with deletions can be
written explicitly in some other constructive way.)

So, "Csus" does not conform to the input syntax.   If you need anything
besides a major triad, you need to have the colon, and then the appropriate
additions and modifications.


Regarding using the syntax, the first thing to ask is, "what is the highest
interval in this chord"?  Which is to say, the highest interval that is
built on thirds.

The reason "C:5" is identical to a major chord is that the "5" is
specifying that the highest interval in the chord is the 5th.  So, you get
1 3 5.

In both of your examples, Csus and C5, there are *no* stacked thirds in the
"chord", so the first number you need to specify after the colon is "1".
Otherwise, you will get a 3rd.


Then, for every other note you need to add, you add a period and the
number, and optional +/- if it is an altered notes.

For the C5 chord, you would add the 5:  "C:1.5"
For the Csus chord, you would add the 4 and 5: "C:1.4.5"


The other approach  is to use modifications rather than additions.

The "standard modification" refers to things that lilypond recognized like
min, aug, dim, susX, which have well-known interpretations ( aug => raise
5th, min => lowered 3rd, , susX => replace 3rd with X, etc.)

Most modifications can also be notated by speciyfing the highest interval,
then modifying the elements afterword:
C:aug7 <==> C:7.5+
C:min <==> C:5.3-

An exception to this is sus.  Logically, I might expect this to work, but
doesn't:
C:sus4 <==> C:5.3+



2) Note sets

So, once you have your input syntax, lilypond converts that into note sets.
So, "C:1.4.5" becomes <c f g>.

This is why you can have lilypond determine chord symbols from explicitly
written chords:  because the chordal input syntax transforms to this same
format, as an intermediate format.

So, if you already have the note sets, you can transform them into chord
symbols.

>From the point of view of fiddling with chord symbols, however, you won't
have to deal with this intermediate format.

But it is important to realize that this format is the lingua franca of
Lilypond chords.  Your input syntax gets transformed to note sets first,
and then the note sets are what are used to define the chord symbols.


3) Chord symbols

The identification of what chord symbols to print is done as a mapping from
the note sets to markup.

This is a mapping from the note sets (like <c f g>) to markup (both symbols
as well as formatting, for things like superscript)

If you don't like the markup Lilypond uses, you need to write custom chord
exceptions.

My explanation for doing that is available at
http://flaminghakama.com/flaming-lilypond-chords



The final comment I have is related to your statement:
"For me it is logic to understand, that c:sus will suspend the 3."

That is a correct *musical* interpretation of Csus. (In my opinion.)

Unfortunately, lilypond does not have a musical interpretation of sus.
Lilypond requires you to explicitly specify an interval to replace the 3rd
with.

I suppose that this is because some people (and Lilypond) think that C:sus2
is equally as valid or usual interpretation of "sus", and therefore
pretends that "sus" is not a well defined chord modification by itself.

Hence, if you are using modifications, why you need to say C:sus4 instead
of C:sus



HTH,


David Elaine Alt
415 . 341 .4954                                           "*Confusion is
highly underrated*"
ela...@flaminghakama.com
self-immolation.info
skype: flaming_hakama
Producer ~ Composer ~ Instrumentalist
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to