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