Based on the discussion about minor chords, I had some more general
comments about how lilypond does (or does not) handle chord symbol notation.


Regardless of which symbol choice you make for how to identify chord types,
there are many details of readable chord notation typography that lilypond
does not attempt.  We all seem to complain about symbol choice, but that is
not what makes default lilypond chord symbol output wanting.

For example, complaints about not being able to see a dash as a minor could
simply mean that your dash is too small and thin, and/or it is not
sufficiently separated from the other symbols.  There is nothing
"unseeable" about a dash--in fact, em dashes are among the widest
characters in any font.  I have seen far more instances of people
misreading "G" as "C" or vice versa due to sloppy handwriting than I have
with people not seeing or misreading a dash.


Here is some of what I have identified as good typographic standards (based
on having to tweak lilypond to reconstruct professional looking chord
symbols) that helps clarify the parsing of chord symbols, regardless of
what symbols you choose for chord flavor:

1) Different relative size between: the letter/symbol used to name the
root, the chord type identifiers (maj, min, 7 etc.), and
extensions/alterations. (Incidentally, I treat a the "7" for a dominant as
a chord type identifier, not an extension).

2) Horizontal space after the chord root name/symbols

3) Vertical space below chord type symbols as well as
extensions/alterations


I use a customized chord definition file to handle these treatments, and I
also choose a bolder font for chords, and set an appropriate font size.

On the one hand, once you have a decent file to define your chExceptions,
you are pretty much done.  However, it might be nice if lilypond could
understand these categorical differences in symbol treatment to help make
the default output better, as well as to be able to switch fonts without
having to retweak symbol placements as much.

I am curious to hear if anyone has considered or encountered these aspects
of chord symbol typography.   Or, is there a way to simplify or generalize
the tweaks I use so that it is more robust.


I am including my chord file, so you can see how all this fussiness works
in practice.

You may note that I prefer the symbols language (triangle=major,
dash=minor, circle=diminished, plus=augmented, empty set=half diminished,
7=dominant), because I believe it to be the most consistent, complete,
compact and unambiguous set of symbols, and is fully well-understood by the
communities that I work with.



\version "2.14.1"
\include "english.ly"

flamingChordNames = {

% Major
<c e g b>1-\markup { \raise #0.7 { \magnify #0.5 { " " \triangle ##f }
\normalsize 7 } }
<c e g b d'>1-\markup { \raise #0.7 { \magnify #0.5 { " " \triangle ##f }
\normalsize 9 } }
<c e g b d' a'>1-\markup { \raise #0.7 { \magnify #0.5 { " " \triangle ##f
} \normalsize 13 } }
<c e g a d'>1-\markup { \super "6(add9)" }
<c e g b aflat'>1-\markup { \raise #0.7 { \magnify #0.5 { " " \triangle ##f
} \normalsize b13 } }

% Minor
<c eflat g>1-\markup { \raise #0.6 { \magnify #0.2 { "  " } \tiny { \char
##x2013 } \magnify #10 { "  " } } }
<c eflat g a>1-\markup { \raise #0.6 { \magnify #0.2 { "  " } \tiny { \char
##x2013 } \magnify #0.2 { "  " }} \raise #0.7 \normalsize 6 }
<c eflat g bflat>1-\markup { \raise #0.6 { \magnify #0.2 { "  " } \tiny {
\char ##x2013 } \magnify #0.1 { "  " }} \raise #0.7 \normalsize 7 }

<c eflat g b>1-\markup { \raise #0.6 { \magnify #0.2 { "  " } \tiny { \char
##x2013 } \magnify #0.1 { "  " }} \raise #0.7 {  \magnify #0.5 { " "
\triangle ##f } \small 7 } }

<c eflat g bflat d'>1-\markup { \raise #0.6 { \magnify #0.2 { "  " } \tiny
{ \char ##x2013 } \magnify #0.1 { "  " }} \raise #0.7 \normalsize 9 }
<c eflat g bflat d' a'>1-\markup { \raise #0.6 { \magnify #0.2 { "  " }
\tiny { \char ##x2013 } \magnify #0.1 { "  " }} \raise #0.7 \normalsize 13 }

% minor7 b13 as "-7 b13"
% <c eflat g bflat aflat'>1-\markup { \raise #0.6 { \magnify #0.2 { "  " }
\tiny { \char ##x2013 } \magnify #0.1 { "  " }} \raise #0.7 { \normalsize 7
} \raise #0.9 { \small b13 } }

% minor7 b13 as "- b13"
<c eflat g bflat aflat'>1-\markup { \raise #0.6 { \magnify #0.2 { "  " }
\tiny { \char ##x2013 } \magnify #0.1 { "  " }} \raise #0.9 { \small "
b13" } }
<c eflat g bflat d' aflat'>1-\markup { \raise #0.6 { \magnify #0.2 { "  " }
\tiny { \char ##x2013 } \magnify #0.1 { "  " }} \raise #0.7 \normalsize "9
b13" }

% Dominant (but not lydian dominant)
<c e g a>1-\markup { \raise #0.7 { \normalsize 6 } }
<c e g bflat>1-\markup { \raise #0.7 { \normalsize 7 } }
<c e g bflat d'>1-\markup { \raise #0.7 { \normalsize 9 } }
<c e g bflat dflat'>1-\markup { \raise #0.7 { \normalsize 7 } \raise #0.9 {
\small " b9" } }
<c e g bflat dsharp'>1-\markup { \raise #0.7 { \normalsize 7 } \raise #0.9
{ \small " #9" } }
<c e g bflat csharp' dsharp'>1-\markup { \raise #0.7 { \normalsize 7 }
\raise #3.9 { \tiny \center-column { \lower #1.25 { " b9" } " #9" } } }
<c e g bflat d' a'>1-\markup { \raise #0.7 { \normalsize 13 } }
<c e g bflat dflat' a'>1-\markup { \raise #0.7 { \normalsize 13 } \raise
#0.9 { \small " b9" } }
<c e g bflat aflat'>1-\markup { \raise #0.7 { \normalsize 7 } \raise #0.9 {
\small " b13" } }
<c e g bflat d' aflat'>1-\markup { \raise #0.7 { \normalsize 9 } \raise
#0.9 { \small " b13" } }

% Dominant b5
<c e gflat bflat>1-\markup { \raise #0.7 { \normalsize 7 } \raise #1.0 {
\small " b5" } }
<c e gflat bflat dflat'>1-\markup { \raise #0.7 { \normalsize 7 } \raise
#1.0 { \small " b5" } \raise #1.0 { \small " b9" } }

% Half-diminished
<c eflat gflat bflat>1-\markup { \raise #0.5 { \magnify #0.85 \char ##x2205
} }
<c eflat gflat bflat csharp'>1-\markup { \raise #0.5 { \magnify #0.85 \char
##x2205 } }
<c eflat gflat bflat a'>1-\markup { \raise #0.5 { \magnify #0.85 \char
##x2205 } \raise #0.5 { \normalsize 13 } }

% Augmented
<c e gsharp>1-\markup { \raise #0.4 { \magnify #1.3 { + } } }
<c e gsharp bflat>1-\markup { \raise #0.4 { \magnify #1.3 { + } } \raise
#0.5 { \normalsize 7 } }
<c e gsharp bflat d'>1-\markup { \raise #0.4 { \magnify #1.3 { + } } \raise
#0.5 { \normalsize 9 } }
<c e gsharp bflat fsharp'>1-\markup { \raise #0.4 { \magnify #1.3 { + } }
\raise #0.5 { \magnify #1.2 { \normalsize 7 } } \raise #1.0 \tiny " #11" }
<c e gsharp bflat dflat'>1-\markup { \raise #0.4 { \magnify #1.3 { + } }
\raise #0.5 { \normalsize 7 } \raise #0.9 { \small " b9" } }
<c e gsharp bflat d' a'>1-\markup { \raise #0.4 { \magnify #1.3 { + } }
\raise #0.5 { \normalsize 13 } }

% Lydian
%<c e g b fsharp'>1-\markup { \raise #1.0 \small " lyd" }
<c e g b fsharp'>1-\markup { \raise #1.0 \tiny "  #11" }
<c e g b d' fsharp'>1-\markup { \raise #0.7 { \magnify #0.5 { " " \triangle
##f } } \raise #3.4 { \teeny \center-column { \lower #1.25 { " 9" } " #11"
} } }
<c e g b d' fsharp' a'>1-\markup { \raise #0.7 { \magnify #0.5 { " "
\triangle ##f } } \raise #3.4 { \teeny \center-column { \lower #1.25 { "
13" } " #11" } } }
<c e g bflat fsharp'>1-\markup { \raise #0.5 { \magnify #1.2 { \normalsize
7 } } \raise #1.0 \tiny " #11" }

% Suspended
<c f g>1-\markup { \raise #0.7 { \normalsize "sus" } }
<c f g bflat>1-\markup { \raise #0.4 { \small "sus" } \raise #0.5 {
\normalsize 7 } }
<c f g bflat d'>1-\markup { \raise #0.4 { \small "sus" } \raise #1.0 \small
9 }
<c f g dflat'>1-\markup { \raise #0.4 { \small "sus" } \raise #1.0 \small "
b9" }
<c f g bflat dflat'>1-\markup { \raise #0.4 { \small " sus" } \raise #0.5 {
\normalsize 7 } \raise #1.0 \small " b9" }
<c f gflat bflat dflat'>1-\markup { \raise #0.4 { \small " sus" } \raise
#0.5 { \normalsize 7 } \raise #1.0 \small " b5" \raise #1.0 \small " b9" }
}
chExceptions = #(append (sequential-music-to-chord-exceptions
flamingChordNames #t) ignatzekExceptions)



Regards,


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

Reply via email to