* Augmentation dots::
* Tuplets::
* Scaling durations::
-* Stems::
+* Stems::
@end menu
A note is printed by specifying its pitch and then its duration,
-@lilypond[quote,verbatim,raggedright,fragment]
+@lilypond[quote,verbatim,ragged-right,fragment]
cis'4 d'8 e'16 c'16
@end lilypond
to @code{b}. The pitch @code{c} is an octave below middle C and the
letters span the octave above that C
-@lilypond[quote,fragment,verbatim,raggedright]
+@lilypond[quote,fragment,verbatim,ragged-right]
\clef bass
a,4 b, c d e f g a b c' d' e' \clef treble f' g' a' b' c''
@end lilypond
(`@code{,}') characters. Each @code{'} raises the pitch by one
octave; each @code{,} lowers the pitch by an octave
-@lilypond[quote,raggedright,fragment,verbatim]
+@lilypond[quote,ragged-right,fragment,verbatim]
c' c'' e' g d'' d'
@end lilypond
@code{as}, but both forms are accepted. Similarly, both
@code{es} and @code{ees} are accepted
-@lilypond[fragment,quote,raggedright,verbatim,relative=2]
+@lilypond[fragment,quote,ragged-right,verbatim,relative=2]
ceses4
ces
c
cis
cisis
+bes dis, eeses' ais,
@end lilypond
There are predefined sets of note names for various other languages.
cancelled. To change this behaviour, use
@code{\set Staff.extraNatural = ##f}
-@lilypond[fragment,quote,raggedright,verbatim,relative=2]
+@lilypond[fragment,quote,ragged-right,verbatim,relative=2]
ceses4 ces cis c
\set Staff.extraNatural = ##f
ceses4 ces cis c
@end lilypond
+@cindex Musica ficta
+
+Suggested accidentals (used in notating musica ficta) may
+be written with @code{suggestAccidentals}
+
+@lilypond[fragment,quote,ragged-right,verbatim,relative=2]
+\set suggestAccidentals = ##t
+ais4 bis
+@end lilypond
+
@seealso
question mark `@code{?}' after the pitch. These extra accidentals
can be used to produce natural signs, too.
-@lilypond[quote,raggedright,fragment,verbatim]
-cis' cis' cis'! cis'? c c? c! c
+@lilypond[quote,ragged-right,fragment,verbatim,relative=1]
+cis cis cis! cis? c c? c! c
@end lilypond
Half-flats and half-sharps are formed by adding @code{-eh} and
@code{-ih}; the following is a series of Cs with increasing pitches
-@lilypond[verbatim,raggedright,quote,relative=2,fragment]
+@lilypond[verbatim,ragged-right,quote,relative=2,fragment]
\set Staff.extraNatural = ##f
ceseh ceh cih cisih
@end lilypond
@code{>}. A chord may be followed by a duration, and a set of
articulations, just like simple notes
-@lilypond[verbatim,raggedright,fragment,quote,relative=1]
+@lilypond[verbatim,ragged-right,fragment,quote,relative=1]
<c e g>4 <c>8
@end lilypond
Rests are entered like notes with the note name @code{r}
-@lilypond[fragment,quote,raggedright,verbatim]
+@lilypond[fragment,quote,ragged-right,verbatim]
r1 r2 r4 r8
@end lilypond
easier. Automatic rest collision formatting will leave these rests
alone
-@lilypond[fragment,quote,raggedright,verbatim]
+@lilypond[fragment,quote,ragged-right,verbatim]
a'4\rest d'4\rest
@end lilypond
An invisible rest (also called a `skip') can be entered like a note
with note name `@code{s}' or with @code{\skip @var{duration}}
-@lilypond[fragment,quote,raggedright,verbatim,relative=2]
+@lilypond[fragment,quote,ragged-right,verbatim,relative=2]
a4 a4 s4 a4 \skip 1 a4
@end lilypond
other situations, for example, when entering lyrics, you should use
the @code{\skip} command
-@lilypond[quote,raggedright,verbatim]
+@lilypond[quote,ragged-right,verbatim]
<<
\relative { a'2 a2 }
\new Lyrics \lyricmode { \skip 2 bla2 }
@internalsref{Voice} when necessary, similar to note and rest
commands. For example, the following results in an empty staff.
-@lilypond[quote,raggedright,verbatim]
+@lilypond[quote,ragged-right,verbatim]
{ s4 }
@end lilypond
r1 r2 r4 r8 r16 r32 r64 r64
}
\layout {
- raggedright = ##t
+ ragged-right = ##t
\context {
\Staff
\remove "Clef_engraver"
If the duration is omitted then it is set to the previously entered
duration. The default for the first note is a quarter note.
-@lilypond[quote,raggedright,verbatim,fragment]
+@lilypond[quote,ragged-right,verbatim,fragment]
{ a a a2 a a4 a a1 a }
@end lilypond
To obtain dotted note lenghts, simply add a dot (`@code{.}') to
the number. Double-dotted notes are produced in a similar way.
-@lilypond[quote,raggedright,fragment,verbatim]
+@lilypond[quote,ragged-right,fragment,verbatim]
a'4 b' c''4. b'8 a'4. b'4.. c''8.
@end lilypond
notes have the length of 2, so the notes are 2/3 of their written
length
-@lilypond[quote,raggedright,fragment,verbatim]
+@lilypond[quote,ragged-right,fragment,verbatim]
g'4 \times 2/3 {c'4 c' c'} d'4 d'4
@end lilypond
Tuplets may be nested, for example,
-@lilypond[fragment,raggedright,verbatim,relative=2]
+@lilypond[fragment,ragged-right,verbatim,relative=2]
\set tupletNumberFormatFunction = #fraction-tuplet-formatter
\times 4/6 {
a4 a
example, there are two triplets shown, while @code{\times} was only
used once
-@lilypond[quote,fragment,relative=1,raggedright,verbatim]
+@lilypond[quote,fragment,relative=2,ragged-right,verbatim]
\set tupletSpannerDuration = #(ly:make-moment 1 4)
-\times 2/3 { c'8 c c c c c }
+\times 2/3 { c8 c c c c c }
@end lilypond
+@noindent
+For more information about @code{make-moment}, see
+@ref{Time administration}.
+
The format of the number is determined by the property
@code{tupletNumberFormatFunction}. The default prints only the
denominator, but if it is set to the Scheme function
@code{fraction-tuplet-formatter}, @var{num}:@var{den} will be printed
instead.
+To avoid printing tuplet numbers, use
-
+@lilypond[quote,fragment,relative=2,ragged-right,verbatim]
+\times 2/3 { c8 c c } \times 2/3 { c8 c c }
+\override TupletNumber #'transparent = ##t
+\times 2/3 { c8 c c } \times 2/3 { c8 c c }
+@end lilypond
@seealso
-Program reference: @internalsref{TupletBracket}, and @internalsref{TimeScaledMusic}.
+Program reference: @internalsref{TupletBracket},
+@internalsref{TupletNumber}, and @internalsref{TimeScaledMusic}.
Examples: @inputfileref{input/@/regression,tuplet@/-nest@/.ly}.
In the following example, the first three notes take up exactly two
beats, but no triplet bracket is printed.
-@lilypond[quote,raggedright,fragment,relative=2,verbatim]
+@lilypond[quote,ragged-right,fragment,relative=2,verbatim]
\time 2/4
a4*2/3 gis4*2/3 a4*2/3
a4 a4 a4*2
@code{\stemNeutral}.
+@commonprop
+
+To change the direction of stems in the middle of the staff, use
+
+@lilypond[quote,ragged-right,fragment,relative=2,verbatim]
+a4 b c b
+\override Stem #'neutral-direction = #up
+a4 b c b
+\override Stem #'neutral-direction = #down
+a4 b c b
+@end lilypond
+
+
@node Alternate music entry
@section Alternate music entry
@cindex Music entry
* Barnumber check::
* Skipping corrected music::
* Automatic note splitting::
+* Writing music in parallel::
@end menu
is specified, then middle C is used as a start.
Here is the relative mode shown in action
-@lilypond[quote,fragment,raggedright,verbatim]
+@lilypond[quote,fragment,ragged-right,verbatim]
\relative c'' {
b c d c b c bes a
}
@end lilypond
Octave changing marks are used for intervals greater than a fourth
-@lilypond[quote,raggedright,fragment,verbatim]
+@lilypond[quote,ragged-right,fragment,verbatim]
\relative c'' {
c g c f, c' a, e''
}
If the preceding item is a chord, the first note of the chord is used
to determine the first note of the next chord
-@lilypond[quote,raggedright,fragment,verbatim]
+@lilypond[quote,ragged-right,fragment,verbatim]
\relative c' {
c <c e g>
<c' e g>
found. In the output, the octave is corrected to be a @code{d''} and
the next note is calculated relative to @code{d''} instead of @code{d'}.
-There is also a syntax that is separate from the notes. The syntax
+There is also an octave check that produces no visible output. The syntax
@example
\octave @var{pitch}
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.
+octave is corrected. The @var{pitch} is not printed as a note.
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,
check passes successfully, so the check could be deleted without changing
the output of the piece.
-@lilypond[quote,raggedright,verbatim,fragment]
+@lilypond[quote,ragged-right,verbatim,fragment]
\relative c' {
e
\octave b
@end example
Consider a part written for violin (a C instrument). If
-this part is to be played on the A clarinet, the following
+this part is to be played on the A clarinet (for which an
+A is notated as a C, and which sounds a minor third lower
+than notated), the following
transposition will produce the appropriate part
@example
half a tone. The first version will print sharps and the second
version will print flats
-@lilypond[quote,raggedright,verbatim]
+@lilypond[quote,ragged-right,verbatim]
mus = { \key d \major cis d fis g }
-\context Staff {
+\new Staff {
\clef "F" \mus
\clef "G"
\transpose c g' \mus
It is also possible to redefine the meaning of @code{|}. This is done
by assigning a music expression to @code{pipeSymbol},
-@lilypond[quote,raggedright,verbatim]
+@lilypond[quote,ragged-right,verbatim]
pipeSymbol = \bar "||"
{ c'2 c' | c'2 c' }
@cindex @code{skipTypesetting}
@cindex @code{showLastLength}
-When entering or copying music, only the music near the end (where you
+When entering or copying music, usually only the music near the end (where you
are adding notes) is interesting to view and correct. To speed up
this correction process, it is possible to skip typesetting of all but
the last few measures. This is achieved by putting
fashing with the property @code{Score.skipTypesetting}. When it is
set, no typesetting is performed at all.
-@lilypond[quote,fragment,raggedright,verbatim]
+This property is also used to control output to the MIDI file. Note that
+it skips all events, including tempo and instrument changes. You have
+been warned.
+
+@lilypond[quote,fragment,ragged-right,verbatim]
\relative c'' {
c8 d
\set Score.skipTypesetting = ##t
@internalsref{Completion_heads_engraver}.
In the following examples, notes crossing the bar line are split and tied.
-@lilypond[quote,fragment,verbatim,relative=1,linewidth=12\cm]
+@lilypond[quote,fragment,verbatim,relative=1,line-width=12\cm]
\new Voice \with {
\remove "Note_heads_engraver"
\consists "Completion_heads_engraver"
Program reference: @internalsref{Completion_heads_engraver}.
+@node Writing music in parallel
+@subsection Writing music in parallel
+@cindex Writing music in parallel
+@cindex Interleaved music
+
+Music for multiple parts can be interleaved
+
+@lilypond[quote,fragment,verbatim]
+\parallelMusic #'(voiceA voiceB) {
+ r8 g'16[ c''] e''[ g' c'' e''] r8 g'16[ c''] e''[ g' c'' e''] |
+ c'2 c'2 |
+ r8 a'16[ d''] f''[ a' d'' f''] r8 a'16[ d''] f''[ a' d'' f''] |
+ c'2 c'2 |
+}
+\new StaffGroup <<
+ \new Staff \new Voice \voiceA
+ \new Staff \new Voice \voiceB
+>>
+@end lilypond
+
@node Staff notation
@section Staff notation
The clef indicates which lines of the staff correspond to which
pitches. The clef is set with the @code{\clef} command
-@lilypond[quote,raggedright,fragment,verbatim]
+@lilypond[quote,ragged-right,fragment,verbatim]
{ c''2 \clef alto g'2 }
@end lilypond
example,
@cindex choral tenor clef
-@lilypond[quote,raggedright,verbatim,fragment,relative=1]
+@lilypond[quote,ragged-right,verbatim,fragment,relative=1]
\clef "G_8" c4
@end lilypond
when any of these properties are changed. The following example shows
possibilities when setting properties manually.
-@lilypond[quote,raggedright,verbatim]
+@lilypond[quote,ragged-right,verbatim]
{
\set Staff.clefGlyph = #"clefs.F"
\set Staff.clefPosition = #2
can be suppressed by setting the @code{Staff.printKeyCancellation}
property.
-@lilypond[quote,fragment,raggedright,fragment,verbatim,relative=2]
+@lilypond[quote,fragment,ragged-right,fragment,verbatim,relative=2]
\key d \major
a b cis d
\key g \minor
The time signature is set with the @code{\time} command
-@lilypond[quote,raggedright,fragment,verbatim]
+@lilypond[quote,ragged-right,fragment,verbatim]
\time 2/4 c'2 \time 3/4 c'2.
@end lilypond
property. Setting it to @code{#'()} uses fraction style for 4/4 and
2/2 time,
-@lilypond[fragment,quote,raggedright,verbatim]
+@lilypond[fragment,quote,ragged-right,verbatim]
\time 4/4 c'1
\time 2/2 c'1
\override Staff.TimeSignature #'style = #'()
measure is subdivided in 2, 2, 2 and 3. This is passed to
@code{set-time-signature} as the third argument @code{(2 2 2 3)}
-@lilypond[quote,raggedright,verbatim]
+@lilypond[quote,ragged-right,verbatim]
\score {
\relative c'' {
#(set-time-signature 9 8 '(2 2 2 3))
Partial measures, such as an anacrusis or upbeat, are entered using the
-@lilypond[quote,raggedright,fragment,verbatim,relative=2]
+@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
\partial 16*5 c16 cis d dis e | a2. c,4 | b2
@end lilypond
the music. When a piece starts with graces notes in the pickup, then
the @code{\partial} should follow the grace notes
-@lilypond[verbatim,quote,raggedright,relative,fragment]
+@lilypond[verbatim,quote,ragged-right,relative,fragment]
\grace f16
\partial 4
g4
Special types of bar lines can be forced with the @code{\bar} command
-@lilypond[quote,raggedright,relative=2,fragment,verbatim]
+@lilypond[quote,ragged-right,relative=2,fragment,verbatim]
c4 \bar "|:" c4
@end lilypond
The following bar types are available
-@lilypondfile[raggedright,quote]{bar-lines.ly}
+@lilypondfile[ragged-right,quote]{bar-lines.ly}
To allow a line break where there is no visible bar line, use
automatically applied to all staves. The resulting bar lines are
connected between different staves of a StaffGroup
-@lilypond[quote,raggedright,fragment,verbatim]
+@lilypond[quote,ragged-right,fragment,verbatim]
<<
- \context StaffGroup <<
+ \new StaffGroup <<
\new Staff {
e'4 d'
\bar "||"
automatic bar lines and bar numbers, use the commands @code{\cadenzaOn}
and @code{\cadenzaOff}.
-@lilypond[verbatim,quote,raggedright,relative=2,fragment]
+@lilypond[verbatim,quote,ragged-right,relative=2,fragment]
c4 d e d
\cadenzaOn
c4 c d8 d d f4 g4.
@item The group is started with a brace at the left, and bar lines are
connected. This is done with the @internalsref{GrandStaff} context.
-@lilypond[verbatim,raggedright,quote]
+@lilypond[verbatim,ragged-right,quote]
\new GrandStaff
\relative <<
\new Staff { c1 c }
This is done with the
@internalsref{StaffGroup} context
-@lilypond[verbatim,raggedright,quote]
+@lilypond[verbatim,ragged-right,quote]
\new StaffGroup
\relative <<
\new Staff { c1 c }
@item The group is started with a bracket, but bar lines are not
connected. This is done with the @internalsref{ChoirStaff} context.
-@lilypond[verbatim,raggedright,quote]
+@lilypond[verbatim,ragged-right,quote]
\new ChoirStaff
\relative <<
\new Staff { c1 c }
@item The group is started with a vertical line. Bar lines are not
connected. This is the default for the score.
-@lilypond[verbatim,raggedright,quote]
+@lilypond[verbatim,ragged-right,quote]
\relative <<
\new Staff { c1 c }
\new Staff { c c }
* Ties::
* Slurs::
* Phrasing slurs::
+* Laissez vibrer ties::
* Automatic beams::
* Manual beams::
* Grace notes::
slurs, which indicate articulation, or phrasing slurs, which indicate
musical phrasing. A tie is entered using the tilde symbol `@code{~}'
-@lilypond[quote,raggedright,fragment,verbatim]
+@lilypond[quote,ragged-right,fragment,verbatim]
e' ~ e' <c' e' g'> ~ <c' e' g'>
@end lilypond
augmentation dot. The following example shows two ways of notating
exactly the same concept
-@lilypond[quote,fragment,raggedright]
+@lilypond[quote,fragment,ragged-right]
\time 3/4 c'2. c'2 ~ c'4
@end lilypond
cannot be used to denote the rhythm. When using ties, larger note
values should be aligned to subdivisions of the measure, eg.
-@lilypond[fragment,quote,raggedright]
+@lilypond[fragment,quote,ragged-right]
\relative {
r8 c8 ~ c2 r4 | r8^"not" c2 ~ c8 r4
}
mechanism automatically splits long notes, and ties them across bar
lines.
+When a second alternative of a repeat starts with a tied note, you
+have to repeat the tie. This can be achieved with @code{\repeatTie},
+eg.
+
+@lilypond[fragment,quote,ragged-right,relative=2]
+r <c e g>\repeatTie
+@end lilypond
+
+@cindex repeating ties
+@cindex volta brackets and ties
@commonprop
@code{tieWaitForNote} property to true. The same feature is also useful,
for example, to tie a tremolo to a chord. For example,
-@lilypond[fragment,verbatim,relative=1,raggedright]
+@lilypond[fragment,verbatim,relative=1,ragged-right]
\set tieWaitForNote = ##t
\grace { c16[~ e~ g]~ } <c, e g>2
\repeat "tremolo" 8 { c32~ c'~ } <c c,>1
Program reference: @internalsref{Tie}.
+Examples:
+@inputfileref{input/@/regression,tie-arpeggio.ly}
+@inputfileref{input/@/regression,tie-manual.ly}
+
+
+
@refbugs
A slur indicates that notes are to be played bound or
@emph{legato}. They are entered using parentheses
-@lilypond[quote,raggedright,relative=2,fragment,verbatim]
+@lilypond[quote,ragged-right,relative=2,fragment,verbatim]
f( g a) a8 b( a4 g2 f4)
<c e>2( <b d>2)
@end lilypond
directions. By adding @code{_} or @code{^} before the opening
parentheses, the direction is also set. For example,
-@lilypond[relative=2,raggedright,quote,verbatim,fragment]
+@lilypond[relative=2,ragged-right,quote,verbatim,fragment]
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},
-@lilypond[verbatim,raggedright,relative,fragment,quote]
+@lilypond[verbatim,ragged-right,relative,fragment,quote]
\set doubleSlurs = ##t
<c e>4 ( <d f> <c e> <d f> )
@end lilypond
indicate a musical sentence. It is written using @code{\(} and @code{\)}
respectively
-@lilypond[quote,raggedright,fragment,verbatim,relative=1]
+@lilypond[quote,ragged-right,fragment,verbatim,relative=1]
\time 6/4 c'\( d( e) f( e) d\)
@end lilypond
Program reference: @internalsref{PhrasingSlur}.
+@node Laissez vibrer ties
+@subsection Laissez vibrer ties
+@cindex Laissez vibrer
+@cindex Ties, laissez vibrer
+
+L.v. ties (laissez vibrer) indicate that notes must not be damped at the
+end. It is used in notation for piano, harp and other string and
+percussion instruments. They can be entered using @code{\laissezVibrer},
+
+@lilypond[fragment,ragged-right,verbatim,relative=1]
+<c f g>\laissezVibrer
+@end lilypond
+
+@seealso
+
+Program reference:
+@internalsref{LaissezVibrerTie}
+@internalsref{LaissezVibrerTieColumn}
+
+Example files:
+@inputfileref{input/regression,laissez-vibrer-tie.ly}
+
+
@node Automatic beams
@subsection Automatic beams
LilyPond inserts beams automatically
-@lilypond[quote,raggedright,fragment,verbatim,relative=2]
+@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
\time 2/4 c8 c c c \time 6/8 c c c c8. c16 c8
@end lilypond
Individual notes may be marked with @code{\noBeam} to prevent them
from being beamed
-@lilypond[quote,raggedright,fragment,verbatim,relative=2]
+@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
\time 2/4 c8 c\noBeam c c
@end lilypond
or bar lines. Such beams are specified manually by marking the begin
and end point with @code{[} and @code{]}
-@lilypond[quote,raggedright,fragment,relative=1,verbatim]
+@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
{
r4 r8[ g' a r8] r8 g[ | a] r8
}
either property is set, its value will be used only once, and then it
is erased
-@lilypond[quote,raggedright,fragment,relative=1,verbatim]
+@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
{
f8[ r16
f g a]
@end lilypond
@cindex @code{subdivideBeams}
+@noindent
+For more information about @code{make-moment}, see
+@ref{Time administration}.
+
Line breaks are normally forbidden when beams cross bar lines. This
behavior can be changed by setting @code{allowBeamBreak}.
are entered with the commands @code{\acciaccatura} and
@code{\appoggiatura}, as demonstrated in the following example
-@lilypond[quote,raggedright,relative=2,verbatim,fragment]
+@lilypond[quote,ragged-right,relative=2,verbatim,fragment]
b4 \acciaccatura d8 c4 \appoggiatura e8 d4
\acciaccatura { g16[ f] } e4
@end lilypond
keyword to a music expression, a new one is formed, which will be
printed in a smaller font and takes up no logical time in a measure.
-@lilypond[quote,raggedright,relative=2,verbatim,fragment]
+@lilypond[quote,ragged-right,relative=2,verbatim,fragment]
c4 \grace c16 c4
\grace { c16[ d16] } c2 c4
@end lilypond
denotes the logical time, one denotes the grace timing. The above
example is shown here with timing tuples
-@lilypond[quote,raggedright]
+@lilypond[quote,ragged-right]
<<
\relative c''{
c4 \grace c16 c4 \grace {
In the following example, there are two sixteenth grace notes for
every eighth grace note
-@lilypond[quote,raggedright,relative=2,verbatim,fragment]
+@lilypond[quote,ragged-right,relative=2,verbatim,fragment]
<< \new Staff { e4 \grace { c16[ d e f] } e4 }
\new Staff { c4 \grace { g8[ b] } c4 } >>
@end lilypond
command. It takes two arguments: the main note, and the grace notes
following the main note.
-@lilypond[raggedright, verbatim,relative=2,fragment]
+@lilypond[ragged-right, verbatim,relative=2,fragment]
c1 \afterGrace d1 { c16[ d] } c4
@end lilypond
The same effect can be achieved manually by doing
-@lilypond[quote,raggedright,fragment,verbatim,relative=2]
-\context Voice {
+@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
+\new Voice {
<< { d1^\trill_( }
{ s2 \grace { c16[ d] } } >>
c4)
for example, to produce smaller type, and set directions. Hence, when
introducing layout tweaks, they should be inside the grace section,
for example,
-@lilypond[quote,raggedright,fragment,verbatim,relative=2]
+@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
\new Voice {
\acciaccatura {
\stemDown
@refbugs
A score that starts with a @code{\grace} section needs an explicit
-@code{\context Voice} declaration, otherwise the main note and the grace
+@code{\new Voice} declaration, otherwise the main note and the grace
note end up on different staves.
Grace note synchronization can also lead to surprises. Staff notation,
such as key signatures, bar lines, etc., are also synchronized. Take
care when you mix staves with grace notes and staves without, for example,
-@lilypond[quote,raggedright,relative=2,verbatim,fragment]
+@lilypond[quote,ragged-right,relative=2,verbatim,fragment]
<< \new Staff { e4 \bar "|:" \grace c16 d4 }
\new Staff { c4 \bar "|:" d4 } >>
@end lilypond
* Fingering instructions::
* Dynamics::
* Breath marks::
-* Running trills::
+* Trills::
* Glissando::
* Arpeggio::
@end menu
by adding a dash and the character signifying the
articulation. They are demonstrated here
-@lilypondfile[quote,raggedright]{script-abbreviations.ly}
+@lilypondfile[quote,ragged-right]{script-abbreviations.ly}
The meanings of these shorthands can be changed. See
@file{ly/@/script@/-init@/.ly} for examples.
well. Like other pieces of LilyPond code, @code{_} will place them
below the staff, and @code{^} will place them above.
-@lilypond[quote,raggedright,fragment,verbatim]
+@lilypond[quote,ragged-right,fragment,verbatim]
c''4^^ c''4_^
@end lilypond
can be forced up or down using @code{^} and @code{_},
e.g.,
-@lilypond[quote,raggedright,verbatim,fragment,relative=2]
+@lilypond[quote,ragged-right,verbatim,fragment,relative=2]
c\fermata c^\fermata c_\fermata
@end lilypond
Here is a chart showing all scripts available,
-@lilypondfile[raggedright,quote]{script-chart.ly}
+@lilypondfile[ragged-right,quote]{script-chart.ly}
@commonprop
inside. When two objects have the same priority, the order in which
they are entered decides which one comes first.
-@lilypond[verbatim,relative=3,raggedright,fragment,quote]
+@lilypond[verbatim,relative=3,ragged-right,fragment,quote]
\once \override TextScript #'script-priority = #-100
a4^\prall^\markup { \sharp }
@end example
For finger changes, use markup texts
-@lilypond[quote,verbatim,raggedright,fragment,relative=1]
+@lilypond[quote,verbatim,ragged-right,fragment,relative=1]
c4-1 c-2 c-3 c-4
c^\markup { \finger "2 - 3" }
@end lilypond
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,relative=2]
+@lilypond[quote,verbatim,ragged-right,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]
+@lilypond[quote,verbatim,ragged-right,fragment,relative=2]
< c-1 e-2 g-3 b-5 >4
@end lilypond
You may exercise greater control over fingering chords by
setting @code{fingeringOrientations}
-@lilypond[quote,verbatim,raggedright,fragment,relative=1]
+@lilypond[quote,verbatim,ragged-right,fragment,relative=1]
\set fingeringOrientations = #'(left down)
<c-1 es-2 g-4 bes-5 > 4
\set fingeringOrientations = #'(up right down)
Using this feature, it is also possible to put fingering instructions
very close to note heads in monophonic music,
-@lilypond[verbatim,raggedright,quote,fragment]
+@lilypond[verbatim,ragged-right,quote,fragment]
\set fingeringOrientations = #'(right)
<es'-2>4
@end lilypond
@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=2]
+@lilypond[quote,verbatim,ragged-right,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
dynamic. Because these marks are bound to notes, you must
use spacer notes if multiple marks are needed during one note
-@lilypond[quote,raggedright,fragment,verbatim,relative=2]
+@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
c\< c\! d\> e\!
<< f1 { s4 s4\< s4\! \> s4\! } >>
@end lilypond
You can also use a text saying @emph{cresc.} instead of hairpins
-@lilypond[quote,raggedright,fragment,relative=2,verbatim]
+@lilypond[quote,ragged-right,fragment,relative=2,verbatim]
\setTextCresc
c\< d e f\!
\setHairpinCresc
@end lilypond
You can also supply your own texts
-@lilypond[quote,raggedright,fragment,relative=1,verbatim]
+@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
\set crescendoText = \markup { \italic "cresc. poco" }
\set crescendoSpanner = #'dashed-line
a'2\< a a a\!\mf
increase the @code{staff-padding} property.
@example
-\override DynamicLineSpanner #'staff-padding = 4
+\override DynamicLineSpanner #'staff-padding = #4
+@end example
+
+You may also use this property if the dynamics are colliding
+with other notation.
+
+Crescendi and decrescendi that end on the first note of a
+new line are not printed. To change this behavior, use
+
+@example
+\override Score.Hairpin #'after-line-breaking = ##t
@end example
Breath marks are entered using @code{\breathe}
-@lilypond[quote,raggedright,fragment,relative=1,verbatim]
+@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
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,
-@lilypond[quote,raggedright,fragment,verbatim,relative=1]
+@lilypond[quote,ragged-right,fragment,verbatim,relative=1]
c'4
\override BreathingSign #'text
= #(make-musicglyph-markup "scripts.rvarcomma")
Examples: @inputfileref{input/@/regression,breathing@/-sign@/.ly}.
-@node Running trills
-@subsection Running trills
+@node Trills
+@subsection Trills
+
+Short trills are printed like normal articulation; see @ref{Articulations}.
Long running trills are made with @code{\startTrillSpan} and
@code{\stopTrillSpan},
-@lilypond[verbatim,raggedright,relative=2,quote,fragment]
+@lilypond[verbatim,ragged-right,relative=2,quote,fragment]
\new Voice {
<< { c1 \startTrillSpan }
{ s2. \grace { d16[\stopTrillSpan e] } } >>
c4 }
@end lilypond
+@cindex Pitched trills
+
+Trills that should be executed on an explicitly specified pitch can be
+typeset with the command @code{pitchedTrill},
+
+@lilypond[ragged-right,verbatim,fragment,relative=1]
+\pitchedTrill c4\startTrillSpan fis
+f\stopTrillSpan
+@end lilypond
+
+The first argument is the main note. The pitch of the second
+is printed as a stemless note head in parentheses.
+
@refcommands
@seealso
-This manual: @ref{Pitched trills}.
-
Program reference: @internalsref{TrillSpanner}.
wavy line between two notes. It is requested by attaching
@code{\glissando} to a note
-@lilypond[quote,raggedright,fragment,relative=2,verbatim]
+@lilypond[quote,ragged-right,fragment,relative=2,verbatim]
c2\glissando c'
\override Glissando #'style = #'zigzag
c2\glissando c,
You can specify an arpeggio sign (also known as broken chord) on a
chord by attaching an @code{\arpeggio} to a chord
-@lilypond[quote,raggedright,fragment,relative=1,verbatim]
+@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
<c e g c>\arpeggio
@end lilypond
A square bracket on the left indicates that the player should not
arpeggiate the chord
-@lilypond[quote,raggedright,fragment,relative=1,verbatim]
+@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
\arpeggioBracket
<c' e g c>\arpeggio
@end lilypond
The direction of the arpeggio is sometimes denoted by adding an
arrowhead to the wiggly line
-@lilypond[quote,raggedright,fragment,relative=1,verbatim]
-\context Voice {
+@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
+\new Voice {
\arpeggioUp
<c e g c>\arpeggio
\arpeggioDown
in both staves and set
@internalsref{PianoStaff}.@code{connectArpeggios}
-@lilypond[quote,raggedright,fragment,relative=1,verbatim]
-\context PianoStaff <<
+@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
+\new PianoStaff <<
\set PianoStaff.connectArpeggios = ##t
\new Staff { <c' e g c>\arpeggio }
\new Staff { \clef bass <c,, e g>\arpeggio }
@node Explicitly instantiating voices
@subsection Explicitly instantiating voices
-@internalsref{Voice} contexts can also also be instantiated manually
+@internalsref{Voice} contexts can also be instantiated manually
inside a @code{<< >>} block to create polyphonic music, using
@code{\voiceOne}, up to @code{\voiceFour} to assign stem directions
and a horizontal shift for each part.
@example
<<
- \context Voice = "1" @{ \voiceOne \upper @}
- \context Voice = "2" @{ \voiceTwo \lower @}
+ \new Voice = "1" @{ \voiceOne \upper @}
+ \new Voice = "2" @{ \voiceTwo \lower @}
>>
@end example
the previous section. The crossed noteheads demonstrate that the main
melody is now in a single voice context.
-@lilypond[quote,raggedright,verbatim]
+@lilypond[quote,ragged-right,verbatim]
\new Staff \relative c' {
\override NoteHead #'style = #'cross
c16 d e f
\voiceOne
<<
{ g4 f e | d2 e2 }
- \context Voice="1" { \voiceTwo
+ \new Voice="1" { \voiceTwo
r8 e4 d c8 ~ | c8 b16 a b8 g ~ g2
\oneVoice
}
@end lilypond
The correct definition of the voices allows the melody to be slurred.
-@lilypond[quote,raggedright,verbatim]
+@lilypond[quote,ragged-right,verbatim]
\new Staff \relative c' {
c16^( d e f
\voiceOne
constructs, which in some case might be a more natural way to typeset
the music.
-@lilypond[quote,raggedright,verbatim]
+@lilypond[quote,ragged-right,verbatim]
\new Staff \relative c' {
c16^( d e f
\voiceOne
Normally, note heads with a different number of dots are not merged, but
when the object property @code{merge-differently-dotted} is set in
the @internalsref{NoteCollision} object, they are merged
-@lilypond[quote,verbatim,fragment,raggedright,relative=2]
-\context Voice << {
+@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
+\new Voice << {
g8 g8
\override Staff.NoteCollision
#'merge-differently-dotted = ##t
Similarly, you can merge half note heads with eighth notes, by setting
@code{merge-differently-headed}
-@lilypond[quote,raggedright,fragment,relative=2,verbatim]
-\context Voice << {
+@lilypond[quote,ragged-right,fragment,relative=2,verbatim]
+\new Voice << {
c8 c4.
\override Staff.NoteCollision
#'merge-differently-headed = ##t
LilyPond also vertically shifts rests that are opposite of a stem,
for example
-@lilypond[quote,raggedright,fragment,verbatim]
-\context Voice << c''4 \\ r4 >>
+@lilypond[quote,ragged-right,fragment,verbatim]
+\new Voice << c''4 \\ r4 >>
@end lilypond
property of the @internalsref{NoteColumn} object and pitched rests can
be used to override typesetting decisions.
-@lilypond[quote,verbatim,raggedright]
+@lilypond[quote,verbatim,ragged-right]
\relative <<
{
<d g>
is assumed to be played more than once.
Standard repeats are used like this
-@lilypond[quote,raggedright,fragment,verbatim,relative=2]
+@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
c1
\repeat volta 2 { c4 d e f }
\repeat volta 2 { f e d c }
@end lilypond
With alternative endings
-@lilypond[quote,raggedright,fragment,verbatim,relative=2]
+@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
c1
\repeat volta 2 {c4 d e f}
\alternative { {d2 d} {f f,} }
@end lilypond
-@lilypond[quote,raggedright,fragment,verbatim,relative=2]
-\context Staff {
+@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
+\new Staff {
\partial 4
\repeat volta 4 { e | c2 d2 | e2 f2 | }
\alternative { { g4 g g } { a | a a a a | b2. } }
by setting @code{voltaSpannerDuration}. In the next example, the
bracket only lasts one measure, which is a duration of 3/4.
-@lilypond[verbatim,raggedright,quote]
+@lilypond[verbatim,ragged-right,quote]
\relative c''{
\time 3/4
c c c
@code{\unfoldRepeats} music function. This functions changes all
repeats to unfold repeats.
-@lilypond[quote,verbatim,fragment,linewidth=8.0\cm]
+@lilypond[quote,verbatim,fragment,line-width=8.0\cm]
\unfoldRepeats {
\repeat tremolo 8 {c'32 e' }
\repeat percent 2 { c''8 d'' }
Stop a running volta bracket.
@end table
-@lilypond[quote,raggedright,verbatim,fragment,relative=2]
+@lilypond[quote,ragged-right,verbatim,fragment,relative=2]
c4
\set Score.repeatCommands = #'((volta "93") end-repeat)
c4 c4
To place tremolo marks between notes, use @code{\repeat} with tremolo
style
-@lilypond[quote,verbatim,raggedright]
+@lilypond[quote,verbatim,ragged-right]
\new Voice \relative c' {
\repeat "tremolo" 8 { c16 d16 }
\repeat "tremolo" 4 { c16 d16 }
Tremolo marks can also be put on a single note. In this case, the
note should not be surrounded by braces.
-@lilypond[quote,verbatim,raggedright]
+@lilypond[quote,verbatim,ragged-right]
\repeat "tremolo" 4 c'16
@end lilypond
length is omitted, the last value (stored in @code{tremoloFlags}) is
used
-@lilypond[quote,raggedright,verbatim,fragment]
+@lilypond[quote,ragged-right,verbatim,fragment]
c'2:8 c':32 | c': c': |
@end lilypond
patterns that divide the measure length are replaced by slashes.
Percent repeats must be declared within a @code{Voice} context.
-@lilypond[quote,verbatim,raggedright]
+@lilypond[quote,verbatim,ragged-right]
\new Voice \relative c' {
\repeat "percent" 4 { c4 }
\repeat "percent" 2 { c2 es2 f4 fis4 g4 c4 }
Measure repeats of more than 2 measures get a counter, if you switch
on the @code{countPercentRepeats} property,
-@lilypond[relative=2,fragment,quote,verbatim,raggedright]
+@lilypond[relative=2,fragment,quote,verbatim,ragged-right]
\set countPercentRepeats = ##t
\new Voice
\repeat "percent" 4 { c1 }
measure rest with a different print function,
@lilypond[fragment,verbatim]
-\override MultiMeasureRest #'print-function
- = #Multi_measure_rest::percent
+\override MultiMeasureRest #'stencil
+ = #ly:multi-measure-rest::percent
R1
@end lilypond