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 in chord mode, which recognizes some traditional European chord naming conventions. Chord names can also
18 be displayed. In addition, figured bass notation can be displayed.
28 @subsection Chord mode
32 Chord mode is used to enter chords using an indicator of the chord
33 structure, rather than the chord pitches.
36 * Chord mode overview::
38 * Extended and altered chords::
41 @node Chord mode overview
42 @unnumberedsubsubsec Chord mode overview
47 Chords can be entered as simultaneous music, as discussed in
50 Chords can also be entered in @qq{chord mode}, which is an input
51 mode that focuses on the structures of chords in traditional
52 European music, rather than on specific pitches. This is
53 convenient for those who are familiar with using chord names to
54 describe chords. More information on different input modes can be
55 found at @ref{Input modes}.
57 @lilypond[verbatim,quote,ragged-right,relative=1]
58 \chordmode { c1 g a g c }
61 Chords entered using chord mode are music elements, and can be
62 transposed just like chords entered using simultaneous music.
64 Chord mode and note mode can be mixed in sequential music:
66 @lilypond[verbatim,quote,ragged-right,relative=1]
88 When chord mode and note mode are mixed in sequential music, and
89 chord mode comes first, the note mode will create a new @code{Staff}
92 @lilypond[verbatim,quote,ragged-right,relative=1]
97 To avoid this behavior, explicitly create the @code{Staff} context:
99 @lilypond[verbatim,quote,ragged-right,relative=1]
107 @unnumberedsubsubsec Common chords
110 @cindex seventh chords
111 @cindex root of chord
112 @cindex modifiers, in chords.
113 @cindex chord quality
115 Major triads are entered by including the root and an
118 @lilypond[verbatim,quote,relative=1,ragged-right]
119 \chordmode { c2 f4 g }
122 Minor, augmented, and diminished triads are entered by placing
123 @code{:} and a quality modifier string after the duration:
125 @lilypond[verbatim,quote,ragged-right,relative=1]
126 \chordmode { c2:m f4:aug g:dim }
129 Seventh chords can be created:
131 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
132 \chordmode { c1:7 c:m7 c:maj7 c:dim7 c:aug7 }
140 The table belows shows the actions of the quality modifiers on
141 triads and seventh chords.
146 The minor chord. This modifier lowers the 3rd and (if present) the
150 The diminished chord. This modifier lowers the 3rd, 5th and (if
151 present) the 7th step.
154 The augmented chord. This modifier raises the 5th step.
157 The major 7th chord. This modifier adds a raised 7th step. The
158 @code{7} following @code{maj} is optional. Do NOT use this modifier
159 to create a major triad.
163 @c TODO -- perhaps add warning about c and c:maj being different, while
164 @c c:maj and c:maj7 are the same
171 @node Extended and altered chords
172 @unnumberedsubsubsec Extended and altered chords
174 @cindex extended chords
175 @cindex altered chords
177 Chord structures of arbitrary complexity can be created in chord
178 mode. The modifier string can be used to extend a chord, add or
179 remove chord steps, raise or lower chord steps, and add a bass note
180 or create an inversion.
182 The first number following the @code{:} is taken to be the extent
183 of the chord. The chord is constructed by sequentially adding
184 thirds to the root until the specified number has been reached.
185 If the extent is not a third (e.g., 6), thirds are added up to the
186 highest third below the extent, and then the step of the extent is
187 added. The largest possible value for the extent is 13. Any
188 larger value is interpreted as 13.
190 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
200 Note that @code{c:5} is identical to @code{c} -- both produce a C major triad.
202 Since an unaltered 11 does not sound good when combined with an
203 unaltered 13, the 11 is removed from a @code{:13} chord (unless it
204 is added explicitly).
206 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
212 @cindex additions, in chords
214 Individual steps can be added to a chord. Additions follow the
215 extent and are prefixed by a dot (@code{.}).
217 @lilypond[quote,verbatim,fragment,relative=1]
219 c1:5.6 c:3.7.8 c:3.6.13
223 Added steps can be as high as desired.
225 @lilypond[quote,verbatim,fragment,relative=1]
227 c4:5.15 c:5.20 c:5.25 c:5.30
231 @cindex chord steps, altering
233 Added chord steps can be altered by suffixing a @code{-} or @code{+}
234 sign to the number. To alter a step that is automatically included
235 as part of the basic chode structure, add it as an altered step.
237 @lilypond[quote,verbatim,fragment,relative=1]
239 c1:7+ c:5+.3- c:3-.5-.7-
243 @cindex removals, in chords
247 A step to be removed from the chord indicated in a
248 modifier string with a prefix of @code{^}. Only one removal with @code{^}
249 is allowed in a modifier string.
251 @lilypond[quote,verbatim,fragment,relative=1]
259 The modifier @code{sus} can be added to the modifier string to
260 create suspended chords. This removes the 3rd step from the chord.
261 Append either @code{2} or @code{4} to add the 2nd or 4th step to the
262 chord. @code{sus} is equivalent to @code{^3}; @code{sus4} is
263 equivalent to @code{.4^3}.
265 @lilypond[quote,ragged-right,fragment,verbatim]
267 c1:sus c:sus2 c:sus4 c:5.4^3
271 It is possible to remove the 3rd step with @code{sus} and remove
272 another step with @code{^} in one modifier string.
275 @cindex chord inversions
276 @cindex bass note, for chords
278 Inversions (putting a pitch other than the root on the bottom of the
279 chord) and added bass notes can be specified by appending
280 @code{/}@var{pitch} to the chord.
282 @lilypond[quote,ragged-right,fragment,verbatim, relative=2]
290 A bass note that is part of the chord can be added, instead of
291 moved as part of an inversion, by using @code{/+}@var{pitch}.
293 @lilypond[quote,ragged-right,fragment,verbatim]
306 Each step can only be present in a chord once. The following
307 simply produces the augmented chord, since @code{5+} is
310 @lilypond[quote,ragged-right,verbatim,fragment]
311 \chordmode { c1:5.5-.5+ }
314 Only one step can be removed from a chord. If a chord with multiple
315 removed steps is desired, it must be built through addition of
318 Only the first inversion can be created by adding a bass note. The
319 second inversion requires changing the root of the chord.
321 @lilypond[quote,ragged-right,verbatim,fragment]
323 c'1: c':/g e:6-3-^5 e:m6-^5
327 @node Displaying chords
328 @subsection Displaying chords
330 Chords can be displayed by name, in addition to the standard display
334 * Printing chord names::
335 * Customizing chord names::
338 @node Printing chord names
339 @unnumberedsubsubsec Printing chord names
341 @cindex printing chord names
345 Chord names are printed in the @code{ChordNames} context:
347 @lilypond[verbatim,quote,relative=1,ragged-right]
355 Chords can be entered as simultaneous notes or through the use of
356 chord mode. The displayed chord name will be the same, regardless
357 of the mode of entry, unless there are inversions or added bass notes:
359 @lilypond[verbatim,quote,relative=1]
380 @code{\chords @{ ... @}} is a shortcut notation for
381 @code{\new ChordNames @{\chordmode @{ ... @}@}}.
383 @lilypond[verbatim,quote,ragged-right, relative=1]
389 @lilypond[verbatim,quote,ragged-right, relative=1]
399 @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
400 {showing-chords-at-changes.ly}
402 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
403 @c {adding-bar-lines-to-chordnames-context.ly}
405 @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
406 {simple-lead-sheet.ly}
416 @ref{Writing music in parallel}.
423 @rinternals{ChordNames},
424 @rinternals{Volta_engraver},
425 @rinternals{Bar_engraver}.
429 Chords containing inversions or altered bass notes are not named
430 properly if entered using simultaneous music.
433 @node Customizing chord names
434 @unnumberedsubsubsec Customizing chord names
436 @cindex customizing chord names
438 There is no unique system for naming chords. Different musical
439 traditions use different names for the same set of chords. There
440 are also different symbols displayed for a given chord name. The
441 names and symbols displayed for chord names are customizable.
447 The default chord name layout is a system for Jazz music, proposed
448 by Klaus Ignatzek (see @ref{Literature list}). There are also two
449 other chord name schemes implemented: an alternate Jazz chord
450 notation, and a systematic scheme called Banter chords. The
451 alternate Jazz notation is also shown on the chart in @ref{Chord
454 @c TODO -- Change this so we don't have a non-verbatim example.
455 @c Make short example in docs, then move longer example to
456 @c appendix, where the length of the snippet won't matter.
458 In addition to the different naming systems, different note names
459 are used for the root in different languages. The predefined
460 variables @code{\germanChords}, @code{\semiGermanChords},
461 @code{\italianChords} and @code{\frenchChords} set these variables.
462 The effect is demonstrated here:
464 @lilypondfile[ragged-right]{chord-names-languages.ly}
466 If none of the default settings give the desired output, the chord
467 name display can be tuned through the following properties.
471 @funindex chordRootNamer
475 The chord name is usually printed as a letter for the root with an
476 optional alteration. The transformation from pitch to letter is
477 done by this function. Special note names (for example, the German
478 @q{H} for a B-chord) can be produced by storing a new function in
481 @funindex majorSevenSymbol
483 @item majorSevenSymbol
485 This property contains the markup object used to follow the output
486 of @code{chordRootNamer} to dentify a major 7 chord. Predefined
487 options are @code{whiteTriangleMarkup} and
488 @code{blackTriangleMarkup}.
490 @funindex chordNoteNamer
494 When the chord name contains additional pitches other than the root
495 (e.g., an added bass note), this function is used to print the
496 additional pitch. By default the pitch is printed using
497 @code{chordRootNamer}. The @code{chordNoteNamer} property can be set
498 to a specialized function to change this behavior. For example, the
499 bass note can be printed in lower case.
501 @funindex chordNameSeparator
503 @item chordNameSeparator
505 Different parts of a chord name are normally separated by a slash.
506 By setting @code{chordNameSeparator}, you can use any desired markup
509 @funindex chordNameExceptions
511 @item chordNameExceptions
513 This property is a list of pairs. The first item in each pair
514 is a set of pitches used to identify the steps present in the chord.
515 The second item is a markups that will follow the @code{chordRootNamer}
516 output to create the chord name.
518 @funindex chordPrefixSpacer
519 @item chordPrefixSpacer
521 The @q{m} for minor chords is usually printed immediately to the
522 right of the root of the chord. By setting
523 @code{chordPrefixSpacer}, you can fix a spacer between the root
524 and @q{m}. The spacer is not used when the root is altered.
530 @funindex major seven symbols
531 @code{\whiteTriangleMarkup},
532 @code{\blackTriangleMarkup},
533 @funindex \germanChords
534 @code{\germanChords},
535 @funindex \semiGermanChords
536 @code{\semiGermanChords},
537 @funindex \italianChords
538 @code{\italianChords},
539 @funindex \frenchChords
540 @code{\frenchChords}.
545 @cindex exceptions, chord names.
546 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
547 {chord-name-exceptions.ly}
549 @c TODO - tweak snippet to use \blackTriangleMarkup as well
550 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
551 {chord-name-major7.ly}
553 @c @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
554 @c {adding-bars-to-chordnames.ly)
556 @c @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
557 @c {volta-brackets-over-chord-names.ly}
559 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
560 {changing-chord-separator.ly}
566 @ref{Chord name chart}.
569 @file{scm/@/chords@/-ignatzek@/.scm},
570 @file{scm/@/chord@/-entry@/.scm},
571 @file{ly/@/chord@/-modifier@/-init@/.ly}.
576 @c Internals Reference:
581 Chord names are determined from both the pitches that are present
582 in the chord and the information on the chord structure that may
583 have been entered in @code{\chordmode}. If the simultaneous pitches
584 method of entering chords is used, undesired names result from
585 inversions or bass notes.
587 @lilypond[quote,ragged-right,verbatim]
588 myChords = \relative c' {
589 \chordmode{ c1 c/g c/f }
590 <c e g> <g c e> <f c' e g>
593 \new ChordNames { \myChords }
594 \new Staff { \myChords }
600 @subsection Figured bass
602 @lilypondfile[quote]{figured-bass-headword.ly}
604 Figured bass notation can be displayed.
607 * Introduction to figured bass::
608 * Entering figured bass::
609 * Displaying figured bass::
612 @node Introduction to figured bass
613 @unnumberedsubsubsec Introduction to figured bass
615 @cindex Basso continuo
616 @cindex Thorough bass
618 @cindex Bass, thorough
619 @cindex Bass, figured
621 @c TODO: musicological blurb about FB
624 LilyPond has support for figured bass, also called thorough bass
627 @lilypond[quote,ragged-right,verbatim,fragment]
629 \new Voice { \clef bass dis4 c d ais g fis}
632 < 6 >4 < 7\+ >8 < 6+ [_!] >
640 The support for figured bass consists of two parts: there is an
641 input mode, introduced by @code{\figuremode}, that accepts
642 entry of bass figures, and there is a context named
643 @code{FiguredBass} that takes care of displaying
644 @code{BassFigure} objects. Figured bass can also be displayed
645 in @code{Staff} contexts.
647 @code{\figures@{ ... @}} is a shortcut notation for
648 @code{\new FiguredBass @{\figuremode @{ ... @}@}}.
651 Although the support for figured bass may superficially resemble chord
652 support, it is much simpler. @code{\figuremode} mode simply
653 stores the figures and the @code{FiguredBass} context prints them
654 as entered. There is no conversion to pitches.
656 Figures are created as markup texts. Any of the standard markup
657 properties can be used to modify the display of figures. For
658 example, the vertical spacing of the figures may be set with
659 @code{baseline-skip}.
667 @node Entering figured bass
668 @unnumberedsubsubsec Entering figured bass
670 @code{\figuremode} is used to switch the input mode to figure mode.
671 More information on different input modes can be
672 found at @ref{Input modes}.
674 In figure mode, a group of bass figures is delimited by
675 @code{<} and @code{>}. The duration is entered after the @code{>}.
677 @lilypond[verbatim,quote,ragged-right,fragment]
685 Accidentals (including naturals) can be added to figures:
687 @lilypond[verbatim,quote,ragged-right,fragment]
689 <7! 6+ 4-> <5++> <3-->
693 Augmented and diminished steps can be indicated.
695 @lilypond[verbatim,quote,ragged-right,fragment]
701 A backward slash through a figure (typically used for raised
702 sixth steps) can be created.
704 @lilypond[verbatim,quote,ragged-right,fragment]
712 Vertical spaces and brackets can be be included in figures:
714 @lilypond[verbatim,quote,ragged-right,fragment]
721 Any text markup can be inserted as a figure:
723 @lilypond[verbatim,quote,ragged-right,fragment]
725 < \markup{ \tiny \number 6 \super (1)} 5 >
729 @c NOTE: We need to include notes any time we use extenders to
730 @c avoid extraneous staff creation due to Staff.use... in
731 @c \bassFigureExtendersOn
733 Continuation lines can be used to indicate repeated figures:
735 @lilypond[verbatim,quote,ragged-right,fragment]
743 \bassFigureExtendersOn
744 <6 4> <6 3> <7 3> <7 3>
745 \bassFigureExtendersOff
746 <6 4> <6 3> <7 3> <7 3>
752 In this case, the extender lines replace existing figures,
753 unless the continuation lines have been explicitly terminated.
755 @lilypond[verbatim,quote,ragged-right,fragment]
758 \bassFigureExtendersOn
759 <6 4> <6 4> <6\! 4\!> <6 4>
771 @cindex figured bass extender lines
772 @code{\bassFigureExtendersOn},
773 @code{\bassFigureExtendersOff}.
777 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
778 {changing-the-positions-of-figured-bass-alterations.ly}
787 @c Notation Reference:
790 @c Application Usage:
800 @rinternals{NewBassFigure},
801 @rinternals{BassFigureAlignment},
802 @rinternals{BassFigureLine},
803 @rinternals{BassFigureBracket},
804 @rinternals{BassFigureContinuation},
805 @rinternals{FiguredBass}.
809 @node Displaying figured bass
810 @unnumberedsubsubsec Displaying figured bass
812 Figured bass can be displayed using the @code{FiguredBass} context,
813 or in most staff contexts.
815 When displayed in a @code{FiguredBass} context, the vertical location
816 of the figures is independent of the notes on the staff.
818 @lilypond[verbatim,ragged-right,fragment,quote]
833 In the example above, the @code{FiguredBass} context must be
834 explicitly instantiated to avoid creating a second (empty) staff.
837 Figured bass can also be added to @code{Staff} contexts
838 directly. In this case, the vertical position of the
839 figures is adjusted automatically.
841 @lilypond[verbatim,ragged-right,fragment,quote]
848 %% Put notes on same Staff as figures
849 \context Staff = myStaff
858 When added in a Staff context, figured bass can be displayed above
861 @lilypond[verbatim,ragged-right,fragment,quote]
866 \bassFigureStaffAlignmentDown
869 %% Put notes on same Staff as figures
870 \context Staff = myStaff
880 @cindex figured bass alignment
881 @code{\bassFigureStaffAlignmentDown},
882 @code{\bassFigureStaffAlignmentUp},
883 @code{\bassFigureStaffAlignmentNeutral}.
894 @c Notation Reference:
897 @c Application Usage:
907 @rinternals{NewBassFigure},
908 @rinternals{BassFigureAlignment},
909 @rinternals{BassFigureLine},
910 @rinternals{BassFigureBracket},
911 @rinternals{BassFigureContinuation},
912 @rinternals{FiguredBass}.
916 To ensure that continuation lines work properly, it is
917 safest to use the same rhythm in the figure line as in
920 @lilypond[verbatim,ragged-right,fragment,quote]
924 \repeat unfold 4 {f16. g32} f8. es16 d8 es
927 \bassFigureExtendersOn
928 % The extenders are correct here, with the same rhythm as the bass
929 \repeat unfold 4 {<6 4->16. <6 4->32}
930 <5>8. r16 <6>8 <6\! 5->
936 \repeat unfold 4 {f16. g32} f8. es16 d8 es
939 \bassFigureExtendersOn
940 % The extenders are incorrect here, even though the timing is the same
942 %\repeat unfold 4 {<6 4->16. <6 4->32}
943 <5>8. r16 <6>8 <6\! 5->
948 When using extender lines, adjacent figures with the same number in
949 a different figure location can cause the figure positions to invert.
951 @lilypond[verbatim,ragged-right,fragment,quote,relative=1]
955 \bassFigureExtendersOn
956 <6 5> <5\! 4> < 5 _!> <6>
961 To avoid this problem, simply turn on extenders after the figure that
962 begins the extender line and turn them off at the end of the extender line.
964 @lilypond[verbatim,ragged-right,fragment,quote,relative=1]
969 \bassFigureExtendersOn
971 \bassFigureExtendersOff