1 @c -*- coding: utf-8; mode: texinfo; -*-
3 Translation of GIT committish: FILL-IN-HEAD-COMMITTISH
5 When revising a translation, copy the HEAD committish of the
6 version that you are working on. See TRANSLATION for details.
13 @section Chord notation
24 @subsection Modern chords
28 * Entering chord names::
31 * Printing chord names::
38 @subsubsection Chord modes
40 In popular music it is common to denote accompaniment with chord
41 names. Such chords can be entered like notes,
43 @lilypond[verbatim,quote,ragged-right]
44 \chordmode { c2 f4. g8 }
47 Now each pitch is read as the root of a chord instead of a note.
48 This mode is switched on with @code{\chordmode}. Other chords can
49 be created by adding modifiers after a colon. The following
50 example shows a few common modifiers:
52 @lilypond[verbatim,quote,ragged-right]
53 \chordmode { c2 f4:m g4:maj7 gis1:dim7 }
58 In chord mode sets of pitches (chords) are entered with normal note
59 names. A chord is entered by the root, which is entered like a
62 @lilypond[quote,ragged-right,fragment,verbatim]
63 \chordmode { es4. d8 c2 }
67 The mode is introduced by the keyword @code{\chordmode}.
72 Chords is a mode similar to @code{\lyricmode}, etc. Most
73 of the commands continue to work, for example, @code{r} and
74 @code{\skip} can be used to insert rests and spaces, and property
75 commands may be used to change various settings.
76 It uses the same syntax as
77 @code{\chordmode}, but renders the notes in a @code{ChordNames}
78 context, with the following result:
80 @lilypond[verbatim,quote,ragged-right]
81 \chords { c2 f4.:m g4.:maj7 gis8:dim7 }
87 Each step can only be present in a chord once. The following
88 simply produces the augmented chord, since @code{5+} is interpreted
91 @lilypond[quote,ragged-right,verbatim,fragment]
92 \chordmode { c:5.5-.5+ }
96 @node Entering chord names
97 @subsubsection Entering chord names
100 LilyPond has support for printing chord names. Chords may be entered
101 in musical chord notation, i.e., @code{< .. >}, but they can also be
102 entered by name. Internally, the chords are represented as a set of
103 pitches, so they can be transposed
106 @lilypond[quote,ragged-right,verbatim,ragged-right]
107 twoWays = \transpose c c' {
116 << \new ChordNames \twoWays
117 \new Voice \twoWays >>
120 This example also shows that the chord printing routines do not try to
121 be intelligent. The last chord (@code{f bes d}) is not interpreted as
124 Note that the duration of chords must be specified outside the
131 @node Building chords
132 @subsubsection Building chords
134 Other chords may be entered by suffixing a colon and introducing a
135 modifier (which may include a number if desired)
137 @lilypond[quote,fragment,verbatim]
138 \chordmode { e1:m e1:7 e1:m7 }
141 The first number following the root is taken to be the @q{type} of the
142 chord, thirds are added to the root until it reaches the specified
143 number. The exception is @code{c:13}, for which the 11 is omitted.
145 @lilypond[quote,fragment,verbatim]
146 \chordmode { c:3 c:5 c:6 c:7 c:8 c:9 c:10 c:11 c:13 }
149 @cindex root of chord
150 @cindex additions, in chords
151 @cindex removals, in chords
153 More complex chords may also be constructed adding separate steps
154 to a chord. Additions are added after the number following
155 the colon and are separated by dots
157 @lilypond[quote,verbatim,fragment]
158 \chordmode { c:5.6 c:3.7.8 c:3.6.13 }
161 Chord steps can be altered by suffixing a @code{-} or @code{+} sign
164 @lilypond[quote,verbatim,fragment]
165 \chordmode { c:7+ c:5+.3- c:3-.5-.7- }
168 Removals are specified similarly and are introduced by a caret. They
169 must come after the additions
171 @lilypond[quote,verbatim,fragment]
172 \chordmode { c^3 c:7^5 c:9^3.5 }
175 Modifiers can be used to change pitches. The following modifiers are
180 The minor chord. This modifier lowers the 3rd and (if present) the 7th step.
183 The diminished chord. This modifier lowers the 3rd, 5th and (if present)
187 The augmented chord. This modifier raises the 5th step.
190 The major 7th chord. This modifier raises the 7th step if present.
193 The suspended 4th or 2nd. This modifier removes the 3rd
194 step. Append either @code{2} or @code{4} to add the 2nd or 4th step to
198 Modifiers can be mixed with additions
199 @lilypond[quote,verbatim,fragment]
200 \chordmode { c:sus4 c:7sus4 c:dim7 c:m6 }
203 @cindex modifiers, in chords.
210 Since an unaltered 11 does not sound good when combined with an
211 unaltered 13, the 11 is removed in this case (unless it is added
213 @lilypond[quote,ragged-right,fragment,verbatim]
214 \chordmode { c:13 c:13.11 c:m13 }
219 An inversion (putting one pitch of the chord on the bottom), as well
220 as bass notes, can be specified by appending
221 @code{/}@var{pitch} to the chord
222 @lilypond[quote,ragged-right,fragment,verbatim]
223 \chordmode { c1 c/g c/f }
227 A bass note can be added instead of transposed out of the chord,
228 by using @code{/+}@var{pitch}.
230 @lilypond[quote,ragged-right,fragment,verbatim]
231 \chordmode { c1 c/+g c/+f }
236 @subsubsection Lead sheets
240 For lead sheets, chords are not printed on staves, but as names on
241 a line for themselves. This is achieved by using @code{\chords}
242 instead of @code{\chordmode}.
244 When put together, chord names, lyrics and a melody form a lead
247 @lilypond[verbatim,quote,ragged-right]
249 \chords { c2 g:sus4 f e }
254 \addlyrics { One day this shall be free __ }
260 @node Printing chord names
261 @subsubsection Printing chord names
263 @cindex printing chord names
267 For displaying printed chord names, use the @internalsref{ChordNames} context.
268 The chords may be entered either using the notation
269 described above, or directly using @code{<} and @code{>}
271 @lilypond[quote,verbatim,ragged-right]
273 \chordmode {a1 b c} <d' f' a'> <e' g' b'>
276 \new ChordNames \harmonies
277 \new Staff \harmonies
281 You can make the chord changes stand out by setting
282 @internalsref{ChordNames}.@code{chordChanges} to true. This will only
283 display chord names when there is a change in the chords scheme and at
284 the start of a new line
286 @lilypond[quote,verbatim,ragged-right]
287 harmonies = \chordmode {
288 c1:m c:m \break c:m c:m d
292 \set chordChanges = ##t
294 \new Staff \transpose c c' \harmonies
298 The previous examples all show chords over a staff. This is not
299 necessary. Chords may also be printed separately. It may be necessary
300 to add @internalsref{Volta_engraver} and @internalsref{Bar_engraver}
303 @lilypond[ragged-right,verbatim]
304 \new ChordNames \with {
305 \override BarLine #'bar-size = #4
306 \consists Bar_engraver
307 \consists "Volta_engraver"
309 \chordmode { \repeat volta 2 {
319 The default chord name layout is a system for Jazz music, proposed by
320 Klaus Ignatzek (see @ref{Literature list}). It can be tuned through the
324 @funindex chordNameExceptions
325 @item chordNameExceptions
326 This is a list that contains the chords that have special formatting.
328 The exceptions list should be encoded as
330 @{ <c f g bes>1 \markup @{ \super "7" "wahh" @} @}
333 To get this information into @code{chordNameExceptions} takes a little
334 maneuvering. The following code transforms @code{chExceptionMusic}
335 (which is a sequential music) into a list of exceptions.
337 (sequential-music-to-chord-exceptions chExceptionMusic #t)
342 (sequential-music-to-chord-exceptions chExceptionMusic #t)
345 adds the new exceptions to the default ones, which are defined in
346 @file{ly/@/chord@/-modifier@/-init@/.ly}.
348 For an example of tuning this property, see also
349 @c @lsr{chords,chord@/-name@/-exceptions@/.ly}
350 @cindex exceptions, chord names.
353 @funindex majorSevenSymbol
354 @item majorSevenSymbol
355 This property contains the markup object used for the 7th step, when
356 it is major. Predefined options are @code{whiteTriangleMarkup} and
357 @code{blackTriangleMarkup}. See
358 @c @lsr{chords,chord@/-name@/-major7@/.ly} for an example.
360 @funindex chordNameSeparator
361 @item chordNameSeparator
362 Different parts of a chord name are normally separated by a
363 slash. By setting @code{chordNameSeparator}, you can specify other
365 @lilypond[quote,ragged-right,fragment,verbatim]
366 \new ChordNames \chordmode {
368 \set chordNameSeparator
369 = \markup { \typewriter "|" }
374 @funindex chordRootNamer
376 The root of a chord is usually printed as a letter with an optional
377 alteration. The transformation from pitch to letter is done by this
378 function. Special note names (for example, the German @q{H} for a
379 B-chord) can be produced by storing a new function in this property.
381 @funindex chordNoteNamer
383 The default is to print single pitch, e.g., the bass note, using the
384 @code{chordRootNamer}. The @code{chordNoteNamer} property can be set
385 to a specialized function to change this behavior. For example, the
386 base can be printed in lower case.
388 @funindex chordPrefixSpacer
389 @item chordPrefixSpacer
390 The @q{m} for minor chords is usually printed right after the root of
391 the chord. By setting @code{chordPrefixSpacer}, you can fix a spacer
392 between the root and @q{m}. The spacer is not used when the root
397 The predefined variables @code{\germanChords},
398 @code{\semiGermanChords}, @code{\italianChords} and @code{\frenchChords}
399 set these variables. The effect is
402 @lilypondfile[ragged-right]{chord-names-languages.ly}
404 There are also two other chord name schemes implemented: an alternate
405 Jazz chord notation, and a systematic scheme called Banter chords. The
406 alternate Jazz notation is also shown on the chart in @ref{Chord name
407 chart}. Turning on these styles is demonstrated in
408 @c @lsr{chords,chord-names-jazz.ly}.
417 @funindex \germanChords
418 @code{\germanChords},
419 @funindex \semiGermanChords
420 @code{\semiGermanChords}.
421 @funindex \italianChords
422 @code{\italianChords}.
423 @funindex \frenchChords
424 @code{\frenchChords}.
434 Init files: @file{scm/@/chords@/-ignatzek@/.scm}, and
435 @file{scm/@/chord@/-entry@/.scm}.
440 Chord names are determined solely from the list of pitches. Chord
441 inversions are not identified, and neither are added bass notes. This
442 may result in strange chord names when chords are entered with the
443 @code{< .. >} syntax.
447 @subsection Figured bass
450 * Introduction to figured bass::
455 @node Introduction to figured bass
456 @subsubsection Introduction to figured bass
458 @cindex Basso continuo
460 @c TODO: musicological blurb about FB
462 LilyPond has support for figured bass
464 @lilypond[quote,ragged-right,verbatim,fragment]
466 \new Voice { \clef bass dis4 c d ais g fis}
467 \new FiguredBass \figuremode {
468 < 6 >4 < 7\+ >8 < 6+ [_!] >
475 Although the support for figured bass may superficially resemble chord
476 support, it is much simpler. The @code{\figuremode} mode simply
477 stores the numbers and @internalsref{FiguredBass} context prints them
478 as entered. There is no conversion to pitches and no realizations of
479 the bass are played in the MIDI file.
481 Internally, the code produces markup texts. You can use any of the
482 markup text properties to override formatting. For example, the
483 vertical spacing of the figures may be set with @code{baseline-skip}.
486 @node Entering figures
487 @subsubsection Entering figures
489 The support for figured bass consists of two parts: there is an input
490 mode, introduced by @code{\figuremode}, where you can enter bass figures
491 as numbers, and there is a context called @internalsref{FiguredBass} that
492 takes care of making @internalsref{BassFigure} objects.
494 In figures input mode, a group of bass figures is delimited by
495 @code{<} and @code{>}. The duration is entered after the @code{>}
499 @lilypond[quote,ragged-right,fragment]
501 \figuremode { <4 6> }
504 Accidentals are added when you append @code{-}, @code{!}, and @code{+}
505 to the numbers. A plus sign is added when you append @code{\+}, and
506 diminished fifths and sevenths can be obtained with @code{5/} and @code{7/}.
509 <4- 6+ 7!> <5++> <3--> <7/> r <6\+ 5/>
511 @lilypond[quote,ragged-right,fragment]
512 \figures { <4- 6+ 7!> <5++> <3--> <7/> r <6\+ 5/> }
515 Spaces may be inserted by using @code{_}. Brackets are
516 introduced with @code{[} and @code{]}. You can also include text
517 strings and text markups, see @ref{Text markup commands}.
520 < [4 6] 8 [_! 12] > < 5 \markup @{ \number 6 \super (1) @} >
522 @lilypond[quote,ragged-right,fragment]
524 \figuremode { < [4 6] 8 [_! 12] > < 5 \markup{ \tiny \number 6 \super (1)} > }
528 @node Repeated figures
529 @subsubsection Repeated figures
532 It is also possible to use continuation lines for repeated figures,
534 @lilypond[verbatim,relative=1]
541 \set useBassFigureExtenders = ##t
548 In this case, the extender lines always replace existing figures.
550 The @code{FiguredBass} context doesn't pay attention to the actual
551 bass line. As a consequence, you may have to insert extra figures to
552 get extender lines below all notes, and you may have to add @code{\!}
553 to avoid getting an extender line, e.g.
555 @lilypond[relative=1]
559 \set useBassFigureExtenders = ##t
560 <6 4->4. <6 4->16. <6 4->32 <5>8. r16 <6>8 <6\! 5->
564 f16. g32 f16. g32 f16. g32 f16. g32 f8. es16 d8 es
569 When using continuation lines, common figures are always put in the
570 same vertical position. When this is unwanted, you can insert a rest
571 with @code{r}. The rest will clear any previous alignment. For
572 example, you can write
584 Accidentals and plus signs can appear before or after the numbers,
585 depending on the @code{figuredBassAlterationDirection} and
586 @code{figuredBassPlusDirection}
592 \set figuredBassAlterationDirection = #1
594 \set figuredBassPlusDirection = #1
596 \set figuredBassAlterationDirection = #-1
602 Figured bass can also be added to @code{Staff} contexts
603 directly. In this case, their vertical position is adjusted
606 @lilypond[ragged-right,fragment,quote]
608 \new Staff = someUniqueName
613 %% send to existing Staff.
614 \context Staff = someUniqueName
618 \set Staff.useBassFigureExtenders = ##t
627 By default, this method produces figures above the notes. To get
628 figures below the notes, use
631 \override Staff.BassFigureAlignmentPositioning #'direction = #DOWN
637 When using figured bass above the staff with extender lines and
638 @code{implicitBassFigures} the lines may become swapped around.
639 Maintaining order consistently will be impossible when multiple figures
640 have overlapping extender lines. To avoid this problem, please
641 use @code{stacking-dir} on @code{BassFigureAlignment}.
646 Internals Reference: @internalsref{NewBassFigure},
647 @internalsref{BassFigureAlignment}, @internalsref{BassFigureLine},
648 @internalsref{BassFigureBracket}, and
649 @internalsref{BassFigureContinuation} objects and
650 @internalsref{FiguredBass} context.