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. For details, see the Contributors'
7 Guide, node Updating translation committishes..
14 @section Chord notation
16 @lilypondfile[quote]{chords-headword.ly}
18 Chords can be entered either as normal notes or in chord mode and displayed
19 using a variety of traditional European chord naming conventions. Chord
20 names and figured bass notation can also be displayed.
30 @subsection Chord mode
34 Chord mode is used to enter chords using an indicator of the chord
35 structure, rather than the chord pitches.
38 * Chord mode overview::
40 * Extended and altered chords::
43 @node Chord mode overview
44 @unnumberedsubsubsec Chord mode overview
49 Chords can be entered as simultaneous music, as discussed in
52 Chords can also be entered in @qq{chord mode}, which is an input
53 mode that focuses on the structures of chords in traditional
54 European music, rather than on specific pitches. This is
55 convenient for those who are familiar with using chord names to
56 describe chords. More information on different input modes can be
57 found at @ref{Input modes}.
59 @lilypond[verbatim,quote,ragged-right]
60 \chordmode { c1 g a g c }
63 Chords entered using chord mode are music elements, and can be
64 transposed just like chords entered using simultaneous music.
65 @code{\chordmode} is absolute, as @code{\relative} has no effect
66 on @code{chordmode} blocks. However, in @code{\chordmode} the
67 absolute pitches are one octave higher than in note mode.
69 Chord mode and note mode can be mixed in sequential music:
71 @lilypond[verbatim,quote,ragged-right,relative=1]
93 Predefined shorthands for articulations and ornaments cannot be used
94 on notes in chord mode, see @ref{Articulations and ornamentations}.
96 When chord mode and note mode are mixed in sequential music, and
97 chord mode comes first, the note mode will create a new @code{Staff}
100 @lilypond[verbatim,quote,ragged-right,relative=1]
106 To avoid this behavior, explicitly create the @code{Staff} context:
108 @lilypond[verbatim,quote,ragged-right,relative=1]
116 @unnumberedsubsubsec Common chords
119 @cindex seventh chords
120 @cindex root of chord
121 @cindex modifiers, in chords.
122 @cindex chord quality
124 Major triads are entered by including the root and an
127 @lilypond[verbatim,quote,ragged-right]
128 \chordmode { c2 f4 g }
131 Minor, augmented, and diminished triads are entered by placing
132 @code{:} and a quality modifier string after the duration:
134 @lilypond[verbatim,quote,ragged-right]
135 \chordmode { c2:m f4:aug g:dim }
138 Seventh chords can be created:
140 @lilypond[quote,ragged-right,verbatim]
141 \chordmode { c1:7 c:m7 c:maj7 c:dim7 c:aug7 }
149 The table below shows the actions of the quality modifiers on
150 triads and seventh chords. The default seventh step added to
151 chords is a minor or flatted seventh, which makes the dominant
152 seventh the basic seventh chord. All alterations are relative to
153 the dominant seventh. A more complete table of modifier usage
154 is found at @ref{Common chord modifiers}.
157 @multitable @columnfractions .2 .4 .3
169 The default action; produces a major triad.
171 @lilypond[line-width=4\cm, noragged-right]
173 \override Staff.TimeSignature #'stencil = ##f
181 The minor chord. This modifier lowers the 3rd.
183 @lilypond[line-width=4\cm, noragged-right]
185 \override Staff.TimeSignature #'stencil = ##f
194 The diminished chord. This modifier lowers the 3rd, 5th and (if
195 present) the 7th step.
197 @lilypond[line-width=4\cm, noragged-right]
199 \override Staff.TimeSignature #'stencil = ##f
207 The augmented chord. This modifier raises the 5th step.
209 @lilypond[line-width=4\cm, noragged-right]
211 \override Staff.TimeSignature #'stencil = ##f
219 The major 7th chord. This modifier adds a raised 7th step. The
220 @code{7} following @code{maj} is optional. Do NOT use this modifier
221 to create a major triad.
223 @lilypond[line-width=4\cm, noragged-right]
225 \override Staff.TimeSignature #'stencil = ##f
235 @ref{Common chord modifiers},
236 @ref{Extended and altered chords}.
243 Only one quality modifier should be used per chord, typically on the
244 highest step present in the chord. Chords with more than quality
245 modifier will be parsed without an error or warning, but the results
246 are unpredictable. Chords that cannot be achieved with a single
247 quality modifier should be altered by individual pitches, as described
248 in @ref{Extended and altered chords}.
251 @node Extended and altered chords
252 @unnumberedsubsubsec Extended and altered chords
254 @cindex extended chords
255 @cindex altered chords
257 Chord structures of arbitrary complexity can be created in chord
258 mode. The modifier string can be used to extend a chord, add or
259 remove chord steps, raise or lower chord steps, and add a bass note
260 or create an inversion.
262 The first number following the @code{:} is taken to be the extent
263 of the chord. The chord is constructed by sequentially adding
264 thirds to the root until the specified number has been reached.
265 Note that the seventh step added as part of an extended chord will be the
266 minor or flatted seventh, not the major seventh.
267 If the extent is not a third (e.g., 6), thirds are added up to the
268 highest third below the extent, and then the step of the extent is
269 added. The largest possible value for the extent is 13. Any
270 larger value is interpreted as 13.
272 @lilypond[quote,ragged-right,verbatim]
282 Note that both @code{c:5} and @code{c} produce a C major triad.
284 Since an unaltered 11 does not sound good when combined with an
285 unaltered 13, the 11 is removed from a @code{:13} chord (unless it
286 is added explicitly).
288 @lilypond[quote,ragged-right,verbatim]
294 @cindex additions, in chords
296 Individual steps can be added to a chord. Additions follow the
297 extent and are prefixed by a dot (@code{.}). The basic seventh
298 step added to a chord is the minor or flatted seventh, rather than
301 @lilypond[quote,verbatim]
303 c1:5.6 c:3.7.8 c:3.6.13
307 Added steps can be as high as desired.
309 @lilypond[quote,verbatim]
311 c4:5.15 c:5.20 c:5.25 c:5.30
315 @cindex chord steps, altering
317 Added chord steps can be altered by suffixing a @code{-} or @code{+}
318 sign to the number. To alter a step that is automatically included
319 as part of the basic chord structure, add it as an altered step.
321 @lilypond[quote,verbatim]
323 c1:7+ c:5+.3- c:3-.5-.7-
327 @cindex removals, in chords
331 Following any steps to be added, a series of steps to be removed
332 is introduced in a modifier string with a prefix of @code{^}.
333 If more than one step is to be removed, the steps to be
334 removed are separated by @code{.} following the
337 @lilypond[quote,verbatim]
339 c1^3 c:7^5 c:9^3 c:9^3.5 c:13.11^3.7
345 The modifier @code{sus} can be added to the modifier string to
346 create suspended chords. This removes the 3rd step from the chord.
347 Append either @code{2} or @code{4} to add the 2nd or 4th step to the
348 chord. @code{sus} is equivalent to @code{^3}; @code{sus4} is
349 equivalent to @code{.4^3}.
351 @lilypond[quote,ragged-right,verbatim]
353 c1:sus c:sus2 c:sus4 c:5.4^3
358 @cindex chord inversions
359 @cindex bass note, for chords
361 Inversions (putting a pitch other than the root on the bottom of the
362 chord) and added bass notes can be specified by appending
363 @code{/}@var{pitch} to the chord.
365 @lilypond[quote,ragged-right,verbatim]
373 A bass note that is part of the chord can be added, instead of
374 moved as part of an inversion, by using @code{/+}@var{pitch}.
376 @lilypond[quote,ragged-right,verbatim]
382 Chord modifiers that can be used to produce a variety of
383 standard chords are shown in
384 @ref{Common chord modifiers}.
389 @ref{Common chord modifiers}.
397 Each step can only be present in a chord once. The following
398 simply produces the augmented chord, since @code{5+} is
401 @lilypond[quote,ragged-right,verbatim]
402 \chordmode { c1:5.5-.5+ }
405 Only the second inversion can be created by adding a bass
406 note. The first inversion requires changing the root of
409 @lilypond[quote,ragged-right,verbatim]
411 c'1: c':/g e:6-3-^5 e:m6-^5
415 @node Displaying chords
416 @subsection Displaying chords
418 Chords can be displayed by name, in addition to the standard display
422 * Printing chord names::
423 * Customizing chord names::
426 @node Printing chord names
427 @unnumberedsubsubsec Printing chord names
429 @cindex printing chord names
433 Chord names are printed in the @code{ChordNames} context:
435 @lilypond[verbatim,quote,ragged-right]
443 Chords can be entered as simultaneous notes or through the use of
444 chord mode. The displayed chord name will be the same, regardless
445 of the mode of entry, unless there are inversions or added bass notes:
447 @lilypond[verbatim,quote,relative=1]
466 @cindex no chord symbol
468 @cindex indicating No Chord in ChordNames
470 Rests passed to a @code{ChordNames} context will cause the
471 @code{noChordSymbol} markup to be displayed.
473 @lilypond[verbatim, quote, relative=1]
475 \new ChordNames \chordmode {
492 @code{\chords @{ ... @}} is a shortcut notation for
493 @code{\new ChordNames @{ \chordmode @{ ... @} @}}.
495 @lilypond[verbatim,quote,ragged-right]
501 @lilypond[verbatim,quote,ragged-right]
511 @c Keep index entries with following snippet
512 @cindex chords, suppressing repeated
513 @funindex chordChanges
515 @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
516 {showing-chords-at-changes.ly}
518 @c @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
519 @c {adding-bar-lines-to-chordnames-context.ly}
521 @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
522 {simple-lead-sheet.ly}
530 @ref{Writing music in parallel}.
536 @rinternals{ChordNames},
537 @rinternals{ChordName},
538 @rinternals{Chord_name_engraver},
539 @rinternals{Volta_engraver},
540 @rinternals{Bar_engraver}.
545 Chords containing inversions or altered bass notes are not named
546 properly if entered using simultaneous music.
549 @node Customizing chord names
550 @unnumberedsubsubsec Customizing chord names
552 @cindex customizing chord names
554 There is no unique system for naming chords. Different musical
555 traditions use different names for the same set of chords. There
556 are also different symbols displayed for a given chord name. The
557 names and symbols displayed for chord names are customizable.
562 The basic chord name layout is a system for Jazz music, proposed
563 by Klaus Ignatzek (see @ressay{Literature list}). The chord naming
564 system can be modified as described below. An alternate jazz
565 chord system has been developed using these modifications.
566 The Ignatzek and alternate
567 Jazz notation are shown on the chart in @ref{Chord name chart}.
569 @c TODO -- Change this so we don't have a non-verbatim example.
570 @c Make short example in docs, then move longer example to
571 @c appendix, where the length of the snippet won't matter.
573 In addition to the different naming systems, different note names
574 are used for the root in different languages. The predefined
575 variables @code{\germanChords}, @code{\semiGermanChords},
576 @code{\italianChords} and @code{\frenchChords} set these variables.
577 The effect is demonstrated here:
579 @lilypondfile[ragged-right]{chord-names-languages.ly}
582 @funindex chordNameLowercaseMinor
584 German songbooks may indicate minor chords as lowercase letters,
585 without any @var{m} suffix. This can be obtained by setting the
586 @code{chordNameLowercaseMinor} property:
588 @lilypond[verbatim,quote,ragged-right]
590 \set chordNameLowercaseMinor = ##t
595 If none of the existing settings give the desired output, the chord
596 name display can be tuned through the following properties.
600 @funindex chordRootNamer
604 The chord name is usually printed as a letter for the root with an
605 optional alteration. The transformation from pitch to letter is
606 done by this function. Special note names (for example, the German
607 @q{H} for a B-chord) can be produced by storing a new function in
610 @funindex majorSevenSymbol
612 @item majorSevenSymbol
614 This property contains the markup object used to follow the output
615 of @code{chordRootNamer} to identify a major 7 chord. Predefined
616 options are @code{whiteTriangleMarkup} and
617 @code{blackTriangleMarkup}.
619 @funindex additionalPitchPrefix
621 @item additionalPitchPrefix
623 When the chord name contains additional pitches, they can optionally
624 be prefixed with some text. The default is no prefix, in order to
625 avoid too much visual clutter, but for small numbers of additional
626 pitches this can be visually effective.
628 @lilypond[verbatim,quote,ragged-right]
631 \set additionalPitchPrefix = #"add"
636 @funindex chordNoteNamer
640 When the chord name contains additional pitches other than the root
641 (e.g., an added bass note), this function is used to print the
642 additional pitch. By default the pitch is printed using
643 @code{chordRootNamer}. The @code{chordNoteNamer} property can be set
644 to a specialized function to change this behavior. For example, the
645 bass note can be printed in lower case.
647 @funindex chordNameSeparator
649 @item chordNameSeparator
651 Different parts of a chord name are normally separated by a small
652 amount of horizontal space. By setting @code{chordNameSeparator}, you
653 can use any desired markup for a separator. This does not affect the
654 separator between a chord and its bass note; to customize that, use
655 @code{slashChordSeparator}.
657 @lilypond[verbatim,quote,ragged-right]
660 \set chordNameSeparator = \markup { "/" }
666 @funindex slashChordSeparator
668 @item slashChordSeparator
670 Chords can be played over a bass note other than the conventional root
671 of the chord. These are known as ``inversions'' or ``slash chords'',
672 because the default way of notating them is with a forward slash
673 between the main chord and the bass note. Therefore the value of
674 @code{slashChordSeparator} defaults to a forward slash, but you can
675 change it to any markup you choose.
677 @lilypond[verbatim,quote,ragged-right]
680 \set slashChordSeparator = \markup { " over " }
686 @funindex chordNameExceptions
688 @item chordNameExceptions
690 This property is a list of pairs. The first item in each pair
691 is a set of pitches used to identify the steps present in the chord.
692 The second item is a markup that will follow the @code{chordRootNamer}
693 output to create the chord name.
695 @funindex minorChordModifier
697 @item minorChordModifier
699 Minor chords are often denoted via a @q{m} suffix to the right of the
700 root of the chord. However some idioms prefer other suffices, such as
703 @lilypond[verbatim,quote,ragged-right]
706 \set minorChordModifier = \markup { "-" }
712 @funindex chordPrefixSpacer
714 @item chordPrefixSpacer
716 The modifier for minor chords as determined by
717 @code{minorChordModifier} is usually printed immediately to the right
718 of the root of the chord. A spacer can be placed between the root and
719 the modifier by setting @code{chordPrefixSpacer}. The spacer is not
720 used when the root is altered.
726 @funindex major seven symbols
727 @code{\whiteTriangleMarkup},
728 @code{\blackTriangleMarkup},
729 @funindex \germanChords
730 @code{\germanChords},
731 @funindex \semiGermanChords
732 @code{\semiGermanChords},
733 @funindex \italianChords
734 @code{\italianChords},
735 @funindex \frenchChords
736 @code{\frenchChords}.
742 @cindex exceptions, chord names.
743 @lilypondfile[verbatim,quote,texidoc,doctitle]
744 {chord-name-exceptions.ly}
746 @c TODO - tweak snippet to use \blackTriangleMarkup as well
747 @lilypondfile[verbatim,quote,texidoc,doctitle]
748 {chord-name-major7.ly}
750 @lilypondfile[verbatim,quote,texidoc,doctitle]
751 {adding-bar-lines-to-chordnames-context.ly}
753 @lilypondfile[verbatim,quote,texidoc,doctitle]
754 {volta-below-chords.ly}
756 @lilypondfile[verbatim,quote,texidoc,doctitle]
757 {changing-chord-separator.ly}
762 @ref{Chord name chart},
763 @ref{Common chord modifiers}.
765 Essay on automated music engraving:
766 @ressay{Literature list}.
769 @file{scm/chords-ignatzek.scm},
770 @file{scm/chord-entry.scm},
771 @file{ly/chord-modifier-init.ly}.
776 @c Internals Reference:
782 Chord names are determined from both the pitches that are present
783 in the chord and the information on the chord structure that may
784 have been entered in @code{\chordmode}. If the simultaneous pitches
785 method of entering chords is used, undesired names result from
786 inversions or bass notes.
788 @lilypond[quote,ragged-right,verbatim]
789 myChords = \relative c' {
790 \chordmode { c1 c/g c/f }
791 <c e g>1 <g c e> <f c' e g>
794 \new ChordNames { \myChords }
795 \new Staff { \myChords }
801 @subsection Figured bass
803 @lilypondfile[quote]{figured-bass-headword.ly}
805 Figured bass notation can be displayed.
808 * Introduction to figured bass::
809 * Entering figured bass::
810 * Displaying figured bass::
813 @node Introduction to figured bass
814 @unnumberedsubsubsec Introduction to figured bass
816 @cindex Basso continuo
817 @cindex Thorough bass
819 @cindex Bass, thorough
820 @cindex Bass, figured
822 @c TODO: musicological blurb about FB
825 LilyPond has support for figured bass, also called thorough bass
828 @lilypond[quote,ragged-right,verbatim]
830 \new Voice { \clef bass dis4 c d ais g fis}
833 < 6 >4 < 7\+ >8 < 6+ [_!] >
841 The support for figured bass consists of two parts: there is an
842 input mode, introduced by @code{\figuremode}, that accepts
843 entry of bass figures, and there is a context named
844 @code{FiguredBass} that takes care of displaying
845 @code{BassFigure} objects. Figured bass can also be displayed
846 in @code{Staff} contexts.
848 @code{\figures@{ ... @}} is a shortcut notation for
849 @code{\new FiguredBass @{ \figuremode @{ ... @} @}}.
852 Although the support for figured bass may superficially resemble chord
853 support, it is much simpler. @code{\figuremode} mode simply
854 stores the figures and the @code{FiguredBass} context prints them
855 as entered. There is no conversion to pitches.
858 Figures are created as markup texts. Any of the standard markup
859 properties can be used to modify the display of figures. For
860 example, the vertical spacing of the figures may be set with
861 @code{baseline-skip}.
867 @rglos{figured bass}.
873 @node Entering figured bass
874 @unnumberedsubsubsec Entering figured bass
876 @code{\figuremode} is used to switch the input mode to figure mode.
877 More information on different input modes can be
878 found at @ref{Input modes}.
880 In figure mode, a group of bass figures is delimited by
881 @code{<} and @code{>}. The duration is entered after the @code{>}.
883 @lilypond[verbatim,quote,ragged-right]
892 Accidentals (including naturals) can be added to figures:
894 @lilypond[verbatim,quote,ragged-right]
896 <7! 6+ 4-> <5++> <3-->
900 Augmented and diminished steps can be indicated:
902 @lilypond[verbatim,quote,ragged-right]
908 A backward slash through a figure (typically used for raised
909 sixth steps) can be created:
911 @lilypond[verbatim,quote,ragged-right]
917 Vertical spaces and brackets can be included in figures:
919 @lilypond[verbatim,quote,ragged-right]
925 Any text markup can be inserted as a figure:
927 @lilypond[verbatim,quote,ragged-right]
929 <\markup { \tiny \number 6 \super (1) } 5>
933 @c NOTE: We need to include notes any time we use extenders to
934 @c avoid extraneous staff creation due to Staff.use... in
935 @c \bassFigureExtendersOn
937 Continuation lines can be used to indicate repeated figures:
939 @lilypond[verbatim,quote,ragged-right]
947 \bassFigureExtendersOn
948 <6 4>4 <6 3> <7 3> <7 3>
949 \bassFigureExtendersOff
950 <6 4>4 <6 3> <7 3> <7 3>
956 In this case, the extender lines replace existing figures,
957 unless the continuation lines have been explicitly terminated.
959 @lilypond[verbatim,quote,ragged-right]
962 \bassFigureExtendersOn
963 <6 4>4 <6 4> <6\! 4\!> <6 4>
972 The table below summarizes the figure modifiers available.
974 @multitable @columnfractions .1 .5 .4
988 @lilypond[line-width=4\cm]
990 <7! 6+ 4-> <5++> <3-->
997 Augmented and diminished steps
999 @lilypond[line-width=4\cm]
1010 @lilypond[line-width=4\cm]
1019 End of continuation line
1021 @lilypond[line-width=4\cm]
1024 \bassFigureExtendersOn
1025 <6 4> <6 4> <6\! 4\!> <6 4>
1038 @cindex figured bass extender lines
1039 @code{\bassFigureExtendersOn},
1040 @code{\bassFigureExtendersOff}.
1045 @lilypondfile[verbatim,quote,texidoc,doctitle]
1046 {changing-the-positions-of-figured-bass-alterations.ly}
1056 @c Notation Reference:
1059 @c Application Usage:
1068 Internals Reference:
1069 @rinternals{BassFigure},
1070 @rinternals{BassFigureAlignment},
1071 @rinternals{BassFigureLine},
1072 @rinternals{BassFigureBracket},
1073 @rinternals{BassFigureContinuation},
1074 @rinternals{FiguredBass}.
1080 @node Displaying figured bass
1081 @unnumberedsubsubsec Displaying figured bass
1083 Figured bass can be displayed using the @code{FiguredBass} context,
1084 or in most staff contexts.
1086 When displayed in a @code{FiguredBass} context, the vertical location
1087 of the figures is independent of the notes on the staff.
1089 @lilypond[verbatim,ragged-right,quote]
1104 In the example above, the @code{FiguredBass} context must be
1105 explicitly instantiated to avoid creating a second (empty) staff.
1108 Figured bass can also be added to @code{Staff} contexts
1109 directly. In this case, the vertical position of the
1110 figures is adjusted automatically.
1112 @lilypond[verbatim,ragged-right,quote]
1114 \new Staff = myStaff
1119 %% Put notes on same Staff as figures
1120 \context Staff = myStaff
1129 When added in a @code{Staff} context, figured bass can be displayed above
1132 @lilypond[verbatim,ragged-right,quote]
1134 \new Staff = myStaff
1137 \bassFigureStaffAlignmentDown
1140 %% Put notes on same Staff as figures
1141 \context Staff = myStaff
1151 @cindex figured bass alignment
1152 @code{\bassFigureStaffAlignmentDown},
1153 @code{\bassFigureStaffAlignmentUp},
1154 @code{\bassFigureStaffAlignmentNeutral}.
1168 @c Notation Reference:
1171 @c Application Usage:
1180 Internals Reference:
1181 @rinternals{BassFigure},
1182 @rinternals{BassFigureAlignment},
1183 @rinternals{BassFigureLine},
1184 @rinternals{BassFigureBracket},
1185 @rinternals{BassFigureContinuation},
1186 @rinternals{FiguredBass}.
1191 To ensure that continuation lines work properly, it is
1192 safest to use the same rhythm in the figure line as in
1195 @lilypond[verbatim,ragged-right,quote]
1199 \repeat unfold 4 { f16. g32 } f8. es16 d8 es
1202 \bassFigureExtendersOn
1203 % The extenders are correct here, with the same rhythm as the bass
1204 \repeat unfold 4 { <6 4->16. <6 4->32 }
1205 <5>8. r16 <6>8 <6\! 5->
1211 \repeat unfold 4 { f16. g32 } f8. es16 d8 es
1214 \bassFigureExtendersOn
1215 % The extenders are incorrect here, even though the timing is the same
1217 <5>8. r16 <6>8 <6\! 5->
1222 When using extender lines, adjacent figures with the same number in
1223 a different figure location can cause the figure positions to invert.
1225 @lilypond[verbatim,ragged-right,quote,relative=1]
1229 \bassFigureExtendersOn
1230 <6 5>4 <5\! 4> < 5 _!> <6>
1235 To avoid this problem, simply turn on extenders after the figure that
1236 begins the extender line and turn them off at the end of the extender line.
1238 @lilypond[verbatim,ragged-right,quote,relative=1]
1243 \bassFigureExtendersOn
1245 \bassFigureExtendersOff