[ << Musical notation ] | [Top][Contents][Index] | [ Specialist notation >> ] |
[ < Short repeats ] | [ Up : Short repeats ] | [ Tremolo repeats > ] |
Percent repeats
Repeated short patterns are printed once, and the repeated pattern is replaced with a special sign.
The syntax is
\repeat percent number musicexpr
where musicexpr
is a music expression.
Patterns that are shorter than one measure are replaced by slashes.
\relative c'' { \repeat percent 4 { c128 d e f } \repeat percent 4 { c64 d e f } \repeat percent 5 { c32 d e f } \repeat percent 4 { c16 d e f } \repeat percent 4 { c8 d } \repeat percent 4 { c4 } \repeat percent 2 { c2 } }
Patterns of one or two measures are replaced by percent-like symbols.
\relative c'' { \repeat percent 2 { c4 d e f } \repeat percent 2 { c2 d } \repeat percent 2 { c1 } }
\relative { \repeat percent 3 { c''4 d e f | c2 g' } }
Note that the correct time offset to access the
DoublePercentRepeat
grob is the beginning of the repeat’s
second bar, which can be easily achieved with \after
.
\new Voice \with { \consists Balloon_engraver } { \after 1*3 \balloonGrobText DoublePercentRepeat #'(-1 . 2) "repeat" \repeat percent 2 { g'1 | a'1 } }
Patterns that are shorter than one measure but contain mixed durations use a double-percent symbol.
\relative { \repeat percent 4 { c''8. <d f>16 } \repeat percent 2 { \tuplet 3/2 { r8 c d } e4 } }
Selected Snippets
Percent repeat counter
Measure repeats of more than two repeats can get a counter when the convenient property is switched, as shown in this example:
\relative c'' { \set countPercentRepeats = ##t \repeat percent 4 { c1 } }
Percent repeat count visibility
Percent repeat counters can be shown at regular intervals by setting
the context property repeatCountVisibility
.
\relative c'' { \set countPercentRepeats = ##t \set repeatCountVisibility = #(every-nth-repeat-count-visible 5) \repeat percent 10 { c1 } \break \set repeatCountVisibility = #(every-nth-repeat-count-visible 2) \repeat percent 6 { c1 d1 } }
Isolated percent repeats
Isolated percents can also be printed.
makePercent = #(define-music-function (note) (ly:music?) "Make a percent repeat the same length as NOTE." (make-music 'PercentEvent 'length (ly:music-length note))) \relative c'' { \makePercent s1 }
See also
Music Glossary: percent repeat, simile.
Snippets: Repeats.
Internals Reference: RepeatSlash, RepeatSlashEvent, DoubleRepeatSlash, PercentRepeat, PercentRepeatCounter, PercentRepeatedMusic, Percent_repeat_engraver, DoublePercentEvent, DoublePercentRepeat, DoublePercentRepeatCounter, Double_percent_repeat_engraver, Slash_repeat_engraver.
Known issues and warnings
Percent repeats will not contain anything else apart from the percent sign itself; in particular, timing changes will not be repeated.
\repeat percent 3 { \time 5/4 c2. 2 \time 4/4 2 2 }
Any meter changes or \partial
commands need to occur in parallel
passages outside of any percent repeat, e.g in a separate
timing track.
<< \repeat percent 3 { c2. 2 2 2 } \repeat unfold 3 { \time 5/4 s4*5 \time 4/4 s1 } >>
[ << Musical notation ] | [Top][Contents][Index] | [ Specialist notation >> ] |
[ < Short repeats ] | [ Up : Short repeats ] | [ Tremolo repeats > ] |