Previous: Invisible rests, Up: Writing rests


1.2.2.3 Full measure rests

Rests for one or more full measures are entered like notes with the note name uppercase R:

     
     % Rest measures contracted to single measure
     \compressFullBarRests
     R1*4
     R1*24
     R1*4
     b2^"Tutti" b4 a4

[image of music]

The duration of full-measure rests is identical to the duration notation used for notes. The duration in a multi-measure rest must always be an integral number of measure-lengths, so augmentation dots or fractions must often be used:

     
     \compressFullBarRests
     \time 2/4
     R1 | R2 |
     \time 3/4
     R2. | R2.*2 |
     \time 13/8
     R1*13/8 | R1*13/8*12 |
     \time 10/8
     R4*5*4 |

[image of music]

A full-measure rest is printed as either a whole or breve rest, centered in the measure, depending on the time signature.

     
     \time 4/4
     R1 |
     \time 6/4
     R1*3/2 |
     \time 8/4
     R1*2 |

[image of music]

By default a multi-measure rest is expanded in the printed score to show all the rest measures explicitly. Alternatively, a mult-measure rest can be shown as a single measure containing a multi-measure rest symbol, with the number of measures of rest printed above the measure:

     
     % Default behavior
     \time 3/4 r2. | R2.*2 |
     \time 2/4 R2 |
     \time 4/4
     % Rest measures contracted to single measure
     \compressFullBarRests
     r1 | R1*17 | R1*4 |
     % Rest measures expanded
     \expandFullBarRests
     \time 3/4
     R2.*2 |

[image of music]

Markups can be added to multi-measure rests. The predefined command \fermataMarkup is provided for adding fermatas.

     
     \compressFullBarRests
     \time 3/4
     R2.*10^\markup { \italic "ad lib." }
     R2.^\fermataMarkup

[image of music]

Note: Markups attached to a multi-measure rest are objects of type MultiMeasureRestText, not TextScript. Overrides must be directed to the correct object, or they will be ignored. See the following example.

     
     % This fails, as the wrong object name is specified
     \override TextScript #'padding = #5
     R1^"wrong"
     % This is correct and works
     \override MultiMeasureRestText #'padding = #5
     R1^"right"

[image of music]

When a multi-measure rest immediately follows a \partial setting, resulting bar-check warnings may not be displayed.

Predefined commands

\textLengthOn, \textLengthOff, \fermataMarkup, \compressFullBarRests, \expandFullBarRests.

Selected Snippets

Changing form of multi-measure rests

If there are ten or fewer measures of rests, a series of longa and breve rests (called in German "Kirchenpausen" - church rests) is printed within the staff; otherwise a simple line is shown. This default number of ten may be changed by overriding the expand-limit property:

     
     \relative c'' {
       \compressFullBarRests
       R1*2 | R1*5 | R1*9
       \override MultiMeasureRest #'expand-limit = 3
       R1*2 | R1*5 | R1*9
     }

[image of music]

Positioning multi-measure rests

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:

     
     \relative c'' {
       % Multi-measure rests by default are set under the second 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
       % Multi-measure 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 measures
       << { R1 } \\ { R1 } >>
       % This brings them together even though there are two voices
       \compressFullBarRests
       <<
         \revert MultiMeasureRest #'staff-position
         { R1*3 }
         \\
         \revert MultiMeasureRest #'staff-position
         { R1*3 }
       >>
     }

[image of music]

Markups attached to a multi-measure rest will be centered above or below it. Long markups attached to multi-measure rests do not cause the measure to expand. To expand a multi-measure rest to fit the markup, use a spacer rest with an attached markup before the multi-measure rest:

     
     \compressFullBarRests
     \textLengthOn
     s1*0^\markup { [MAJOR GENERAL] }
     R1*19
     s1*0_\markup { \italic { Cue: ... it is yours } }
     s1*0^\markup { A }
     R1*30^\markup { [MABEL] }
     \textLengthOff
     c4^\markup { CHORUS } d f c

[image of music]

Note that the spacer rest causes a bar to be inserted. Text attached to a spacer rest in this way is left-aligned to the position where the note would be placed in the measure, but if the measure length is determined by the length of the text, the text will appear to be centered.

See also

Music Glossary: multi-measure rest.

Notation Reference: Durations, Text, Formatting text, Text scripts.

Snippets: Rhythms.

Internals Reference: MultiMeasureRest, MultiMeasureRestNumber, MultiMeasureRestText.

Known issues and warnings

If an attempt is made to use fingerings (e.g., R1*10-4) to put numbers over multi-measure rests, the fingering numeral (4) may collide with the bar counter numeral (10).

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.

This page is for LilyPond-2.11.58 (development-branch).

Report errors to http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs.

Your suggestions for the documentation are welcome.

Other languages: français, español.