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]
90 Predefined shorthands for articulations and ornaments cannot be used
91 on notes in chord mode, see @ref{Articulations and ornamentations}.
95 @unnumberedsubsubsec Common chords
98 @cindex seventh chords
100 @cindex modifiers, in chords.
101 @cindex chord quality
103 Major triads are entered by including the root and an
106 @lilypond[verbatim,quote,ragged-right]
107 \chordmode { c2 f4 g }
110 Minor, augmented, and diminished triads are entered by placing
111 @code{:} and a quality modifier string after the duration:
113 @lilypond[verbatim,quote,ragged-right]
114 \chordmode { c2:m f4:aug g:dim }
117 Seventh chords can be created:
119 @lilypond[quote,ragged-right,verbatim]
120 \chordmode { c1:7 c:m7 c:maj7 c:dim7 c:aug7 }
128 The table below shows the actions of the quality modifiers on
129 triads and seventh chords. The default seventh step added to
130 chords is a minor or flatted seventh, which makes the dominant
131 seventh the basic seventh chord. All alterations are relative to
132 the dominant seventh. A more complete table of modifier usage
133 is found at @ref{Common chord modifiers}.
136 @multitable @columnfractions .2 .4 .3
148 The default action; produces a major triad.
150 @lilypond[line-width=4\cm, noragged-right]
152 \omit Staff.TimeSignature
160 The minor chord. This modifier lowers the 3rd.
162 @lilypond[line-width=4\cm, noragged-right]
164 \omit Staff.TimeSignature
173 The diminished chord. This modifier lowers the 3rd, 5th and (if
174 present) the 7th step.
176 @lilypond[line-width=4\cm, noragged-right]
178 \omit Staff.TimeSignature
186 The augmented chord. This modifier raises the 5th step.
188 @lilypond[line-width=4\cm, noragged-right]
190 \omit Staff.TimeSignature
198 The major 7th chord. This modifier adds a raised 7th step. The
199 @code{7} following @code{maj} is optional. Do NOT use this modifier
200 to create a major triad.
202 @lilypond[line-width=4\cm, noragged-right]
204 \omit Staff.TimeSignature
213 @ref{Common chord modifiers},
214 @ref{Extended and altered chords}.
220 Only one quality modifier should be used per chord, typically on the
221 highest step present in the chord. Chords with more than quality
222 modifier will be parsed without an error or warning, but the results
223 are unpredictable. Chords that cannot be achieved with a single
224 quality modifier should be altered by individual pitches, as described
225 in @ref{Extended and altered chords}.
228 @node Extended and altered chords
229 @unnumberedsubsubsec Extended and altered chords
231 @cindex extended chords
232 @cindex altered chords
234 Chord structures of arbitrary complexity can be created in chord
235 mode. The modifier string can be used to extend a chord, add or
236 remove chord steps, raise or lower chord steps, and add a bass note
237 or create an inversion.
239 The first number following the @code{:} is taken to be the extent
240 of the chord. The chord is constructed by sequentially adding
241 thirds to the root until the specified number has been reached.
242 Note that the seventh step added as part of an extended chord will be the
243 minor or flatted seventh, not the major seventh.
244 If the extent is not a third (e.g., 6), thirds are added up to the
245 highest third below the extent, and then the step of the extent is
246 added. The largest possible value for the extent is 13. Any
247 larger value is interpreted as 13.
249 @lilypond[quote,ragged-right,verbatim]
259 Note that both @code{c:5} and @code{c} produce a C major triad.
261 Since an unaltered 11 does not sound good when combined with an
262 unaltered 13, the 11 is removed from a @code{:13} chord (unless it
263 is added explicitly).
265 @lilypond[quote,ragged-right,verbatim]
271 @cindex additions, in chords
273 Individual steps can be added to a chord. Additions follow the
274 extent and are prefixed by a dot (@code{.}). The basic seventh
275 step added to a chord is the minor or flatted seventh, rather than
278 @lilypond[quote,verbatim]
280 c1:5.6 c:3.7.8 c:3.6.13
284 Added steps can be as high as desired.
286 @lilypond[quote,verbatim]
288 c4:5.15 c:5.20 c:5.25 c:5.30
292 @cindex chord steps, altering
294 Added chord steps can be altered by suffixing a @code{-} or @code{+}
295 sign to the number. To alter a step that is automatically included
296 as part of the basic chord structure, add it as an altered step.
298 @lilypond[quote,verbatim]
300 c1:7+ c:5+.3- c:3-.5-.7-
304 @cindex removals, in chords
308 Following any steps to be added, a series of steps to be removed
309 is introduced in a modifier string with a prefix of @code{^}.
310 If more than one step is to be removed, the steps to be
311 removed are separated by @code{.} following the
314 @lilypond[quote,verbatim]
316 c1^3 c:7^5 c:9^3 c:9^3.5 c:13.11^3.7
322 The modifier @code{sus} can be added to the modifier string to
323 create suspended chords. This removes the 3rd step from the chord.
324 Append either @code{2} or @code{4} to add the 2nd or 4th step to the
325 chord. @code{sus} is equivalent to @code{^3}; @code{sus4} is
326 equivalent to @code{.4^3}.
328 @lilypond[quote,ragged-right,verbatim]
330 c1:sus c:sus2 c:sus4 c:5.4^3
335 @cindex chord inversions
336 @cindex bass note, for chords
338 Inversions (putting a pitch other than the root on the bottom of the
339 chord) and added bass notes can be specified by appending
340 @code{/}@var{pitch} to the chord.
342 @lilypond[quote,ragged-right,verbatim]
350 A bass note that is part of the chord can be added, instead of
351 moved as part of an inversion, by using @code{/+}@var{pitch}.
353 @lilypond[quote,ragged-right,verbatim]
359 Chord modifiers that can be used to produce a variety of
360 standard chords are shown in
361 @ref{Common chord modifiers}.
365 @ref{Common chord modifiers}.
371 Each step can only be present in a chord once. The following
372 simply produces the augmented chord, since @code{5+} is
375 @lilypond[quote,ragged-right,verbatim]
376 \chordmode { c1:5.5-.5+ }
379 Only the second inversion can be created by adding a bass
380 note. The first inversion requires changing the root of
383 @lilypond[quote,ragged-right,verbatim]
385 c'1: c':/g e:6-3-^5 e:m6-^5
390 @node Displaying chords
391 @subsection Displaying chords
393 Chords can be displayed by name, in addition to the standard display
397 * Printing chord names::
398 * Customizing chord names::
401 @node Printing chord names
402 @unnumberedsubsubsec Printing chord names
404 @cindex printing chord names
408 Chord names are printed in the @code{ChordNames} context:
410 @lilypond[verbatim,quote,ragged-right]
418 Chords can be entered as simultaneous notes or through the use of
419 chord mode. The displayed chord name will be the same, regardless
420 of the mode of entry, unless there are inversions or added bass notes:
422 @lilypond[verbatim,quote]
423 chordmusic = \relative c' {
440 @cindex no chord symbol
442 @cindex indicating No Chord in ChordNames
444 Rests passed to a @code{ChordNames} context will cause the
445 @code{noChordSymbol} markup to be displayed.
447 @lilypond[verbatim, quote, relative=1]
449 \new ChordNames \chordmode {
466 @code{\chords @{ @dots{} @}} is a shortcut notation for
467 @code{\new ChordNames @{ \chordmode @{ @dots{} @} @}}.
469 @lilypond[verbatim,quote,ragged-right]
475 @lilypond[verbatim,quote,ragged-right]
485 @c Keep index entries with following snippet
486 @cindex chords, suppressing repeated
487 @funindex chordChanges
489 @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
490 {showing-chords-at-changes.ly}
492 @c @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
493 @c {adding-bar-lines-to-chordnames-context.ly}
495 @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
496 {simple-lead-sheet.ly}
503 @ref{Writing music in parallel}.
509 @rinternals{ChordNames},
510 @rinternals{ChordName},
511 @rinternals{Chord_name_engraver},
512 @rinternals{Volta_engraver},
513 @rinternals{Bar_engraver}.
516 Chords containing inversions or altered bass notes are not named
517 properly if entered using simultaneous music.
520 @node Customizing chord names
521 @unnumberedsubsubsec Customizing chord names
523 @cindex customizing chord names
525 There is no unique system for naming chords. Different musical
526 traditions use different names for the same set of chords. There
527 are also different symbols displayed for a given chord name. The
528 names and symbols displayed for chord names are customizable.
533 The basic chord name layout is a system for Jazz music, proposed
534 by Klaus Ignatzek (see @ressay{Literature list}). The chord naming
535 system can be modified as described below. An alternate jazz
536 chord system has been developed using these modifications.
537 The Ignatzek and alternate
538 Jazz notation are shown on the chart in @ref{Chord name chart}.
540 @c TODO -- Change this so we don't have a non-verbatim example.
541 @c Make short example in docs, then move longer example to
542 @c appendix, where the length of the snippet won't matter.
544 In addition to the different naming systems, different note names
545 are used for the root in different languages. The predefined
546 commands @code{\germanChords}, @code{\semiGermanChords},
547 @code{\italianChords} and @code{\frenchChords} set these variables.
548 The effect is demonstrated here:
550 @lilypondfile[ragged-right]{chord-names-languages.ly}
553 @funindex chordNameLowercaseMinor
555 German songbooks may indicate minor chords as lowercase letters,
556 without any @var{m} suffix. This can be obtained by setting the
557 @code{chordNameLowercaseMinor} property:
559 @lilypond[verbatim,quote,ragged-right]
561 \set chordNameLowercaseMinor = ##t
566 If none of the existing settings give the desired output, the chord
567 name display can be tuned through the following properties.
571 @funindex chordRootNamer
575 The chord name is usually printed as a letter for the root with an
576 optional alteration. The transformation from pitch to letter is
577 done by this function. Special note names (for example, the German
578 @q{H} for a B-chord) can be produced by storing a new function in
581 @funindex majorSevenSymbol
583 @item majorSevenSymbol
585 This property contains the markup object used to follow the output
586 of @code{chordRootNamer} to identify a major 7 chord. Predefined
587 options are @code{whiteTriangleMarkup} and
588 @code{blackTriangleMarkup}.
590 @funindex additionalPitchPrefix
592 @item additionalPitchPrefix
594 When the chord name contains additional pitches, they can optionally
595 be prefixed with some text. The default is no prefix, in order to
596 avoid too much visual clutter, but for small numbers of additional
597 pitches this can be visually effective.
599 @lilypond[verbatim,quote,ragged-right]
602 \set additionalPitchPrefix = #"add"
607 @funindex chordNoteNamer
611 When the chord name contains additional pitches other than the root
612 (e.g., an added bass note), this function is used to print the
613 additional pitch. By default the pitch is printed using
614 @code{chordRootNamer}. The @code{chordNoteNamer} property can be set
615 to a specialized function to change this behavior. For example, the
616 bass note can be printed in lower case.
618 @funindex chordNameSeparator
620 @item chordNameSeparator
622 Different parts of a chord name are normally separated by a small
623 amount of horizontal space. By setting @code{chordNameSeparator}, you
624 can use any desired markup for a separator. This does not affect the
625 separator between a chord and its bass note; to customize that, use
626 @code{slashChordSeparator}.
628 @lilypond[verbatim,quote,ragged-right]
631 \set chordNameSeparator = \markup { "/" }
637 @funindex slashChordSeparator
639 @item slashChordSeparator
641 Chords can be played over a bass note other than the conventional root
642 of the chord. These are known as ``inversions'' or ``slash chords'',
643 because the default way of notating them is with a forward slash
644 between the main chord and the bass note. Therefore the value of
645 @code{slashChordSeparator} defaults to a forward slash, but you can
646 change it to any markup you choose.
648 @lilypond[verbatim,quote,ragged-right]
651 \set slashChordSeparator = \markup { " over " }
657 @funindex chordNameExceptions
659 @item chordNameExceptions
661 This property is a list of pairs. The first item in each pair
662 is a set of pitches used to identify the steps present in the chord.
663 The second item is a markup that will follow the @code{chordRootNamer}
664 output to create the chord name.
666 @funindex minorChordModifier
668 @item minorChordModifier
670 Minor chords are often denoted via a @q{m} suffix to the right of the
671 root of the chord. However some idioms prefer other suffices, such as
674 @lilypond[verbatim,quote,ragged-right]
677 \set minorChordModifier = \markup { "-" }
683 @funindex chordPrefixSpacer
685 @item chordPrefixSpacer
687 The modifier for minor chords as determined by
688 @code{minorChordModifier} is usually printed immediately to the right
689 of the root of the chord. A spacer can be placed between the root and
690 the modifier by setting @code{chordPrefixSpacer}. The spacer is not
691 used when the root is altered.
697 @funindex major seven symbols
698 @code{\whiteTriangleMarkup},
699 @code{\blackTriangleMarkup},
700 @funindex \germanChords
701 @code{\germanChords},
702 @funindex \semiGermanChords
703 @code{\semiGermanChords},
704 @funindex \italianChords
705 @code{\italianChords},
706 @funindex \frenchChords
707 @code{\frenchChords}.
713 @cindex exceptions, chord names.
714 @lilypondfile[verbatim,quote,texidoc,doctitle]
715 {chord-name-exceptions.ly}
717 @c TODO - tweak snippet to use \blackTriangleMarkup as well
718 @lilypondfile[verbatim,quote,texidoc,doctitle]
719 {chord-name-major7.ly}
721 @lilypondfile[verbatim,quote,texidoc,doctitle]
722 {adding-bar-lines-to-chordnames-context.ly}
724 @lilypondfile[verbatim,quote,texidoc,doctitle]
725 {volta-below-chords.ly}
727 @lilypondfile[verbatim,quote,texidoc,doctitle]
728 {changing-chord-separator.ly}
732 @ref{Chord name chart},
733 @ref{Common chord modifiers}.
735 Essay on automated music engraving:
736 @ressay{Literature list}.
739 @file{scm/chords-ignatzek.scm},
740 @file{scm/chord-entry.scm},
741 @file{ly/chord-modifier-init.ly}.
747 Chord names are determined from both the pitches that are present
748 in the chord and the information on the chord structure that may
749 have been entered in @code{\chordmode}. If the simultaneous pitches
750 method of entering chords is used, undesired names result from
751 inversions or bass notes.
753 @lilypond[quote,ragged-right,verbatim]
754 myChords = \relative c' {
755 \chordmode { c1 c/g c/f }
756 <c e g>1 <g c e> <f c' e g>
759 \new ChordNames { \myChords }
760 \new Staff { \myChords }
766 @subsection Figured bass
768 @c Line width hack because of instrument names
769 @lilypondfile[quote,staffsize=18,line-width=14.5\cm]{figured-bass-headword.ly}
771 Figured bass notation can be displayed.
774 * Introduction to figured bass::
775 * Entering figured bass::
776 * Displaying figured bass::
779 @node Introduction to figured bass
780 @unnumberedsubsubsec Introduction to figured bass
782 @cindex Basso continuo
783 @cindex Thorough bass
785 @cindex Bass, thorough
786 @cindex Bass, figured
788 @c TODO: musicological blurb about FB
791 LilyPond has support for figured bass, also called thorough bass
794 @lilypond[quote,ragged-right,verbatim]
796 \new Voice { \clef bass dis4 c d ais g fis}
799 < 6 >4 < 7\+ >8 < 6+ [_!] >
807 The support for figured bass consists of two parts: there is an
808 input mode, introduced by @code{\figuremode}, that accepts
809 entry of bass figures, and there is a context named
810 @code{FiguredBass} that takes care of displaying
811 @code{BassFigure} objects. Figured bass can also be displayed
812 in @code{Staff} contexts.
814 @code{\figures@{ @dots{} @}} is a shortcut notation for
815 @code{\new FiguredBass @{ \figuremode @{ @dots{} @} @}}.
818 Although the support for figured bass may superficially resemble chord
819 support, it is much simpler. @code{\figuremode} mode simply
820 stores the figures and the @code{FiguredBass} context prints them
821 as entered. There is no conversion to pitches.
824 Figures are created as markup texts. Any of the standard markup
825 properties can be used to modify the display of figures. For
826 example, the vertical spacing of the figures may be set with
827 @code{baseline-skip}.
832 @rglos{figured bass}.
838 @node Entering figured bass
839 @unnumberedsubsubsec Entering figured bass
841 @code{\figuremode} is used to switch the input mode to figure mode.
842 More information on different input modes can be
843 found at @ref{Input modes}.
845 In figure mode, a group of bass figures is delimited by
846 @code{<} and @code{>}. The duration is entered after the @code{>}.
848 @lilypond[verbatim,quote,ragged-right]
857 Accidentals (including naturals) can be added to figures:
859 @lilypond[verbatim,quote,ragged-right]
861 <7! 6+ 4-> <5++> <3-->
865 Augmented and diminished steps can be indicated:
867 @lilypond[verbatim,quote,ragged-right]
873 A backward slash through a figure (typically used for raised
874 sixth steps) can be created:
876 @lilypond[verbatim,quote,ragged-right]
882 Vertical spaces and brackets can be included in figures:
884 @lilypond[verbatim,quote,ragged-right]
890 Any text markup can be inserted as a figure:
892 @lilypond[verbatim,quote,ragged-right]
894 <\markup { \tiny \number 6 \super (1) } 5>
898 @c NOTE: We need to include notes any time we use extenders to
899 @c avoid extraneous staff creation due to Staff.use... in
900 @c \bassFigureExtendersOn
902 Continuation lines can be used to indicate repeated figures:
904 @lilypond[verbatim,quote,ragged-right]
912 \bassFigureExtendersOn
913 <6 4>4 <6 3> <7 3> <7 3>
914 \bassFigureExtendersOff
915 <6 4>4 <6 3> <7 3> <7 3>
921 In this case, the extender lines replace existing figures,
922 unless the continuation lines have been explicitly terminated.
924 @lilypond[verbatim,quote,ragged-right]
927 \bassFigureExtendersOn
928 <6 4>4 <6 4> <6\! 4\!> <6 4>
937 The table below summarizes the figure modifiers available.
939 @multitable @columnfractions .1 .5 .4
953 @lilypond[line-width=4\cm]
955 <7! 6+ 4-> <5++> <3-->
962 Augmented and diminished steps
964 @lilypond[line-width=4\cm]
975 @lilypond[line-width=4\cm]
984 End of continuation line
986 @lilypond[line-width=4\cm]
989 \bassFigureExtendersOn
990 <6 4> <6 4> <6\! 4\!> <6 4>
1003 @cindex figured bass extender lines
1004 @code{\bassFigureExtendersOn},
1005 @code{\bassFigureExtendersOff}.
1010 @lilypondfile[verbatim,quote,texidoc,doctitle]
1011 {changing-the-positions-of-figured-bass-alterations.ly}
1017 Internals Reference:
1018 @rinternals{BassFigure},
1019 @rinternals{BassFigureAlignment},
1020 @rinternals{BassFigureLine},
1021 @rinternals{BassFigureBracket},
1022 @rinternals{BassFigureContinuation},
1023 @rinternals{FiguredBass}.
1026 @node Displaying figured bass
1027 @unnumberedsubsubsec Displaying figured bass
1029 Figured bass can be displayed using the @code{FiguredBass} context,
1030 or in most staff contexts.
1032 When displayed in a @code{FiguredBass} context, the vertical location
1033 of the figures is independent of the notes on the staff.
1035 @lilypond[verbatim,ragged-right,quote]
1050 In the example above, the @code{FiguredBass} context must be
1051 explicitly instantiated to avoid creating a second (empty) staff.
1054 Figured bass can also be added to @code{Staff} contexts
1055 directly. In this case, the vertical position of the
1056 figures is adjusted automatically.
1058 @lilypond[verbatim,ragged-right,quote]
1060 \new Staff = "myStaff"
1065 %% Put notes on same Staff as figures
1066 \context Staff = "myStaff"
1075 When added in a @code{Staff} context, figured bass can be displayed above
1078 @lilypond[verbatim,ragged-right,quote]
1080 \new Staff = "myStaff"
1083 \bassFigureStaffAlignmentDown
1086 %% Put notes on same Staff as figures
1087 \context Staff = "myStaff"
1096 @cindex figured bass alignment
1097 @code{\bassFigureStaffAlignmentDown},
1098 @code{\bassFigureStaffAlignmentUp},
1099 @code{\bassFigureStaffAlignmentNeutral}.
1106 Internals Reference:
1107 @rinternals{BassFigure},
1108 @rinternals{BassFigureAlignment},
1109 @rinternals{BassFigureLine},
1110 @rinternals{BassFigureBracket},
1111 @rinternals{BassFigureContinuation},
1112 @rinternals{FiguredBass}.
1115 To ensure that continuation lines work properly, it is
1116 safest to use the same rhythm in the figure line as in
1119 @lilypond[verbatim,ragged-right,quote]
1123 \repeat unfold 4 { f16. g32 } f8. es16 d8 es
1126 \bassFigureExtendersOn
1127 % The extenders are correct here, with the same rhythm as the bass
1128 \repeat unfold 4 { <6 4->16. <6 4->32 }
1129 <5>8. r16 <6>8 <6\! 5->
1135 \repeat unfold 4 { f16. g32 } f8. es16 d8 es
1138 \bassFigureExtendersOn
1139 % The extenders are incorrect here, even though the timing is the same
1141 <5>8. r16 <6>8 <6\! 5->