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 @file{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'>>
59 <<c e gis>>1-\markup { "+" }
60 <<c e g b>>-\markup { \normal-size-super
61 % \override #'(font-family . math) "N" }
62 \override #'(font-family . math) "M" }
63 %%c:3.5.7 = \markup { \override #'(font-family . math) "M" }
64 %%c:3.5.7 = \markup { \normal-size-super "maj7" }
66 <<c es ges>>-\markup { \super "o" } % should be $\circ$ ?
67 <<c es ges bes>>-\markup { \super \combine "o" "/" }
68 <<c es ges beses>>-\markup { \super "o7" }
71 efull = #(sequential-music-to-chord-exceptions efullmusic #f)
73 epartialmusic = \notes{
74 <<c d>>1-\markup { \normal-size-super "2" }
75 <<c es>>-\markup { "m" }
76 <<c f>>-\markup { \normal-size-super "sus4" }
77 <<c g>>-\markup { \normal-size-super "5" }
79 %% TODO, partial exceptions
80 <<c es f>>-\markup { "m" }-\markup { \normal-size-super "sus4" }
81 <<c d es>>-\markup { "m" }-\markup { \normal-size-super "sus2" }
84 epartial = #(sequential-music-to-chord-exceptions epartialmusic #f)
92 \property ChordNames.chordNameFunction = #double-plus-new-chord->markup
93 \property ChordNames.chordNameStyle = #'jazz
96 \property ChordNames.majorSevenSymbol = #whiteTriangleMarkup
97 \property ChordNames.chordNameSeparator = #(make-simple-markup "/")
98 \property ChordNames.chordNameExceptionsFull = #efull
99 \property ChordNames.chordNameExceptionsPartial = #epartial
102 %%\property ChordNames.chordNoteNamer = #'step->markup-ignatzek
103 %%chordRootNamer = #note-name->markup
104 \property ChordNames.chordNameFunction = #jazz-chord-names
108 \context Staff \notes \transpose c c { \chs }
113 ChordName \override #'word-space = #1