]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/notation/chords.itely
Merge branch 'lilypond/translation' of ssh://jomand@git.sv.gnu.org/srv/git/lilypond
[lilypond.git] / Documentation / notation / chords.itely
1 @c -*- coding: utf-8; mode: texinfo; -*-
2 @ignore
3     Translation of GIT committish: FILL-IN-HEAD-COMMITTISH
4
5     When revising a translation, copy the HEAD committish of the
6     version that you are working on.  See TRANSLATION for details.
7 @end ignore
8
9 @c \version "2.12.0"
10
11
12 @node Chord notation
13 @section Chord notation
14
15 @lilypondfile[quote]{chords-headword.ly}
16
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.
20
21 @menu
22 * Chord mode::
23 * Displaying chords::
24 * Figured bass::
25 @end menu
26
27
28 @node Chord mode
29 @subsection Chord mode
30
31 @cindex chord chords
32
33 Chord mode is used to enter chords using an indicator of the chord
34 structure, rather than the chord pitches.
35
36 @menu
37 * Chord mode overview::
38 * Common chords::
39 * Extended and altered chords::
40 @end menu
41
42 @node Chord mode overview
43 @unnumberedsubsubsec Chord mode overview
44
45 @cindex chord names
46 @cindex chord mode
47
48 Chords can be entered as simultaneous music, as discussed in
49 @ref{Chorded notes}.
50
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}.
57
58 @lilypond[verbatim,quote,ragged-right,relative=1]
59 \chordmode { c1 g a g c }
60 @end lilypond
61
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.
67
68 Chord mode and note mode can be mixed in sequential music:
69
70 @lilypond[verbatim,quote,ragged-right,relative=1]
71 <c e g>2 <g b d>
72 \chordmode { c2 f }
73 <c e g>2 <g' b d>
74 \chordmode { f2 g }
75 @end lilypond
76
77
78 @seealso
79 Music Glossary:
80 @rglos{chord}.
81
82 Notation Reference:
83 @ref{Chorded notes},
84 @ref{Input modes}.
85
86 Snippets:
87 @rlsr{Chords}.
88
89
90 @knownissues
91
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}
94 context.
95
96 @lilypond[verbatim,quote,ragged-right,relative=1]
97 \chordmode { c2 f }
98 <c e g>2 <g' b d>
99 @end lilypond
100
101 To avoid this behavior, explicitly create the @code{Staff} context:
102
103 @lilypond[verbatim,quote,ragged-right,relative=1]
104 \new Staff {
105   \chordmode { c2 f }
106   <c e g>2  <g' b d>
107 }
108 @end lilypond
109
110 @node Common chords
111 @unnumberedsubsubsec Common chords
112
113 @cindex triads
114 @cindex seventh chords
115 @cindex root of chord
116 @cindex modifiers, in chords.
117 @cindex chord quality
118
119 Major triads are entered by including the root and an
120 optional duration:
121
122 @lilypond[verbatim,quote,relative=1,ragged-right]
123 \chordmode { c2 f4 g }
124 @end lilypond
125
126 Minor, augmented, and diminished triads are entered by placing
127 @code{:} and a quality modifier string after the duration:
128
129 @lilypond[verbatim,quote,ragged-right,relative=1]
130 \chordmode { c2:m f4:aug g:dim }
131 @end lilypond
132
133 Seventh chords can be created:
134
135 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
136 \chordmode { c1:7 c:m7 c:maj7 c:dim7 c:aug7 }
137 @end lilypond
138
139 @funindex aug
140 @funindex dim
141 @funindex maj
142 @funindex m
143
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}.
150
151 @c @table @code
152 @multitable @columnfractions .2 .4 .3
153
154 @item
155 @b{Modifier}
156 @tab
157 @b{Action}
158 @tab
159 @b{Example}
160
161 @item
162 None
163 @tab
164 The default action; produces a major triad.
165 @tab
166 @lilypond[line-width=4\cm, noragged-right]
167 \chordmode {
168   \override Staff.TimeSignature #'stencil = ##f
169   c1
170 }
171 @end lilypond
172
173 @item
174 m, m7
175 @tab
176 The minor chord.  This modifier lowers the 3rd.
177 @tab
178 @lilypond[line-width=4\cm, noragged-right]
179 \chordmode {
180   \override Staff.TimeSignature #'stencil = ##f
181   c1:m c:m7
182 }
183 @end lilypond
184
185
186 @item
187 dim, dim7
188 @tab
189 The diminished chord.  This modifier lowers the 3rd, 5th and (if
190 present) the 7th step.
191 @tab
192 @lilypond[line-width=4\cm, noragged-right]
193 \chordmode {
194   \override Staff.TimeSignature #'stencil = ##f
195   c1:dim c:dim7
196 }
197 @end lilypond
198
199 @item
200 aug
201 @tab
202 The augmented chord.  This modifier raises the 5th step.
203 @tab
204 @lilypond[line-width=4\cm, noragged-right]
205 \chordmode {
206   \override Staff.TimeSignature #'stencil = ##f
207   c1:aug
208 }
209 @end lilypond
210
211 @item
212 maj, maj7
213 @tab
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.
217 @tab
218 @lilypond[line-width=4\cm, noragged-right]
219 \chordmode {
220   \override Staff.TimeSignature #'stencil = ##f
221   c1:maj c:maj7
222 }
223 @end lilypond
224
225 @end multitable
226
227
228 @seealso
229 Notation Reference:
230 @ref{Common chord modifiers},
231 @ref{Extended and altered chords}.
232
233 Snippets:
234 @rlsr{Chords}.
235
236
237 @knownissues
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}.
244
245
246 @node Extended and altered chords
247 @unnumberedsubsubsec Extended and altered chords
248
249 @cindex extended chords
250 @cindex altered chords
251
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.
256
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.
266
267 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
268 \chordmode {
269   c1:2 c:3 c:4 c:5
270   c1:6 c:7 c:8 c:9
271   c1:10 c:11 c:12 c:13
272   c1:14
273 }
274 @end lilypond
275
276 @noindent
277 Note that both @code{c:5} and @code{c} produce a C major triad.
278
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).
282
283 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
284 \chordmode {
285   c1:13 c:13.11 c:m13
286 }
287 @end lilypond
288
289 @cindex additions, in chords
290
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
294 the major seventh.
295
296 @lilypond[quote,verbatim,fragment,relative=1]
297 \chordmode {
298   c1:5.6 c:3.7.8 c:3.6.13
299 }
300 @end lilypond
301
302 Added steps can be as high as desired.
303
304 @lilypond[quote,verbatim,fragment,relative=1]
305 \chordmode {
306   c4:5.15 c:5.20 c:5.25 c:5.30
307 }
308 @end lilypond
309
310 @cindex chord steps, altering
311
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.
315
316 @lilypond[quote,verbatim,fragment,relative=1]
317 \chordmode {
318   c1:7+ c:5+.3- c:3-.5-.7-
319 }
320 @end lilypond
321
322 @cindex removals, in chords
323
324 @funindex ^
325
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
330 initial @code{^}.
331
332 @lilypond[quote,verbatim,fragment,relative=1]
333 \chordmode {
334   c1^3 c:7^5 c:9^3 c:9^3.5 c:13.11^3.7
335 }
336 @end lilypond
337
338 @funindex sus
339
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}.
345
346 @lilypond[quote,ragged-right,fragment,verbatim]
347 \chordmode {
348   c1:sus c:sus2 c:sus4 c:5.4^3
349 }
350 @end lilypond
351
352 @funindex /
353 @cindex chord inversions
354 @cindex bass note, for chords
355
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.
359
360 @lilypond[quote,ragged-right,fragment,verbatim, relative=2]
361 \chordmode {
362   c1 c/g c/f
363 }
364 @end lilypond
365
366 @funindex /+
367
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}.
370
371 @lilypond[quote,ragged-right,fragment,verbatim]
372 \chordmode {
373   c1 c/g c/+g
374 }
375 @end lilypond
376
377 Chord modifiers that can be used to produce a variety of
378 standard chords are shown in
379 @ref{Common chord modifiers}.
380
381
382 @seealso
383 Notation Reference:
384 @ref{Common chord modifiers}.
385
386 Snippets:
387 @rlsr{Chords}.
388
389
390 @knownissues
391
392 Each step can only be present in a chord once.  The following
393 simply produces the augmented chord, since @code{5+} is
394 interpreted last.
395
396 @lilypond[quote,ragged-right,verbatim,fragment]
397 \chordmode { c1:5.5-.5+ }
398 @end lilypond
399
400 Only the second inversion can be created by adding a bass
401 note.  The first inversion requires changing the root of
402 the chord.
403
404 @lilypond[quote,ragged-right,verbatim,fragment]
405 \chordmode {
406   c'1: c':/g e:6-3-^5 e:m6-^5
407 }
408 @end lilypond
409
410 @node Displaying chords
411 @subsection Displaying chords
412
413 Chords can be displayed by name, in addition to the standard display
414 as notes on a staff.
415
416 @menu
417 * Printing chord names::
418 * Customizing chord names::
419 @end menu
420
421 @node Printing chord names
422 @unnumberedsubsubsec Printing chord names
423
424 @cindex printing chord names
425 @cindex chord names
426 @cindex chords
427
428 Chord names are printed in the @code{ChordNames} context:
429
430 @lilypond[verbatim,quote,relative=1,ragged-right]
431 \new ChordNames {
432   \chordmode {
433     c2 f4. g8
434   }
435 }
436 @end lilypond
437
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:
441
442 @lilypond[verbatim,quote,relative=1]
443 <<
444   \new ChordNames {
445     <c e g>2  <f bes c>
446     <f c' e g>1
447     \chordmode {
448       c2 f:sus4 c1:/f
449     }
450   }
451   {
452     <c e g>2  <f bes c>
453     <f, c' e g>1
454     \chordmode {
455       c2 f:sus4 c1:/f
456     }
457   }
458 >>
459 @end lilypond
460
461 @cindex no chord symbol
462 @cindex N.C. symbol
463 @cindex indicating No Chord in ChordNames
464
465 Rests passed to a @code{ChordNames} context will cause the
466 @code{noChordSymbol} markup to be displayed.
467
468 @lilypond[verbatim, quote, relative=1]
469 <<
470   \new ChordNames \chordmode {
471     c1
472     r1
473     g1
474     c1
475   }
476   \new Score \chordmode {
477     c1
478     r1
479     g1
480     c1
481   }
482 >>
483 @end lilypond
484
485 @funindex{\chords}
486
487 @code{\chords @{ ... @}} is a shortcut notation for
488 @code{\new ChordNames @{ \chordmode @{ ... @} @}}.
489
490 @lilypond[verbatim,quote,ragged-right, relative=1]
491 \chords {
492   c2 f4.:m g8:maj7
493 }
494 @end lilypond
495
496 @lilypond[verbatim,quote,ragged-right, relative=1]
497 \new ChordNames {
498   \chordmode {
499     c2 f4.:m g8:maj7
500   }
501 }
502 @end lilypond
503
504 @snippets
505
506 @c Keep index entries with following snippet
507 @cindex chords, suppressing repeated
508 @funindex chordChanges
509
510 @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
511 {showing-chords-at-changes.ly}
512
513 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
514 @c {adding-bar-lines-to-chordnames-context.ly}
515
516 @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
517 {simple-lead-sheet.ly}
518
519
520 @seealso
521 Music Glossary:
522 @rglos{chord}.
523
524 Notation Reference:
525 @ref{Writing music in parallel}.
526
527 Snippets:
528 @rlsr{Chords}.
529
530 Internals Reference:
531 @rinternals{ChordNames},
532 @rinternals{ChordName},
533 @rinternals{Chord_name_engraver},
534 @rinternals{Volta_engraver},
535 @rinternals{Bar_engraver}.
536
537
538 @knownissues
539
540 Chords containing inversions or altered bass notes are not named
541 properly if entered using simultaneous music.
542
543
544 @node Customizing chord names
545 @unnumberedsubsubsec Customizing chord names
546
547 @cindex customizing chord names
548
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.
553
554 @cindex jazz chords
555 @cindex chords, jazz
556
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
563 name chart}.
564
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.
568
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:
574
575 @lilypondfile[ragged-right]{chord-names-languages.ly}
576
577 If none of the existing settings give the desired output, the chord
578 name display can be tuned through the following properties.
579
580 @table @code
581
582 @funindex chordRootNamer
583
584 @item chordRootNamer
585
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
590 this property.
591
592 @funindex majorSevenSymbol
593
594 @item majorSevenSymbol
595
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}.
600
601 @funindex chordNoteNamer
602
603 @item chordNoteNamer
604
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.
611
612 @funindex chordNameSeparator
613
614 @item chordNameSeparator
615
616 Different parts of a chord name are normally separated by a slash.
617 By setting @code{chordNameSeparator}, you can use any desired markup
618 for a separator.
619
620 @funindex chordNameExceptions
621
622 @item chordNameExceptions
623
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.
628
629 @funindex chordPrefixSpacer
630 @item chordPrefixSpacer
631
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.
636
637 @end table
638
639
640 @predefined
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}.
652 @endpredefined
653
654
655 @snippets
656
657 @cindex exceptions, chord names.
658 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
659 {chord-name-exceptions.ly}
660
661 @c TODO - tweak snippet to use \blackTriangleMarkup as well
662 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
663 {chord-name-major7.ly}
664
665 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
666 {adding-bar-lines-to-chordnames-context.ly}
667
668 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
669 {volta-below-chords.ly}
670
671 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
672 {changing-chord-separator.ly}
673
674
675 @seealso
676 Notation Reference:
677 @ref{Chord name chart},
678 @ref{Common chord modifiers}.
679
680 Installed Files:
681 @file{scm/@/chords@/-ignatzek@/.scm},
682 @file{scm/@/chord@/-entry@/.scm},
683 @file{ly/@/chord@/-modifier@/-init@/.ly}.
684
685 Snippets:
686 @rlsr{Chords}.
687
688 @c Internals Reference:
689 @c @r internals{}.
690
691
692 @knownissues
693
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.
699
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>
704 }
705 <<
706   \new ChordNames { \myChords }
707   \new Staff { \myChords }
708 >>
709 @end lilypond
710
711
712 @node Figured bass
713 @subsection Figured bass
714
715 @lilypondfile[quote]{figured-bass-headword.ly}
716
717 Figured bass notation can be displayed.
718
719 @menu
720 * Introduction to figured bass::
721 * Entering figured bass::
722 * Displaying figured bass::
723 @end menu
724
725 @node Introduction to figured bass
726 @unnumberedsubsubsec Introduction to figured bass
727
728 @cindex Basso continuo
729 @cindex Thorough bass
730 @cindex Figured bass
731 @cindex Bass, thorough
732 @cindex Bass, figured
733
734 @c TODO: musicological blurb about FB
735
736
737 LilyPond has support for figured bass, also called thorough bass
738 or basso continuo:
739
740 @lilypond[quote,ragged-right,verbatim,fragment]
741 <<
742   \new Voice { \clef bass dis4 c d ais g fis}
743   \new FiguredBass {
744     \figuremode {
745       < 6 >4 < 7\+ >8 < 6+ [_!] >
746       < 6 >4 <6 5 [3+] >
747       < _ >4 < 6 5/>4
748     }
749   }
750 >>
751 @end lilypond
752
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.
759
760 @code{\figures@{ ... @}} is a shortcut notation for
761 @code{\new FiguredBass @{ \figuremode @{ ... @} @}}.
762
763
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.
768
769 @ignore
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}.
774 @end ignore
775
776
777 @seealso
778 Music Glossary:
779 @rglos{figured bass}.
780
781 Snippets:
782 @rlsr{Chords}.
783
784
785 @node Entering figured bass
786 @unnumberedsubsubsec Entering figured bass
787
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}.
791
792 In figure mode, a group of bass figures is delimited by
793 @code{<} and @code{>}.  The duration is entered after the @code{>}.
794
795 @lilypond[verbatim,quote,ragged-right,fragment]
796 \new FiguredBass {
797   \figuremode {
798     <6 4>2
799   }
800 }
801 @end lilypond
802
803
804 Accidentals (including naturals) can be added to figures:
805
806 @lilypond[verbatim,quote,ragged-right,fragment]
807 \figures {
808   <7! 6+ 4-> <5++> <3-->
809 }
810 @end lilypond
811
812 Augmented and diminished steps can be indicated:
813
814 @lilypond[verbatim,quote,ragged-right,fragment]
815 \figures {
816   <6\+ 5/> <7/>
817 }
818 @end lilypond
819
820 A backward slash through a figure (typically used for raised
821 sixth steps) can be created:
822
823 @lilypond[verbatim,quote,ragged-right,fragment]
824 \figures {
825   <6> <6\\>
826 }
827 @end lilypond
828
829 Vertical spaces and brackets can be be included in figures:
830
831 @lilypond[verbatim,quote,ragged-right,fragment]
832 \figures {
833   <[12 _!] 8 [6  4]>
834 }
835 @end lilypond
836
837 Any text markup can be inserted as a figure:
838
839 @lilypond[verbatim,quote,ragged-right,fragment]
840 \figures {
841   <\markup { \tiny \number 6 \super (1) } 5>
842 }
843 @end lilypond
844
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
848
849 Continuation lines can be used to indicate repeated figures:
850
851 @lilypond[verbatim,quote,ragged-right,fragment]
852 <<
853   {
854     \clef bass
855     e4 d c b,
856     e4 d c b,
857   }
858   \figures {
859     \bassFigureExtendersOn
860     <6 4>4 <6 3> <7 3> <7 3>
861     \bassFigureExtendersOff
862     <6 4>4 <6 3> <7 3> <7 3>
863   }
864 >>
865 @end lilypond
866
867 @noindent
868 In this case, the extender lines replace existing figures,
869 unless the continuation lines have been explicitly terminated.
870
871 @lilypond[verbatim,quote,ragged-right,fragment]
872 <<
873   \figures {
874     \bassFigureExtendersOn
875     <6 4>4 <6 4> <6\! 4\!> <6 4>
876   }
877   {
878     \clef bass
879     d4 d c c
880   }
881 >>
882 @end lilypond
883
884 The table below summarizes the figure modifiers available.
885
886 @multitable @columnfractions .1 .5 .4
887
888 @item
889 @b{Modifier}
890 @tab
891 @b{Purpose}
892 @tab
893 @b{Example}
894
895 @item
896 +, -, !
897 @tab
898 Accidentals
899 @tab
900 @lilypond[line-width=4\cm]
901 \figures {
902   <7! 6+ 4-> <5++> <3-->
903 }
904 @end lilypond
905
906 @item
907 \+, /
908 @tab
909 Augmented and diminished steps
910 @tab
911 @lilypond[line-width=4\cm]
912 \figures {
913   <6\+ 5/> <7/>
914 }
915 @end lilypond
916
917 @item
918 \\
919 @tab
920 Raised sixth step
921 @tab
922 @lilypond[line-width=4\cm]
923 \figures {
924   <6\\>
925 }
926 @end lilypond
927
928 @item
929 \!
930 @tab
931 End of continuation line
932 @tab
933 @lilypond[line-width=4\cm]
934 <<
935   \figures {
936     \bassFigureExtendersOn
937     <6 4> <6 4> <6\! 4\!> <6 4>
938   }
939   {
940     \clef bass
941     d d c c
942   }
943 >>
944 @end lilypond
945
946 @end multitable
947
948
949 @predefined
950 @cindex figured bass extender lines
951 @code{\bassFigureExtendersOn},
952 @code{\bassFigureExtendersOff}.
953 @endpredefined
954
955
956 @snippets
957 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
958 {changing-the-positions-of-figured-bass-alterations.ly}
959
960
961 @seealso
962 @c Music Glossary:
963 @c @rglos{}.
964 @c
965 @c Learning Manual:
966 @c @rlearning{}.
967 @c
968 @c Notation Reference:
969 @c @ref{}.
970 @c
971 @c Application Usage:
972 @c @rprogram{}.
973 @c
974 @c Installed Files:
975 @c @file{}.
976 @c
977 Snippets:
978 @rlsr{Chords}.
979
980 Internals Reference:
981 @rinternals{BassFigure},
982 @rinternals{BassFigureAlignment},
983 @rinternals{BassFigureLine},
984 @rinternals{BassFigureBracket},
985 @rinternals{BassFigureContinuation},
986 @rinternals{FiguredBass}.
987
988
989 @c @knownissues
990
991
992 @node Displaying figured bass
993 @unnumberedsubsubsec Displaying figured bass
994
995 Figured bass can be displayed using the @code{FiguredBass} context,
996 or in most staff contexts.
997
998 When displayed in a @code{FiguredBass} context, the vertical location
999 of the figures is independent of the notes on the staff.
1000
1001 @lilypond[verbatim,ragged-right,fragment,quote]
1002 <<
1003   \relative c'' {
1004     c4 c'8 r8 c,4 c'
1005   }
1006   \new FiguredBass {
1007     \figuremode {
1008       <4>4 <10 6>8 s8
1009       <6 4>4 <6 4>
1010     }
1011   }
1012 >>
1013 @end lilypond
1014
1015 @noindent
1016 In the example above, the @code{FiguredBass} context must be
1017 explicitly instantiated to avoid creating a second (empty) staff.
1018
1019
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.
1023
1024 @lilypond[verbatim,ragged-right,fragment,quote]
1025 <<
1026   \new Staff = myStaff
1027   \figuremode {
1028     <4>4 <10 6>8 s8
1029     <6 4>4 <6 4>
1030   }
1031   %% Put notes on same Staff as figures
1032   \context Staff = myStaff
1033   {
1034     \clef bass
1035     c4 c'8 r8 c4 c'
1036   }
1037 >>
1038 @end lilypond
1039
1040
1041 When added in a @code{Staff} context, figured bass can be displayed above
1042 or below the staff.
1043
1044 @lilypond[verbatim,ragged-right,fragment,quote]
1045 <<
1046   \new Staff = myStaff
1047   \figuremode {
1048     <4>4 <10 6>8 s8
1049     \bassFigureStaffAlignmentDown
1050     <6 4>4 <6 4>
1051   }
1052   %% Put notes on same Staff as figures
1053   \context Staff = myStaff
1054   {
1055     \clef bass
1056     c4 c'8 r8 c4 c'
1057   }
1058 >>
1059 @end lilypond
1060
1061
1062 @predefined
1063 @cindex figured bass alignment
1064 @code{\bassFigureStaffAlignmentDown},
1065 @code{\bassFigureStaffAlignmentUp},
1066 @code{\bassFigureStaffAlignmentNeutral}.
1067 @endpredefined
1068
1069
1070 @c @snippets
1071
1072
1073 @seealso
1074 @c Music Glossary:
1075 @c @rglos{}.
1076 @c
1077 @c Learning Manual:
1078 @c @rlearning{}.
1079 @c
1080 @c Notation Reference:
1081 @c @ref{}.
1082 @c
1083 @c Application Usage:
1084 @c @rprogram{}.
1085 @c
1086 @c Installed Files:
1087 @c @file{}.
1088 @c
1089 Snippets:
1090 @rlsr{Chords}.
1091
1092 Internals Reference:
1093 @rinternals{BassFigure},
1094 @rinternals{BassFigureAlignment},
1095 @rinternals{BassFigureLine},
1096 @rinternals{BassFigureBracket},
1097 @rinternals{BassFigureContinuation},
1098 @rinternals{FiguredBass}.
1099
1100
1101 @knownissues
1102
1103 To ensure that continuation lines work properly, it is
1104 safest to use the same rhythm in the figure line as in
1105 the bass line.
1106
1107 @lilypond[verbatim,ragged-right,fragment,quote]
1108 <<
1109   {
1110     \clef bass
1111     \repeat unfold 4 { f16. g32 } f8. es16 d8 es
1112   }
1113   \figures {
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->
1118   }
1119 >>
1120 <<
1121   {
1122     \clef bass
1123     \repeat unfold 4 { f16. g32 } f8. es16 d8 es
1124   }
1125   \figures {
1126     \bassFigureExtendersOn
1127     % The extenders are incorrect here, even though the timing is the same
1128     <6 4->4 <6 4->4
1129     <5>8. r16 <6>8 <6\! 5->
1130   }
1131 >>
1132 @end lilypond
1133
1134 When using extender lines, adjacent figures with the same number in
1135 a different figure location can cause the figure positions to invert.
1136
1137 @lilypond[verbatim,ragged-right,fragment,quote,relative=1]
1138 <<
1139  { fis4 g g, e' }
1140   \figures {
1141     \bassFigureExtendersOn
1142     <6 5>4 <5\! 4> < 5 _!> <6>
1143   }
1144 >>
1145 @end lilypond
1146
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.
1149
1150 @lilypond[verbatim,ragged-right,fragment,quote,relative=1]
1151 <<
1152  { fis4 g g, e' }
1153   \figures {
1154     <6 5>4 <5 4>
1155     \bassFigureExtendersOn
1156     < 5 _!>4 <6>
1157     \bassFigureExtendersOff
1158   }
1159 >>
1160 @end lilypond
1161