[ << Musical notation ] | [Top][Contents][Index] | [ Specialist notation >> ] |
[ < Formatting cue notes ] | [ Up : Writing parts ] | [ Editorial annotations > ] |
Compressing empty measures
By default, all measures are printed even if they are empty – which can happen if a rhythmic event (such as notes, rests or invisible rests) is so long as to span several measures. This behavior can be changed by contracting all empty measures into a single one, as illustrated here (the second part of this example, with expanded measures, actually reverts back to the default behavior):
\override Score.BarNumber.break-visibility = ##(#f #t #t) \time 2/4 \compressEmptyMeasures c'1 d'1. e'\breve \bar "||" \expandEmptyMeasures c'1 d'1. e'\breve
Although that notation is syntactically correct, it may be
confusing from a musical point of view, as illustrated in
the previous example; hence the need for measure numbers
to be explicitly printed, using the syntax described in
Using break-visibility
.
Where such a notation may become more useful is when applied to Full measure rests. A multi-measure rest will then 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 \compressEmptyMeasures r1 | R1*17 | R1*4 | \expandEmptyMeasures % Rest measures expanded again \time 3/4 R2.*2 |
Unlike \compressEmptyMeasures
, the music function
\compressMMRests
will only apply to rests, leaving
any other events uncompressed. As a function rather than
a property setting, its syntax differs slightly in that
it must be followed by a music expression:
\compressMMRests { % Rests are compressed... R1*7 % ... but notes can still span multiple measures. g'1 a'1*2 d'1 R1*2 }
All of the commands described in this section actually
rely on the skipBars
internal property, which is
set in the Score
context, see \set
and \unset
.
Predefined commands
\compressEmptyMeasures
,
\expandEmptyMeasures
,
\compressMMRests
.
Selected Snippets
Numbering single measure rests
Multi measure rests show their length by a number except for single
measures. This can be changed by setting restNumberThreshold
.
{ \compressEmptyMeasures R1 R1*10 R1*11 \bar "||" \set restNumberThreshold = 0 R1 R1*10 R1*11 \bar "||" \set restNumberThreshold = 10 R1 R1*10 R1*11 }
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'' { \compressMMRests { R1*2 | R1*5 | R1*9 \override MultiMeasureRest.expand-limit = 3 R1*2 | R1*5 | R1*9 } }
See also
Notation Reference:
Using break-visibility
,
Full measure rests,
\set
and \unset
.
Internals Reference: MultiMeasureRest, MultiMeasureRestNumber, MultiMeasureRestScript, MultiMeasureRestText.
[ << Musical notation ] | [Top][Contents][Index] | [ Specialist notation >> ] |
[ < Formatting cue notes ] | [ Up : Writing parts ] | [ Editorial annotations > ] |