duration. For details of this and other settings which control
proportional notation, see @ref{Proportional notation}.
+@funindex \dotsUp
+@funindex \dotsDown
+@funindex \dotsNeutral
+
Dots are normally moved up to avoid staff lines, except in
-polyphonic situations. To force a particular direction manually,
+polyphonic situations. To force a particular direction manually,
see @ref{Controlling direction and placement}.
@predefined
-@funindex \dotsUp
+@code{\breve},
+@code{\longa},
+@code{\maxima},
@code{\dotsUp},
-@funindex \dotsDown
@code{\dotsDown},
-@funindex \dotsNeutral
@code{\dotsNeutral}.
durations with a fraction:
@example
-\times @var{fraction} @var{musicexpr}
+\times @var{fraction} @{ @var{music} @}
@end example
@noindent
-The duration of @var{musicexpr} will be multiplied by the
+The duration of @var{music} will be multiplied by the
fraction. The fraction's denominator will be printed over or
under the notes, optionally with a bracket. The most common
tuplet is the triplet in which 3 notes have the duration of 2, so
@end lilypond
-The automatic placement of the tuplet bracket above or below the
-notes may be overridden manually, for details see
-@ref{Controlling direction and placement}.
+@funindex \tupletUp
+@funindex \tupletDown
+@funindex \tupletNeutral
+
+The automatic placement of the tuplet bracket above or below the
+notes may be overridden manually with predefined commands, for
+details see @ref{Controlling direction and placement}.
Tuplets may be nested:
@predefined
-@funindex \tupletUp
@code{\tupletUp},
-@funindex \tupletDown
@code{\tupletDown},
-@funindex \tupletNeutral
@code{\tupletNeutral}.
@lilypond[fragment,quote,ragged-right,relative=2,verbatim]
\repeat volta 2 { c g <c e>2 ~ }
\alternative {
- % Following note is tied normally in first alternative
+ % First alternative: following note is tied normally
{ <c e>2. r4 }
- % Following note has a repeated tie in second alternative
+ % Second alternative: following note has a repeated tie
{<c e>2\repeatTie d4 c }}
@end lilypond
@funindex \tieDown
@funindex \tieNeutral
-The vertical placement of ties may be controlled, see the
-predefined commands. For details, see
+The vertical placement of ties may be controlled, see
+Predefined commands, or for details, see
@ref{Controlling direction and placement}.
@cindex ties, appearance
@funindex \tieDashed
@funindex \tieSolid
-Solid, dotted or dashed ties may be specified, see predefined
+Solid, dotted or dashed ties may be specified, see Predefined
commands.
@predefined
-@funindex \tieUp
@code{\tieUp},
-@funindex \tieDown
@code{\tieDown},
-@funindex \tieNeutral
@code{\tieNeutral},
-@funindex \tieDotted
@code{\tieDotted},
-@funindex \tieDashed
@code{\tieDashed},
-@funindex \tieSolid
-@code{\tieSolid}.
+@code{\tieSolid},
+@code{\repeatTie}.
@snippets
Snippets: @lsrdir{Rhythms,Rhythms}
Internals Reference:
-@internalsref{LaissezVibrerTie}
-@internalsref{LaissezVibrerTieColumn}
-@internalsref{TieColumn}
+@internalsref{LaissezVibrerTie},
+@internalsref{LaissezVibrerTieColumn},
+@internalsref{TieColumn},
@internalsref{Tie}.
@funindex \longa
@funindex \breve
-Rests are entered like notes with the note name @code{r}:
+Rests are entered like notes with the note name @code{r};
+longer rests with the predefined commands shown:
@c \time 16/1 is used to avoid spurious bar lines
@c and long tracts of empty measures
@lilypond[fragment,quote,ragged-right,verbatim]
\new Staff {
+ % These two lines are just to prettify this example
\time 16/1
\override Staff.TimeSignature #'stencil = ##f
+ % Print a maxima rest, equal to four breves
r\maxima
- r\longa r\breve r1 r2
- r4 r8 r16 r32 r64
+ % Print a longa rest, equal to two breves
+ r\longa
+ % Print a breve rest
+ r\breve
+ r1 r2 r4 r8 r16 r32 r64
}
@end lilypond
-Whole measure rests, centered in middle of the measure, must be entered as
-multi-measure rests. They can be used for a single measure as well as
-many measures and are discussed in @ref{Full measure rests}.
+Whole measure rests, centered in middle of the measure, must be
+entered as multi-measure rests. They can be used for a single
+measure as well as many measures and are discussed in
+@ref{Full measure rests}.
To explicitly specify a rest's vertical position, write a note
followed by @code{\rest}. A rest will be placed in the position
a4\rest d4\rest
@end lilypond
+@predefined
+
+@code{\rest},
+@code{\maxima},
+@code{\longa},
+@code{\breve}.
+
+@snippets
+@lilypondfile [verbatim,lilyquote,ragged-right,texidoc]
+{rest-styles.ly}
+
@seealso
-Notation Reference: @ref{Full measure rests}.
+Notation Reference: @ref{Full measure rests}
-Snippets: @lsrdir{Rhythms,Rhythms}.
+Snippets: @lsrdir{Rhythms,Rhythms}
-Internals Reference: @internalsref{Rest}.
+Internals Reference: @internalsref{Rest}
@knownissues
@cindex skip
@cindex invisible rest
-@cindex space note
+@cindex rest, invisible
+@cindex spacer note
+
@funindex \skip
@funindex s
-An invisible rest (also called a @q{skip}) can be entered like a
-note with note name @code{s} or with @code{\skip @var{duration}}
+An invisible rest (also called a @q{skip rest}) can be entered like a
+note with note name @code{s} or with the predefined skip command
+followed by the required duration, as shown here:
@lilypond[fragment,quote,ragged-right,verbatim,relative=2]
-a4 a4 s4 a4 \skip 1 a4
+% Skip the third beat in the first bar
+a4 a4 s4 a4
+% Use predefined command to skip a whole note (bar)
+\skip 1
+a2 a2
@end lilypond
@cindex lyrics, skip
The @code{s} syntax is only available in note mode and chord mode.
In other situations, for example, when entering lyrics, one must
-use the @code{\skip} command:
+use the predefined skip command:
@lilypond[quote,ragged-right,verbatim,relative=2]
<<
>>
@end lilypond
-The skip command is merely an empty musical placeholder. It does
-not produce any output, not even transparent output.
-
-The @code{s} skip command does create @internalsref{Staff} and
-@internalsref{Voice} when necessary, similar to note and rest
-commands. For example, the following results in an empty staff.
+The @code{s} skip rest implicitly causes @code{Staff} and
+@code{Voice} contexts to be created if none exist, just
+like notes and rests do. These in turn cause a staff with default
+clef and time signature to be printed, with if necessary, barlines.
+For example, the following results in a complete staff with three
+short empty bars:
-@lilypond[quote,verbatim]
-{ s4 }
+@lilypond[quote,verbatim,fragment,ragged-right]
+{ s1 s s }
@end lilypond
-@c with ragged-right, the staff lines are cut BEFORE the time
-@c signature, which makes for a VERY empty staff
-@c The fragment @code{@{ \skip 4 @} } would produce an empty page.
-@c Misleading -- it doesn't produce anything, not even an empty page.
-@c Ppl who want to make empty sheets will see this and wonder what's
-@c happening. -eo
+However, the predefined skip command behaves differently: it is
+merely an empty musical placeholder. It does not create any
+contexts and does not cause anything to be printed, not even
+transparently. On its own it does not even print an
+empty page:
+
+@example
+% This is valid input, but does nothing
+@{ \skip 1 @}
+@end example
+
+@predefined
+@code{\skip}
@seealso
Snippets: @lsrdir{Rhythms,Rhythms}
-Internals Reference: @internalsref{SkipMusic}.
+Internals Reference: @internalsref{SkipMusic}
@node Full measure rests
@cindex whole rest for a full measure
@funindex R
-Rests for one or more full measures are entered using @code{R}
-followed by a duration (see @ref{Durations}). The duration should
+Rests for one or more full measures are entered using @code{R}, in
+uppercase, followed by a duration. The duration should
correspond to an integral number of measures, otherwise a barcheck
-warning is printed. A @rglos{multi-measure rest} is used
+warning is printed. A multi-measure rest is used
principally to indicate that a part in a multi-part score should
be silent:
b2^"Tutti" b4 a4
@end lilypond
-A multi-measure rest can be expanded in the printed score
-to show all the rest measures explicitly, or, as above, it can be
-condensed to a single measure
-containing a multi-measure rest symbol, with the number of
-measures of rest printed above the measure. This expansion
-is controlled by the property @code{Score.skipBars}. If this is
-set to true, empty measures will be condensed to a single measure.
+By default, a multi-measure rest is expanded in the printed score
+to show all the rest measures explicitly, or, as above, it can be
+condensed to a single measure containing a multi-measure rest
+symbol, with the number of measures of rest printed above the
+measure. This expansion is controlled by the property
+@code{Score.skipBars}. If this is set to true, empty measures
+will be condensed to a single measure:
@lilypond[quote,ragged-right,fragment,verbatim]
-\time 4/4 r1 | R1 | R1*2 |
-\time 2/4 R2 |
+% Default behaviour
+\time 4/4 r1 | R1 | R1*2 |
+\time 2/4 R2 |
\time 4/4
-\set Score.skipBars = ##t
+% Rest bars condensed to a single bar
+\set Score.skipBars = ##t
R1*17 | R1*4 |
@end lilypond
or breve rest, centered in the measure, regardless of the time
signature.
-@cindex church rest
-@cindex rest, church
-@cindex kirchenpausen
-
-If there are 10 or fewer measures of rest, LilyPond prints
-a series of longa and breve rests (called in German
-Kirchenpausen - @q{church rests}) within the staff and
-prints a simple line otherwise. This default number of 10
-may be changed by overriding
-@code{MultiMeasureRest.expand-limit}.
-
-@lilypond[quote,ragged-right,fragment,verbatim]
-\set Score.skipBars = ##t
-R1*2 | R1*5 | R1*9
-\override MultiMeasureRest #'expand-limit = 3
-R1*2 | R1*5 | R1*9
-@end lilypond
-
-Note that unlike ordinary rests, the vertical position on the
-staff of the multi-measure rest symbol of either form cannot be
-changed.
@cindex text on multi-measure rest
+@cindex multi-measure rest, attaching text
@cindex script on multi-measure rest
+@cindex multi-measure rest, script
@cindex fermata on multi-measure rest
+@cindex multi-measure rest, attaching fermata
Text can be added to multi-measure rests by using the
-@var{note}-@code{markup} syntax described in @ref{Text markup}.
+@var{note} - @code{\markup} syntax described in @ref{Text markup}.
The variable @code{\fermataMarkup} is provided for adding
fermatas.
R2.^\fermataMarkup
@end lilypond
-@warning{Text attached to a multi-measure rest is created
+@warning{Text attached to a multi-measure rest is created
by @code{MultiMeasureRestText}, not
@code{TextScript}. Overrides must be directed to the correct
object, or they will be ignored. See the following example.}
@lilypond[quote,ragged-right,verbatim,fragment]
+% This fails, as the wrong object name is specified
\override TextScript #'padding = #5
-R1^"low"
+R1^"wrong"
+% This is correct and works
\override MultiMeasureRestText #'padding = #5
-R1^"high"
+R1^"right"
@end lilypond
Text attached to a multi-measure rest will be centered above or
text of two marks is short enough to fit it will be placed
alongside and to the left of the bar count numeral.
+@predefined
+@code{\textLengthOn},
+@code{\textLengthOff},
+@code{\fermataMarkup}
+
+@snippets
+
+@cindex church rest
+@cindex rest, church
+@cindex kirchenpausen
+
+@c TODO Send as snippet "changing form of multi-measure rests"
+If there are 10 or fewer measures of rest, LilyPond prints
+a series of longa and breve rests (called in German
+Kirchenpausen - church rests) within the staff and
+prints a simple line otherwise. This default number of 10
+may be changed by an override:
+
+@lilypond[quote,ragged-right,fragment,verbatim]
+\set Score.skipBars = ##t
+R1*2 | R1*5 | R1*9
+\override MultiMeasureRest #'expand-limit = 3
+R1*2 | R1*5 | R1*9
+@end lilypond
+@c TODO End of snippet "changing form of multi-measure rests"
+
+@cindex multi-measure rests, positioning
+@cindex positioning multi-measure rests
+
+@c TODO Send as snippet "positioning multi-measure rests"
+Note that, unlike ordinary rests, there is no predefined command
+to change the vertical position on the staff of a multi-measure
+rest symbol of either form by attaching it to a note. However,
+in polyphonic music multi-measure rests in odd-numbered and
+even-numbered voices are vertically separated. The positioning
+of multi-measure rests can be controlled as follows:
+
+@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
+% Multi-measure rests by default are set under the 2nd line
+R1
+% They can be moved with an override
+\override MultiMeasureRest #'staff-position = #-2
+R1
+% A value of 0 is the default position;
+% the following trick moves the rest to the center line
+\override MultiMeasureRest #'staff-position = #-0.01
+R1
+% Multimeasure rests in odd-numbered voices are under the top line
+<< {R1} \\ {a1} >>
+% Multi-measure rests in even-numbered voices are under the bottom line
+<< {c1} \\ {R1} >>
+% They remain separated even in empty bars
+<< {R1} \\ {R1} >>
+% This brings them together even though there are two voices
+\set Score.skipBars = ##t
+<<
+ \revert MultiMeasureRest #'staff-position
+ {R1*3}
+\\
+ \revert MultiMeasureRest #'staff-position
+ {R1*3}
+>>
+@end lilypond
+@c End snippet "positioning multi-measure rests"
+
@seealso
-Notation Reference: @ref{Durations}, @ref{Text},
-@ref{Text markup}, @ref{Text scripts}.
+Music Glossary:
+@rglos{multi-measure rest},
+@rglos{church rests}.
-Snippets: @lsrdir{Rhythms,Rhythms}
+Notation Reference:
+@ref{Durations},
+@ref{Text},
+@ref{Text markup},
+@ref{Text scripts}.
-Internals Reference: @internalsref{MultiMeasureRest}.
+Snippets: @lsrdir{Rhythms,Rhythms}
-The layout object @internalsref{MultiMeasureRestNumber} is for the
-default number, and @internalsref{MultiMeasureRestText} for user
-specified texts.
+Internals Reference:
+@internalsref{MultiMeasureRest},
+@internalsref{MultiMeasureRestNumber},
+@internalsref{MultiMeasureRestText}.
@knownissues
@cindex condensing rests
-There is no way to automatically condense multiple rests into a
-single multi-measure rest. Multi-measure rests do not take part
-in rest collisions.
+There is no way to automatically condense multiple ordinary rests
+into a single multi-measure rest.
+
+Multi-measure rests do not take part in rest collisions.
Be careful when entering multi-measure rests followed by whole
notes. The following will enter two notes lasting four measures
+