3 texidoc = " Chord names are generated from a list pitches. The
4 functions constructing the names are customisable. This file shows
5 Jazz chords. Compare with chords-ignatzek.ly
9 chs = \notes \transpose c c'
12 <<c es g>>% m = minor triad
17 <<c e g b>> % triangle = maj
23 <<c es ges bes>>\break
24 <<c e g a>> % 6 = major triad with added sixth
25 <<c es g a>> % m6 = minor triad with added sixth
27 <<c es g bes d'>> \break
28 <<c es g bes d' f' a' >>
31 <<c e g bes des' >> \break
35 <<c e g bes d' f' a'>>\break
36 <<c e g bes d' fis' as'>>
38 <<c e g bes dis' fis'>>
39 <<c e g bes d' f' as'>>\break
40 <<c e g bes des' f' as'>>
43 <<c e g bes d' f' as'>>\break
44 <<c e g bes des' f' as'>>
45 <<c e g bes des' f' a'>>
47 <<c e g b d' f' a'>>\break
49 <<c e g bes des' f ' a'>>
58 <<c e gis>>1-\markup { "+" }
59 <<c e g b>>-\markup { \normal-size-super
60 % \override #'(font-family . math) "N" }
61 \override #'(font-family . math) "M" }
62 %%c:3.5.7 = \markup { \override #'(font-family . math) "M" }
63 %%c:3.5.7 = \markup { \normal-size-super "maj7" }
65 <<c es ges>>-\markup { \super "o" } % should be $\circ$ ?
66 <<c es ges bes>>-\markup { \super \combine "o" "/" }
67 <<c es ges beses>>-\markup { \super "o7" }
70 efull = #(sequential-music-to-chord-exceptions efullmusic #f)
72 epartialmusic = \notes{
73 <<c d>>1-\markup { \normal-size-super "2" }
74 <<c es>>-\markup { "m" }
75 <<c f>>-\markup { \normal-size-super "sus4" }
76 <<c g>>-\markup { \normal-size-super "5" }
78 %% TODO, partial exceptions
79 <<c es f>>-\markup { "m" }-\markup { \normal-size-super "sus4" }
80 <<c d es>>-\markup { "m" }-\markup { \normal-size-super "sus2" }
83 epartial = #(sequential-music-to-chord-exceptions epartialmusic #f)
91 \property ChordNames.chordNameFunction = #double-plus-new-chord->markup
92 \property ChordNames.chordNameStyle = #'jazz
95 \property ChordNames.majorSevenSymbol = #whiteTriangleMarkup
96 \property ChordNames.chordNameSeparator = #(make-simple-markup "/")
97 \property ChordNames.chordNameExceptionsFull = #efull
98 \property ChordNames.chordNameExceptionsPartial = #epartial
101 %%\property ChordNames.chordNoteNamer = #'step->markup-ignatzek
102 %%chordRootNamer = #note-name->markup
104 #(set-chord-name-style 'jazz)
108 \context Staff \notes \transpose c c { \chs }
113 ChordName \override #'word-space = #1