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}.
93 When chord mode and note mode are mixed in sequential music, and
94 chord mode comes first, the note mode will create a new @code{Staff}
97 @lilypond[verbatim,quote,ragged-right,relative=1]
103 To avoid this behavior, explicitly create the @code{Staff} context:
105 @lilypond[verbatim,quote,ragged-right,relative=1]
114 @unnumberedsubsubsec Common chords
117 @cindex seventh chords
118 @cindex root of chord
119 @cindex modifiers, in chords.
120 @cindex chord quality
122 Major triads are entered by including the root and an
125 @lilypond[verbatim,quote,ragged-right]
126 \chordmode { c2 f4 g }
129 Minor, augmented, and diminished triads are entered by placing
130 @code{:} and a quality modifier string after the duration:
132 @lilypond[verbatim,quote,ragged-right]
133 \chordmode { c2:m f4:aug g:dim }
136 Seventh chords can be created:
138 @lilypond[quote,ragged-right,verbatim]
139 \chordmode { c1:7 c:m7 c:maj7 c:dim7 c:aug7 }
147 The table below shows the actions of the quality modifiers on
148 triads and seventh chords. The default seventh step added to
149 chords is a minor or flatted seventh, which makes the dominant
150 seventh the basic seventh chord. All alterations are relative to
151 the dominant seventh. A more complete table of modifier usage
152 is found at @ref{Common chord modifiers}.
155 @multitable @columnfractions .2 .4 .3
167 The default action; produces a major triad.
169 @lilypond[line-width=4\cm, noragged-right]
171 \override Staff.TimeSignature.stencil = ##f
179 The minor chord. This modifier lowers the 3rd.
181 @lilypond[line-width=4\cm, noragged-right]
183 \override Staff.TimeSignature.stencil = ##f
192 The diminished chord. This modifier lowers the 3rd, 5th and (if
193 present) the 7th step.
195 @lilypond[line-width=4\cm, noragged-right]
197 \override Staff.TimeSignature.stencil = ##f
205 The augmented chord. This modifier raises the 5th step.
207 @lilypond[line-width=4\cm, noragged-right]
209 \override Staff.TimeSignature.stencil = ##f
217 The major 7th chord. This modifier adds a raised 7th step. The
218 @code{7} following @code{maj} is optional. Do NOT use this modifier
219 to create a major triad.
221 @lilypond[line-width=4\cm, noragged-right]
223 \override Staff.TimeSignature.stencil = ##f
232 @ref{Common chord modifiers},
233 @ref{Extended and altered chords}.
239 Only one quality modifier should be used per chord, typically on the
240 highest step present in the chord. Chords with more than quality
241 modifier will be parsed without an error or warning, but the results
242 are unpredictable. Chords that cannot be achieved with a single
243 quality modifier should be altered by individual pitches, as described
244 in @ref{Extended and altered chords}.
247 @node Extended and altered chords
248 @unnumberedsubsubsec Extended and altered chords
250 @cindex extended chords
251 @cindex altered chords
253 Chord structures of arbitrary complexity can be created in chord
254 mode. The modifier string can be used to extend a chord, add or
255 remove chord steps, raise or lower chord steps, and add a bass note
256 or create an inversion.
258 The first number following the @code{:} is taken to be the extent
259 of the chord. The chord is constructed by sequentially adding
260 thirds to the root until the specified number has been reached.
261 Note that the seventh step added as part of an extended chord will be the
262 minor or flatted seventh, not the major seventh.
263 If the extent is not a third (e.g., 6), thirds are added up to the
264 highest third below the extent, and then the step of the extent is
265 added. The largest possible value for the extent is 13. Any
266 larger value is interpreted as 13.
268 @lilypond[quote,ragged-right,verbatim]
278 Note that both @code{c:5} and @code{c} produce a C major triad.
280 Since an unaltered 11 does not sound good when combined with an
281 unaltered 13, the 11 is removed from a @code{:13} chord (unless it
282 is added explicitly).
284 @lilypond[quote,ragged-right,verbatim]
290 @cindex additions, in chords
292 Individual steps can be added to a chord. Additions follow the
293 extent and are prefixed by a dot (@code{.}). The basic seventh
294 step added to a chord is the minor or flatted seventh, rather than
297 @lilypond[quote,verbatim]
299 c1:5.6 c:3.7.8 c:3.6.13
303 Added steps can be as high as desired.
305 @lilypond[quote,verbatim]
307 c4:5.15 c:5.20 c:5.25 c:5.30
311 @cindex chord steps, altering
313 Added chord steps can be altered by suffixing a @code{-} or @code{+}
314 sign to the number. To alter a step that is automatically included
315 as part of the basic chord structure, add it as an altered step.
317 @lilypond[quote,verbatim]
319 c1:7+ c:5+.3- c:3-.5-.7-
323 @cindex removals, in chords
327 Following any steps to be added, a series of steps to be removed
328 is introduced in a modifier string with a prefix of @code{^}.
329 If more than one step is to be removed, the steps to be
330 removed are separated by @code{.} following the
333 @lilypond[quote,verbatim]
335 c1^3 c:7^5 c:9^3 c:9^3.5 c:13.11^3.7
341 The modifier @code{sus} can be added to the modifier string to
342 create suspended chords. This removes the 3rd step from the chord.
343 Append either @code{2} or @code{4} to add the 2nd or 4th step to the
344 chord. @code{sus} is equivalent to @code{^3}; @code{sus4} is
345 equivalent to @code{.4^3}.
347 @lilypond[quote,ragged-right,verbatim]
349 c1:sus c:sus2 c:sus4 c:5.4^3
354 @cindex chord inversions
355 @cindex bass note, for chords
357 Inversions (putting a pitch other than the root on the bottom of the
358 chord) and added bass notes can be specified by appending
359 @code{/}@var{pitch} to the chord.
361 @lilypond[quote,ragged-right,verbatim]
369 A bass note that is part of the chord can be added, instead of
370 moved as part of an inversion, by using @code{/+}@var{pitch}.
372 @lilypond[quote,ragged-right,verbatim]
378 Chord modifiers that can be used to produce a variety of
379 standard chords are shown in
380 @ref{Common chord modifiers}.
384 @ref{Common chord modifiers}.
390 Each step can only be present in a chord once. The following
391 simply produces the augmented chord, since @code{5+} is
394 @lilypond[quote,ragged-right,verbatim]
395 \chordmode { c1:5.5-.5+ }
398 Only the second inversion can be created by adding a bass
399 note. The first inversion requires changing the root of
402 @lilypond[quote,ragged-right,verbatim]
404 c'1: c':/g e:6-3-^5 e:m6-^5
409 @node Displaying chords
410 @subsection Displaying chords
412 Chords can be displayed by name, in addition to the standard display
416 * Printing chord names::
417 * Customizing chord names::
420 @node Printing chord names
421 @unnumberedsubsubsec Printing chord names
423 @cindex printing chord names
427 Chord names are printed in the @code{ChordNames} context:
429 @lilypond[verbatim,quote,ragged-right]
437 Chords can be entered as simultaneous notes or through the use of
438 chord mode. The displayed chord name will be the same, regardless
439 of the mode of entry, unless there are inversions or added bass notes:
441 @lilypond[verbatim,quote,relative=1]
460 @cindex no chord symbol
462 @cindex indicating No Chord in ChordNames
464 Rests passed to a @code{ChordNames} context will cause the
465 @code{noChordSymbol} markup to be displayed.
467 @lilypond[verbatim, quote, relative=1]
469 \new ChordNames \chordmode {
486 @code{\chords @{ @dots{} @}} is a shortcut notation for
487 @code{\new ChordNames @{ \chordmode @{ @dots{} @}}.
489 @lilypond[verbatim,quote,ragged-right]
495 @lilypond[verbatim,quote,ragged-right]
505 @c Keep index entries with following snippet
506 @cindex chords, suppressing repeated
507 @funindex chordChanges
509 @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
510 {showing-chords-at-changes.ly}
512 @c @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
513 @c {adding-bar-lines-to-chordnames-context.ly}
515 @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
516 {simple-lead-sheet.ly}
523 @ref{Writing music in parallel}.
529 @rinternals{ChordNames},
530 @rinternals{ChordName},
531 @rinternals{Chord_name_engraver},
532 @rinternals{Volta_engraver},
533 @rinternals{Bar_engraver}.
536 Chords containing inversions or altered bass notes are not named
537 properly if entered using simultaneous music.
540 @node Customizing chord names
541 @unnumberedsubsubsec Customizing chord names
543 @cindex customizing chord names
545 There is no unique system for naming chords. Different musical
546 traditions use different names for the same set of chords. There
547 are also different symbols displayed for a given chord name. The
548 names and symbols displayed for chord names are customizable.
553 The basic chord name layout is a system for Jazz music, proposed
554 by Klaus Ignatzek (see @ressay{Literature list}). The chord naming
555 system can be modified as described below. An alternate jazz
556 chord system has been developed using these modifications.
557 The Ignatzek and alternate
558 Jazz notation are shown on the chart in @ref{Chord name chart}.
560 @c TODO -- Change this so we don't have a non-verbatim example.
561 @c Make short example in docs, then move longer example to
562 @c appendix, where the length of the snippet won't matter.
564 In addition to the different naming systems, different note names
565 are used for the root in different languages. The predefined
566 commands @code{\germanChords}, @code{\semiGermanChords},
567 @code{\italianChords} and @code{\frenchChords} set these variables.
568 The effect is demonstrated here:
570 @lilypondfile[ragged-right]{chord-names-languages.ly}
573 @funindex chordNameLowercaseMinor
575 German songbooks may indicate minor chords as lowercase letters,
576 without any @var{m} suffix. This can be obtained by setting the
577 @code{chordNameLowercaseMinor} property:
579 @lilypond[verbatim,quote,ragged-right]
581 \set chordNameLowercaseMinor = ##t
586 If none of the existing settings give the desired output, the chord
587 name display can be tuned through the following properties.
591 @funindex chordRootNamer
595 The chord name is usually printed as a letter for the root with an
596 optional alteration. The transformation from pitch to letter is
597 done by this function. Special note names (for example, the German
598 @q{H} for a B-chord) can be produced by storing a new function in
601 @funindex majorSevenSymbol
603 @item majorSevenSymbol
605 This property contains the markup object used to follow the output
606 of @code{chordRootNamer} to identify a major 7 chord. Predefined
607 options are @code{whiteTriangleMarkup} and
608 @code{blackTriangleMarkup}.
610 @funindex additionalPitchPrefix
612 @item additionalPitchPrefix
614 When the chord name contains additional pitches, they can optionally
615 be prefixed with some text. The default is no prefix, in order to
616 avoid too much visual clutter, but for small numbers of additional
617 pitches this can be visually effective.
619 @lilypond[verbatim,quote,ragged-right]
622 \set additionalPitchPrefix = #"add"
627 @funindex chordNoteNamer
631 When the chord name contains additional pitches other than the root
632 (e.g., an added bass note), this function is used to print the
633 additional pitch. By default the pitch is printed using
634 @code{chordRootNamer}. The @code{chordNoteNamer} property can be set
635 to a specialized function to change this behavior. For example, the
636 bass note can be printed in lower case.
638 @funindex chordNameSeparator
640 @item chordNameSeparator
642 Different parts of a chord name are normally separated by a small
643 amount of horizontal space. By setting @code{chordNameSeparator}, you
644 can use any desired markup for a separator. This does not affect the
645 separator between a chord and its bass note; to customize that, use
646 @code{slashChordSeparator}.
648 @lilypond[verbatim,quote,ragged-right]
651 \set chordNameSeparator = \markup { "/" }
657 @funindex slashChordSeparator
659 @item slashChordSeparator
661 Chords can be played over a bass note other than the conventional root
662 of the chord. These are known as ``inversions'' or ``slash chords'',
663 because the default way of notating them is with a forward slash
664 between the main chord and the bass note. Therefore the value of
665 @code{slashChordSeparator} defaults to a forward slash, but you can
666 change it to any markup you choose.
668 @lilypond[verbatim,quote,ragged-right]
671 \set slashChordSeparator = \markup { " over " }
677 @funindex chordNameExceptions
679 @item chordNameExceptions
681 This property is a list of pairs. The first item in each pair
682 is a set of pitches used to identify the steps present in the chord.
683 The second item is a markup that will follow the @code{chordRootNamer}
684 output to create the chord name.
686 @funindex minorChordModifier
688 @item minorChordModifier
690 Minor chords are often denoted via a @q{m} suffix to the right of the
691 root of the chord. However some idioms prefer other suffices, such as
694 @lilypond[verbatim,quote,ragged-right]
697 \set minorChordModifier = \markup { "-" }
703 @funindex chordPrefixSpacer
705 @item chordPrefixSpacer
707 The modifier for minor chords as determined by
708 @code{minorChordModifier} is usually printed immediately to the right
709 of the root of the chord. A spacer can be placed between the root and
710 the modifier by setting @code{chordPrefixSpacer}. The spacer is not
711 used when the root is altered.
717 @funindex major seven symbols
718 @code{\whiteTriangleMarkup},
719 @code{\blackTriangleMarkup},
720 @funindex \germanChords
721 @code{\germanChords},
722 @funindex \semiGermanChords
723 @code{\semiGermanChords},
724 @funindex \italianChords
725 @code{\italianChords},
726 @funindex \frenchChords
727 @code{\frenchChords}.
733 @cindex exceptions, chord names.
734 @lilypondfile[verbatim,quote,texidoc,doctitle]
735 {chord-name-exceptions.ly}
737 @c TODO - tweak snippet to use \blackTriangleMarkup as well
738 @lilypondfile[verbatim,quote,texidoc,doctitle]
739 {chord-name-major7.ly}
741 @lilypondfile[verbatim,quote,texidoc,doctitle]
742 {adding-bar-lines-to-chordnames-context.ly}
744 @lilypondfile[verbatim,quote,texidoc,doctitle]
745 {volta-below-chords.ly}
747 @lilypondfile[verbatim,quote,texidoc,doctitle]
748 {changing-chord-separator.ly}
752 @ref{Chord name chart},
753 @ref{Common chord modifiers}.
755 Essay on automated music engraving:
756 @ressay{Literature list}.
759 @file{scm/chords-ignatzek.scm},
760 @file{scm/chord-entry.scm},
761 @file{ly/chord-modifier-init.ly}.
767 Chord names are determined from both the pitches that are present
768 in the chord and the information on the chord structure that may
769 have been entered in @code{\chordmode}. If the simultaneous pitches
770 method of entering chords is used, undesired names result from
771 inversions or bass notes.
773 @lilypond[quote,ragged-right,verbatim]
774 myChords = \relative c' {
775 \chordmode { c1 c/g c/f }
776 <c e g>1 <g c e> <f c' e g>
779 \new ChordNames { \myChords }
780 \new Staff { \myChords }
786 @subsection Figured bass
788 @c Line width hack because of instrument names
789 @lilypondfile[quote,staffsize=18,line-width=14.5\cm]{figured-bass-headword.ly}
791 Figured bass notation can be displayed.
794 * Introduction to figured bass::
795 * Entering figured bass::
796 * Displaying figured bass::
799 @node Introduction to figured bass
800 @unnumberedsubsubsec Introduction to figured bass
802 @cindex Basso continuo
803 @cindex Thorough bass
805 @cindex Bass, thorough
806 @cindex Bass, figured
808 @c TODO: musicological blurb about FB
811 LilyPond has support for figured bass, also called thorough bass
814 @lilypond[quote,ragged-right,verbatim]
816 \new Voice { \clef bass dis4 c d ais g fis}
819 < 6 >4 < 7\+ >8 < 6+ [_!] >
827 The support for figured bass consists of two parts: there is an
828 input mode, introduced by @code{\figuremode}, that accepts
829 entry of bass figures, and there is a context named
830 @code{FiguredBass} that takes care of displaying
831 @code{BassFigure} objects. Figured bass can also be displayed
832 in @code{Staff} contexts.
834 @code{\figures@{ @dots{} @}} is a shortcut notation for
835 @code{\new FiguredBass @{ \figuremode @{ @dots{} @} @}}.
838 Although the support for figured bass may superficially resemble chord
839 support, it is much simpler. @code{\figuremode} mode simply
840 stores the figures and the @code{FiguredBass} context prints them
841 as entered. There is no conversion to pitches.
844 Figures are created as markup texts. Any of the standard markup
845 properties can be used to modify the display of figures. For
846 example, the vertical spacing of the figures may be set with
847 @code{baseline-skip}.
852 @rglos{figured bass}.
858 @node Entering figured bass
859 @unnumberedsubsubsec Entering figured bass
861 @code{\figuremode} is used to switch the input mode to figure mode.
862 More information on different input modes can be
863 found at @ref{Input modes}.
865 In figure mode, a group of bass figures is delimited by
866 @code{<} and @code{>}. The duration is entered after the @code{>}.
868 @lilypond[verbatim,quote,ragged-right]
877 Accidentals (including naturals) can be added to figures:
879 @lilypond[verbatim,quote,ragged-right]
881 <7! 6+ 4-> <5++> <3-->
885 Augmented and diminished steps can be indicated:
887 @lilypond[verbatim,quote,ragged-right]
893 A backward slash through a figure (typically used for raised
894 sixth steps) can be created:
896 @lilypond[verbatim,quote,ragged-right]
902 Vertical spaces and brackets can be included in figures:
904 @lilypond[verbatim,quote,ragged-right]
910 Any text markup can be inserted as a figure:
912 @lilypond[verbatim,quote,ragged-right]
914 <\markup { \tiny \number 6 \super (1) } 5>
918 @c NOTE: We need to include notes any time we use extenders to
919 @c avoid extraneous staff creation due to Staff.use... in
920 @c \bassFigureExtendersOn
922 Continuation lines can be used to indicate repeated figures:
924 @lilypond[verbatim,quote,ragged-right]
932 \bassFigureExtendersOn
933 <6 4>4 <6 3> <7 3> <7 3>
934 \bassFigureExtendersOff
935 <6 4>4 <6 3> <7 3> <7 3>
941 In this case, the extender lines replace existing figures,
942 unless the continuation lines have been explicitly terminated.
944 @lilypond[verbatim,quote,ragged-right]
947 \bassFigureExtendersOn
948 <6 4>4 <6 4> <6\! 4\!> <6 4>
957 The table below summarizes the figure modifiers available.
959 @multitable @columnfractions .1 .5 .4
973 @lilypond[line-width=4\cm]
975 <7! 6+ 4-> <5++> <3-->
982 Augmented and diminished steps
984 @lilypond[line-width=4\cm]
995 @lilypond[line-width=4\cm]
1004 End of continuation line
1006 @lilypond[line-width=4\cm]
1009 \bassFigureExtendersOn
1010 <6 4> <6 4> <6\! 4\!> <6 4>
1023 @cindex figured bass extender lines
1024 @code{\bassFigureExtendersOn},
1025 @code{\bassFigureExtendersOff}.
1030 @lilypondfile[verbatim,quote,texidoc,doctitle]
1031 {changing-the-positions-of-figured-bass-alterations.ly}
1037 Internals Reference:
1038 @rinternals{BassFigure},
1039 @rinternals{BassFigureAlignment},
1040 @rinternals{BassFigureLine},
1041 @rinternals{BassFigureBracket},
1042 @rinternals{BassFigureContinuation},
1043 @rinternals{FiguredBass}.
1046 @node Displaying figured bass
1047 @unnumberedsubsubsec Displaying figured bass
1049 Figured bass can be displayed using the @code{FiguredBass} context,
1050 or in most staff contexts.
1052 When displayed in a @code{FiguredBass} context, the vertical location
1053 of the figures is independent of the notes on the staff.
1055 @lilypond[verbatim,ragged-right,quote]
1070 In the example above, the @code{FiguredBass} context must be
1071 explicitly instantiated to avoid creating a second (empty) staff.
1074 Figured bass can also be added to @code{Staff} contexts
1075 directly. In this case, the vertical position of the
1076 figures is adjusted automatically.
1078 @lilypond[verbatim,ragged-right,quote]
1080 \new Staff = "myStaff"
1085 %% Put notes on same Staff as figures
1086 \context Staff = "myStaff"
1095 When added in a @code{Staff} context, figured bass can be displayed above
1098 @lilypond[verbatim,ragged-right,quote]
1100 \new Staff = "myStaff"
1103 \bassFigureStaffAlignmentDown
1106 %% Put notes on same Staff as figures
1107 \context Staff = "myStaff"
1116 @cindex figured bass alignment
1117 @code{\bassFigureStaffAlignmentDown},
1118 @code{\bassFigureStaffAlignmentUp},
1119 @code{\bassFigureStaffAlignmentNeutral}.
1126 Internals Reference:
1127 @rinternals{BassFigure},
1128 @rinternals{BassFigureAlignment},
1129 @rinternals{BassFigureLine},
1130 @rinternals{BassFigureBracket},
1131 @rinternals{BassFigureContinuation},
1132 @rinternals{FiguredBass}.
1135 To ensure that continuation lines work properly, it is
1136 safest to use the same rhythm in the figure line as in
1139 @lilypond[verbatim,ragged-right,quote]
1143 \repeat unfold 4 { f16. g32 } f8. es16 d8 es
1146 \bassFigureExtendersOn
1147 % The extenders are correct here, with the same rhythm as the bass
1148 \repeat unfold 4 { <6 4->16. <6 4->32 }
1149 <5>8. r16 <6>8 <6\! 5->
1155 \repeat unfold 4 { f16. g32 } f8. es16 d8 es
1158 \bassFigureExtendersOn
1159 % The extenders are incorrect here, even though the timing is the same
1161 <5>8. r16 <6>8 <6\! 5->