]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/user/chords.itely
MusicXML: src-dir rather than srcdir.
[lilypond.git] / Documentation / user / 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.11.61"
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
65 Chord mode and note mode can be mixed in sequential music:
66
67 @lilypond[verbatim,quote,ragged-right,relative=1]
68 <c e g>2 <g b d>
69 \chordmode { c2 f }
70 <c e g>2 <g' b d>
71 \chordmode { f2 g }
72 @end lilypond
73
74
75 @seealso
76 Music Glossary:
77 @rglos{chord}.
78
79 Notation Reference:
80 @ref{Chorded notes},
81 @ref{Input modes}.
82
83 Snippets:
84 @rlsr{Chords}
85
86
87 @knownissues
88
89 When chord mode and note mode are mixed in sequential music, and
90 chord mode comes first, the note mode will create a new @code{Staff}
91 context.
92
93 @lilypond[verbatim,quote,ragged-right,relative=1]
94 \chordmode { c2 f }
95 <c e g>2 <g' b d>
96 @end lilypond
97
98 To avoid this behavior, explicitly create the @code{Staff} context:
99
100 @lilypond[verbatim,quote,ragged-right,relative=1]
101 \new Staff {
102   \chordmode { c2 f }
103   <c e g>2  <g' b d>
104 }
105 @end lilypond
106
107 @node Common chords
108 @unnumberedsubsubsec Common chords
109
110 @cindex triads
111 @cindex seventh chords
112 @cindex root of chord
113 @cindex modifiers, in chords.
114 @cindex chord quality
115
116 Major triads are entered by including the root and an
117 optional duration:
118
119 @lilypond[verbatim,quote,relative=1,ragged-right]
120 \chordmode { c2 f4 g }
121 @end lilypond
122
123 Minor, augmented, and diminished triads are entered by placing
124 @code{:} and a quality modifier string after the duration:
125
126 @lilypond[verbatim,quote,ragged-right,relative=1]
127 \chordmode { c2:m f4:aug g:dim }
128 @end lilypond
129
130 Seventh chords can be created:
131
132 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
133 \chordmode { c1:7 c:m7 c:maj7 c:dim7 c:aug7 }
134 @end lilypond
135
136 @funindex aug
137 @funindex dim
138 @funindex maj
139 @funindex m
140
141 The table belows shows the actions of the quality modifiers on
142 triads and seventh chords.  A more complete table of modifier usage
143 is found at @ref{Common chord modifiers}.
144
145 @c @table @code
146 @multitable @columnfractions .2 .4 .3
147
148 @item
149 @b{Modifier}
150 @tab
151 @b{Action}
152 @tab
153 @b{Example}
154
155 @item
156 None
157 @tab
158 The default action; produces a major triad.
159 @tab
160 @lilypond[line-width=4\cm, noragged-right]
161 \chordmode {
162   \override Staff.TimeSignature #'stencil = ##f
163   c1
164 }
165 @end lilypond
166
167 @item
168 m, m7
169 @tab
170 The minor chord.  This modifier lowers the 3rd and (if present) the
171 7th step.
172 @tab
173 @lilypond[line-width=4\cm, noragged-right]
174 \chordmode {
175   \override Staff.TimeSignature #'stencil = ##f
176   c1:m c:m7
177 }
178 @end lilypond
179
180
181 @item
182 dim, dim7
183 @tab
184 The diminished chord.  This modifier lowers the 3rd, 5th and (if
185 present) the 7th step.
186 @tab
187 @lilypond[line-width=4\cm, noragged-right]
188 \chordmode {
189   \override Staff.TimeSignature #'stencil = ##f
190   c1:dim c:dim7
191 }
192 @end lilypond
193
194 @item
195 aug
196 @tab
197 The augmented chord.  This modifier raises the 5th step.
198 @tab
199 @lilypond[line-width=4\cm, noragged-right]
200 \chordmode {
201   \override Staff.TimeSignature #'stencil = ##f
202   c1:aug
203 }
204 @end lilypond
205
206 @item
207 maj, maj7
208 @tab
209 The major 7th chord.  This modifier adds a raised 7th step.  The
210 @code{7} following @code{maj} is optional.  Do NOT use this modifier
211 to create a major triad.
212 @tab
213 @lilypond[line-width=4\cm, noragged-right]
214 \chordmode {
215   \override Staff.TimeSignature #'stencil = ##f
216   c1:maj c:maj7
217 }
218 @end lilypond
219
220 @end multitable
221
222
223 @seealso
224 Notation Reference:
225 @ref{Common chord modifiers},
226 @ref{Extended and altered chords}.
227
228 Snippets:
229 @rlsr{Chords}.
230
231 @knownissues
232 Only one quality modifier should be used per chord, typically on the 
233 highest step present in the chord.  Chords with more than quality
234 modifier will be parsed without an error or warning, but the results
235 are unpredictable.  Chords that cannot be achieved with a single
236 quality modifier should be altered by individual pitches, as described
237 in @ref{Extended and altered chords}.
238
239
240 @node Extended and altered chords
241 @unnumberedsubsubsec Extended and altered chords
242
243 @cindex extended chords
244 @cindex altered chords
245
246 Chord structures of arbitrary complexity can be created in chord
247 mode.  The modifier string can be used to extend a chord, add or
248 remove chord steps, raise or lower chord steps, and add a bass note
249 or create an inversion.
250
251 The first number following the @code{:} is taken to be the extent
252 of the chord.  The chord is constructed by sequentially adding
253 thirds to the root until the specified number has been reached.
254 If the extent is not a third (e.g., 6), thirds are added up to the
255 highest third below the extent, and then the step of the extent is
256 added.  The largest possible value for the extent is 13.  Any
257 larger value is interpreted as 13.
258
259 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
260 \chordmode {
261   c1:2 c:3 c:4 c:5
262   c1:6 c:7 c:8 c:9
263   c1:10 c:11 c:12 c:13
264   c1:14
265 }
266 @end lilypond
267
268 @noindent
269 Note that both @code{c:5} and @code{c} produce a C major triad.
270
271 Since an unaltered 11 does not sound good when combined with an
272 unaltered 13, the 11 is removed from a @code{:13} chord (unless it
273 is added explicitly).
274
275 @lilypond[quote,ragged-right,fragment,verbatim,relative=1]
276 \chordmode {
277   c1:13 c:13.11 c:m13
278 }
279 @end lilypond
280
281 @cindex additions, in chords
282
283 Individual steps can be added to a chord.  Additions follow the
284 extent and are prefixed by a dot (@code{.}).
285
286 @lilypond[quote,verbatim,fragment,relative=1]
287 \chordmode {
288   c1:5.6 c:3.7.8 c:3.6.13
289 }
290 @end lilypond
291
292 Added steps can be as high as desired.
293
294 @lilypond[quote,verbatim,fragment,relative=1]
295 \chordmode {
296   c4:5.15 c:5.20 c:5.25 c:5.30
297 }
298 @end lilypond
299
300 @cindex chord steps, altering
301
302 Added chord steps can be altered by suffixing a @code{-} or @code{+}
303 sign to the number.  To alter a step that is automatically included
304 as part of the basic chord structure, add it as an altered step.
305
306 @lilypond[quote,verbatim,fragment,relative=1]
307 \chordmode {
308   c1:7+ c:5+.3- c:3-.5-.7-
309 }
310 @end lilypond
311
312 @cindex removals, in chords
313
314 @funindex ^
315
316 Following any steps to be added, a series of steps to be removed
317 is introduced in a modifier string with a prefix of @code{^}.
318 If more than one step is to be removed, the steps to be
319 removed are separated by @code{.} following the
320 initial @code{^}.
321
322 @lilypond[quote,verbatim,fragment,relative=1]
323 \chordmode {
324   c1^3 c:7^5 c:9^3 c:9^3.5 c:13.11^3.7
325 }
326 @end lilypond
327
328 @funindex sus
329
330 The modifier @code{sus} can be added to the modifier string to
331 create suspended chords.  This removes the 3rd step from the chord.
332 Append either @code{2} or @code{4} to add the 2nd or 4th step to the
333 chord.  @code{sus} is equivalent to @code{^3}; @code{sus4} is
334 equivalent to @code{.4^3}.
335
336 @lilypond[quote,ragged-right,fragment,verbatim]
337 \chordmode {
338   c1:sus c:sus2 c:sus4 c:5.4^3
339 }
340 @end lilypond
341
342 @funindex /
343 @cindex chord inversions
344 @cindex bass note, for chords
345
346 Inversions (putting a pitch other than the root on the bottom of the
347 chord) and added bass notes can be specified by appending
348 @code{/}@var{pitch} to the chord.
349
350 @lilypond[quote,ragged-right,fragment,verbatim, relative=2]
351 \chordmode {
352   c1 c/g c/f
353 }
354 @end lilypond
355
356 @funindex /+
357
358 A bass note that is part of the chord can be added, instead of
359 moved as part of an inversion, by using @code{/+}@var{pitch}.
360
361 @lilypond[quote,ragged-right,fragment,verbatim]
362 \chordmode {
363   c1 c/g c/+g
364 }
365 @end lilypond
366
367 Chord modifiers that can be used to produce a variety of
368 standard chords are shown in
369 @ref{Common chord modifiers}.
370
371
372 @seealso
373 Notation Reference:
374 @ref{Common chord modifiers}.
375
376 Snippets:
377 @rlsr{Chords}
378
379
380 @knownissues
381
382 Each step can only be present in a chord once.  The following
383 simply produces the augmented chord, since @code{5+} is
384 interpreted last.
385
386 @lilypond[quote,ragged-right,verbatim,fragment]
387 \chordmode { c1:5.5-.5+ }
388 @end lilypond
389
390 Only the second inversion can be created by adding a bass
391 note.  The first inversion requires changing the root of
392 the chord.
393
394 @lilypond[quote,ragged-right,verbatim,fragment]
395 \chordmode {
396   c'1: c':/g e:6-3-^5 e:m6-^5
397 }
398 @end lilypond
399
400 @node Displaying chords
401 @subsection Displaying chords
402
403 Chords can be displayed by name, in addition to the standard display
404 as notes on a staff.
405
406 @menu
407 * Printing chord names::
408 * Customizing chord names::
409 @end menu
410
411 @node Printing chord names
412 @unnumberedsubsubsec Printing chord names
413
414 @cindex printing chord names
415 @cindex chord names
416 @cindex chords
417
418 Chord names are printed in the @code{ChordNames} context:
419
420 @lilypond[verbatim,quote,relative=1,ragged-right]
421 \new ChordNames {
422   \chordmode {
423     c2 f4. g8
424   }
425 }
426 @end lilypond
427
428 Chords can be entered as simultaneous notes or through the use of
429 chord mode.  The displayed chord name will be the same, regardless
430 of the mode of entry, unless there are inversions or added bass notes:
431
432 @lilypond[verbatim,quote,relative=1]
433 <<
434   \new ChordNames {
435     <c e g>2  <f bes c>
436     <f c' e g>1
437     \chordmode {
438       c2 f:sus4 c1:/f
439     }
440   }
441   {
442     <c e g>2  <f bes c>
443     <f, c' e g>1
444     \chordmode {
445       c2 f:sus4 c1:/f
446     }
447   }
448 >>
449 @end lilypond
450
451 @funindex{\chords}
452
453 @code{\chords @{ ... @}} is a shortcut notation for
454 @code{\new ChordNames @{ \chordmode @{ ... @} @}}.
455
456 @lilypond[verbatim,quote,ragged-right, relative=1]
457 \chords {
458   c2 f4.:m g8:maj7
459 }
460 @end lilypond
461
462 @lilypond[verbatim,quote,ragged-right, relative=1]
463 \new ChordNames {
464   \chordmode {
465     c2 f4.:m g8:maj7
466   }
467 }
468 @end lilypond
469
470 @snippets
471
472 @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
473 {showing-chords-at-changes.ly}
474
475 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
476 @c {adding-bar-lines-to-chordnames-context.ly}
477
478 @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
479 {simple-lead-sheet.ly}
480
481
482 @seealso
483 Music Glossary:
484 @rglos{chord}.
485
486 Notation Reference:
487 @ref{Writing music in parallel}.
488
489 Snippets:
490 @rlsr{Chords}.
491
492 Internals Reference:
493 @rinternals{ChordNames},
494 @rinternals{ChordName},
495 @rinternals{Chord_name_engraver},
496 @rinternals{Volta_engraver},
497 @rinternals{Bar_engraver}.
498
499
500 @knownissues
501
502 Chords containing inversions or altered bass notes are not named
503 properly if entered using simultaneous music.
504
505
506 @node Customizing chord names
507 @unnumberedsubsubsec Customizing chord names
508
509 @cindex customizing chord names
510
511 There is no unique system for naming chords.  Different musical
512 traditions use different names for the same set of chords.  There
513 are also different symbols displayed for a given chord name.   The
514 names and symbols displayed for chord names are customizable.
515
516 @cindex jazz chords
517 @cindex chords, jazz
518
519 The basic chord name layout is a system for Jazz music, proposed
520 by Klaus Ignatzek (see @ref{Literature list}).  The chord naming
521 system can be modified as described below.  An alternate jazz
522 chord system has been developed using these modifications.
523 The Ignatzek and alternate
524 Jazz notation are shown on the chart in @ref{Chord
525 name chart}.
526
527 @c TODO --  Change this so we don't have a non-verbatim example.
528 @c  Make short example in docs, then move longer example to
529 @c  appendix, where the length of the snippet won't matter.
530
531 In addition to the different naming systems, different note names
532 are used for the root in different languages.  The predefined
533 variables @code{\germanChords}, @code{\semiGermanChords},
534 @code{\italianChords} and @code{\frenchChords} set these variables.
535 The effect is demonstrated here:
536
537 @lilypondfile[ragged-right]{chord-names-languages.ly}
538
539 If none of the existing settings give the desired output, the chord
540 name display can be tuned through the following properties.
541
542 @table @code
543
544 @funindex chordRootNamer
545
546 @item chordRootNamer
547
548 The chord name is usually printed as a letter for the root with an
549 optional alteration.  The transformation from pitch to letter is
550 done by this function.  Special note names (for example, the German
551 @q{H} for a B-chord) can be produced by storing a new function in
552 this property.
553
554 @funindex majorSevenSymbol
555
556 @item majorSevenSymbol
557
558 This property contains the markup object used to follow the output
559 of @code{chordRootNamer} to identify a major 7 chord. Predefined
560 options are @code{whiteTriangleMarkup} and
561 @code{blackTriangleMarkup}.
562
563 @funindex chordNoteNamer
564
565 @item chordNoteNamer
566
567 When the chord name contains additional pitches other than the root
568 (e.g., an added bass note), this function is used to print the
569 additional pitch.  By default the pitch is printed using
570 @code{chordRootNamer}. The @code{chordNoteNamer} property can be set
571 to a specialized function to change this behavior.  For example, the
572 bass note can be printed in lower case.
573
574 @funindex chordNameSeparator
575
576 @item chordNameSeparator
577
578 Different parts of a chord name are normally separated by a slash.
579 By setting @code{chordNameSeparator}, you can use any desired markup
580 for a separator.
581
582 @funindex chordNameExceptions
583
584 @item chordNameExceptions
585
586 This property is a list of pairs.  The first item in each pair
587 is a set of pitches used to identify the steps present in the chord.
588 The second item is a markup that will follow the @code{chordRootNamer}
589 output to create the chord name.
590
591 @funindex chordPrefixSpacer
592 @item chordPrefixSpacer
593
594 The @q{m} for minor chords is usually printed immediately to the
595 right of the root of the chord.  A spacer can be placed between
596 the root and @q{m} by setting @code{chordPrefixSpacer}.
597 The spacer is not used when the root is altered.
598
599 @end table
600
601
602 @predefined
603 @funindex major seven symbols
604 @code{\whiteTriangleMarkup},
605 @code{\blackTriangleMarkup},
606 @funindex \germanChords
607 @code{\germanChords},
608 @funindex \semiGermanChords
609 @code{\semiGermanChords},
610 @funindex \italianChords
611 @code{\italianChords},
612 @funindex \frenchChords
613 @code{\frenchChords}.
614 @endpredefined
615
616
617 @snippets
618
619 @cindex exceptions, chord names.
620 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
621 {chord-name-exceptions.ly}
622
623 @c TODO - tweak snippet to use \blackTriangleMarkup as well
624 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
625 {chord-name-major7.ly}
626
627 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
628 {adding-bar-lines-to-chordnames-context.ly}
629
630 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
631 {volta-below-chords.ly}
632
633 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
634 {changing-chord-separator.ly}
635
636
637 @seealso
638 Notation Reference:
639 @ref{Chord name chart},
640 @ref{Common chord modifiers}.
641
642 Installed Files:
643 @file{scm/@/chords@/-ignatzek@/.scm},
644 @file{scm/@/chord@/-entry@/.scm},
645 @file{ly/@/chord@/-modifier@/-init@/.ly}.
646
647 Snippets:
648 @rlsr{Chords}.
649
650 @c Internals Reference:
651 @c @r internals{}.
652
653
654 @knownissues
655
656 Chord names are determined from both the pitches that are present
657 in the chord and the information on the chord structure that may
658 have been entered in @code{\chordmode}.  If the simultaneous pitches
659 method of entering chords is used, undesired names result from
660 inversions or bass notes.
661
662 @lilypond[quote,ragged-right,verbatim]
663 myChords = \relative c' {
664   \chordmode { c1 c/g c/f }
665   <c e g>1 <g c e> <f c' e g>
666 }
667 <<
668   \new ChordNames { \myChords }
669   \new Staff { \myChords }
670 >>
671 @end lilypond
672
673
674 @node Figured bass
675 @subsection Figured bass
676
677 @lilypondfile[quote]{figured-bass-headword.ly}
678
679 Figured bass notation can be displayed.
680
681 @menu
682 * Introduction to figured bass::
683 * Entering figured bass::
684 * Displaying figured bass::
685 @end menu
686
687 @node Introduction to figured bass
688 @unnumberedsubsubsec Introduction to figured bass
689
690 @cindex Basso continuo
691 @cindex Thorough bass
692 @cindex Figured bass
693 @cindex Bass, thorough
694 @cindex Bass, figured
695
696 @c TODO: musicological blurb about FB
697
698
699 LilyPond has support for figured bass, also called thorough bass
700 or basso continuo:
701
702 @lilypond[quote,ragged-right,verbatim,fragment]
703 <<
704   \new Voice { \clef bass dis4 c d ais g fis}
705   \new FiguredBass {
706     \figuremode {
707       < 6 >4 < 7\+ >8 < 6+ [_!] >
708       < 6 >4 <6 5 [3+] >
709       < _ >4 < 6 5/>4
710     }
711   }
712 >>
713 @end lilypond
714
715 The support for figured bass consists of two parts: there is an
716 input mode, introduced by @code{\figuremode}, that accepts
717 entry of bass figures, and there is a context named
718 @code{FiguredBass} that takes care of displaying
719 @code{BassFigure} objects.  Figured bass can also be displayed
720 in @code{Staff} contexts.
721
722 @code{\figures@{ ... @}} is a shortcut notation for
723 @code{\new FiguredBass @{ \figuremode @{ ... @} @}}.
724
725
726 Although the support for figured bass may superficially resemble chord
727 support, it is much simpler.  @code{\figuremode} mode simply
728 stores the figures and the @code{FiguredBass} context prints them
729 as entered.  There is no conversion to pitches.
730
731 @ignore
732 Figures are created as markup texts.  Any of the standard markup
733 properties can be used to modify the display of figures.  For
734 example, the vertical spacing of the figures may be set with
735 @code{baseline-skip}.
736 @end ignore
737
738
739 @seealso
740 Music Glossary:
741 @rglos{figured bass}.
742
743 Snippets:
744 @rlsr{Chords}
745
746
747 @node Entering figured bass
748 @unnumberedsubsubsec Entering figured bass
749
750 @code{\figuremode} is used to switch the input mode to figure mode.
751 More information on different input modes can be
752 found at @ref{Input modes}.
753
754 In figure mode, a group of bass figures is delimited by
755 @code{<} and @code{>}.  The duration is entered after the @code{>}.
756
757 @lilypond[verbatim,quote,ragged-right,fragment]
758 \new FiguredBass {
759   \figuremode {
760     <6 4>2
761   }
762 }
763 @end lilypond
764
765
766 Accidentals (including naturals) can be added to figures:
767
768 @lilypond[verbatim,quote,ragged-right,fragment]
769 \figures {
770   <7! 6+ 4-> <5++> <3-->
771 }
772 @end lilypond
773
774 Augmented and diminished steps can be indicated:
775
776 @lilypond[verbatim,quote,ragged-right,fragment]
777 \figures {
778   <6\+ 5/> <7/>
779 }
780 @end lilypond
781
782 A backward slash through a figure (typically used for raised
783 sixth steps) can be created:
784
785 @lilypond[verbatim,quote,ragged-right,fragment]
786 \figures {
787   <6> <6\\>
788 }
789 @end lilypond
790
791 Vertical spaces and brackets can be be included in figures:
792
793 @lilypond[verbatim,quote,ragged-right,fragment]
794 \figures {
795   <[12 _!] 8 [6  4]>
796 }
797 @end lilypond
798
799 Any text markup can be inserted as a figure:
800
801 @lilypond[verbatim,quote,ragged-right,fragment]
802 \figures {
803   <\markup { \tiny \number 6 \super (1) } 5>
804 }
805 @end lilypond
806
807 @c NOTE: We need to include notes any time we use extenders to
808 @c avoid extraneous staff creation due to Staff.use... in
809 @c \bassFigureExtendersOn
810
811 Continuation lines can be used to indicate repeated figures:
812
813 @lilypond[verbatim,quote,ragged-right,fragment]
814 <<
815   {
816     \clef bass
817     e4 d c b,
818     e4 d c b,
819   }
820   \figures {
821     \bassFigureExtendersOn
822     <6 4>4 <6 3> <7 3> <7 3>
823     \bassFigureExtendersOff
824     <6 4>4 <6 3> <7 3> <7 3>
825   }
826 >>
827 @end lilypond
828
829 @noindent
830 In this case, the extender lines replace existing figures,
831 unless the continuation lines have been explicitly terminated.
832
833 @lilypond[verbatim,quote,ragged-right,fragment]
834 <<
835   \figures {
836     \bassFigureExtendersOn
837     <6 4>4 <6 4> <6\! 4\!> <6 4>
838   }
839   {
840     \clef bass
841     d4 d c c
842   }
843 >>
844 @end lilypond
845
846 The table below summarizes the figure modifiers available.
847
848 @multitable @columnfractions .1 .5 .4
849
850 @item
851 @b{Modifier}
852 @tab
853 @b{Purpose}
854 @tab
855 @b{Example}
856
857 @item
858 +, -, !
859 @tab
860 Accidentals
861 @tab
862 @lilypond[line-width=4\cm]
863 \figures {
864   <7! 6+ 4-> <5++> <3-->
865 }
866 @end lilypond
867
868 @item
869 \+, /
870 @tab
871 Augmented and diminished steps
872 @tab
873 @lilypond[line-width=4\cm]
874 \figures {
875   <6\+ 5/> <7/>
876 }
877 @end lilypond
878
879 @item
880 \\
881 @tab
882 Raised sixth step
883 @tab
884 @lilypond[line-width=4\cm]
885 \figures {
886   <6\\>
887 }
888 @end lilypond
889
890 @item
891 \!
892 @tab
893 End of continuation line
894 @tab
895 @lilypond[line-width=4\cm]
896 <<
897   \figures {
898     \bassFigureExtendersOn
899     <6 4> <6 4> <6\! 4\!> <6 4>
900   }
901   {
902     \clef bass
903     d d c c
904   }
905 >>
906 @end lilypond
907
908 @end multitable
909
910
911 @predefined
912 @cindex figured bass extender lines
913 @code{\bassFigureExtendersOn},
914 @code{\bassFigureExtendersOff}.
915 @endpredefined
916
917
918 @snippets
919 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
920 {changing-the-positions-of-figured-bass-alterations.ly}
921
922
923 @seealso
924 @c Music Glossary:
925 @c @rglos{}.
926 @c
927 @c Learning Manual:
928 @c @rlearning{}.
929 @c
930 @c Notation Reference:
931 @c @ref{}.
932 @c
933 @c Application Usage:
934 @c @rprogram{}.
935 @c
936 @c Installed Files:
937 @c @file{}.
938 @c
939 Snippets:
940 @rlsr{Chords}.
941
942 Internals Reference:
943 @rinternals{BassFigure},
944 @rinternals{BassFigureAlignment},
945 @rinternals{BassFigureLine},
946 @rinternals{BassFigureBracket},
947 @rinternals{BassFigureContinuation},
948 @rinternals{FiguredBass}.
949
950
951 @c @knownissues
952
953
954 @node Displaying figured bass
955 @unnumberedsubsubsec Displaying figured bass
956
957 Figured bass can be displayed using the @code{FiguredBass} context,
958 or in most staff contexts.
959
960 When displayed in a @code{FiguredBass} context, the vertical location
961 of the figures is independent of the notes on the staff.
962
963 @lilypond[verbatim,ragged-right,fragment,quote]
964 <<
965   \relative c'' {
966     c4 c'8 r8 c,4 c'
967   }
968   \new FiguredBass {
969     \figuremode {
970       <4>4 <10 6>8 s8
971       <6 4>4 <6 4>
972     }
973   }
974 >>
975 @end lilypond
976
977 @noindent
978 In the example above, the @code{FiguredBass} context must be
979 explicitly instantiated to avoid creating a second (empty) staff.
980
981
982 Figured bass can also be added to @code{Staff} contexts
983 directly.  In this case, the vertical position of the
984 figures is adjusted automatically.
985
986 @lilypond[verbatim,ragged-right,fragment,quote]
987 <<
988   \new Staff = myStaff
989   \figuremode {
990     <4>4 <10 6>8 s8
991     <6 4>4 <6 4>
992   }
993   %% Put notes on same Staff as figures
994   \context Staff = myStaff
995   {
996     \clef bass
997     c4 c'8 r8 c4 c'
998   }
999 >>
1000 @end lilypond
1001
1002
1003 When added in a @code{Staff} context, figured bass can be displayed above
1004 or below the staff.
1005
1006 @lilypond[verbatim,ragged-right,fragment,quote]
1007 <<
1008   \new Staff = myStaff
1009   \figuremode {
1010     <4>4 <10 6>8 s8
1011     \bassFigureStaffAlignmentDown
1012     <6 4>4 <6 4>
1013   }
1014   %% Put notes on same Staff as figures
1015   \context Staff = myStaff
1016   {
1017     \clef bass
1018     c4 c'8 r8 c4 c'
1019   }
1020 >>
1021 @end lilypond
1022
1023
1024 @predefined
1025 @cindex figured bass alignment
1026 @code{\bassFigureStaffAlignmentDown},
1027 @code{\bassFigureStaffAlignmentUp},
1028 @code{\bassFigureStaffAlignmentNeutral}.
1029 @endpredefined
1030
1031
1032 @c @snippets
1033
1034
1035 @seealso
1036 @c Music Glossary:
1037 @c @rglos{}.
1038 @c
1039 @c Learning Manual:
1040 @c @rlearning{}.
1041 @c
1042 @c Notation Reference:
1043 @c @ref{}.
1044 @c
1045 @c Application Usage:
1046 @c @rprogram{}.
1047 @c
1048 @c Installed Files:
1049 @c @file{}.
1050 @c
1051 Snippets:
1052 @rlsr{Chords}.
1053
1054 Internals Reference:
1055 @rinternals{BassFigure},
1056 @rinternals{BassFigureAlignment},
1057 @rinternals{BassFigureLine},
1058 @rinternals{BassFigureBracket},
1059 @rinternals{BassFigureContinuation},
1060 @rinternals{FiguredBass}.
1061
1062
1063 @knownissues
1064
1065 To ensure that continuation lines work properly, it is
1066 safest to use the same rhythm in the figure line as in
1067 the bass line.
1068
1069 @lilypond[verbatim,ragged-right,fragment,quote]
1070 <<
1071   {
1072     \clef bass
1073     \repeat unfold 4 { f16. g32 } f8. es16 d8 es
1074   }
1075   \figures {
1076     \bassFigureExtendersOn
1077     % The extenders are correct here, with the same rhythm as the bass
1078     \repeat unfold 4 { <6 4->16. <6 4->32 }
1079     <5>8. r16 <6>8 <6\! 5->
1080   }
1081 >>
1082 <<
1083   {
1084     \clef bass
1085     \repeat unfold 4 { f16. g32 } f8. es16 d8 es
1086   }
1087   \figures {
1088     \bassFigureExtendersOn
1089     % The extenders are incorrect here, even though the timing is the same
1090     <6 4->4 <6 4->4
1091     <5>8. r16 <6>8 <6\! 5->
1092   }
1093 >>
1094 @end lilypond
1095
1096 When using extender lines, adjacent figures with the same number in
1097 a different figure location can cause the figure positions to invert.
1098
1099 @lilypond[verbatim,ragged-right,fragment,quote,relative=1]
1100 <<
1101  { fis4 g g, e' }
1102   \figures {
1103     \bassFigureExtendersOn
1104     <6 5>4 <5\! 4> < 5 _!> <6>
1105   }
1106 >>
1107 @end lilypond
1108
1109 To avoid this problem, simply turn on extenders after the figure that
1110 begins the extender line and turn them off at the end of the extender line.
1111
1112 @lilypond[verbatim,ragged-right,fragment,quote,relative=1]
1113 <<
1114  { fis4 g g, e' }
1115   \figures {
1116     <6 5>4 <5 4>
1117     \bassFigureExtendersOn
1118     < 5 _!>4 <6>
1119     \bassFigureExtendersOff
1120   }
1121 >>
1122 @end lilypond
1123