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
15 @lilypondfile[quote]{chords-headword.ly}
17 Chords can be entered either as normal notes or in chord mode and displayed
18 using a variety of traditional European chord naming conventions. Chord
19 names and figured bass notation can also be displayed.
29 @subsection Chord mode
33 Chord mode is used to enter chords using an indicator of the chord
34 structure, rather than the chord pitches.
37 * Chord mode overview::
39 * Extended and altered chords::
42 @node Chord mode overview
43 @unnumberedsubsubsec Chord mode overview
48 Chords can be entered as simultaneous music, as discussed in
51 Chords can also be entered in @qq{chord mode}, which is an input
52 mode that focuses on the structures of chords in traditional
53 European music, rather than on specific pitches. This is
54 convenient for those who are familiar with using chord names to
55 describe chords. More information on different input modes can be
56 found at @ref{Input modes}.
58 @lilypond[verbatim,quote,ragged-right,relative=1]
59 \chordmode { c1 g a g c }
62 Chords entered using chord mode are music elements, and can be
63 transposed just like chords entered using simultaneous music.
64 @code{\chordmode} is absolute, as @code{\relative} has no effect
65 on @code{chordmode} blocks. However, in @code{\chordmode} the
66 absolute pitches are one octave higher than in note mode.
68 Chord mode and note mode can be mixed in sequential music:
70 @lilypond[verbatim,quote,ragged-right,relative=1]
92 When chord mode and note mode are mixed in sequential music, and
93 chord mode comes first, the note mode will create a new @code{Staff}
96 @lilypond[verbatim,quote,ragged-right,relative=1]
101 To avoid this behavior, explicitly create the @code{Staff} context:
103 @lilypond[verbatim,quote,ragged-right,relative=1]
111 @unnumberedsubsubsec Common chords
114 @cindex seventh chords
115 @cindex root of chord
116 @cindex modifiers, in chords.
117 @cindex chord quality
119 Major triads are entered by including the root and an
122 @lilypond[verbatim,quote,relative=1,ragged-right]
123 \chordmode { c2 f4 g }
126 Minor, augmented, and diminished triads are entered by placing
127 @code{:} and a quality modifier string after the duration:
129 @lilypond[verbatim,quote,ragged-right,relative=1]
130 \chordmode { c2:m f4:aug g:dim }
133 Seventh chords can be created:
135 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
136 \chordmode { c1:7 c:m7 c:maj7 c:dim7 c:aug7 }
144 The table belows shows the actions of the quality modifiers on
145 triads and seventh chords. The default seventh step added to
146 chords is a minor or flatted seventh, which makes the dominant
147 seventh the basic seventh chord. All alterations are relative to
148 the dominant seventh. A more complete table of modifier usage
149 is found at @ref{Common chord modifiers}.
152 @multitable @columnfractions .2 .4 .3
164 The default action; produces a major triad.
166 @lilypond[line-width=4\cm, noragged-right]
168 \override Staff.TimeSignature #'stencil = ##f
176 The minor chord. This modifier lowers the 3rd.
178 @lilypond[line-width=4\cm, noragged-right]
180 \override Staff.TimeSignature #'stencil = ##f
189 The diminished chord. This modifier lowers the 3rd, 5th and (if
190 present) the 7th step.
192 @lilypond[line-width=4\cm, noragged-right]
194 \override Staff.TimeSignature #'stencil = ##f
202 The augmented chord. This modifier raises the 5th step.
204 @lilypond[line-width=4\cm, noragged-right]
206 \override Staff.TimeSignature #'stencil = ##f
214 The major 7th chord. This modifier adds a raised 7th step. The
215 @code{7} following @code{maj} is optional. Do NOT use this modifier
216 to create a major triad.
218 @lilypond[line-width=4\cm, noragged-right]
220 \override Staff.TimeSignature #'stencil = ##f
230 @ref{Common chord modifiers},
231 @ref{Extended and altered chords}.
238 Only one quality modifier should be used per chord, typically on the
239 highest step present in the chord. Chords with more than quality
240 modifier will be parsed without an error or warning, but the results
241 are unpredictable. Chords that cannot be achieved with a single
242 quality modifier should be altered by individual pitches, as described
243 in @ref{Extended and altered chords}.
246 @node Extended and altered chords
247 @unnumberedsubsubsec Extended and altered chords
249 @cindex extended chords
250 @cindex altered chords
252 Chord structures of arbitrary complexity can be created in chord
253 mode. The modifier string can be used to extend a chord, add or
254 remove chord steps, raise or lower chord steps, and add a bass note
255 or create an inversion.
257 The first number following the @code{:} is taken to be the extent
258 of the chord. The chord is constructed by sequentially adding
259 thirds to the root until the specified number has been reached.
260 Note that the seventh step added as part of an extended chord will be the
261 minor or flatted seventh, not the major seventh.
262 If the extent is not a third (e.g., 6), thirds are added up to the
263 highest third below the extent, and then the step of the extent is
264 added. The largest possible value for the extent is 13. Any
265 larger value is interpreted as 13.
267 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
277 Note that both @code{c:5} and @code{c} produce a C major triad.
279 Since an unaltered 11 does not sound good when combined with an
280 unaltered 13, the 11 is removed from a @code{:13} chord (unless it
281 is added explicitly).
283 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
289 @cindex additions, in chords
291 Individual steps can be added to a chord. Additions follow the
292 extent and are prefixed by a dot (@code{.}). The basic seventh
293 step added to a chord is the minor or flatted seventh, rather than
296 @lilypond[quote,verbatim,fragment,relative=1]
298 c1:5.6 c:3.7.8 c:3.6.13
302 Added steps can be as high as desired.
304 @lilypond[quote,verbatim,fragment,relative=1]
306 c4:5.15 c:5.20 c:5.25 c:5.30
310 @cindex chord steps, altering
312 Added chord steps can be altered by suffixing a @code{-} or @code{+}
313 sign to the number. To alter a step that is automatically included
314 as part of the basic chord structure, add it as an altered step.
316 @lilypond[quote,verbatim,fragment,relative=1]
318 c1:7+ c:5+.3- c:3-.5-.7-
322 @cindex removals, in chords
326 Following any steps to be added, a series of steps to be removed
327 is introduced in a modifier string with a prefix of @code{^}.
328 If more than one step is to be removed, the steps to be
329 removed are separated by @code{.} following the
332 @lilypond[quote,verbatim,fragment,relative=1]
334 c1^3 c:7^5 c:9^3 c:9^3.5 c:13.11^3.7
340 The modifier @code{sus} can be added to the modifier string to
341 create suspended chords. This removes the 3rd step from the chord.
342 Append either @code{2} or @code{4} to add the 2nd or 4th step to the
343 chord. @code{sus} is equivalent to @code{^3}; @code{sus4} is
344 equivalent to @code{.4^3}.
346 @lilypond[quote,ragged-right,fragment,verbatim]
348 c1:sus c:sus2 c:sus4 c:5.4^3
353 @cindex chord inversions
354 @cindex bass note, for chords
356 Inversions (putting a pitch other than the root on the bottom of the
357 chord) and added bass notes can be specified by appending
358 @code{/}@var{pitch} to the chord.
360 @lilypond[quote,ragged-right,fragment,verbatim, relative=2]
368 A bass note that is part of the chord can be added, instead of
369 moved as part of an inversion, by using @code{/+}@var{pitch}.
371 @lilypond[quote,ragged-right,fragment,verbatim]
377 Chord modifiers that can be used to produce a variety of
378 standard chords are shown in
379 @ref{Common chord modifiers}.
384 @ref{Common chord modifiers}.
392 Each step can only be present in a chord once. The following
393 simply produces the augmented chord, since @code{5+} is
396 @lilypond[quote,ragged-right,verbatim,fragment]
397 \chordmode { c1:5.5-.5+ }
400 Only the second inversion can be created by adding a bass
401 note. The first inversion requires changing the root of
404 @lilypond[quote,ragged-right,verbatim,fragment]
406 c'1: c':/g e:6-3-^5 e:m6-^5
410 @node Displaying chords
411 @subsection Displaying chords
413 Chords can be displayed by name, in addition to the standard display
417 * Printing chord names::
418 * Customizing chord names::
421 @node Printing chord names
422 @unnumberedsubsubsec Printing chord names
424 @cindex printing chord names
428 Chord names are printed in the @code{ChordNames} context:
430 @lilypond[verbatim,quote,relative=1,ragged-right]
438 Chords can be entered as simultaneous notes or through the use of
439 chord mode. The displayed chord name will be the same, regardless
440 of the mode of entry, unless there are inversions or added bass notes:
442 @lilypond[verbatim,quote,relative=1]
461 @cindex no chord symbol
463 @cindex indicating No Chord in ChordNames
465 Rests passed to a @code{ChordNames} context will cause the
466 @code{noChordSymbol} markup to be displayed.
468 @lilypond[verbatim, quote, relative=1]
470 \new ChordNames \chordmode {
476 \new Score \chordmode {
487 @code{\chords @{ ... @}} is a shortcut notation for
488 @code{\new ChordNames @{ \chordmode @{ ... @} @}}.
490 @lilypond[verbatim,quote,ragged-right, relative=1]
496 @lilypond[verbatim,quote,ragged-right, relative=1]
506 @c Keep index entries with following snippet
507 @cindex chords, suppressing repeated
508 @funindex chordChanges
510 @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
511 {showing-chords-at-changes.ly}
513 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
514 @c {adding-bar-lines-to-chordnames-context.ly}
516 @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
517 {simple-lead-sheet.ly}
525 @ref{Writing music in parallel}.
531 @rinternals{ChordNames},
532 @rinternals{ChordName},
533 @rinternals{Chord_name_engraver},
534 @rinternals{Volta_engraver},
535 @rinternals{Bar_engraver}.
540 Chords containing inversions or altered bass notes are not named
541 properly if entered using simultaneous music.
544 @node Customizing chord names
545 @unnumberedsubsubsec Customizing chord names
547 @cindex customizing chord names
549 There is no unique system for naming chords. Different musical
550 traditions use different names for the same set of chords. There
551 are also different symbols displayed for a given chord name. The
552 names and symbols displayed for chord names are customizable.
557 The basic chord name layout is a system for Jazz music, proposed
558 by Klaus Ignatzek (see @ressay{Literature list}). The chord naming
559 system can be modified as described below. An alternate jazz
560 chord system has been developed using these modifications.
561 The Ignatzek and alternate
562 Jazz notation are shown on the chart in @ref{Chord
565 @c TODO -- Change this so we don't have a non-verbatim example.
566 @c Make short example in docs, then move longer example to
567 @c appendix, where the length of the snippet won't matter.
569 In addition to the different naming systems, different note names
570 are used for the root in different languages. The predefined
571 variables @code{\germanChords}, @code{\semiGermanChords},
572 @code{\italianChords} and @code{\frenchChords} set these variables.
573 The effect is demonstrated here:
575 @lilypondfile[ragged-right]{chord-names-languages.ly}
577 If none of the existing settings give the desired output, the chord
578 name display can be tuned through the following properties.
582 @funindex chordRootNamer
586 The chord name is usually printed as a letter for the root with an
587 optional alteration. The transformation from pitch to letter is
588 done by this function. Special note names (for example, the German
589 @q{H} for a B-chord) can be produced by storing a new function in
592 @funindex majorSevenSymbol
594 @item majorSevenSymbol
596 This property contains the markup object used to follow the output
597 of @code{chordRootNamer} to identify a major 7 chord. Predefined
598 options are @code{whiteTriangleMarkup} and
599 @code{blackTriangleMarkup}.
601 @funindex chordNoteNamer
605 When the chord name contains additional pitches other than the root
606 (e.g., an added bass note), this function is used to print the
607 additional pitch. By default the pitch is printed using
608 @code{chordRootNamer}. The @code{chordNoteNamer} property can be set
609 to a specialized function to change this behavior. For example, the
610 bass note can be printed in lower case.
612 @funindex chordNameSeparator
614 @item chordNameSeparator
616 Different parts of a chord name are normally separated by a slash.
617 By setting @code{chordNameSeparator}, you can use any desired markup
620 @funindex chordNameExceptions
622 @item chordNameExceptions
624 This property is a list of pairs. The first item in each pair
625 is a set of pitches used to identify the steps present in the chord.
626 The second item is a markup that will follow the @code{chordRootNamer}
627 output to create the chord name.
629 @funindex chordPrefixSpacer
630 @item chordPrefixSpacer
632 The @q{m} for minor chords is usually printed immediately to the
633 right of the root of the chord. A spacer can be placed between
634 the root and @q{m} by setting @code{chordPrefixSpacer}.
635 The spacer is not used when the root is altered.
641 @funindex major seven symbols
642 @code{\whiteTriangleMarkup},
643 @code{\blackTriangleMarkup},
644 @funindex \germanChords
645 @code{\germanChords},
646 @funindex \semiGermanChords
647 @code{\semiGermanChords},
648 @funindex \italianChords
649 @code{\italianChords},
650 @funindex \frenchChords
651 @code{\frenchChords}.
657 @cindex exceptions, chord names.
658 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
659 {chord-name-exceptions.ly}
661 @c TODO - tweak snippet to use \blackTriangleMarkup as well
662 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
663 {chord-name-major7.ly}
665 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
666 {adding-bar-lines-to-chordnames-context.ly}
668 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
669 {volta-below-chords.ly}
671 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
672 {changing-chord-separator.ly}
677 @ref{Chord name chart},
678 @ref{Common chord modifiers}.
681 @file{scm/@/chords@/-ignatzek@/.scm},
682 @file{scm/@/chord@/-entry@/.scm},
683 @file{ly/@/chord@/-modifier@/-init@/.ly}.
688 @c Internals Reference:
694 Chord names are determined from both the pitches that are present
695 in the chord and the information on the chord structure that may
696 have been entered in @code{\chordmode}. If the simultaneous pitches
697 method of entering chords is used, undesired names result from
698 inversions or bass notes.
700 @lilypond[quote,ragged-right,verbatim]
701 myChords = \relative c' {
702 \chordmode { c1 c/g c/f }
703 <c e g>1 <g c e> <f c' e g>
706 \new ChordNames { \myChords }
707 \new Staff { \myChords }
713 @subsection Figured bass
715 @lilypondfile[quote]{figured-bass-headword.ly}
717 Figured bass notation can be displayed.
720 * Introduction to figured bass::
721 * Entering figured bass::
722 * Displaying figured bass::
725 @node Introduction to figured bass
726 @unnumberedsubsubsec Introduction to figured bass
728 @cindex Basso continuo
729 @cindex Thorough bass
731 @cindex Bass, thorough
732 @cindex Bass, figured
734 @c TODO: musicological blurb about FB
737 LilyPond has support for figured bass, also called thorough bass
740 @lilypond[quote,ragged-right,verbatim,fragment]
742 \new Voice { \clef bass dis4 c d ais g fis}
745 < 6 >4 < 7\+ >8 < 6+ [_!] >
753 The support for figured bass consists of two parts: there is an
754 input mode, introduced by @code{\figuremode}, that accepts
755 entry of bass figures, and there is a context named
756 @code{FiguredBass} that takes care of displaying
757 @code{BassFigure} objects. Figured bass can also be displayed
758 in @code{Staff} contexts.
760 @code{\figures@{ ... @}} is a shortcut notation for
761 @code{\new FiguredBass @{ \figuremode @{ ... @} @}}.
764 Although the support for figured bass may superficially resemble chord
765 support, it is much simpler. @code{\figuremode} mode simply
766 stores the figures and the @code{FiguredBass} context prints them
767 as entered. There is no conversion to pitches.
770 Figures are created as markup texts. Any of the standard markup
771 properties can be used to modify the display of figures. For
772 example, the vertical spacing of the figures may be set with
773 @code{baseline-skip}.
779 @rglos{figured bass}.
785 @node Entering figured bass
786 @unnumberedsubsubsec Entering figured bass
788 @code{\figuremode} is used to switch the input mode to figure mode.
789 More information on different input modes can be
790 found at @ref{Input modes}.
792 In figure mode, a group of bass figures is delimited by
793 @code{<} and @code{>}. The duration is entered after the @code{>}.
795 @lilypond[verbatim,quote,ragged-right,fragment]
804 Accidentals (including naturals) can be added to figures:
806 @lilypond[verbatim,quote,ragged-right,fragment]
808 <7! 6+ 4-> <5++> <3-->
812 Augmented and diminished steps can be indicated:
814 @lilypond[verbatim,quote,ragged-right,fragment]
820 A backward slash through a figure (typically used for raised
821 sixth steps) can be created:
823 @lilypond[verbatim,quote,ragged-right,fragment]
829 Vertical spaces and brackets can be be included in figures:
831 @lilypond[verbatim,quote,ragged-right,fragment]
837 Any text markup can be inserted as a figure:
839 @lilypond[verbatim,quote,ragged-right,fragment]
841 <\markup { \tiny \number 6 \super (1) } 5>
845 @c NOTE: We need to include notes any time we use extenders to
846 @c avoid extraneous staff creation due to Staff.use... in
847 @c \bassFigureExtendersOn
849 Continuation lines can be used to indicate repeated figures:
851 @lilypond[verbatim,quote,ragged-right,fragment]
859 \bassFigureExtendersOn
860 <6 4>4 <6 3> <7 3> <7 3>
861 \bassFigureExtendersOff
862 <6 4>4 <6 3> <7 3> <7 3>
868 In this case, the extender lines replace existing figures,
869 unless the continuation lines have been explicitly terminated.
871 @lilypond[verbatim,quote,ragged-right,fragment]
874 \bassFigureExtendersOn
875 <6 4>4 <6 4> <6\! 4\!> <6 4>
884 The table below summarizes the figure modifiers available.
886 @multitable @columnfractions .1 .5 .4
900 @lilypond[line-width=4\cm]
902 <7! 6+ 4-> <5++> <3-->
909 Augmented and diminished steps
911 @lilypond[line-width=4\cm]
922 @lilypond[line-width=4\cm]
931 End of continuation line
933 @lilypond[line-width=4\cm]
936 \bassFigureExtendersOn
937 <6 4> <6 4> <6\! 4\!> <6 4>
950 @cindex figured bass extender lines
951 @code{\bassFigureExtendersOn},
952 @code{\bassFigureExtendersOff}.
957 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
958 {changing-the-positions-of-figured-bass-alterations.ly}
968 @c Notation Reference:
971 @c Application Usage:
981 @rinternals{BassFigure},
982 @rinternals{BassFigureAlignment},
983 @rinternals{BassFigureLine},
984 @rinternals{BassFigureBracket},
985 @rinternals{BassFigureContinuation},
986 @rinternals{FiguredBass}.
992 @node Displaying figured bass
993 @unnumberedsubsubsec Displaying figured bass
995 Figured bass can be displayed using the @code{FiguredBass} context,
996 or in most staff contexts.
998 When displayed in a @code{FiguredBass} context, the vertical location
999 of the figures is independent of the notes on the staff.
1001 @lilypond[verbatim,ragged-right,fragment,quote]
1016 In the example above, the @code{FiguredBass} context must be
1017 explicitly instantiated to avoid creating a second (empty) staff.
1020 Figured bass can also be added to @code{Staff} contexts
1021 directly. In this case, the vertical position of the
1022 figures is adjusted automatically.
1024 @lilypond[verbatim,ragged-right,fragment,quote]
1026 \new Staff = myStaff
1031 %% Put notes on same Staff as figures
1032 \context Staff = myStaff
1041 When added in a @code{Staff} context, figured bass can be displayed above
1044 @lilypond[verbatim,ragged-right,fragment,quote]
1046 \new Staff = myStaff
1049 \bassFigureStaffAlignmentDown
1052 %% Put notes on same Staff as figures
1053 \context Staff = myStaff
1063 @cindex figured bass alignment
1064 @code{\bassFigureStaffAlignmentDown},
1065 @code{\bassFigureStaffAlignmentUp},
1066 @code{\bassFigureStaffAlignmentNeutral}.
1080 @c Notation Reference:
1083 @c Application Usage:
1092 Internals Reference:
1093 @rinternals{BassFigure},
1094 @rinternals{BassFigureAlignment},
1095 @rinternals{BassFigureLine},
1096 @rinternals{BassFigureBracket},
1097 @rinternals{BassFigureContinuation},
1098 @rinternals{FiguredBass}.
1103 To ensure that continuation lines work properly, it is
1104 safest to use the same rhythm in the figure line as in
1107 @lilypond[verbatim,ragged-right,fragment,quote]
1111 \repeat unfold 4 { f16. g32 } f8. es16 d8 es
1114 \bassFigureExtendersOn
1115 % The extenders are correct here, with the same rhythm as the bass
1116 \repeat unfold 4 { <6 4->16. <6 4->32 }
1117 <5>8. r16 <6>8 <6\! 5->
1123 \repeat unfold 4 { f16. g32 } f8. es16 d8 es
1126 \bassFigureExtendersOn
1127 % The extenders are incorrect here, even though the timing is the same
1129 <5>8. r16 <6>8 <6\! 5->
1134 When using extender lines, adjacent figures with the same number in
1135 a different figure location can cause the figure positions to invert.
1137 @lilypond[verbatim,ragged-right,fragment,quote,relative=1]
1141 \bassFigureExtendersOn
1142 <6 5>4 <5\! 4> < 5 _!> <6>
1147 To avoid this problem, simply turn on extenders after the figure that
1148 begins the extender line and turn them off at the end of the extender line.
1150 @lilypond[verbatim,ragged-right,fragment,quote,relative=1]
1155 \bassFigureExtendersOn
1157 \bassFigureExtendersOff