]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/user/chords.itely
Add N.C. entry to ChordNames context.
[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.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
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 @cindex no chord symbol
458 @cindex N.C. symbol
459 @cindex indicating No Chord in ChordNames
460
461 Rests passed to a @code{ChordNames} context will cause the
462 @code{noChordSymbol} markup to be displayed.
463
464 @lilypond[verbatim, quote, relative=1]
465 <<
466   \new ChordNames \chordmode {
467     c1
468     r1
469     g1
470     c1
471   }
472   \new Score \chordmode {
473     c1
474     r1
475     g1
476     c1
477   }
478 >>
479 @end lilypond
480
481 @funindex{\chords}
482
483 @code{\chords @{ ... @}} is a shortcut notation for
484 @code{\new ChordNames @{ \chordmode @{ ... @} @}}.
485
486 @lilypond[verbatim,quote,ragged-right, relative=1]
487 \chords {
488   c2 f4.:m g8:maj7
489 }
490 @end lilypond
491
492 @lilypond[verbatim,quote,ragged-right, relative=1]
493 \new ChordNames {
494   \chordmode {
495     c2 f4.:m g8:maj7
496   }
497 }
498 @end lilypond
499
500 @snippets
501
502 @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
503 {showing-chords-at-changes.ly}
504
505 @c @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
506 @c {adding-bar-lines-to-chordnames-context.ly}
507
508 @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
509 {simple-lead-sheet.ly}
510
511
512 @seealso
513 Music Glossary:
514 @rglos{chord}.
515
516 Notation Reference:
517 @ref{Writing music in parallel}.
518
519 Snippets:
520 @rlsr{Chords}.
521
522 Internals Reference:
523 @rinternals{ChordNames},
524 @rinternals{ChordName},
525 @rinternals{Chord_name_engraver},
526 @rinternals{Volta_engraver},
527 @rinternals{Bar_engraver}.
528
529
530 @knownissues
531
532 Chords containing inversions or altered bass notes are not named
533 properly if entered using simultaneous music.
534
535
536 @node Customizing chord names
537 @unnumberedsubsubsec Customizing chord names
538
539 @cindex customizing chord names
540
541 There is no unique system for naming chords.  Different musical
542 traditions use different names for the same set of chords.  There
543 are also different symbols displayed for a given chord name.   The
544 names and symbols displayed for chord names are customizable.
545
546 @cindex jazz chords
547 @cindex chords, jazz
548
549 The basic chord name layout is a system for Jazz music, proposed
550 by Klaus Ignatzek (see @ref{Literature list}).  The chord naming
551 system can be modified as described below.  An alternate jazz
552 chord system has been developed using these modifications.
553 The Ignatzek and alternate
554 Jazz notation are shown on the chart in @ref{Chord
555 name chart}.
556
557 @c TODO --  Change this so we don't have a non-verbatim example.
558 @c  Make short example in docs, then move longer example to
559 @c  appendix, where the length of the snippet won't matter.
560
561 In addition to the different naming systems, different note names
562 are used for the root in different languages.  The predefined
563 variables @code{\germanChords}, @code{\semiGermanChords},
564 @code{\italianChords} and @code{\frenchChords} set these variables.
565 The effect is demonstrated here:
566
567 @lilypondfile[ragged-right]{chord-names-languages.ly}
568
569 If none of the existing settings give the desired output, the chord
570 name display can be tuned through the following properties.
571
572 @table @code
573
574 @funindex chordRootNamer
575
576 @item chordRootNamer
577
578 The chord name is usually printed as a letter for the root with an
579 optional alteration.  The transformation from pitch to letter is
580 done by this function.  Special note names (for example, the German
581 @q{H} for a B-chord) can be produced by storing a new function in
582 this property.
583
584 @funindex majorSevenSymbol
585
586 @item majorSevenSymbol
587
588 This property contains the markup object used to follow the output
589 of @code{chordRootNamer} to identify a major 7 chord. Predefined
590 options are @code{whiteTriangleMarkup} and
591 @code{blackTriangleMarkup}.
592
593 @funindex chordNoteNamer
594
595 @item chordNoteNamer
596
597 When the chord name contains additional pitches other than the root
598 (e.g., an added bass note), this function is used to print the
599 additional pitch.  By default the pitch is printed using
600 @code{chordRootNamer}. The @code{chordNoteNamer} property can be set
601 to a specialized function to change this behavior.  For example, the
602 bass note can be printed in lower case.
603
604 @funindex chordNameSeparator
605
606 @item chordNameSeparator
607
608 Different parts of a chord name are normally separated by a slash.
609 By setting @code{chordNameSeparator}, you can use any desired markup
610 for a separator.
611
612 @funindex chordNameExceptions
613
614 @item chordNameExceptions
615
616 This property is a list of pairs.  The first item in each pair
617 is a set of pitches used to identify the steps present in the chord.
618 The second item is a markup that will follow the @code{chordRootNamer}
619 output to create the chord name.
620
621 @funindex chordPrefixSpacer
622 @item chordPrefixSpacer
623
624 The @q{m} for minor chords is usually printed immediately to the
625 right of the root of the chord.  A spacer can be placed between
626 the root and @q{m} by setting @code{chordPrefixSpacer}.
627 The spacer is not used when the root is altered.
628
629 @end table
630
631
632 @predefined
633 @funindex major seven symbols
634 @code{\whiteTriangleMarkup},
635 @code{\blackTriangleMarkup},
636 @funindex \germanChords
637 @code{\germanChords},
638 @funindex \semiGermanChords
639 @code{\semiGermanChords},
640 @funindex \italianChords
641 @code{\italianChords},
642 @funindex \frenchChords
643 @code{\frenchChords}.
644 @endpredefined
645
646
647 @snippets
648
649 @cindex exceptions, chord names.
650 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
651 {chord-name-exceptions.ly}
652
653 @c TODO - tweak snippet to use \blackTriangleMarkup as well
654 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
655 {chord-name-major7.ly}
656
657 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
658 {adding-bar-lines-to-chordnames-context.ly}
659
660 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
661 {volta-below-chords.ly}
662
663 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
664 {changing-chord-separator.ly}
665
666
667 @seealso
668 Notation Reference:
669 @ref{Chord name chart},
670 @ref{Common chord modifiers}.
671
672 Installed Files:
673 @file{scm/@/chords@/-ignatzek@/.scm},
674 @file{scm/@/chord@/-entry@/.scm},
675 @file{ly/@/chord@/-modifier@/-init@/.ly}.
676
677 Snippets:
678 @rlsr{Chords}.
679
680 @c Internals Reference:
681 @c @r internals{}.
682
683
684 @knownissues
685
686 Chord names are determined from both the pitches that are present
687 in the chord and the information on the chord structure that may
688 have been entered in @code{\chordmode}.  If the simultaneous pitches
689 method of entering chords is used, undesired names result from
690 inversions or bass notes.
691
692 @lilypond[quote,ragged-right,verbatim]
693 myChords = \relative c' {
694   \chordmode { c1 c/g c/f }
695   <c e g>1 <g c e> <f c' e g>
696 }
697 <<
698   \new ChordNames { \myChords }
699   \new Staff { \myChords }
700 >>
701 @end lilypond
702
703
704 @node Figured bass
705 @subsection Figured bass
706
707 @lilypondfile[quote]{figured-bass-headword.ly}
708
709 Figured bass notation can be displayed.
710
711 @menu
712 * Introduction to figured bass::
713 * Entering figured bass::
714 * Displaying figured bass::
715 @end menu
716
717 @node Introduction to figured bass
718 @unnumberedsubsubsec Introduction to figured bass
719
720 @cindex Basso continuo
721 @cindex Thorough bass
722 @cindex Figured bass
723 @cindex Bass, thorough
724 @cindex Bass, figured
725
726 @c TODO: musicological blurb about FB
727
728
729 LilyPond has support for figured bass, also called thorough bass
730 or basso continuo:
731
732 @lilypond[quote,ragged-right,verbatim,fragment]
733 <<
734   \new Voice { \clef bass dis4 c d ais g fis}
735   \new FiguredBass {
736     \figuremode {
737       < 6 >4 < 7\+ >8 < 6+ [_!] >
738       < 6 >4 <6 5 [3+] >
739       < _ >4 < 6 5/>4
740     }
741   }
742 >>
743 @end lilypond
744
745 The support for figured bass consists of two parts: there is an
746 input mode, introduced by @code{\figuremode}, that accepts
747 entry of bass figures, and there is a context named
748 @code{FiguredBass} that takes care of displaying
749 @code{BassFigure} objects.  Figured bass can also be displayed
750 in @code{Staff} contexts.
751
752 @code{\figures@{ ... @}} is a shortcut notation for
753 @code{\new FiguredBass @{ \figuremode @{ ... @} @}}.
754
755
756 Although the support for figured bass may superficially resemble chord
757 support, it is much simpler.  @code{\figuremode} mode simply
758 stores the figures and the @code{FiguredBass} context prints them
759 as entered.  There is no conversion to pitches.
760
761 @ignore
762 Figures are created as markup texts.  Any of the standard markup
763 properties can be used to modify the display of figures.  For
764 example, the vertical spacing of the figures may be set with
765 @code{baseline-skip}.
766 @end ignore
767
768
769 @seealso
770 Music Glossary:
771 @rglos{figured bass}.
772
773 Snippets:
774 @rlsr{Chords}
775
776
777 @node Entering figured bass
778 @unnumberedsubsubsec Entering figured bass
779
780 @code{\figuremode} is used to switch the input mode to figure mode.
781 More information on different input modes can be
782 found at @ref{Input modes}.
783
784 In figure mode, a group of bass figures is delimited by
785 @code{<} and @code{>}.  The duration is entered after the @code{>}.
786
787 @lilypond[verbatim,quote,ragged-right,fragment]
788 \new FiguredBass {
789   \figuremode {
790     <6 4>2
791   }
792 }
793 @end lilypond
794
795
796 Accidentals (including naturals) can be added to figures:
797
798 @lilypond[verbatim,quote,ragged-right,fragment]
799 \figures {
800   <7! 6+ 4-> <5++> <3-->
801 }
802 @end lilypond
803
804 Augmented and diminished steps can be indicated:
805
806 @lilypond[verbatim,quote,ragged-right,fragment]
807 \figures {
808   <6\+ 5/> <7/>
809 }
810 @end lilypond
811
812 A backward slash through a figure (typically used for raised
813 sixth steps) can be created:
814
815 @lilypond[verbatim,quote,ragged-right,fragment]
816 \figures {
817   <6> <6\\>
818 }
819 @end lilypond
820
821 Vertical spaces and brackets can be be included in figures:
822
823 @lilypond[verbatim,quote,ragged-right,fragment]
824 \figures {
825   <[12 _!] 8 [6  4]>
826 }
827 @end lilypond
828
829 Any text markup can be inserted as a figure:
830
831 @lilypond[verbatim,quote,ragged-right,fragment]
832 \figures {
833   <\markup { \tiny \number 6 \super (1) } 5>
834 }
835 @end lilypond
836
837 @c NOTE: We need to include notes any time we use extenders to
838 @c avoid extraneous staff creation due to Staff.use... in
839 @c \bassFigureExtendersOn
840
841 Continuation lines can be used to indicate repeated figures:
842
843 @lilypond[verbatim,quote,ragged-right,fragment]
844 <<
845   {
846     \clef bass
847     e4 d c b,
848     e4 d c b,
849   }
850   \figures {
851     \bassFigureExtendersOn
852     <6 4>4 <6 3> <7 3> <7 3>
853     \bassFigureExtendersOff
854     <6 4>4 <6 3> <7 3> <7 3>
855   }
856 >>
857 @end lilypond
858
859 @noindent
860 In this case, the extender lines replace existing figures,
861 unless the continuation lines have been explicitly terminated.
862
863 @lilypond[verbatim,quote,ragged-right,fragment]
864 <<
865   \figures {
866     \bassFigureExtendersOn
867     <6 4>4 <6 4> <6\! 4\!> <6 4>
868   }
869   {
870     \clef bass
871     d4 d c c
872   }
873 >>
874 @end lilypond
875
876 The table below summarizes the figure modifiers available.
877
878 @multitable @columnfractions .1 .5 .4
879
880 @item
881 @b{Modifier}
882 @tab
883 @b{Purpose}
884 @tab
885 @b{Example}
886
887 @item
888 +, -, !
889 @tab
890 Accidentals
891 @tab
892 @lilypond[line-width=4\cm]
893 \figures {
894   <7! 6+ 4-> <5++> <3-->
895 }
896 @end lilypond
897
898 @item
899 \+, /
900 @tab
901 Augmented and diminished steps
902 @tab
903 @lilypond[line-width=4\cm]
904 \figures {
905   <6\+ 5/> <7/>
906 }
907 @end lilypond
908
909 @item
910 \\
911 @tab
912 Raised sixth step
913 @tab
914 @lilypond[line-width=4\cm]
915 \figures {
916   <6\\>
917 }
918 @end lilypond
919
920 @item
921 \!
922 @tab
923 End of continuation line
924 @tab
925 @lilypond[line-width=4\cm]
926 <<
927   \figures {
928     \bassFigureExtendersOn
929     <6 4> <6 4> <6\! 4\!> <6 4>
930   }
931   {
932     \clef bass
933     d d c c
934   }
935 >>
936 @end lilypond
937
938 @end multitable
939
940
941 @predefined
942 @cindex figured bass extender lines
943 @code{\bassFigureExtendersOn},
944 @code{\bassFigureExtendersOff}.
945 @endpredefined
946
947
948 @snippets
949 @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
950 {changing-the-positions-of-figured-bass-alterations.ly}
951
952
953 @seealso
954 @c Music Glossary:
955 @c @rglos{}.
956 @c
957 @c Learning Manual:
958 @c @rlearning{}.
959 @c
960 @c Notation Reference:
961 @c @ref{}.
962 @c
963 @c Application Usage:
964 @c @rprogram{}.
965 @c
966 @c Installed Files:
967 @c @file{}.
968 @c
969 Snippets:
970 @rlsr{Chords}.
971
972 Internals Reference:
973 @rinternals{BassFigure},
974 @rinternals{BassFigureAlignment},
975 @rinternals{BassFigureLine},
976 @rinternals{BassFigureBracket},
977 @rinternals{BassFigureContinuation},
978 @rinternals{FiguredBass}.
979
980
981 @c @knownissues
982
983
984 @node Displaying figured bass
985 @unnumberedsubsubsec Displaying figured bass
986
987 Figured bass can be displayed using the @code{FiguredBass} context,
988 or in most staff contexts.
989
990 When displayed in a @code{FiguredBass} context, the vertical location
991 of the figures is independent of the notes on the staff.
992
993 @lilypond[verbatim,ragged-right,fragment,quote]
994 <<
995   \relative c'' {
996     c4 c'8 r8 c,4 c'
997   }
998   \new FiguredBass {
999     \figuremode {
1000       <4>4 <10 6>8 s8
1001       <6 4>4 <6 4>
1002     }
1003   }
1004 >>
1005 @end lilypond
1006
1007 @noindent
1008 In the example above, the @code{FiguredBass} context must be
1009 explicitly instantiated to avoid creating a second (empty) staff.
1010
1011
1012 Figured bass can also be added to @code{Staff} contexts
1013 directly.  In this case, the vertical position of the
1014 figures is adjusted automatically.
1015
1016 @lilypond[verbatim,ragged-right,fragment,quote]
1017 <<
1018   \new Staff = myStaff
1019   \figuremode {
1020     <4>4 <10 6>8 s8
1021     <6 4>4 <6 4>
1022   }
1023   %% Put notes on same Staff as figures
1024   \context Staff = myStaff
1025   {
1026     \clef bass
1027     c4 c'8 r8 c4 c'
1028   }
1029 >>
1030 @end lilypond
1031
1032
1033 When added in a @code{Staff} context, figured bass can be displayed above
1034 or below the staff.
1035
1036 @lilypond[verbatim,ragged-right,fragment,quote]
1037 <<
1038   \new Staff = myStaff
1039   \figuremode {
1040     <4>4 <10 6>8 s8
1041     \bassFigureStaffAlignmentDown
1042     <6 4>4 <6 4>
1043   }
1044   %% Put notes on same Staff as figures
1045   \context Staff = myStaff
1046   {
1047     \clef bass
1048     c4 c'8 r8 c4 c'
1049   }
1050 >>
1051 @end lilypond
1052
1053
1054 @predefined
1055 @cindex figured bass alignment
1056 @code{\bassFigureStaffAlignmentDown},
1057 @code{\bassFigureStaffAlignmentUp},
1058 @code{\bassFigureStaffAlignmentNeutral}.
1059 @endpredefined
1060
1061
1062 @c @snippets
1063
1064
1065 @seealso
1066 @c Music Glossary:
1067 @c @rglos{}.
1068 @c
1069 @c Learning Manual:
1070 @c @rlearning{}.
1071 @c
1072 @c Notation Reference:
1073 @c @ref{}.
1074 @c
1075 @c Application Usage:
1076 @c @rprogram{}.
1077 @c
1078 @c Installed Files:
1079 @c @file{}.
1080 @c
1081 Snippets:
1082 @rlsr{Chords}.
1083
1084 Internals Reference:
1085 @rinternals{BassFigure},
1086 @rinternals{BassFigureAlignment},
1087 @rinternals{BassFigureLine},
1088 @rinternals{BassFigureBracket},
1089 @rinternals{BassFigureContinuation},
1090 @rinternals{FiguredBass}.
1091
1092
1093 @knownissues
1094
1095 To ensure that continuation lines work properly, it is
1096 safest to use the same rhythm in the figure line as in
1097 the bass line.
1098
1099 @lilypond[verbatim,ragged-right,fragment,quote]
1100 <<
1101   {
1102     \clef bass
1103     \repeat unfold 4 { f16. g32 } f8. es16 d8 es
1104   }
1105   \figures {
1106     \bassFigureExtendersOn
1107     % The extenders are correct here, with the same rhythm as the bass
1108     \repeat unfold 4 { <6 4->16. <6 4->32 }
1109     <5>8. r16 <6>8 <6\! 5->
1110   }
1111 >>
1112 <<
1113   {
1114     \clef bass
1115     \repeat unfold 4 { f16. g32 } f8. es16 d8 es
1116   }
1117   \figures {
1118     \bassFigureExtendersOn
1119     % The extenders are incorrect here, even though the timing is the same
1120     <6 4->4 <6 4->4
1121     <5>8. r16 <6>8 <6\! 5->
1122   }
1123 >>
1124 @end lilypond
1125
1126 When using extender lines, adjacent figures with the same number in
1127 a different figure location can cause the figure positions to invert.
1128
1129 @lilypond[verbatim,ragged-right,fragment,quote,relative=1]
1130 <<
1131  { fis4 g g, e' }
1132   \figures {
1133     \bassFigureExtendersOn
1134     <6 5>4 <5\! 4> < 5 _!> <6>
1135   }
1136 >>
1137 @end lilypond
1138
1139 To avoid this problem, simply turn on extenders after the figure that
1140 begins the extender line and turn them off at the end of the extender line.
1141
1142 @lilypond[verbatim,ragged-right,fragment,quote,relative=1]
1143 <<
1144  { fis4 g g, e' }
1145   \figures {
1146     <6 5>4 <5 4>
1147     \bassFigureExtendersOn
1148     < 5 _!>4 <6>
1149     \bassFigureExtendersOff
1150   }
1151 >>
1152 @end lilypond
1153