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