@cindex entering notes
The most common syntax for pitch entry is used for standard notes and
-@code{\chords} modes. In these modes, pitches may be designated by
+@code{\chordmode} modes. In these modes, pitches may be designated by
names. The notes are specified by the letters @code{a} through
@code{g}. The octave is formed with notes ranging from @code{c}
to @code{b}. The pitch @code{c} is an octave below middle C and the
@refcommands
Notes can be hidden and unhidden with the following commands
-cindex @code{\hideNotes}
+@cindex @code{\hideNotes}
@code{\hideNotes},
@cindex @code{\unHideNotes}
@code{\unHideNotes}.
@seealso
The automatic production of accidentals can be tuned in many
-ways. For more information, refer to @ref{Accidentals}.
+ways. For more information, refer to @ref{Automatic accidentals}.
@lilypond[quote,raggedright,verbatim]
<<
\relative { a'2 a1 }
- \new Lyrics \lyrics { \skip 2 bla1 }
+ \new Lyrics \lyricmode { \skip 2 bla1 }
>>
@end lilypond
@code{\dotsUp},
@cindex @code{\dotsDown}
@code{\dotsDown},
-@cindex @code{\dotsBoth}
-@code{\dotsBoth}.
+@cindex @code{\dotsNeutral}
+@code{\dotsNeutral}.
@seealso
@code{\stemUp},
@cindex @code{\stemDown}
@code{\stemDown},
-@cindex @code{\stemBoth}
-@code{\stemBoth}.
+@cindex @code{\stemNeutral}
+@code{\stemNeutral}.
@node Ties
@code{\tieUp},
@cindex @code{\tieDown}
@code{\tieDown},
-@cindex @code{\tieBoth}
-@code{\tieBoth},
+@cindex @code{\tieNeutral}
+@code{\tieNeutral},
@cindex @code{\tieDotted}
@code{\tieDotted},
@cindex @code{\tieSolid}
@code{\tupletUp},
@cindex @code{\tupletDown}
@code{\tupletDown},
-@cindex @code{\tupletBoth}
-@code{\tupletBoth}.
+@cindex @code{\tupletNeutral}
+@code{\tupletNeutral}.
@seealso
The pitch after the @code{\relative} contains a note name.
-@c Perfect place for a "refwarning"! -gp
-@c @refwarning
-
The relative conversion will not affect @code{\transpose},
-@code{\chords} or @code{\relative} sections in its argument. To use
+@code{\chordmode} or @code{\relative} sections in its argument. To use
relative within transposed music, an additional @code{\relative} must
be placed inside @code{\transpose}.
\octave @var{pitch}
@end example
-
-@c FIXME: what is the second sentence trying to say? \octave check -gp
-
This checks that @var{pitch} (without quotes) yields @var{pitch} (with
quotes) in \relative mode. If not, a warning is printed, and the
-octave is corrected, for example, the first check is passed
-successfully. The second check fails with an error message. The
-octave is adjusted so the following notes are in the correct octave
+octave is corrected.
+
+In the example below, the first check passes without incident, since
+the @code{e} (in relative mode) is within a fifth of @code{a'}. However,
+the second check produces a warning, since the @code{e} is not within
+a fifth of @code{b'}. The warning message is printed, and the octave
+is adjusted so that the following notes are in the correct octave
once again.
+
@example
\relative c' @{
e
Bar checks can also be used in lyrics, for example
@example
-\lyrics @{
+\lyricmode @{
\time 2/4
Twin -- kle | Twin -- kle
@}
It is also possible to redefine the meaning of @code{|}. This is done
by assigning a music expression to @code{pipeSymbol},
-@lilypond[quote,fragment,raggedright,verbatim]
+@lilypond[quote,raggedright,verbatim]
pipeSymbol = \bar "||"
-{ c'2 c'2 | c'2 c'2 | }
+{ c'2 c' | c'2 c }
@end lilypond
unaltered notes get natural signs depending on the key signature. For
more information, see @ref{More about pitches}.
-@c FIXME FIXME: check CVS logs to see what was supposed to happen to this
-@c part; CVS merge conflict occurred.
-@c @refbugs
-
-@c The ordering of a key cancellation is wrong when it is combined with
-@c repeat bar lines. The cancellation is also printed after a line break.
-
@seealso
Program reference: @internalsref{KeyChangeEvent},
@lilypond[fragment,verbatim]
\time 4/4 c'1
\time 2/2 c'1
-\override TimeSignature #'style = #'()
+\override Staff.TimeSignature #'style = #'()
\time 4/4 c'1
\time 2/2 c'1
@end lilypond
@node Controlling formatting of prefatory matter
@subsection Controlling formatting of prefatory matter
-TODO
+TODO Somebody needs to explain this example, but I don't know what
+they're trying to do, so it won't be me. -gp
@lilypond[verbatim]
\transpose c c' {
@node Polyphony
@section Polyphony
+
+Polyphony in music refers to having more than one voice occuring in
+a piece of music. Polyphony in LilyPond refers to having more than
+one voice on the same staff.
+
+@menu
+* Writing polyphonic music::
+@end menu
+
+@node Writing polyphonic music
+@subsection Writing polyphonic music
@cindex polyphony
The easiest way to enter fragments with more than one voice on a staff
@end lilypond
The separator causes @internalsref{Voice} contexts@footnote{Polyphonic
-voices are sometimes called "layers" in other notation packages}
+voices are sometimes called ``layers'' in other notation packages}
@cindex layers
to be instantiated. They bear the names @code{"1"}, @code{"2"}, etc. In
each of these contexts, vertical direction of slurs, stems, etc. is set
@section Beaming
Beams are used to group short notes into chunks that are aligned with
-the metrum. They are inserted automatically
+the metrum. LilyPond normally inserts beams automatically, but if you
+wish you may control them manually or changed how beams are automatically
+grouped.
+
+@cindex Automatic beams
+@menu
+* Automatic beams::
+* Manual beams::
+* Setting automatic beam behavior::
+* Beam formatting::
+@end menu
+
+@node Automatic beams
+@subsection Automatic beams
+
+LilyPond inserts beams automatically
@lilypond[quote,fragment,verbatim,relative=2]
\time 2/4 c8 c c c \time 6/8 c c c c8. c16 c8
Program reference: @internalsref{Beam}.
-@cindex Automatic beams
-@menu
-* Manual beams::
-* Setting automatic beam behavior::
-* Beam formatting::
-@end menu
-
@node Manual beams
@subsection Manual beams
@cindex beams, manual
@lilypond[quote,fragment,relative=1,verbatim]
{
- f8[ r16 f g a]
- f8[ r16 \set stemLeftBeamCount = #1 f g a]
+ f8[ r16
+ f g a]
+ f8[ r16
+ \set stemLeftBeamCount = #1
+ f g a]
}
@end lilypond
@cindex @code{stemRightBeamCount}
@cindex Frenched staves
Kneed beams are inserted automatically, when a large gap is detected
-between the note heads. This behavior can be tuned through the object
+between the note heads. This behavior can be tuned through the object.
Automatically kneed cross-staff beams cannot be used together with
@code{neutral-direction} property.
-@lilypond
-\relative c'' {
+@lilypond[quote,raggedright,relative=2,fragment,verbatim]
+{
b8[ b]
\override Beam #'neutral-direction = #-1
b[ b]
@node Accidentals
@section Accidentals
-@cindex Accidentals
This section describes how to change the way that accidentals are
-inserted automatically before the running notes.
+inserted automatically before notes.
+
+@menu
+* Automatic accidentals::
+@end menu
-Common rules for typesetting accidentals have been canned in a
+@node Automatic accidentals
+@subsection Automatic accidentals
+@cindex Automatic accidentals
+
+Common rules for typesetting accidents have been placed in a
function. This function is called as follows
@cindex @code{set-accidental-style}
@example
- #(set-accidental-style 'modern 'Voice)
+#(set-accidental-style 'STYLE #('CONTEXT#))
@end example
-The function takes two arguments: a symbol that denotes the style (in
-the example, @code{modern}), and another symbol that denotes the
-context name (in this example, @code{Voice}). If no context name is
-supplied, @code{Staff} is the default.
+The function can take two arguments: the name of the accidental style,
+and an optional argument that denotes the context which should be
+changed. If no context name is supplied, @code{Staff} is the default,
+but you may wish to apply the accidental style to a single @code{Voice}
+instead.
-The following styles are supported
+The following accidental styles are supported
@table @code
@item default
- This is the default typesetting behavior. It should correspond
- to 18th century common practice: Accidentals are
- remembered to the end of the measure in which they occur and
- only on their own octave.
+This is the default typesetting behavior. It corresponds
+to 18th century common practice: Accidentals are
+remembered to the end of the measure in which they occur and
+only on their own octave.
@item voice
-@c
- The normal behavior is to remember the accidentals on
+The normal behavior is to remember the accidentals on
Staff-level. This variable, however, typesets accidentals
individually for each voice. Apart from that, the rule is similar to
-@code{code}.
+@code{default}.
+
+As a result, accidentals from one voice do not get canceled in other
+voices, which is often an unwanted result
- As a result,
- accidentals from one voice do not get canceled in other
- voices, which is often unwanted result
- @c
@lilypond[quote,raggedright,relative=1,fragment,verbatim]
\context Staff <<
#(set-accidental-style 'voice)
{ c, e }
>> >>
@end lilypond
-@c
- The @code{voice} option should be used if the voices
+
+The @code{voice} option should be used if the voices
are to be read solely by individual musicians. If the staff is to be
used by one musician (e.g. a conductor) then
@code{modern} or @code{modern-cautionary}
@item modern
@cindex @code{modern} style accidentals
- This rule corresponds to the common practice in the 20th
- century.
- This rule prints the same accidentals as @code{default}, but temporary
- accidentals also are canceled in other octaves. Furthermore,
- in the same octave, they also get canceled in the following
- measure
+This rule corresponds to the common practice in the 20th century. This rule
+prints the same accidentals as @code{default}, but temporary
+accidentals also are canceled in other octaves. Furthermore,
+in the same octave, they also get canceled in the following
+measure
@lilypond[quote,raggedright,fragment,verbatim]
#(set-accidental-style 'modern)
@end lilypond
@item @code{modern-cautionary}
- @cindex @code{modern-cautionary}
- This rule is similar to @code{modern}, but the
- ``extra'' accidentals (the ones not typeset by
- @code{default}) are typeset as cautionary accidentals.
- They are printed in reduced size or with parentheses
+@cindex @code{modern-cautionary}
+This rule is similar to @code{modern}, but the ``extra'' accidentals
+(the ones not typeset by @code{default}) are typeset as cautionary
+accidentals. They are printed in reduced size or with parentheses
@lilypond[quote,raggedright,fragment,verbatim]
#(set-accidental-style 'modern-cautionary)
cis' c'' cis'2 | c'' c'
@end lilypond
- @cindex @code{modern-voice}
+@cindex @code{modern-voice}
@item modern-voice
This rule is used for multivoice accidentals to be read both by musicians
playing one voice and musicians playing all voices. Accidentals are
typeset for each voice, but they @emph{are} canceled across voices in
the same @internalsref{Staff}.
- @cindex @code{modern-voice-cautionary}
+@cindex @code{modern-voice-cautionary}
@item modern-voice-cautionary
This rule is the same as @code{modern-voice}, but with the extra
accidentals (the ones not typeset by @code{voice}) typeset
some of them are typeset as cautionaries.
@item piano
- @cindex @code{piano} accidentals
-This rule reflects 20th century practice for piano notation. Very similar to
- @code{modern} but accidentals also get canceled
- across the staves in the same @internalsref{GrandStaff} or
- @internalsref{PianoStaff}.
+@cindex @code{piano} accidentals
+This rule reflects 20th century practice for piano notation. Very similar to
+@code{modern} but accidentals also get canceled
+across the staves in the same @internalsref{GrandStaff} or
+@internalsref{PianoStaff}.
@item piano-cautionary
- @cindex @code{#(set-accidental-style 'piano-cautionary)}
- As @code{#(set-accidental-style 'piano)} but with the extra accidentals
- typeset as cautionaries.
+@cindex @code{#(set-accidental-style 'piano-cautionary)}
+As @code{#(set-accidental-style 'piano)} but with the extra accidentals
+typeset as cautionaries.
@item no-reset
- @cindex @code{no-reset} accidental style
- @c
- This is the same as @code{default} but with accidentals lasting
- ``forever'' and not only until the next measure
+@cindex @code{no-reset} accidental style
+This is the same as @code{default} but with accidentals lasting
+``forever'' and not only until the next measure
@lilypond[quote,raggedright,fragment,verbatim,relative=1]
#(set-accidental-style 'no-reset)
c1 cis cis c
@end lilypond
@item forget
- This is sort of the opposite of @code{no-reset}: Accidentals
- are not remembered at all---and hence all accidentals are
- typeset relative to the key signature, regardless of what was
- before in the music
+This is sort of the opposite of @code{no-reset}: Accidentals
+are not remembered at all---and hence all accidentals are
+typeset relative to the key signature, regardless of what was
+before in the music
@lilypond[quote,raggedright,fragment,verbatim,relative=1]
#(set-accidental-style 'forget)
@c todo: should change ordering
@c where to put text spanners, metronome marks,
@c fingering?
-
+
+Expressive marks help musicians to bring more to the music than simple
+notes and rhythms.
+
@menu
* Slurs::
* Phrasing slurs::
* Breath marks::
* Metronome marks::
+* Text scripts::
* Text spanners::
* Analysis brackets::
* Articulations::
* Running trills::
* Fingering instructions::
-* Text scripts::
* Grace notes::
* Glissando::
* Dynamics::
They are entered using parentheses
@lilypond[quote,relative=2,fragment,verbatim]
-f( g a) a8 b( a4 g2 f4)
-<c e>2( <b d>2)
+ f( g a) a8 b( a4 g2 f4)
+ <c e>2( <b d>2)
@end lilypond
The direction of a slur can be set with the
@example
\override Slur #'direction = #UP
- \slurUp % shortcut for the previous line
+ \slurUp % shortcut for the previous line
@end example
@noindent
parentheses, the direction is also set. For example,
@lilypond[relative=2,verbatim,fragment]
- c4_( c) c^( c)
+ c4_( c) c^( c)
@end lilypond
Some composers write two slurs when they want legato chords. This can
-be achieved in LilyPond, by setting @code{doubleSlurs},
+be achieved in LilyPond by setting @code{doubleSlurs},
@lilypond[verbatim,raggedright]
\relative {
- \set doubleSlurs = ##t
- <c e>4 ( <d f> <c e> <d f> )
+ \set doubleSlurs = ##t
+ <c e>4 ( <d f> <c e> <d f> )
}
@end lilypond
@code{\slurUp},
@cindex @code{\slurDown}
@code{\slurDown},
-@cindex @code{\slurBoth}
-@code{\slurBoth},
+@cindex @code{\slurNeutral}
+@code{\slurNeutral},
@cindex @code{\slurDotted}
@code{\slurDotted},
@cindex @code{\slurSolid}
@cindex phrasing marks
A phrasing slur (or phrasing mark) connects chords and is used to
-indicate a musical sentence. It is started using @code{\(} and @code{\)}
+indicate a musical sentence. It is written using @code{\(} and @code{\)}
respectively
@lilypond[quote,fragment,verbatim,relative=1]
-\time 6/4 c'\( d( e) f( e) d\)
+ \time 6/4 c'\( d( e) f( e) d\)
@end lilypond
Typographically, the phrasing slur behaves almost exactly like a
normal slur. However, they are treated as different objects. A
@code{\slurUp} will have no effect on a phrasing slur; instead, use
@code{\phrasingSlurUp}, @code{\phrasingSlurDown}, and
-@code{\phrasingSlurBoth}.
+@code{\phrasingSlurNeutral}.
-The commands @code{\slurUp}, @code{\slurDown}, and @code{\slurBoth}
+The commands @code{\slurUp}, @code{\slurDown}, and @code{\slurNeutral}
will only affect normal slurs and not phrasing slurs.
@refcommands
@code{\phrasingSlurUp},
@cindex @code{\phrasingSlurDown}
@code{\phrasingSlurDown},
-@cindex @code{\phrasingSlurBoth}
-@code{\phrasingSlurBoth}.
+@cindex @code{\phrasingSlurNeutral}
+@code{\phrasingSlurNeutral}.
@seealso
@lilypond[quote,fragment,relative=1,verbatim]
-c'4 \breathe d4
+ c'4 \breathe d4
@end lilypond
The glyph of the breath mark can be tuned by overriding the
@code{text} property of the @code{BreathingSign} layout object with
-any markup text. For example,
+any markup text. For example,
@lilypond[quote,fragment,verbatim,relative=1]
-c'4
-\override BreathingSign #'text
- = #(make-musicglyph-markup "scripts-rvarcomma")
-\breathe
-d4
+ c'4
+ \override BreathingSign #'text
+ = #(make-musicglyph-markup "scripts-rvarcomma")
+ \breathe
+ d4
@end lilypond
@seealso
Metronome settings can be entered as follows
@example
- i \tempo @var{duration} = @var{per-minute}
+ \tempo @var{duration} = @var{per-minute}
@end example
-In the MIDI output, they are interpreted as a tempo change, and in the
+In the MIDI output, they are interpreted as a tempo change. In the
paper output, a metronome marking is printed
@cindex @code{\tempo}
@lilypond[quote,fragment,verbatim]
-\tempo 8.=120 c''1
+ \tempo 8.=120 c''1
@end lilypond
@seealso
Program reference: @internalsref{MetronomeChangeEvent}.
+@node Text scripts
+@subsection Text scripts
+@cindex Text scripts
+
+@cindex text items, non-empty
+@cindex non-empty texts
+
+It is possible to place arbitrary strings of text or markup text (see
+@ref{Text markup}) above or below notes by using a string
+@code{c^"text"}. By default, these indications do not influence the
+note spacing, but by using the command @code{\fatText}, the widths
+will be taken into account
+@c
+@lilypond[quote,fragment,raggedright,verbatim,relative=1]
+ c4^"longtext" \fatText c4_"longlongtext" c4
+@end lilypond
+
+More complex formatting may also be added to a note by using the
+markup command,
+@lilypond[fragment,raggedright,verbatim]
+ c'4^\markup { bla \bold bla }
+@end lilypond
+
+The @code{\markup} is described in more detail in
+@ref{Text markup}.
+
+
+@refcommands
+
+@cindex @code{\fatText}
+@code{\fatText},
+@cindex @code{\emptyText}
+@code{\emptyText}.
+
+@seealso
+
+In this manual: @ref{Text markup}.
+
+Program reference: @internalsref{TextScriptEvent}, @internalsref{TextScript}.
+
@node Text spanners
@subsection Text spanners
@cindex Text spanners
Some performance indications, e.g. @i{rallentando} or @i{accelerando},
-are written as texts, and extended over many measures with dotted
-lines. Such texts are created using text spanners: attach
-@code{\startTextSpan} and @code{\stopTextSpan} to the start and ending
-note of the spanner.
+are written as text and are extended over many measures with dotted
+lines. Such texts are created using text spanners; attach
+@code{\startTextSpan} and @code{\stopTextSpan} to the first and last
+notes of the spanner.
The string to be printed, as well as the style, is set through object
properties
@lilypond[quote,fragment,relative=1,verbatim]
-\relative c' {
c1
\override TextSpanner #'direction = #-1
\override TextSpanner #'edge-text = #'("rall " . "")
c2\startTextSpan b c\stopTextSpan a
-}
@end lilypond
@cindex note grouping bracket
Brackets are used in musical analysis to indicate structure in musical
-pieces. LilyPond supports a simple form of nested horizontal brackets.
-To use this, add the @internalsref{Horizontal_bracket_engraver} to
-@internalsref{Staff} context. A bracket is started with
+pieces. LilyPond supports a simple form of nested horizontal
+brackets. To use this, add the @internalsref{Horizontal_bracket_engraver}
+to @internalsref{Staff} context. A bracket is started with
@code{\startGroup} and closed with @code{\stopGroup}
@lilypond[quote,raggedright,verbatim]
The script is automatically placed, but the direction can be forced as
-well. @code{_} will put them down, and @code{^} will put them up,
+well. Like other pieces of LilyPond code, @code{_} will place them
+below the staff, and @code{^} will place them above.
@lilypond[quote,fragment,verbatim]
-c''4^^ c''4_^
+ c''4^^ c''4_^
@end lilypond
Other symbols can be added using the syntax
-@var{note}@code{\}@var{name}, e.g. @code{c4\fermata}. Again, they
+@var{note}@code{\}@var{name}. Again, they
can be forced up or down using @code{^} and @code{_},
e.g.
@lilypond[quote,verbatim,fragment,relative=2]
-c\fermata c^\fermata c_\fermata
+ c\fermata c^\fermata c_\fermata
@end lilypond
they are entered decides which one comes first.
-@lilypond[verbatim,raggedright]
-\relative g''{
- \once \override TextScript #'script-priority = #-100
- a4^\prall^\markup { \sharp }
+@lilypond[verbatim,relative=3,raggedright,fragment,quote]
+ \once \override TextScript #'script-priority = #-100
+ a4^\prall^\markup { \sharp }
- \once \override Script #'script-priority = #-100
- a4^\prall^\markup { \sharp }
-}
+ \once \override Script #'script-priority = #-100
+ a4^\prall^\markup { \sharp }
@end lilypond
@code{\stopTrillSpan},
-@lilypond[verbatim,raggedright]
-\relative \new Voice {
- << { c1 \startTrillSpan }
- { s2. \grace { d16[\stopTrillSpan e] } } >>
- c4 }
+@lilypond[verbatim,raggedright,relative=2,quote,fragment]
+\new Voice {
+ << { c1 \startTrillSpan }
+ { s2. \grace { d16[\stopTrillSpan e] } } >>
+ c4 }
@end lilypond
@refcommands
@end example
For finger changes, use markup texts
@c
-@lilypond[quote,verbatim,raggedright,fragment]
-c'4-1 c'4-2 c'4-3 c'4-4
-c'^\markup { \finger "2-3" }
+@lilypond[quote,verbatim,raggedright,fragment,relative=1]
+ c4-1 c-2 c-3 c-4
+ c^\markup { \finger "2-3" }
@end lilypond
@cindex finger change
You can use the thumb-script to indicate that a note should be
played with the thumb (e.g. in cello music)
-@lilypond[quote,verbatim,raggedright,fragment]
-<a'_\thumb a''-3>8 <b'_\thumb b''-3>
+@lilypond[quote,verbatim,raggedright,fragment,relative=2]
+ <a_\thumb a'-3>8 <b_\thumb b'-3>
@end lilypond
Fingerings for chords can also be added to individual notes
of the chord by adding them after the pitches
@lilypond[quote,verbatim,raggedright,fragment,relative=2]
-< c-1 e-2 g-3 b-5 >4
+ < c-1 e-2 g-3 b-5 >4
@end lilypond
@noindent
to note heads
@lilypond[quote,verbatim,raggedright,fragment,relative=1]
-\set fingeringOrientations = #'(left down)
-<c-1 es-2 g-4 bes-5 > 4
-\set fingeringOrientations = #'(up right down)
-<c-1 es-2 g-4 bes-5 > 4
+ \set fingeringOrientations = #'(left down)
+ <c-1 es-2 g-4 bes-5 > 4
+ \set fingeringOrientations = #'(up right down)
+ <c-1 es-2 g-4 bes-5 > 4
@end lilypond
Using this feature, it is also possible to put fingering instructions
Examples: @inputfileref{input/regression,finger-chords.ly}.
-@node Text scripts
-@subsection Text scripts
-@cindex Text scripts
-
-@cindex text items, non-empty
-@cindex non-empty texts
-
-It is possible to place arbitrary strings of text or markup text (see
-@ref{Text markup}) above or below notes by using a string
-@code{c^"text"}. By default, these indications do not influence the
-note spacing, but by using the command @code{\fatText}, the widths
-will be taken into account
-@c
-@lilypond[quote,fragment,raggedright,verbatim]
-\relative c' {
- c4^"longtext" \fatText c4_"longlongtext" c4
-}
-@end lilypond
-
-More complex formatting may also be added to a note by using the
-markup command,
-@lilypond[fragment,raggedright,verbatim]
-{
- c'4^\markup { bla \bold bla }
-}
-@end lilypond
-
-The @code{\markup} is described in more detail in
-@ref{Text markup}.
-
-
-@refcommands
-
-@cindex @code{\fatText}
-@code{\fatText},
-@cindex @code{\emptyText}
-@code{\emptyText}.
-
-@seealso
-
-In this manual: @ref{Text markup}.
-
-Program reference: @internalsref{TextScriptEvent}, @internalsref{TextScript}.
-
Grace notes are ornaments that are written out. The most common ones
are acciaccatura, which should be played as very short. It is denoted
by a slurred small note with a slashed stem. The appoggiatura is a
-grace note that takes a fixed fraction of the main note, is and
-denoted as a slurred note in small print without a slash.
-They are entered with the commands @code{\acciaccatura} and
+grace note that takes a fixed fraction of the main note, and is
+denoted as a slurred note in small print without a slash. They
+are entered with the commands @code{\acciaccatura} and
@code{\appoggiatura}, as demonstrated in the following example
@cindex acciaccatura
@lilypond[quote,relative=2,verbatim,fragment]
-b4 \acciaccatura d8 c4 \appoggiatura e8 d4
-\acciaccatura { g16[ f] } e4
+ b4 \acciaccatura d8 c4 \appoggiatura e8 d4
+ \acciaccatura { g16[ f] } e4
@end lilypond
Both are special forms of the @code{\grace} command. By prefixing this
printed in a smaller font and takes up no logical time in a measure.
@lilypond[quote,relative=2,verbatim,fragment]
-c4 \grace c16 c4
-\grace { c16[ d16] } c2 c4
+ c4 \grace c16 c4
+ \grace { c16[ d16] } c2 c4
@end lilypond
@noindent
c4 \grace c16 c4 \grace {
c16[ d16] } c2 c4
}
- \new Lyrics \lyrics {
+ \new Lyrics \lyricmode {
\override LyricText #'font-family = #'typewriter
\markup { (0,0) } 4
@lilypond[quote,fragment,verbatim,relative=2]
\new Voice {
\acciaccatura {
- \override Stem #'direction = #-1
+ \stemDown
f16->
- \revert Stem #'direction
+ \stemNeutral
}
g4
}
wavy line between two notes. It is requested by attaching
@code{\glissando} to a note
-@lilypond[quote,fragment,relative=1,verbatim]
-c'\glissando c'
+@lilypond[quote,fragment,relative=2,verbatim]
+c\glissando c'
@end lilypond
@seealso
Program reference: @internalsref{Glissando}, and @internalsref{GlissandoEvent}.
-Example files: @file{input/regression,glissando.ly}
+Example files: @file{input/regression/glissando.ly}.
@code{\fff}, @code{\fff}, @code{\fp}, @code{\sf}, @code{\sff},
@code{\sp}, @code{\spp}, @code{\sfz}, and @code{\rfz}
-@lilypond[quote,verbatim,raggedright,fragment,relative=1]
-c'\ppp c\pp c \p c\mp c\mf c\f c\ff c\fff
-c2\sf c\rfz
+@lilypond[quote,verbatim,raggedright,fragment,relative=2]
+ c\ppp c\pp c \p c\mp c\mf c\f c\ff c\fff
+ c2\fp c\sf c\sff c\sp c\spp c\sfz c\rfz
@end lilypond
@cindex @code{\<}
with @code{\!}. Because these marks are bound to notes, if you must
use spacer notes if multiple marks are needed during one note
-@lilypond[quote,fragment,verbatim]
-c''\< c''\! d''\> e''\!
-<< f''1 { s4 s4\< s4\! \> s4\! } >>
+@lilypond[quote,fragment,verbatim,relative=2]
+ c\< c\! d\> e\!
+ << f1 { s4 s4\< s4\! \> s4\! } >>
@end lilypond
This may give rise to very short hairpins. Use @code{minimum-length}
in @internalsref{Voice}.@internalsref{Hairpin} to lengthen them, for
example
@example
- \override Staff.Hairpin #'minimum-length = #5
+ \override Staff.Hairpin #'minimum-length = #5
@end example
You can also use a text saying @emph{cresc.} instead of hairpins. Here
is an example how to do it
@lilypond[quote,fragment,relative=2,verbatim]
-\setTextCresc
-c \< d e f\!
-\setHairpinCresc
-e\> d c b\!
+ \setTextCresc
+ c \< d e f\!
+ \setHairpinCresc
+ e\> d c b\!
@end lilypond
@cindex crescendo
You can also supply your own texts
@lilypond[quote,fragment,relative=1,verbatim]
-\context Voice {
\set crescendoText = \markup { \italic "cresc. poco" }
\set crescendoSpanner = #'dashed-line
a'2\< a a a\!\mf
-}
@end lilypond
@cindex diminuendo
@code{\dynamicUp},
@cindex @code{\dynamicDown}
@code{\dynamicDown},
-@cindex @code{\dynamicBoth}
-@code{\dynamicBoth}.
+@cindex @code{\dynamicNeutral}
+@code{\dynamicNeutral}.
@cindex direction, of dynamics
@cindex drums
-Percussion notes may be entered in @code{\drums} mode, which is
+Percussion notes may be entered in @code{\drummode} mode, which is
similar to the standard mode for entering notes. Each piece of
percussion has a full name and an abbreviated name, and both can be used
in input files
@lilypond[quote,raggedright,verbatim]
-\new DrumStaff \drums {
+\drums {
hihat hh bassdrum bd
}
@end lilypond
@c
@lilypond[quote,raggedright,verbatim]
-up = \drums { crashcymbal4 hihat8 halfopenhihat hh hh hh openhihat }
-down = \drums { bassdrum4 snare8 bd r bd sn4 }
+up = \drummode { crashcymbal4 hihat8 halfopenhihat hh hh hh openhihat }
+down = \drummode { bassdrum4 snare8 bd r bd sn4 }
\new DrumStaff <<
\new DrumVoice { \voiceOne \up }
\new DrumVoice { \voiceTwo \down }
\new DrumStaff <<
\context DrumVoice = "1" { s1 *2 }
\context DrumVoice = "2" { s1 *2 }
- \drums {
+ \drummode {
bd4 sn4 bd4 sn4
<<
{ \repeat unfold 16 hh16 }
This is the default. It typesets a typical drum kit on a five-line staff
@lilypond[quote,noindent]
-nam = \lyrics { cymc cyms cymr hh hhc hho hhho hhp cb hc
+nam = \lyricmode { cymc cyms cymr hh hhc hho hhho hhp cb hc
bd sn ss tomh tommh tomml toml tomfh tomfl }
-mus = \drums { cymc cyms cymr hh | hhc hho hhho hhp | \break cb hc
+mus = \drummode { cymc cyms cymr hh | hhc hho hhho hhp | \break cb hc
bd sn ss tomh tommh tomml toml tomfh tomfl s16 }
\score {
<< \new DrumStaff\with {
This typesets timbales on a two line staff
@lilypond[quote,raggedright]
-nam = \lyrics { timh ssh timl ssl cb }
-mus = \drums { timh ssh timl ssl cb s16 }
+nam = \lyricmode { timh ssh timl ssl cb }
+mus = \drummode { timh ssh timl ssl cb s16 }
<<
\context DrumStaff \with {
This typesets congas on a two line staff
@lilypond[quote,raggedright]
-nam = \lyrics { cgh cgho cghm ssh cgl cglo cglm ssl }
-mus = \drums { cgh cgho cghm ssh cgl cglo cglm ssl s16 }
+nam = \lyricmode { cgh cgho cghm ssh cgl cglo cglm ssl }
+mus = \drummode { cgh cgho cghm ssh cgl cglo cglm ssl s16 }
<<
\context DrumStaff\with {
\remove Bar_engraver
This typesets bongos on a two line staff
@lilypond[quote,raggedright]
-nam = \lyrics { boh boho bohm ssh bol bolo bolm ssl }
-mus = \drums { boh boho bohm ssh bol bolo bolm ssl s16 }
+nam = \lyricmode { boh boho bohm ssh bol bolo bolm ssl }
+mus = \drummode { boh boho bohm ssh bol bolo bolm ssl s16 }
<<
\context DrumStaff\with {
\remove Bar_engraver
@item percussion-style
to typeset all kinds of simple percussion on one line staves
@lilypond[quote,raggedright]
-nam = \lyrics { tri trio trim gui guis guil cb cl tamb cab mar hc }
-mus = \drums { tri trio trim gui guis guil cb cl tamb cab mar hc s16 }
+nam = \lyricmode { tri trio trim gui guis guil cb cl tamb cab mar hc }
+mus = \drummode { tri trio trim gui guis guil cb cl tamb cab mar hc s16 }
<<
\context DrumStaff\with{
\remove Bar_engraver
(hihat cross #f 1)
(pedalhihat xcircle "stopped" 2)
(lowtom diamond #f 3)))
-up = \drums { hh8 hh hh hh hhp4 hhp }
-down = \drums { bd4 sn bd toml8 toml }
+up = \drummode { hh8 hh hh hh hhp4 hhp }
+down = \drummode { bd4 sn bd toml8 toml }
\new DrumStaff <<
\set DrumStaff.drumStyleTable
@code{\arpeggioUp},
@cindex @code{\arpeggioDown}
@code{\arpeggioDown},
-@cindex @code{\arpeggioBoth}
-@code{\arpeggioBoth},
+@cindex @code{\arpeggioNeutral}
+@code{\arpeggioNeutral},
@cindex @code{\arpeggioBracket}
@code{\arpeggioBracket}.
@cindex lyrics
-@cindex @code{\lyrics}
+@cindex @code{\lyricmode}
@cindex punctuation
Lyrics are entered in a special input mode. This mode is is introduced
-by the keyword @code{\lyrics}. In this mode you can enter lyrics,
+by the keyword @code{\lyricmode}. In this mode you can enter lyrics,
with punctuation and accents, and the input @code{a} is not parsed as
a pitch, but rather as a one letter syllable. Syllables are entered
like notes, but with pitches replaced by text. For example,
@example
- \lyrics @{ Twin-4 kle4 twin- kle litt- le star2 @}
+ \lyricmode @{ Twin-4 kle4 twin- kle litt- le star2 @}
@end example
usually a bug. The syllable includes a @code{@}}, so the
opening brace is not balanced
@example
- \lyrics @{ twinkle@}
+ \lyricmode @{ twinkle@}
@end example
-@cindex @code{\property}, in @code{\lyrics}
+@cindex @code{\property}, in @code{\lyricmode}
@noindent
Similarly, a period following an alphabetic sequence, is included in
the resulting string. As a consequence, spaces must be inserted around
following example incorporates double quotes
@example
- \lyrics @{ He said: "\"Let" my peo ple "go\"" @}
+ \lyricmode @{ He said: "\"Let" my peo ple "go\"" @}
@end example
This example is slightly academic, since it gives better looking
results to use single quotes, @code{``} and @code{''}
@example
- \lyrics @{ He said: ``Let my peo ple go'' @}
+ \lyricmode @{ He said: ``Let my peo ple go'' @}
@end example
Lyrics are printed by interpreting them in a @internalsref{Lyrics} context
@example
- \context Lyrics \lyrics @dots{}
+ \context Lyrics \lyricmode @dots{}
@end example
@cindex automatic syllable durations
notes of the @internalsref{Voice} context called @var{name}, which has
to exist. Therefore, normally the @code{Voice} is specified first, and
then the lyrics are specified with @code{\lyricsto}. The command
-@code{\lyricsto} switches to @code{\lyrics} mode automatically, so the
-@code{\lyrics} keyword may be omitted.
+@code{\lyricsto} switches to @code{\lyricmode} mode automatically, so the
+@code{\lyricmode} keyword may be omitted.
For different or more complex orderings, the best way is to setup the
hierarchy of staves and lyrics first, e.g.
\time 3/4
c2 e4 g2.
}
- \new Lyrics \lyrics {
+ \new Lyrics \lyricmode {
\set associatedVoice = #"melody"
play2 the4 game2.
} >>
The @code{ignoreMelismata} applies to the syllable ``fas'', so it
-should bev entered before ``go''.
+should be entered before ``go''.
The reverse is also possible: making a lyric line slower than the
standard. This can be achieved by insert @code{\skip}s into the
@lilypond[quote,verbatim,raggedright]
twoWays = \transpose c c' {
- \chords {
+ \chordmode {
c1 f:sus4 bes/f
}
<c e g>
A chord is entered by the root, which is entered like a common pitch
@lilypond[quote,fragment,verbatim,relative=2]
-\chords { es4. d8 c2 }
+\chordmode { es4. d8 c2 }
@end lilypond
@noindent
-The mode is introduced by the keyword @code{\chords}.
+The mode is introduced by the keyword @code{\chordmode}.
@cindex chord entry
@cindex chord mode
modifier, and optionally, a number
@c
@lilypond[quote,fragment,verbatim]
-\chords { e1:m e1:7 e1:m7 }
+\chordmode { e1:m e1:7 e1:m7 }
@end lilypond
The first number following the root is taken to be the `type' of the
chord, thirds are added to the root until it reaches the specified
number
@lilypond[quote,fragment,verbatim]
-\chords { c:3 c:5 c:6 c:7 c:8 c:9 c:10 c:11 }
+\chordmode { c:3 c:5 c:6 c:7 c:8 c:9 c:10 c:11 }
@end lilypond
@cindex root of chord
the colon, and are separated by dots
@c
@lilypond[quote,verbatim,fragment]
-\chords { c:5.6 c:3.7.8 c:3.6.13 }
+\chordmode { c:5.6 c:3.7.8 c:3.6.13 }
@end lilypond
Chord steps can be altered by suffixing a @code{-} or @code{+} sign
to the number
@lilypond[quote,verbatim,fragment]
-\chords { c:7+ c:5+.3- c:3-.5-.7- }
+\chordmode { c:7+ c:5+.3- c:3-.5-.7- }
@end lilypond
Removals are specified similarly, and are introduced by a caret. They
must come after the additions
@lilypond[quote,verbatim,fragment]
-\chords { c^3 c:7^5 c:9^3.5 }
+\chordmode { c^3 c:7^5 c:9^3.5 }
@end lilypond
Modifiers can be used to change pitches. The following modifiers are
@end table
Modifiers can be mixed with additions
@lilypond[quote,verbatim,fragment]
-\chords { c:sus4 c:7sus4 c:dim7 c:m6 }
+\chordmode { c:sus4 c:7sus4 c:dim7 c:m6 }
@end lilypond
@cindex modifiers, in chords.
explicitly)
@c
@lilypond[quote,fragment,verbatim]
-\chords { c:13 c:13.11 c:m13 }
+\chordmode { c:13 c:13.11 c:m13 }
@end lilypond
@cindex @code{/}
as bass notes, can be specified by appending
@code{/}@var{pitch} to the chord
@lilypond[quote,fragment,verbatim]
-\chords { c1 c/g c/f }
+\chordmode { c1 c/g c/f }
@end lilypond
@cindex @code{/+}
by using @code{/+}@var{pitch}.
@lilypond[quote,fragment,verbatim]
-\chords { c1 c/+g c/+f }
+\chordmode { c1 c/+g c/+f }
@end lilypond
-Chords is a mode similar to @code{\lyrics} etc. Most
+Chords is a mode similar to @code{\lyricmode} etc. Most
of the commands continue to work, for example, @code{r} and
@code{\skip} can be used to insert rests and spaces, and property
commands may be used to change various settings.
last
@cindex clusters
@lilypond[quote,verbatim,fragment]
-\chords { c:5.5-.5+ }
+\chordmode { c:5.5-.5+ }
@end lilypond
@lilypond[quote,verbatim,raggedright]
scheme = {
- \chords {a1 b c} <d' f' a'> <e' g' b'>
+ \chordmode {a1 b c} <d' f' a'> <e' g' b'>
}
<<
the start of a new line
@lilypond[quote,verbatim,linewidth=9\cm]
-scheme = \chords {
+scheme = \chordmode {
c1:m c:m \break c:m c:m d
}
<<
\consists Bar_engraver
\consists "Volta_engraver"
}
-\repeat volta 2 \chords {
+\repeat volta 2 \chordmode {
f1:maj f:7 bes:7
c:maj
} \alternative {
slash. By setting @code{chordNameSeparator}, you can specify other
separators, e.g.
@lilypond[quote,fragment,verbatim]
-\context ChordNames \chords {
+\context ChordNames \chordmode {
c:7sus4
\set chordNameSeparator
= \markup { \typewriter "|" }
This defines a note with a conditional fingering indication.
-By applying the @code{remove-tag} function, tagged expressions can be
-filtered. For example,
+By applying the @code{\keepWithTag} command, tagged expressions
+can be filtered. For example,
@example
<<
@var{the music}
- \applymusic #(remove-tag 'score) @var{the music}
- \applymusic #(remove-tag 'part) @var{the music}
+ \keepWithTag #'score @var{the music}
+ \keepWithTag #'part @var{the music}
>>
@end example
would yield
@lilypondfile[quote]{tag-filter.ly}
+
The argument of the @code{\tag} command should be a symbol, or a list
of symbols, for example,
@example
}
@end lilypond
+The type of events that are present in cue notes can be trimmed with
+the @code{quotedEventTypes} property. The default value is
+@code{(note-event rest-event)}, which means that only notes of and
+rests of the cued voice end up in the @code{\quote}.
+Setting
+
+@example
+ \set Staff.quotedEventTypes = #'(note-event articulation-event dynamic-event)
+@end example
+
+@noindent
+will quote notes (but no rests), together with scripts and dynamics.
+
@refbugs
Only the contents of the first @internalsref{Voice} occurring in an
@item
@ref{Ancient accidentals},
@item
-@ref{Ancient
-rests},
+@ref{Ancient rests},
@item
@ref{Ancient clefs},
@item
-@ref{Ancient flags}
+@ref{Ancient flags},
@item
@ref{Ancient time signatures}.
@end itemize
notation flavor without need for introducing any new notational
concept.
+In addition to the standard articulation signs described in section
+@ref{Articulations}, specific articulation signs for ancient notation
+are provided.
+
+@itemize @bullet
+@item
+@ref{Ancient articulations}
+@end itemize
+
Other aspects of ancient notation can not that easily be expressed as
-in terms of just changing a style property of a graphical object.
-Therefore, some notational concepts are introduced specifically for
-ancient notation,
+in terms of just changing a style property of a graphical object or
+adding articulation signs. Some notational concepts are introduced
+specifically for ancient notation,
@itemize @bullet
@item
@item
@ref{Divisiones},
@item
-@ref{Ligatures},
+@ref{Ligatures}.
+@end itemize
+
+If this all is too much of documentation for you, and you just want to
+dive into typesetting without worrying too much about the details on
+how to customize a context, you may have a look at the predefined
+contexts. Use them to set up predefined style-specific voice and
+staff contexts, and directly go ahead with the note entry,
+
+@itemize @bullet
+@item
+@ref{Gregorian Chant contexts},
+@item
+@ref{Mensural contexts}.
+@end itemize
+
+There is limited support for figured bass notation which came
+up during the baroque period.
+
+@itemize @bullet
@item
-@ref{Figured bass}.
+@ref{Figured bass}
@end itemize
+Here are all suptopics at a glance:
+
@menu
* Ancient note heads::
* Ancient accidentals::
* Ancient clefs::
* Ancient flags::
* Ancient time signatures::
+* Ancient articulations::
* Custodes::
* Divisiones::
* Ligatures::
-* Vaticana style contexts::
+* Gregorian Chant contexts::
+* Mensural contexts::
* Figured bass::
@end menu
-If this all is too much of documentation for you, and you just want to
-dive into typesetting without worrying too much about the details on
-how to customize a context, you may have a look at the predefined
-contexts (see @ref{Vaticana style contexts}). Use them to set up
-predefined style-specific voice and staff contexts, and directly go
-ahead with the note entry.
@node Ancient note heads
@subsection Ancient note heads
@item
modern style mensural C clef @tab
-@code{neomensural_c1}, @code{neomensural_c2},
-@code{neomensural_c3}, @code{neomensural_c4} @tab
+@code{neomensural-c1}, @code{neomensural-c2},
+@code{neomensural-c3}, @code{neomensural-c4} @tab
@lilypond[fragment,quote,relative=1,notime]
-\clef "neomensural_c2" c
+\clef "neomensural-c2" c
@end lilypond
@item
(the examples shows the 2nd staff line C clef).
@tab
-@code{petrucci_c1}
-@code{petrucci_c2}
-@code{petrucci_c3}
-@code{petrucci_c4}
-@code{petrucci_c5}
+@code{petrucci-c1}
+@code{petrucci-c2}
+@code{petrucci-c3}
+@code{petrucci-c4}
+@code{petrucci-c5}
@tab
@lilypond[fragment,quote,relative=1,notime,indent=0.0\mm]
-\clef "petrucci_c2" c
+\clef "petrucci-c2" c
@end lilypond
@item
petrucci style mensural F clef @tab
-@code{petrucci_f} @tab
+@code{petrucci-f} @tab
@lilypond[fragment,quote,relative=1,notime,indent=0.0\mm]
-\clef "petrucci_f" c
+\clef "petrucci-f" c
@end lilypond
@item
petrucci style mensural G clef @tab
-@code{petrucci_g} @tab
+@code{petrucci-g} @tab
@lilypond[fragment,quote,relative=1,notime,indent=0.0\mm]
-\clef "petrucci_g" c
+\clef "petrucci-g" c
@end lilypond
@item
historic style mensural C clef @tab
-@code{mensural_c1}, @code{mensural_c2}, @code{mensural_c3},
-@code{mensural_c4} @tab
+@code{mensural-c1}, @code{mensural-c2}, @code{mensural-c3},
+@code{mensural-c4} @tab
@lilypond[fragment,quote,relative=1,notime,indent=0.0\mm]
-\clef "mensural_c2" c
+\clef "mensural-c2" c
@end lilypond
@item
historic style mensural F clef @tab
-@code{mensural_f} @tab
+@code{mensural-f} @tab
@lilypond[fragment,quote,relative=1,notime,indent=0.0\mm]
-\clef "mensural_f" c
+\clef "mensural-f" c
@end lilypond
@item
historic style mensural G clef @tab
-@code{mensural_g} @tab
+@code{mensural-g} @tab
@lilypond[fragment,quote,relative=1,notime,indent=0.0\mm]
-\clef "mensural_g" c
+\clef "mensural-g" c
@end lilypond
@item
Editio Vaticana style do clef @tab
-@code{vaticana_do1}, @code{vaticana_do2}, @code{vaticana_do3} @tab
+@code{vaticana-do1}, @code{vaticana-do2}, @code{vaticana-do3} @tab
@lilypond[fragment,quote,relative=1,notime,indent=0.0\mm]
\override Staff.StaffSymbol #'line-count = #4
-\clef "vaticana_do2" c
+\clef "vaticana-do2" c
@end lilypond
@item
Editio Vaticana style fa clef @tab
-@code{vaticana_fa1}, @code{vaticana_fa2} @tab
+@code{vaticana-fa1}, @code{vaticana-fa2} @tab
@lilypond[quote,relative=1,notime,indent=0.0\mm,fragment]
\override Staff.StaffSymbol #'line-count = #4
-\clef "vaticana_fa2" c
+\clef "vaticana-fa2" c
@end lilypond
@item
Editio Medicaea style do clef @tab
-@code{medicaea_do1}, @code{medicaea_do2}, @code{medicaea_do3} @tab
+@code{medicaea-do1}, @code{medicaea-do2}, @code{medicaea-do3} @tab
@lilypond[fragment,quote,relative=1,notime,indent=0.0\mm]
\override Staff.StaffSymbol #'line-count = #4
-\clef "medicaea_do2" c
+\clef "medicaea-do2" c
@end lilypond
@item
Editio Medicaea style fa clef @tab
-@code{medicaea_fa1}, @code{medicaea_fa2} @tab
+@code{medicaea-fa1}, @code{medicaea-fa2} @tab
@lilypond[fragment,quote,relative=1,notime,indent=0.0\mm]
\override Staff.StaffSymbol #'line-count = #4
-\clef "medicaea_fa2" c
+\clef "medicaea-fa2" c
@end lilypond
@item
historic style hufnagel do clef @tab
-@code{hufnagel_do1}, @code{hufnagel_do2}, @code{hufnagel_do3} @tab
+@code{hufnagel-do1}, @code{hufnagel-do2}, @code{hufnagel-do3} @tab
@lilypond[fragment,quote,relative=1,notime,indent=0.0\mm]
\override Staff.StaffSymbol #'line-count = #4
-\clef "hufnagel_do2" c
+\clef "hufnagel-do2" c
@end lilypond
@item
historic style hufnagel fa clef @tab
-@code{hufnagel_fa1}, @code{hufnagel_fa2} @tab
+@code{hufnagel-fa1}, @code{hufnagel-fa2} @tab
@lilypond[fragment,quote,relative=1,notime,indent=0.0\mm]
\override Staff.StaffSymbol #'line-count = #4
-\clef "hufnagel_fa2" c
+\clef "hufnagel-fa2" c
@end lilypond
@item
historic style hufnagel combined do/fa clef @tab
-@code{hufnagel_do_fa} @tab
+@code{hufnagel-do-fa} @tab
@lilypond[fragment,quote,relative=1,notime,indent=0.0\mm]
-\clef "hufnagel_do_fa" c
+\clef "hufnagel-do-fa" c
@end lilypond
@end multitable
@end lilypond
Note that the innermost flare of each mensural flag always is
-vertically aligned with a staff line. If you do not like this
-behavior, you can set the @code{adjust-if-on-staffline} property of
-grob @internalsref{Stem} to @code{##f}. Then, the vertical position
-of the end of each flare is different between notes on staff lines and
-notes between staff lines
-
-@lilypond[quote,fragment,raggedright]
-\override Stem #'flag-style = #'mensural
-\override Stem #'thickness = #1.0
-\override Stem #'adjust-if-on-staffline = ##f
-\override NoteHead #'style = #'mensural
-\autoBeamOff
-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
-c''8 d''8 e''8 f''8 c''16 d''16 e''16 f''16 c''32 d''32 e''32 f''32
-@end lilypond
+vertically aligned with a staff line.
There is no particular flag style for neo-mensural notation. Hence,
when typesetting the incipit of a transcribed piece of mensural
music, the default flag style should be used. There are no flags in
Gregorian Chant notation.
+@refbugs
+
+The attachment of ancient flags to stems is slightly off due to a
+change in early 2.3.x.
+
+Vertically aligning each flag with a staff line assumes that stems
+always end either exactly on or exactly in the middle between two
+staff lines. This may not always be true when using advanced layout
+features of classical notation (which however are typically out of
+scope for mensural notation).
@node Ancient time signatures
@subsection Ancient time signatures
style mimics the look of historical printings of the 16th century.
The following examples shows the differences in style,
+
@lilypond[raggedright]
-{
+\relative c' {
\time 2/2
c1^\markup { \hspace #-2.0 \typewriter default }
The @code{old6/8alt} symbol (an alternate symbol for 6/8) is not
addressable with @code{\time}. Use a @code{\markup} instead
+@node Ancient articulations
+@subsection Ancient articulations
+
+@cindex articulations
+
+In addition to the standard articulation signs described in section
+@ref{Articulations}, articulation signs for ancient notation are
+provided. These are specifically designed for use with notation in
+Editio Vaticana style.
+
+@lilypond[quote,raggedright,verbatim,noindent]
+\include "gregorian-init.ly"
+\score {
+ \context VaticanaVoice {
+ \override TextScript #'font-family = #'typewriter
+ \override TextScript #'font-shape = #'upright
+ \override Script #'padding = #-0.1
+ a4\ictus_"ictus" s1
+ a4\circulus_"circulus" s1
+ a4\semicirculus_"semicirculus" s1 s
+ a4\accentus_"accentus" s1
+ \[ a4_"episem" \episemInitium \pes b \flexa a \episemFinis \]
+ }
+ \paper {
+ \context {
+ \VaticanaVoice
+ % Prepare TextSpanner for \episem{Initium|Finis} use.
+ \override TextSpanner #'style = #'line
+ \override TextSpanner #'edge-height = #'(0 . 0)
+ \override TextSpanner #'padding = #0.5
+ \override TextSpanner #'enclose-bounds = #1
+ \override TextSpanner #'edge-text = #'("" . "")
+ }
+ }
+}
+@end lilypond
+
+@refbugs
+
+The line @code{\override Script #'padding = #-0.1} is required to
+force the articulation signs being placed vertically tightly to the
+correpsonding note heads.
+
+episem is currently broken due to a bug related with TextSpanner.
+
+
@node Custodes
@subsection Custodes
@lilypond[quote]
\score {
- \new Lyrics \lyrics {
+ \new Lyrics \lyricmode {
\markup {
\column <
\typewriter "vaticana"
\set Score.defaultBarType = "empty"
\override NoteHead #'style = #'neomensural
\override Staff.TimeSignature #'style = #'neomensural
- \clef "petrucci_g"
+ \clef "petrucci-g"
\[ g\longa c\breve a\breve f\breve d'\longa \]
s4
\[ e1 f1 a\breve g\longa \]
\set Score.defaultBarType = "empty"
\override NoteHead #'style = #'neomensural
\override Staff.TimeSignature #'style = #'neomensural
- \clef "petrucci_g"
+ \clef "petrucci-g"
\[ g\longa c\breve a\breve f\breve d'\longa \]
s4
\[ e1 f1 a\breve g\longa \]
\set Score.defaultBarType = "empty"
\override NoteHead #'style = #'neomensural
\override Staff.TimeSignature #'style = #'neomensural
- \clef "petrucci_g"
+ \clef "petrucci-g"
\[ g\longa c\breve a\breve f\breve d'\longa \]
s4
\[ e1 f1 a\breve g\longa \]
-@node Vaticana style contexts
-@subsection Vaticana style contexts
+@node Gregorian Chant contexts
+@subsection Gregorian Chant contexts
@cindex VaticanaVoiceContext
@cindex VaticanaStaffContext
\score {
<<
\context VaticanaVoice = "cantus" {
- \override Score.BarNumber #'transparent = ##t
- {
+ \override Score.BarNumber #'transparent = ##t {
\[ c'\melisma c' \flexa a \]
\[ a \flexa \deminutum g\melismaEnd \]
f \divisioMinima
}
@end lilypond
+
+@node Mensural contexts
+@subsection Mensural contexts
+
+@cindex MensuralVoiceContext
+@cindex MensuralStaffContext
+
+The predefined @code{MensuralVoiceContext} and
+@code{MensuralStaffContext} can be used to engrave a piece in mensural
+style. These contexts initialize all relevant context properties and
+grob properties to proper values, so you can immediately go ahead
+entering the chant, as the following excerpt demonstrates
+
+@lilypond[quote,raggedright,verbatim,noindent]
+\score {
+ <<
+ \context MensuralVoice = "discantus" \transpose c c' {
+ \override Score.BarNumber #'transparent = ##t {
+ c'1\melisma bes a g\melismaEnd
+ f\breve
+ \[ f1\melisma a c'\breve d'\melismaEnd \]
+ c'\longa
+ c'\breve\melisma a1 g1\melismaEnd
+ fis\longa^\signumcongruentiae
+ }
+ }
+ \lyricsto "discantus" \new Lyrics {
+ San -- ctus, San -- ctus, San -- ctus
+ }
+ >>
+}
+@end lilypond
+
+
@node Figured bass
@subsection Figured bass
@lilypond[quote,verbatim,fragment]
<<
\context Voice { \clef bass dis4 c d ais }
- \context FiguredBass \figures {
+ \context FiguredBass \figuremode {
< 6 >4 < 7 >8 < 6+ [_!] >
< 6 >4 <6 5 [3+] >
}
@end lilypond
The support for figured bass consists of two parts: there is an input
-mode, introduced by @code{\figures}, where you can enter bass figures
+mode, introduced by @code{\figuremode}, where you can enter bass figures
as numbers, and there is a context called @internalsref{FiguredBass} that
takes care of making @internalsref{BassFigure} objects.
@end example
@lilypond[quote,fragment]
\context FiguredBass
-\figures { <4 6> }
+\figuremode { <4 6> }
@end lilypond
Accidentals are added when you append @code{-}, @code{!} and @code{+}
@end example
@lilypond[quote,fragment]
\context FiguredBass
-\figures { <4- 6+ 7!> }
+\figuremode { <4- 6+ 7!> }
@end lilypond
Spaces or dashes may be inserted by using @code{_}. Brackets are
@end example
@lilypond[quote,fragment]
\context FiguredBass
-\figures { < [4 6] 8 [_! 12]> }
+\figuremode { < [4 6] 8 [_! 12]> }
@end lilypond
Although the support for figured bass may superficially resemble chord
-support, it works much simpler. The @code{\figures} mode simply
+support, it works much simpler. The @code{\figuremode} mode simply
stores the numbers , and @internalsref{FiguredBass} context prints
them as entered. There is no conversion to pitches, and no
realizations of the bass are played in the MIDI file.
}
{
- \override Staff.TimeSignature #'print-function = #Text_item::print
+ \override Staff.TimeSignature #'print-function = #Text_interface::print
\override Staff.TimeSignature #'text = #tsMarkup
\time 3/2
c'2 \bar ":" c'4 c'4.
@node Special fermatas
-@subsection Special Fermatas
+@subsection Special fermatas
@cindex fermatas, special
_\verylongfermata
r
}
- \context Lyrics \lyrics {
+ \context Lyrics \lyricmode {
\override LyricText #'font-family = #'typewriter
"shortfermata" "fermata" "longfermata" "verylongfermata"
}