1 @c -*- coding: utf-8; mode: texinfo; -*-
3 Translation of GIT committish: FILL-IN-HEAD-COMMITTISH
5 When revising a translation, copy the HEAD committish of the
6 version that you are working on. See TRANSLATION for details.
11 @node Ancient notation
12 @section Ancient notation
14 @cindex Vaticana, Editio
15 @cindex Medicaea, Editio
20 Support for ancient notation includes features for mensural notation
21 and Gregorian Chant notation. There is also limited support for
22 figured bass notation.
24 Many graphical objects provide a @code{style} property, see
27 @ref{Ancient note heads},
29 @ref{Ancient accidentals},
37 @ref{Ancient time signatures}.
40 By manipulating such a grob property, the typographical appearance of
41 the affected graphical objects can be accommodated for a specific
42 notation flavor without the need for introducing any new notational
45 In addition to the standard articulation signs described in
46 section @ref{Articulations and ornamentations}, specific
47 articulation signs for ancient notation are provided.
51 @ref{Ancient articulations}
54 Other aspects of ancient notation can not that easily be expressed
55 in terms of just changing a style property of a graphical object or
56 adding articulation signs. Some notational concepts are introduced
57 specifically for ancient notation,
68 If this all is too much of documentation for you, and you just want to
69 dive into typesetting without worrying too much about the details on
70 how to customize a context, you may have a look at the predefined
71 contexts. Use them to set up predefined style-specific voice and
72 staff contexts, and directly go ahead with the note entry,
76 @ref{Gregorian Chant contexts},
78 @ref{Mensural contexts}.
81 There is limited support for figured bass notation which came
82 up during the baroque period.
89 @c Here are all subtopics at a glance:
92 * Alternative note signs for ancient music::
93 * Additional note signs for ancient music::
94 * Pre-defined contexts::
95 * Musica ficta accidentals::
99 @node Alternative note signs for ancient music
100 @subsection Alternative note signs for ancient music
103 * Ancient note heads::
104 * Ancient accidentals::
108 * Ancient time signatures::
111 @node Ancient note heads
112 @subsubsection Ancient note heads
114 @cindex note heads, ancient
116 For ancient notation, a note head style other than the @code{default}
117 style may be chosen. This is accomplished by setting the @code{style}
118 property of the @internalsref{NoteHead} object to @code{baroque},
119 @code{neomensural}, @code{mensural} or @code{petrucci}. The
120 @code{baroque} style differs from the @code{default} style only in
121 using a square shape for @code{\breve} note heads. The
122 @code{neomensural} style differs from the @code{baroque} style in that
123 it uses rhomboidal heads for whole notes and all smaller durations.
124 Stems are centered on the note heads. This style is particularly
125 useful when transcribing mensural music, e.g., for the incipit. The
126 @code{mensural} style produces note heads that mimic the look of note
127 heads in historic printings of the 16th century. Finally, the
128 @code{petrucci} style also mimics historic printings, but uses bigger
131 The following example demonstrates the @code{neomensural} style
133 @lilypond[quote,fragment,ragged-right,verbatim]
134 \set Score.skipBars = ##t
135 \override NoteHead #'style = #'neomensural
136 a'\longa a'\breve a'1 a'2 a'4 a'8 a'16
139 When typesetting a piece in Gregorian Chant notation, the
140 @internalsref{Gregorian_ligature_engraver} will automatically select
141 the proper note heads, so there is no need to explicitly set the
142 note head style. Still, the note head style can be set, e.g., to
143 @code{vaticana_punctum} to produce punctum neumes. Similarly, a
144 @internalsref{Mensural_ligature_engraver} is used to automatically
145 assemble mensural ligatures. See @ref{Ligatures}, for how ligature
150 @ref{Note head styles}, gives an overview over all available note head styles.
153 @node Ancient accidentals
154 @subsubsection Ancient accidentals
159 Use the @code{glyph-name-alist} property of grob
160 @internalsref{Accidental} and @internalsref{KeySignature} to select
163 @lilypond[quote,ragged-right,staffsize=26]
170 \line { " " \musicglyph #"accidentals.vaticana-1"
171 " " \musicglyph #"accidentals.vaticana0" }
175 \line { " " \musicglyph #"accidentals.medicaea-1" }
179 \line { " " \musicglyph #"accidentals.hufnagel-1" }
183 \line { " " \musicglyph #"accidentals.mensural-1"
184 " " \musicglyph #"accidentals.mensural1" }
190 \context { \Score \remove "Bar_number_engraver" }
192 \remove "Clef_engraver"
193 \remove "Key_engraver"
194 \remove "Time_signature_engraver"
195 \remove "Staff_symbol_engraver"
196 \override VerticalAxisGroup #'minimum-Y-extent = ##f
202 As shown, not all accidentals are supported by each style. When
203 trying to access an unsupported accidental, LilyPond will switch to a
204 different style, as demonstrated in
205 @c @lsr{ancient,ancient-accidentals.ly}.
207 Similarly to local accidentals, the style of the key signature can be
208 controlled by the @code{glyph-name-alist} property of the
209 @internalsref{KeySignature} grob.
213 Notation Reference: @ref{Pitches}, @ref{Accidentals}, and
214 @ref{Automatic accidentals}, give a general introduction of the use of
215 accidentals. @ref{Key signature}, gives a general introduction of
216 the use of key signatures.
218 Internals Reference: @internalsref{KeySignature}.
220 Examples: @c @lsrdir{ancient}
223 @subsubsection Ancient rests
225 @cindex rests, ancient
228 Use the @code{style} property of grob @internalsref{Rest} to select
229 ancient rests. Supported styles are @code{classical},
230 @code{neomensural}, and @code{mensural}. @code{classical} differs
231 from the @code{default} style only in that the quarter rest looks like
232 a horizontally mirrored 8th rest. The @code{neomensural} style suits
233 well for, e.g., the incipit of a transcribed mensural piece of music.
234 The @code{mensural} style finally mimics the appearance of rests as
235 in historic prints of the 16th century.
237 The following example demonstrates the @code{neomensural} style
239 @lilypond[quote,fragment,ragged-right,verbatim]
240 \set Score.skipBars = ##t
241 \override Rest #'style = #'neomensural
242 r\longa r\breve r1 r2 r4 r8 r16
245 There are no 32th and 64th rests specifically for the mensural or
246 neo-mensural style. Instead, the rests from the default style will be
247 taken. See @c @lsr{pitches,rests} for a chart of all rests.
249 There are no rests in Gregorian Chant notation; instead, it uses
254 Notation Reference: @ref{Rests}, gives a general introduction into the use of
259 @subsubsection Ancient clefs
264 LilyPond supports a variety of clefs, many of them ancient.
266 The following table shows all ancient clefs that are supported via the
267 @code{\clef} command. Some of the clefs use the same glyph, but
268 differ only with respect to the line they are printed on. In such
269 cases, a trailing number in the name is used to enumerate these clefs.
270 Still, you can manually force a clef glyph to be typeset on an
271 arbitrary line, as described in @ref{Clef}. The note printed to the
272 right side of each clef in the example column denotes the @code{c'}
273 with respect to that clef.
275 @multitable @columnfractions .4 .4 .2
284 modern style mensural C clef
286 @code{neomensural-c1}, @code{neomensural-c2},@*
287 @code{neomensural-c3}, @code{neomensural-c4}
289 @lilypond[fragment,relative=1,notime]
290 \clef "neomensural-c2" c
294 petrucci style mensural C clefs, for use on different staff lines
295 (the examples show the 2nd staff line C clef)
297 @code{petrucci-c1}, @code{petrucci-c2},@*
298 @code{petrucci-c3}, @code{petrucci-c4},@*
301 @lilypond[fragment,relative=1,notime]
303 \override NoteHead #'style = #'mensural
308 petrucci style mensural F clef
312 @lilypond[fragment,relative=1,notime]
314 \override NoteHead #'style = #'mensural
319 petrucci style mensural G clef
323 @lilypond[fragment,relative=1,notime]
325 \override NoteHead #'style = #'mensural
330 historic style mensural C clef
332 @code{mensural-c1}, @code{mensural-c2},@*
333 @code{mensural-c3}, @code{mensural-c4}
335 @lilypond[fragment,relative=1,notime]
337 \override NoteHead #'style = #'mensural
342 historic style mensural F clef
346 @lilypond[fragment,relative=1,notime]
348 \override NoteHead #'style = #'mensural
353 historic style mensural G clef
357 @lilypond[fragment,relative=1,notime]
359 \override NoteHead #'style = #'mensural
364 Editio Vaticana style do clef
366 @code{vaticana-do1}, @code{vaticana-do2},@*
369 @lilypond[fragment,relative=1,notime]
370 \override Staff.StaffSymbol #'line-count = #4
371 \override Staff.StaffSymbol #'color = #red
372 \override Staff.LedgerLineSpanner #'color = #red
373 \override Voice.Stem #'transparent = ##t
374 \override NoteHead #'style = #'vaticana.punctum
380 Editio Vaticana style fa clef
382 @code{vaticana-fa1}, @code{vaticana-fa2}
384 @lilypond[fragment,relative=1,notime]
385 \override Staff.StaffSymbol #'line-count = #4
386 \override Staff.StaffSymbol #'color = #red
387 \override Staff.LedgerLineSpanner #'color = #red
388 \override Voice.Stem #'transparent = ##t
389 \override NoteHead #'style = #'vaticana.punctum
395 Editio Medicaea style do clef
397 @code{medicaea-do1}, @code{medicaea-do2},@*
400 @lilypond[fragment,relative=1,notime]
401 \override Staff.StaffSymbol #'line-count = #4
402 \override Staff.StaffSymbol #'color = #red
403 \override Staff.LedgerLineSpanner #'color = #red
404 \override Voice.Stem #'transparent = ##t
405 \override NoteHead #'style = #'medicaea.punctum
411 Editio Medicaea style fa clef
413 @code{medicaea-fa1}, @code{medicaea-fa2}
415 @lilypond[fragment,relative=1,notime]
416 \override Staff.StaffSymbol #'line-count = #4
417 \override Staff.StaffSymbol #'color = #red
418 \override Staff.LedgerLineSpanner #'color = #red
419 \override Voice.Stem #'transparent = ##t
420 \override NoteHead #'style = #'medicaea.punctum
426 historic style hufnagel do clef
428 @code{hufnagel-do1}, @code{hufnagel-do2},@*
431 @lilypond[fragment,relative=1,notime]
432 \override Staff.StaffSymbol #'line-count = #4
433 \override Staff.StaffSymbol #'color = #red
434 \override Staff.LedgerLineSpanner #'color = #red
435 \override Voice.Stem #'transparent = ##t
436 \override NoteHead #'style = #'hufnagel.punctum
442 historic style hufnagel fa clef
444 @code{hufnagel-fa1}, @code{hufnagel-fa2}
446 @lilypond[fragment,relative=1,notime]
447 \override Staff.StaffSymbol #'line-count = #4
448 \override Staff.StaffSymbol #'color = #red
449 \override Staff.LedgerLineSpanner #'color = #red
450 \override Voice.Stem #'transparent = ##t
451 \override NoteHead #'style = #'hufnagel.punctum
457 historic style hufnagel combined do/fa clef
459 @code{hufnagel-do-fa}
461 @lilypond[fragment,relative=1,notime]
462 \override Staff.StaffSymbol #'color = #red
463 \override Staff.LedgerLineSpanner #'color = #red
464 \override Voice.Stem #'transparent = ##t
465 \override NoteHead #'style = #'hufnagel.punctum
466 \clef "hufnagel-do-fa"
473 @emph{Modern style} means @qq{as is typeset in contemporary editions of
474 transcribed mensural music.}
476 @emph{Petrucci style} means @qq{inspired by printings published by the
477 famous engraver Petrucci (1466-1539).}
479 @emph{Historic style} means @qq{as was typeset or written in historic
480 editions (other than those of Petrucci).}
482 @emph{Editio XXX style} means @qq{as is/was printed in Editio XXX.}
484 Petrucci used C clefs with differently balanced left-side vertical
485 beams, depending on which staff line it is printed.
489 Notation Reference: see @ref{Clef}.
493 The mensural g clef is mapped to the Petrucci g clef.
498 @subsubsection Ancient flags
503 Use the @code{flag-style} property of grob @internalsref{Stem} to
504 select ancient flags. Besides the @code{default} flag style,
505 only the @code{mensural} style is supported
507 @lilypond[quote,fragment,ragged-right,verbatim]
508 \override Stem #'flag-style = #'mensural
509 \override Stem #'thickness = #1.0
510 \override NoteHead #'style = #'mensural
512 c'8 d'8 e'8 f'8 c'16 d'16 e'16 f'16 c'32 d'32 e'32 f'32 s8
513 c''8 d''8 e''8 f''8 c''16 d''16 e''16 f''16 c''32 d''32 e''32 f''32
516 Note that the innermost flare of each mensural flag always is
517 vertically aligned with a staff line.
519 There is no particular flag style for neo-mensural notation. Hence,
520 when typesetting the incipit of a transcribed piece of mensural
521 music, the default flag style should be used. There are no flags in
522 Gregorian Chant notation.
526 The attachment of ancient flags to stems is slightly off due to a
527 change in early 2.3.x.
529 Vertically aligning each flag with a staff line assumes that stems
530 always end either exactly on or exactly in the middle between two
531 staff lines. This may not always be true when using advanced layout
532 features of classical notation (which however are typically out of
533 scope for mensural notation).
535 @node Ancient time signatures
536 @subsubsection Ancient time signatures
538 @cindex time signatures
541 There is limited support for mensural time signatures. The
542 glyphs are hard-wired to particular time fractions. In other words,
543 to get a particular mensural signature glyph with the @code{\time n/m}
544 command, @code{n} and @code{m} have to be chosen according to the
547 @lilypond[quote,ragged-right]
552 \remove Staff_symbol_engraver
553 \remove Clef_engraver
554 \remove Time_signature_engraver
558 \set Score.timing = ##f
559 \set Score.barAlways = ##t
560 s_\markup { "\\time 4/4" }^\markup { " " \musicglyph
561 #"timesig.neomensural44" }
563 s_\markup { "\\time 2/2" }^\markup { " " \musicglyph
564 #"timesig.neomensural22" }
566 s_\markup { "\\time 6/4" }^\markup { " " \musicglyph
567 #"timesig.neomensural64" }
569 s_\markup { "\\time 6/8" }^\markup { " " \musicglyph
570 #"timesig.neomensural68" }
572 s_\markup { "\\time 3/2" }^\markup { " " \musicglyph
573 #"timesig.neomensural32" }
575 s_\markup { "\\time 3/4" }^\markup { " " \musicglyph
576 #"timesig.neomensural34" }
578 s_\markup { "\\time 9/4" }^\markup { " " \musicglyph
579 #"timesig.neomensural94" }
581 s_\markup { "\\time 9/8" }^\markup { " " \musicglyph
582 #"timesig.neomensural98" }
584 s_\markup { "\\time 4/8" }^\markup { " " \musicglyph
585 #"timesig.neomensural48" }
587 s_\markup { "\\time 2/4" }^\markup { " " \musicglyph
588 #"timesig.neomensural24" }
592 Use the @code{style} property of grob @internalsref{TimeSignature} to
593 select ancient time signatures. Supported styles are
594 @code{neomensural} and @code{mensural}. The above table uses the
595 @code{neomensural} style. This style is appropriate for the
596 incipit of transcriptions of mensural pieces. The @code{mensural}
597 style mimics the look of historical printings of the 16th century.
599 The following examples show the differences in style,
601 @lilypond[ragged-right,fragment,relative=1,quote]
606 c1^\markup { \hspace #-2.0 \typewriter default }
608 \override Staff.TimeSignature #'style = #'numbered
610 c1^\markup { \hspace #-2.0 \typewriter numbered }
612 \override Staff.TimeSignature #'style = #'mensural
614 c1^\markup { \hspace #-2.0 \typewriter mensural }
616 \override Staff.TimeSignature #'style = #'neomensural
618 c1^\markup { \hspace #-2.0 \typewriter neomensural }
619 \override Staff.TimeSignature #'style = #'single-digit
621 c1^\markup { \hspace #-2.0 \typewriter single-digit }
627 This manual: @ref{Time signature}, gives a general introduction to
628 the use of time signatures.
632 Ratios of note durations do not change with the time signature. For
633 example, the ratio of 1 brevis = 3 semibrevis (tempus perfectum) must
634 be made by hand, by setting
637 breveTP = #(ly:make-duration -1 0 3 2)
643 This sets @code{breveTP} to 3/2 times 2 = 3 times a whole note.
645 The @code{old6/8alt} symbol (an alternate symbol for 6/8) is not
646 addressable with @code{\time}. Use a @code{\markup} instead
649 @node Additional note signs for ancient music
650 @subsection Additional note signs for ancient music
653 * Ancient articulations::
657 * White mensural ligatures::
658 * Gregorian square neumes ligatures::
662 @node Ancient articulations
663 @subsubsection Ancient articulations
665 @cindex articulations
667 In addition to the standard articulation signs described in
668 section @ref{Articulations and ornamentations}, articulation signs
669 for ancient notation are provided. These are specifically
670 designed for use with notation in Editio Vaticana style.
672 @lilypond[quote,ragged-right,verbatim]
673 \include "gregorian-init.ly"
676 \override TextScript #'font-family = #'typewriter
677 \override TextScript #'font-shape = #'upright
678 \override Script #'padding = #-0.1
679 a\ictus_"ictus" \break
680 a\circulus_"circulus" \break
681 a\semicirculus_"semicirculus" \break
682 a\accentus_"accentus" \break
683 \[ a_"episem" \episemInitium \pes b \flexa a b \episemFinis \flexa a \]
690 Some articulations are vertically placed too closely to the
691 corresponding note heads.
693 The episem line is not displayed in many cases. If it is displayed,
694 the right end of the episem line is often too far to the right.
697 @subsubsection Custodes
702 A @emph{custos} (plural: @emph{custodes}; Latin word for @q{guard}) is a
703 symbol that appears at the end of a staff. It anticipates the pitch
704 of the first note(s) of the following line thus helping the performer
705 to manage line breaks during performance.
707 Custodes were frequently used in music notation until the 17th
708 century. Nowadays, they have survived only in a few particular forms
709 of musical notation such as contemporary editions of Gregorian chant
710 like the @emph{editio vaticana}. There are different custos glyphs
711 used in different flavors of notational style.
713 For typesetting custodes, just put a @internalsref{Custos_engraver} into the
714 @internalsref{Staff} context when declaring the @code{\layout} block,
715 as shown in the following example
721 \consists Custos_engraver
722 Custos \override #'style = #'mensural
727 The result looks like this
729 @lilypond[quote,ragged-right]
733 \override Staff.Custos #'style = #'mensural
738 \context { \Staff \consists Custos_engraver }
743 The custos glyph is selected by the @code{style} property. The styles
744 supported are @code{vaticana}, @code{medicaea}, @code{hufnagel}, and
745 @code{mensural}. They are demonstrated in the following fragment
747 @lilypond[quote,ragged-right,fragment]
748 \new Lyrics \lyricmode {
750 \typewriter "vaticana"
751 \line { " " \musicglyph #"custodes.vaticana.u0" }
754 \typewriter "medicaea"
755 \line { " " \musicglyph #"custodes.medicaea.u0" }
758 \typewriter "hufnagel"
759 \line { " " \musicglyph #"custodes.hufnagel.u0" }
762 \typewriter "mensural"
763 \line { " " \musicglyph #"custodes.mensural.u0" }
770 Internals Reference: @internalsref{Custos}.
773 @c @lsr{ancient,custodes@/.ly}.
777 @subsubsection Divisiones
783 A @emph{divisio} (plural: @emph{divisiones}; Latin word for
784 @q{division}) is a staff context symbol that is used to structure
785 Gregorian music into phrases and sections. The musical meaning of
786 @emph{divisio minima}, @emph{divisio maior}, and @emph{divisio maxima}
787 can be characterized as short, medium, and long pause, somewhat like
788 the breathmarks from @ref{Breath marks}. The @emph{finalis} sign not
789 only marks the end of a chant, but is also frequently used within a
790 single antiphonal/responsorial chant to mark the end of each section.
793 To use divisiones, include the file @file{gregorian@/-init@/.ly}. It
794 contains definitions that you can apply by just inserting
795 @code{\divisioMinima}, @code{\divisioMaior}, @code{\divisioMaxima},
796 and @code{\finalis} at proper places in the input. Some editions use
797 @emph{virgula} or @emph{caesura} instead of divisio minima.
798 Therefore, @file{gregorian@/-init@/.ly} also defines @code{\virgula} and
801 @lilypondfile[quote,ragged-right]{divisiones.ly}
809 @funindex \divisioMinima
810 @code{\divisioMinima},
811 @funindex \divisioMaior
812 @code{\divisioMaior},
813 @funindex \divisioMaxima
814 @code{\divisioMaxima},
820 Notation Reference: @ref{Breath marks}.
822 Internals Reference: @internalsref{BreathingSign}.
824 Examples: @c @lsr{expressive,breathing-sign.ly}.
828 @subsubsection Ligatures
832 @c TODO: Should double check if I recalled things correctly when I wrote
833 @c down the following paragraph by heart.
835 A ligature is a graphical symbol that represents at least two distinct
836 notes. Ligatures originally appeared in the manuscripts of Gregorian
837 chant notation to denote ascending or descending sequences of notes.
839 Ligatures are entered by enclosing them in @code{\[} and @code{\]}.
840 Some ligature styles may need additional input syntax specific for
841 this particular type of ligature. By default, the
842 @internalsref{LigatureBracket} engraver just puts a square bracket
845 @lilypond[quote,ragged-right,verbatim]
853 To select a specific style of ligatures, a proper ligature engraver
854 has to be added to the @internalsref{Voice} context, as explained in
855 the following subsections. Only white mensural ligatures
856 are supported with certain limitations.
862 Ligatures need special spacing that has not yet been implemented. As
863 a result, there is too much space between ligatures most of the time,
864 and line breaking often is unsatisfactory. Also, lyrics do not
865 correctly align with ligatures.
867 Accidentals must not be printed within a ligature, but instead need to
868 be collected and printed in front of it.
870 The syntax still uses the deprecated infix style @code{\[ music expr
871 \]}. For consistency reasons, it will eventually be changed to
872 postfix style @code{note\[ ... note\]}. Alternatively, the file
873 @file{gregorian@/-init@/.ly} can be included; it provides a scheme
876 \ligature @var{music expr}
878 with the same effect and is believed to be stable.
881 * White mensural ligatures::
882 * Gregorian square neumes ligatures::
885 @node White mensural ligatures
886 @subsubsection White mensural ligatures
888 @cindex Mensural ligatures
889 @cindex White mensural ligatures
891 There is limited support for white mensural ligatures.
893 To engrave white mensural ligatures, in the layout block put the
894 @internalsref{Mensural_ligature_engraver} into the
895 @internalsref{Voice} context, and remove the
896 @internalsref{Ligature_bracket_engraver}, like this
902 \remove Ligature_bracket_engraver
903 \consists Mensural_ligature_engraver
908 There is no additional input language to describe the shape of a
909 white mensural ligature. The shape is rather determined solely from
910 the pitch and duration of the enclosed notes. While this approach may
911 take a new user a while to get accustomed to, it has the great advantage
912 that the full musical information of the ligature is known internally.
913 This is not only required for correct MIDI output, but also allows for
914 automatic transcription of the ligatures.
919 \set Score.timing = ##f
920 \set Score.defaultBarType = "empty"
921 \override NoteHead #'style = #'neomensural
922 \override Staff.TimeSignature #'style = #'neomensural
925 \[ d\longa c\breve f e d \]
926 \[ c'\maxima d'\longa \]
929 @lilypond[quote,ragged-right]
932 \set Score.timing = ##f
933 \set Score.defaultBarType = "empty"
934 \override NoteHead #'style = #'neomensural
935 \override Staff.TimeSignature #'style = #'neomensural
938 \[ d\longa c\breve f e d \]
939 \[ c'\maxima d'\longa \]
945 \remove Ligature_bracket_engraver
946 \consists Mensural_ligature_engraver
952 Without replacing @internalsref{Ligature_bracket_engraver} with
953 @internalsref{Mensural_ligature_engraver}, the same music transcribes
956 @lilypond[quote,ragged-right]
958 \set Score.timing = ##f
959 \set Score.defaultBarType = "empty"
960 \override NoteHead #'style = #'neomensural
961 \override Staff.TimeSignature #'style = #'neomensural
964 \[ d\longa c\breve f e d \]
965 \[ c'\maxima d'\longa \]
972 Horizontal spacing is poor.
974 @node Gregorian square neumes ligatures
975 @subsubsection Gregorian square neumes ligatures
977 @cindex Square neumes ligatures
978 @cindex Gregorian square neumes ligatures
980 There is limited support for Gregorian square neumes notation
981 (following the style of the Editio Vaticana). Core ligatures can
982 already be typeset, but essential issues for serious typesetting are
983 still lacking, such as (among others) horizontal alignment of multiple
984 ligatures, lyrics alignment and proper handling of accidentals.
987 The following table contains the extended neumes table of the 2nd
988 volume of the Antiphonale Romanum (@emph{Liber Hymnarius}), published
989 1983 by the monks of Solesmes.
991 @multitable @columnfractions .4 .2 .2 .2
1008 @c TODO: \layout block is identical in all of the below examples.
1009 @c Therefore, it should somehow be included rather than duplicated all
1012 @c why not make variables in ly/engraver-init.ly? --hwn
1014 @c Because it's just used to typeset plain notes without
1015 @c a staff for demonstration purposes rather than something
1016 @c special of Gregorian chant notation. --jr
1021 @lilypond[staffsize=26,line-width=1.5\cm]
1022 \include "gregorian-init.ly"
1027 \noBreak s^\markup {"a"} \noBreak
1029 % Punctum Inclinatum
1031 \noBreak s^\markup {"b"}
1033 \layout { \neumeDemoLayout }}
1036 @lilypond[staffsize=26,line-width=2.5\cm]
1037 \include "gregorian-init.ly"
1040 % Punctum Auctum Ascendens
1041 \[ \auctum \ascendens b \]
1042 \noBreak s^\markup {"c"} \noBreak
1044 % Punctum Auctum Descendens
1045 \[ \auctum \descendens b \]
1046 \noBreak s^\markup {"d"} \noBreak
1048 % Punctum Inclinatum Auctum
1049 \[ \inclinatum \auctum b \]
1050 \noBreak s^\markup {"e"}
1052 \layout { \neumeDemoLayout }}
1055 @lilypond[staffsize=26,line-width=1.0\cm]
1056 \include "gregorian-init.ly"
1059 % Punctum Inclinatum Parvum
1060 \[ \inclinatum \deminutum b \]
1061 \noBreak s^\markup {"f"}
1063 \layout { \neumeDemoLayout }}
1069 @lilypond[staffsize=26,line-width=1.0\cm]
1070 \include "gregorian-init.ly"
1075 \noBreak s^\markup {"g"}
1077 \layout { \neumeDemoLayout }}
1083 @code{3. Apostropha vel Stropha}
1085 @lilypond[staffsize=26,line-width=1.0\cm]
1086 \include "gregorian-init.ly"
1091 \noBreak s^\markup {"h"}
1093 \layout { \neumeDemoLayout }}
1096 @lilypond[staffsize=26,line-width=1.0\cm]
1097 \include "gregorian-init.ly"
1101 \[ \stropha \auctum b \]
1102 \noBreak s^\markup {"i"}
1104 \layout { \neumeDemoLayout }}
1111 @lilypond[staffsize=26,line-width=1.0\cm]
1112 \include "gregorian-init.ly"
1117 \noBreak s^\markup {"j"}
1119 \layout { \neumeDemoLayout }}
1125 @code{5. Clivis vel Flexa}
1127 @lilypond[staffsize=26,line-width=1.0\cm]
1128 \include "gregorian-init.ly"
1135 \layout { \neumeDemoLayout }}
1138 @lilypond[staffsize=26,line-width=2.0\cm]
1139 \include "gregorian-init.ly"
1142 % Clivis Aucta Descendens
1143 \[ b \flexa \auctum \descendens g \]
1144 \noBreak s^\markup {"l"} \noBreak
1146 % Clivis Aucta Ascendens
1147 \[ b \flexa \auctum \ascendens g \]
1148 \noBreak s^\markup {"m"}
1150 \layout { \neumeDemoLayout }}
1153 @lilypond[staffsize=26,line-width=1.0\cm]
1154 \include "gregorian-init.ly"
1158 \[ b \flexa \deminutum g \]
1161 \layout { \neumeDemoLayout }}
1165 @code{6. Podatus vel Pes}
1167 @lilypond[staffsize=26,line-width=1.0\cm]
1168 \include "gregorian-init.ly"
1175 \layout { \neumeDemoLayout }}
1178 @lilypond[staffsize=26,line-width=2.0\cm]
1179 \include "gregorian-init.ly"
1182 % Pes Auctus Descendens
1183 \[ g \pes \auctum \descendens b \]
1184 \noBreak s^\markup {"p"} \noBreak
1186 % Pes Auctus Ascendens
1187 \[ g \pes \auctum \ascendens b \]
1188 \noBreak s^\markup {"q"}
1190 \layout { \neumeDemoLayout }}
1193 @lilypond[staffsize=26,line-width=1.0\cm]
1194 \include "gregorian-init.ly"
1198 \[ g \pes \deminutum b \]
1201 \layout { \neumeDemoLayout }}
1205 @code{7. Pes Quassus}
1207 @lilypond[staffsize=26,line-width=1.0\cm]
1208 \include "gregorian-init.ly"
1212 \[ \oriscus g \pes \virga b \]
1215 \layout { \neumeDemoLayout }}
1218 @lilypond[staffsize=26,line-width=1.0\cm]
1219 \include "gregorian-init.ly"
1222 % Pes Quassus Auctus Descendens
1223 \[ \oriscus g \pes \auctum \descendens b \]
1226 \layout { \neumeDemoLayout }}
1231 @code{8. Quilisma Pes}
1233 @lilypond[staffsize=26,line-width=1.0\cm]
1234 \include "gregorian-init.ly"
1238 \[ \quilisma g \pes b \]
1241 \layout { \neumeDemoLayout }}
1244 @lilypond[staffsize=26,line-width=1.0\cm]
1245 \include "gregorian-init.ly"
1248 % Quilisma Pes Auctus Descendens
1249 \[ \quilisma g \pes \auctum \descendens b \]
1252 \layout { \neumeDemoLayout }}
1257 @code{9. Podatus Initio Debilis}
1259 @lilypond[staffsize=26,line-width=1.0\cm]
1260 \include "gregorian-init.ly"
1263 % Pes Initio Debilis
1264 \[ \deminutum g \pes b \]
1267 \layout { \neumeDemoLayout }}
1270 @lilypond[staffsize=26,line-width=1.0\cm]
1271 \include "gregorian-init.ly"
1274 % Pes Auctus Descendens Initio Debilis
1275 \[ \deminutum g \pes \auctum \descendens b \]
1278 \layout { \neumeDemoLayout }}
1285 @lilypond[staffsize=26,line-width=1.0\cm]
1286 \include "gregorian-init.ly"
1290 \[ a \pes b \flexa g \]
1293 \layout { \neumeDemoLayout }}
1296 @lilypond[staffsize=26,line-width=1.0\cm]
1297 \include "gregorian-init.ly"
1300 % Torculus Auctus Descendens
1301 \[ a \pes b \flexa \auctum \descendens g \]
1304 \layout { \neumeDemoLayout }}
1307 @lilypond[staffsize=26,line-width=1.0\cm]
1308 \include "gregorian-init.ly"
1311 % Torculus Deminutus
1312 \[ a \pes b \flexa \deminutum g \]
1315 \layout { \neumeDemoLayout }}
1319 @code{11. Torculus Initio Debilis}
1321 @lilypond[staffsize=26,line-width=1.0\cm]
1322 \include "gregorian-init.ly"
1325 % Torculus Initio Debilis
1326 \[ \deminutum a \pes b \flexa g \]
1329 \layout { \neumeDemoLayout }}
1332 @lilypond[staffsize=26,line-width=1.0\cm]
1333 \include "gregorian-init.ly"
1336 % Torculus Auctus Descendens Initio Debilis
1337 \[ \deminutum a \pes b \flexa \auctum \descendens g \]
1340 \layout { \neumeDemoLayout }}
1343 @lilypond[staffsize=26,line-width=1.0\cm]
1344 \include "gregorian-init.ly"
1347 % Torculus Deminutus Initio Debilis
1348 \[ \deminutum a \pes b \flexa \deminutum g \]
1351 \layout { \neumeDemoLayout }}
1355 @code{12. Porrectus}
1357 @lilypond[staffsize=26,line-width=1.0\cm]
1358 \include "gregorian-init.ly"
1362 \[ a \flexa g \pes b \]
1365 \layout { \neumeDemoLayout }}
1368 @lilypond[staffsize=26,line-width=1.0\cm]
1369 \include "gregorian-init.ly"
1372 % Porrectus Auctus Descendens
1373 \[ a \flexa g \pes \auctum \descendens b \]
1376 \layout { \neumeDemoLayout }}
1379 @lilypond[staffsize=26,line-width=1.0\cm]
1380 \include "gregorian-init.ly"
1383 % Porrectus Deminutus
1384 \[ a \flexa g \pes \deminutum b \]
1387 \layout { \neumeDemoLayout }}
1393 @lilypond[staffsize=26,line-width=1.0\cm]
1394 \include "gregorian-init.ly"
1398 \[ \virga b \inclinatum a \inclinatum g \]
1401 \layout { \neumeDemoLayout }
1405 @lilypond[staffsize=26,line-width=1.0\cm]
1406 \include "gregorian-init.ly"
1410 \[ \virga b \inclinatum a \inclinatum \auctum g \]
1413 \layout { \neumeDemoLayout }}
1416 @lilypond[staffsize=26,line-width=1.0\cm]
1417 \include "gregorian-init.ly"
1420 % Climacus Deminutus
1421 \[ \virga b \inclinatum a \inclinatum \deminutum g \]
1424 \layout { \neumeDemoLayout }}
1428 @code{14. Scandicus}
1430 @lilypond[staffsize=26,line-width=1.0\cm]
1431 \include "gregorian-init.ly"
1435 \[ g \pes a \virga b \]
1438 \layout { \neumeDemoLayout }}
1441 @lilypond[staffsize=26,line-width=1.0\cm]
1442 \include "gregorian-init.ly"
1445 % Scandicus Auctus Descendens
1446 \[ g \pes a \pes \auctum \descendens b \]
1449 \layout { \neumeDemoLayout }}
1452 @lilypond[staffsize=26,line-width=1.0\cm]
1453 \include "gregorian-init.ly"
1456 % Scandicus Deminutus
1457 \[ g \pes a \pes \deminutum b \]
1460 \layout { \neumeDemoLayout }}
1466 @lilypond[staffsize=26,line-width=1.0\cm]
1467 \include "gregorian-init.ly"
1471 \[ g \oriscus a \pes \virga b \]
1474 \layout { \neumeDemoLayout }}
1477 @lilypond[staffsize=26,line-width=1.0\cm]
1478 \include "gregorian-init.ly"
1481 % Salicus Auctus Descendens
1482 \[ g \oriscus a \pes \auctum \descendens b \]
1485 \layout { \neumeDemoLayout }}
1492 @lilypond[staffsize=26,line-width=1.0\cm]
1493 \include "gregorian-init.ly"
1497 \[ \stropha b \stropha b \stropha a \]
1500 \layout { \neumeDemoLayout }
1509 Unlike most other neumes notation systems, the input language for
1510 neumes does not reflect the typographical appearance, but is designed
1511 to focus on musical meaning. For example, @code{\[ a \pes b
1512 \flexa g \]} produces a Torculus consisting of three Punctum heads,
1513 while @code{\[ a \flexa g \pes b \]} produces a Porrectus with a
1514 curved flexa shape and only a single Punctum head. There is no
1515 command to explicitly typeset the curved flexa shape; the decision of
1516 when to typeset a curved flexa shape is based on the musical
1517 input. The idea of this approach is to separate the musical aspects
1518 of the input from the notation style of the output. This way, the
1519 same input can be reused to typeset the same music in a different
1520 style of Gregorian chant notation.
1522 The following table shows the code fragments that produce the
1523 ligatures in the above neumes table. The letter in the first column
1524 in each line of the below table indicates to which ligature in the
1525 above table it refers. The second column gives the name of the
1526 ligature. The third column shows the code fragment that produces this
1527 ligature, using @code{g}, @code{a}, and @code{b} as example pitches.
1529 @multitable @columnfractions .02 .31 .67
1549 @code{\[ \inclinatum b \]}
1557 @code{\[ \auctum \ascendens b \]}
1565 @code{\[ \auctum \descendens b \]}
1570 Punctum Inclinatum@*
1573 @code{\[ \inclinatum \auctum b \]}
1578 Punctum Inclinatum@*
1580 @code{\[ \inclinatum \deminutum b \]}
1587 @code{\[ \virga b \]}
1594 @code{\[ \stropha b \]}
1601 @code{\[ \stropha \auctum b \]}
1608 @code{\[ \oriscus b \]}
1615 @code{\[ b \flexa g \]}
1623 @code{\[ b \flexa \auctum \descendens g \]}
1631 @code{\[ b \flexa \auctum \ascendens g \]}
1638 @code{\[ b \flexa \deminutum g \]}
1645 @code{\[ g \pes b \]}
1653 @code{\[ g \pes \auctum \descendens b \]}
1661 @code{\[ g \pes \auctum \ascendens b \]}
1668 @code{\[ g \pes \deminutum b \]}
1675 @code{\[ \oriscus g \pes \virga b \]}
1681 Auctus Descendens @tab
1682 @code{\[ \oriscus g \pes \auctum \descendens b \]}
1689 @code{\[ \quilisma g \pes b \]}
1697 @code{\[ \quilisma g \pes \auctum \descendens b \]}
1704 @code{\[ \deminutum g \pes b \]}
1709 Pes Auctus Descendens@*
1712 @code{\[ \deminutum g \pes \auctum \descendens b \]}
1719 @code{\[ a \pes b \flexa g \]}
1727 @code{\[ a \pes b \flexa \auctum \descendens g \]}
1734 @code{\[ a \pes b \flexa \deminutum g \]}
1739 Torculus Initio Debilis
1741 @code{\[ \deminutum a \pes b \flexa g \]}
1747 Descendens Initio Debilis
1749 @code{\[ \deminutum a \pes b \flexa \auctum \descendens g \]}
1754 Torculus Deminutus@*
1757 @code{\[ \deminutum a \pes b \flexa \deminutum g \]}
1764 @code{\[ a \flexa g \pes b \]}
1772 @code{\[ a \flexa g \pes \auctum \descendens b \]}
1779 @code{\[ a \flexa g \pes \deminutum b \]}
1786 @code{\[ \virga b \inclinatum a \inclinatum g \]}
1793 @code{\[ \virga b \inclinatum a \inclinatum \auctum g \]}
1800 @code{\[ \virga b \inclinatum a \inclinatum \deminutum g \]}
1807 @code{\[ g \pes a \virga b \]}
1815 @code{\[ g \pes a \pes \auctum \descendens b \]}
1822 @code{\[ g \pes a \pes \deminutum b \]}
1829 @code{\[ g \oriscus a \pes \virga b \]}
1834 Salicus Auctus Descendens
1836 @code{\[ g \oriscus a \pes \auctum \descendens b \]}
1843 @code{\[ \stropha b \stropha b \stropha a \]}
1846 The ligatures listed above mainly serve as a limited, but still
1847 representative pool of Gregorian ligature examples. Virtually, within
1848 the ligature delimiters @code{\[} and @code{\]}, any number of heads
1849 may be accumulated to form a single ligature, and head prefixes like
1850 @code{\pes}, @code{\flexa}, @code{\virga}, @code{\inclinatum},
1851 etc. may be mixed in as desired. The use of the set of rules that
1852 underlies the construction of the ligatures in the above table is
1853 accordingly extrapolated. This way, infinitely many different
1854 ligatures can be created.
1856 Augmentum dots, also called @emph{morae}, are added with the music
1857 function @code{\augmentum}. Note that @code{\augmentum} is
1858 implemented as a unary music function rather than as head prefix. It
1859 applies to the immediately following music expression only. That is,
1860 @code{\augmentum \virga c} will have no visible effect. Instead, say
1861 @code{\virga \augmentum c} or @code{\augmentum @{\virga c@}}. Also
1862 note that you can say @code{\augmentum @{a g@}} as a shortcut for
1863 @code{\augmentum a \augmentum g}.
1865 @lilypond[quote,ragged-right,verbatim]
1866 \include "gregorian-init.ly"
1868 \new VaticanaVoice {
1869 \[ \augmentum a \flexa \augmentum g \]
1877 The following head prefixes are supported
1883 @funindex \inclinatum
1887 @funindex \descendens
1889 @funindex \ascendens
1895 @funindex \deminutum
1902 Head prefixes can be accumulated, though restrictions apply. For
1903 example, either @code{\descendens} or @code{\ascendens} can be applied
1904 to a head, but not both to the same head.
1908 Two adjacent heads can be tied together with the @code{\pes} and
1909 @code{\flexa} infix commands for a rising and falling line of melody,
1912 @funindex \augmentum
1913 Use the unary music function @code{\augmentum} to add augmentum dots.
1917 When an @code{\augmentum} dot appears at the end of the last staff
1918 within a ligature, it is sometimes vertically placed wrong. As a
1919 workaround, add an additional skip note (e.g. @code{s8}) as last note
1922 @code{\augmentum} should be implemented as a head prefix rather than a
1923 unary music function, such that @code{\augmentum} can be intermixed
1924 with head prefixes in arbitrary order.
1927 @node Pre-defined contexts
1928 @subsection Pre-defined contexts
1931 * Gregorian Chant contexts::
1932 * Mensural contexts::
1936 @node Gregorian Chant contexts
1937 @subsubsection Gregorian Chant contexts
1939 @cindex VaticanaVoiceContext
1940 @cindex VaticanaStaffContext
1942 The predefined @code{VaticanaVoiceContext} and
1943 @code{VaticanaStaffContext} can be used to engrave a piece of
1944 Gregorian Chant in the style of the Editio Vaticana. These contexts
1945 initialize all relevant context properties and grob properties to
1946 proper values, so you can immediately go ahead entering the chant, as
1947 the following excerpt demonstrates
1949 @lilypond[quote,ragged-right,packed,verbatim]
1950 \include "gregorian-init.ly"
1953 \new VaticanaVoice = "cantus" {
1954 \[ c'\melisma c' \flexa a \]
1955 \[ a \flexa \deminutum g\melismaEnd \]
1957 \[ f\melisma \pes a c' c' \pes d'\melismaEnd \]
1958 c' \divisioMinima \break
1959 \[ c'\melisma c' \flexa a \]
1960 \[ a \flexa \deminutum g\melismaEnd \] f \divisioMinima
1962 \new Lyrics \lyricsto "cantus" {
1963 San- ctus, San- ctus, San- ctus
1970 @node Mensural contexts
1971 @subsubsection Mensural contexts
1973 @cindex MensuralVoiceContext
1974 @cindex MensuralStaffContext
1976 The predefined @code{MensuralVoiceContext} and
1977 @code{MensuralStaffContext} can be used to engrave a piece in
1978 mensural style. These contexts initialize all relevant context
1979 properties and grob properties to proper values, so you can
1980 immediately go ahead entering the chant, as the following excerpt
1983 @lilypond[quote,ragged-right,verbatim]
1986 \new MensuralVoice = "discantus" \transpose c c' {
1987 \override Score.BarNumber #'transparent = ##t {
1988 c'1\melisma bes a g\melismaEnd
1990 \[ f1\melisma a c'\breve d'\melismaEnd \]
1992 c'\breve\melisma a1 g1\melismaEnd
1993 fis\longa^\signumcongruentiae
1996 \new Lyrics \lyricsto "discantus" {
1997 San -- ctus, San -- ctus, San -- ctus
2003 @node Musica ficta accidentals
2004 @subsection Musica ficta accidentals
2006 In European music from before about 1600, singers were often
2007 expected to chromatically alter notes at their own initiative.
2008 This is called @q{Musica Ficta}. In modern transcriptions, these
2009 accidentals are usually printed over the note.
2011 @cindex Accidental, musica ficta
2012 @cindex Musica ficta
2014 Support for such suggested accidentals is included, and can be
2015 switched on by setting @code{suggestAccidentals} to true.
2017 @funindex suggestAccidentals
2019 @lilypond[verbatim,fragment,relative=1]
2021 \set suggestAccidentals = ##t
2025 This will treat @emph{every} subsequent accidentals as
2026 @emph{musica ficta} until it is unset with @code{\set
2027 suggestAccidentals = ##f}. A more convenient way is to use
2030 @lilypond[verbatim,fragment,relative=1]
2032 \once \set suggestAccidentals = ##t
2038 Internals Reference: @internalsref{Accidental_engraver} engraver and
2039 the @internalsref{AccidentalSuggestion} object.
2042 @subsection Figured bass
2044 @cindex Basso continuo
2046 @c TODO: musicological blurb about FB
2049 LilyPond has support for figured bass
2051 @lilypond[quote,ragged-right,verbatim,fragment]
2053 \new Voice { \clef bass dis4 c d ais g fis}
2054 \new FiguredBass \figuremode {
2055 < 6 >4 < 7\+ >8 < 6+ [_!] >
2062 The support for figured bass consists of two parts: there is an input
2063 mode, introduced by @code{\figuremode}, where you can enter bass figures
2064 as numbers, and there is a context called @internalsref{FiguredBass} that
2065 takes care of making @internalsref{BassFigure} objects.
2067 In figures input mode, a group of bass figures is delimited by
2068 @code{<} and @code{>}. The duration is entered after the @code{>}
2072 @lilypond[quote,ragged-right,fragment]
2074 \figuremode { <4 6> }
2077 Accidentals are added when you append @code{-}, @code{!}, and @code{+}
2078 to the numbers. A plus sign is added when you append @code{\+}, and
2079 diminished fifths and sevenths can be obtained with @code{5/} and @code{7/}.
2082 <4- 6+ 7!> <5++> <3--> <7/> r <6\+ 5/>
2084 @lilypond[quote,ragged-right,fragment]
2085 \figures { <4- 6+ 7!> <5++> <3--> <7/> r <6\+ 5/> }
2088 Spaces may be inserted by using @code{_}. Brackets are
2089 introduced with @code{[} and @code{]}. You can also include text
2090 strings and text markups, see @ref{Text markup commands}.
2093 < [4 6] 8 [_! 12] > < 5 \markup @{ \number 6 \super (1) @} >
2095 @lilypond[quote,ragged-right,fragment]
2097 \figuremode { < [4 6] 8 [_! 12] > < 5 \markup{ \tiny \number 6 \super (1)} > }
2101 It is also possible to use continuation lines for repeated figures,
2103 @lilypond[verbatim,relative=1]
2110 \set useBassFigureExtenders = ##t
2117 In this case, the extender lines always replace existing figures.
2119 The @code{FiguredBass} context doesn't pay attention to the actual
2120 bass line. As a consequence, you may have to insert extra figures to
2121 get extender lines below all notes, and you may have to add @code{\!}
2122 to avoid getting an extender line, e.g.
2124 @lilypond[relative=1]
2128 \set useBassFigureExtenders = ##t
2129 <6 4->4. <6 4->16. <6 4->32 <5>8. r16 <6>8 <6\! 5->
2133 f16. g32 f16. g32 f16. g32 f16. g32 f8. es16 d8 es
2138 When using continuation lines, common figures are always put in the
2139 same vertical position. When this is unwanted, you can insert a rest
2140 with @code{r}. The rest will clear any previous alignment. For
2141 example, you can write
2153 Accidentals and plus signs can appear before or after the numbers,
2154 depending on the @code{figuredBassAlterationDirection} and
2155 @code{figuredBassPlusDirection}
2161 \set figuredBassAlterationDirection = #1
2163 \set figuredBassPlusDirection = #1
2165 \set figuredBassAlterationDirection = #-1
2171 Although the support for figured bass may superficially resemble chord
2172 support, it is much simpler. The @code{\figuremode} mode simply
2173 stores the numbers and @internalsref{FiguredBass} context prints them
2174 as entered. There is no conversion to pitches and no realizations of
2175 the bass are played in the MIDI file.
2177 Internally, the code produces markup texts. You can use any of the
2178 markup text properties to override formatting. For example, the
2179 vertical spacing of the figures may be set with @code{baseline-skip}.
2182 Figured bass can also be added to @code{Staff} contexts
2183 directly. In this case, their vertical position is adjusted
2186 @lilypond[ragged-right,fragment,quote]
2188 \new Staff = someUniqueName
2193 %% send to existing Staff.
2194 \context Staff = someUniqueName
2198 \set Staff.useBassFigureExtenders = ##t
2207 By default, this method produces figures above the notes. To get
2208 figures below the notes, use
2211 \override Staff.BassFigureAlignmentPositioning #'direction = #DOWN
2217 When using figured bass above the staff with extender lines and
2218 @code{implicitBassFigures} the lines may become swapped around.
2219 Maintaining order consistently will be impossible when multiple figures
2220 have overlapping extender lines. To avoid this problem, please
2221 use @code{stacking-dir} on @code{BassFigureAlignment}.
2226 Internals Reference: @internalsref{NewBassFigure},
2227 @internalsref{BassFigureAlignment}, @internalsref{BassFigureLine},
2228 @internalsref{BassFigureBracket}, and
2229 @internalsref{BassFigureContinuation} objects and
2230 @internalsref{FiguredBass} context.