From: Graham Percival Date: Thu, 27 Dec 2007 00:57:05 +0000 (-0800) Subject: Rewriting from Eyolf. X-Git-Tag: release/2.11.37-1~19 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=1d98ec0be92ec5a6a3debe32d22c62435de2fe12;p=lilypond.git Rewriting from Eyolf. --- diff --git a/Documentation/user/repeats.itely b/Documentation/user/repeats.itely index 31f1e87fcc..87bf6235b1 100644 --- a/Documentation/user/repeats.itely +++ b/Documentation/user/repeats.itely @@ -26,11 +26,68 @@ exist for repetitions. Blah blah @menu -* Normal repeats:: * Repeat syntax:: +* Normal repeats:: * Manual repeat commands:: @end menu + +@node Repeat syntax +@unnumberedsubsubsec Repeat syntax + +@cindex repeats + +LilyPond has one syntactic construct for specifying different +types of repeats. The syntax is + +@example +\repeat @var{variant} @var{repeatcount} @var{repeatbody} +@end example + +where @var{repeabody} is a music expression. + +The following types of repetition are supported + +@table @code +@item volta +The repeated music is not written out but enclosed in repeat bar +lines. If the repeat is at the beginning of a piece, a repeat bar +line is only printed at the end. Alternative endings (volte) are +printed, left to right with brackets. This is the standard +notation for repeats with alternatives. + +@item unfold +The repeated music is fully written out, as many times as +specified by @var{repeatcount}. This is useful when +entering repetitious music. + +@item tremolo +Make tremolo beams. + +@item percent +Make beat or measure repeats. These look like percent signs. +Percent repeats must be declared within a @code{Voice} context. + +@end table + +Alternative endings are entered with +@funindex \alternative +@example +\alternative @{ + @var{alternative1} + @var{alternative2} + @var{alternative3} + @dots{} +@} +@end example + +@noindent +after a @code{\repeat volta} or @code{unfold} block, where each +@var{alternative} is a music expression. If you give +less alternatives than @var{repeatcount}, the first alternative +is assumed to be played more than once. + + @node Normal repeats @unnumberedsubsubsec Normal repeats @@ -39,7 +96,7 @@ Blah blah @cindex seconda volta @funindex \repeat -Normal repeats, with or without alternate repeats, may be printed: +Normal repeats, with or without alternate repeats: @lilypond[quote,ragged-right,fragment,verbatim,relative=2] \repeat volta 2 { c4 d e f } @@ -51,7 +108,7 @@ Normal repeats, with or without alternate repeats, may be printed: c1 @end lilypond -Repeats with upbeats may be created. +Repeats with upbeats: @lilypond[quote,ragged-right,fragment,verbatim,relative=2] \new Staff { @@ -75,7 +132,7 @@ or @funindex \repeatTie -Ties may be added to a second ending, +Ties may be added to a second ending: @lilypond[quote,ragged-right,fragment,verbatim,relative=2] c1 @@ -83,9 +140,10 @@ c1 \alternative { {f2 d} {f\repeatTie f,} } @end lilypond -It is possible to shorten volta brackets by setting -@code{voltaSpannerDuration}. In the next example, the bracket -only lasts one measure, which is a duration of 3/4. +By default, the volta brackets will be drawn over all of the +alternative music, but it is possible to shorten them by +setting @code{voltaSpannerDuration}. In the next example, the +bracket only lasts one measure, which is a duration of 3/4. @lilypond[verbatim,ragged-right,quote] \relative c''{ @@ -98,6 +156,24 @@ only lasts one measure, which is a duration of 3/4. } @end lilypond +The @code{Volta_engraver} by default resides in the Score context, +and brackets for the repeat are thus normally only printed over +the topmost staff. This can be adjusted by adding +@code{Volta_engraver} to the Staff context where you want the +brackets to appear; see @ref{Modifying context plug-ins} and +@lsr{repeats,volta@/-multi@/-staff@/.ly}. + +@lilypond[verbatim,ragged-right,quote] +\score { << + \new Staff { \repeat volta 2 { c'1 } \alternative { c' } } + \new Staff { \repeat volta 2 { c'1 } \alternative { c' } } + \new Staff \with { \consists Volta_engraver } { c'2 g' e' a' } + \new Staff { \repeat volta 2 { c'1 } \alternative { c' } } + >> } +@end lilypond + +@c Is there a way to have a final bar ("|.") at the end of the +@c previous line? Doesn't seem to be. If you want to start a repeat at the beginning of a line and have a double bar at the end of the previous line, use @@ -117,13 +193,7 @@ Internals Reference: @internalsref{VoltaBracket}, @internalsref{VoltaRepeatedMusic}, and @internalsref{UnfoldedRepeatedMusic}. -Examples: - -Brackets for the repeat are normally only printed over the topmost -staff. This can be adjusted by moving @code{Volta_engraver} to -the Staff context where you want the brackets to appear; see -@ref{Modifying context plug-ins} and -@lsr{repeats,volta@/-multi@/-staff@/.ly}. +@c Examples: @refbugs @@ -152,66 +222,16 @@ repeated. -@node Repeat syntax -@unnumberedsubsubsec Repeat syntax - -@cindex repeats - -LilyPond has one syntactic construct for specifying different -types of repeats. The syntax is - -@example -\repeat @var{variant} @var{repeatcount} @var{repeatbody} -@end example - -If you have alternative endings, you may add -@funindex \alternative -@example -\alternative @{ - @var{alternative1} - @var{alternative2} - @var{alternative3} - @dots{} -@} -@end example - -@noindent -where each @var{alternative} is a music expression. If you do not -give enough alternatives for all of the repeats, the first -alternative is assumed to be played more than once. - -The following types of repetition are supported - -@table @code -@item unfold -Repeated music is fully written (played) out. This is useful when -entering repetitious music. This is the only kind of repeat that -is included in MIDI output. - -@item volta -Repeats are not written out, but alternative endings (volte) are -printed, left to right with brackets. This is the standard -notation for repeats with alternatives. These are not played in -MIDI output by default. - - -@item tremolo -Make tremolo beams. These are not played in MIDI output by -default. - -@item percent -Make beat or measure repeats. These look like percent signs. -These are not played in MIDI output by default. Percent repeats -must be declared within a @code{Voice} context. - -@end table - - @node Manual repeat commands @unnumberedsubsubsec Manual repeat commands @funindex repeatCommands +@c FIXME: Markup does not work in the "text" field +@c And how does one change the font? +@c On the whole, this section needs better documentation (why the +@c double parentheses around the volta expressions?) + The property @code{repeatCommands} can be used to control the layout of repeats. Its value is a Scheme list of repeat commands. @@ -223,10 +243,11 @@ Print a @code{|:} bar line. Print a @code{:|} bar line. @item @code{(volta @var{text})} -Print a volta bracket saying @var{text}: The text can be specified -as a text string or as a markup text, see @ref{Text markup}. Do -not forget to change the font, as the default number font does not -contain alphabetic characters; +Print a volta bracket saying @var{text}. The text can be +specified as a text string or as a markup text, see @ref{Text +markup}. Do not forget to change the font, as the default number +font does not contain alphabetic characters; + @item @code{(volta #f)} Stop a running volta bracket. @@ -255,7 +276,6 @@ and @internalsref{UnfoldedRepeatedMusic}. @menu * Tremolo repeats:: -* Tremolo subdivisions:: * Measure repeats:: @end menu @@ -265,7 +285,7 @@ and @internalsref{UnfoldedRepeatedMusic}. @cindex tremolo beams To place tremolo marks between notes, use @code{\repeat} with -tremolo style +tremolo style: @lilypond[quote,verbatim,ragged-right] \new Voice \relative c' { @@ -275,37 +295,32 @@ tremolo style } @end lilypond -Tremolo marks can also be put on a single note. In this case, the -note should not be surrounded by braces. +The @code{\repeat tremolo} syntax expects exactly two notes within +the braces, and the number of repetitions must correspond to a +note value that can be expressed with plain or dotted notes. Thus, +@code{\repeat tremolo 7} is valid and produces a double dotted +note, but @code{\repeat tremolo 9} is not. + +The duration of the tremolo equals the duration of the +braced expression multiplied by the number of repeats: +@code{\repeat tremolo 8 @{ c16 d16 @}} gives a whole note tremolo, +notated as two whole notes joined by tremolo beams. + +There are two ways to put tremolo marks on a single note. The +@code{\repeat tremolo} syntax can be used even here, in which case +the note should not be surrounded by braces: @lilypond[quote,verbatim,ragged-right] \repeat tremolo 4 c'16 @end lilypond -Similar output is obtained using the tremolo subdivision, -described in @ref{Tremolo subdivisions}. - - -@seealso - -Notation Reference: @ref{Tremolo subdivisions}, @ref{Repeats}. - -Snippets: @lsrdir{repeats} - -Internals Reference: @internalsref{Beam}, -@internalsref{StemTremolo}. - - -@node Tremolo subdivisions -@unnumberedsubsubsec Tremolo subdivisions - @cindex tremolo marks @funindex tremoloFlags -Tremolo marks can be printed on a single note by adding +The same output can be obtained by adding @q{@code{:}[@var{number}]} after the note. The number indicates the duration of the subdivision, and it must be at least 8. A -@var{length} value of 8 gives one line across the note stem. If +@var{number} value of 8 gives one line across the note stem. If the length is omitted, the last value (stored in @code{tremoloFlags}) is used @@ -316,14 +331,18 @@ c'2:8 c':32 | c': c': | @refbugs -Tremolos entered in this way do not carry over into the MIDI -output. + +Tremolos entered with @q{@code{:}[@var{number}]} do not carry over +into the MIDI output. @seealso Notation Reference: @ref{Tremolo repeats}. +Internals Reference: @internalsref{Beam}, +@internalsref{StemTremolo}. + Snippets: @lsrdir{repeats} Elsewhere: @internalsref{StemTremolo}. @@ -335,12 +354,12 @@ Elsewhere: @internalsref{StemTremolo}. @cindex percent repeats @cindex measure repeats -In the @code{percent} style, a note pattern can be repeated. It -is printed once, and then the pattern is replaced with a special -sign. Patterns of one and two measures are replaced by -percent-like signs, patterns that divide the measure length are -replaced by slashes. Percent repeats must be declared within a -@code{Voice} context. +A note pattern can be repeated with the @code{\repeat percent +@var{number}} syntax. The music is printed once, and the pattern +is replaced with a special sign. Patterns of one and two measures +are replaced by percent-like signs, patterns that divide the +measure length are replaced by slashes. Percent repeats must be +declared within a @code{Voice} context. @lilypond[quote,verbatim,ragged-right] \new Voice \relative c' { @@ -349,20 +368,19 @@ replaced by slashes. Percent repeats must be declared within a } @end lilypond -Measure repeats of more than 2 measures get a counter, if you -switch on the @code{countPercentRepeats} property, +Measure repeats of more than two measures get a counter if you +switch on the @code{countPercentRepeats} property: @lilypond[relative=2,fragment,quote,verbatim,ragged-right] \new Voice { -\set countPercentRepeats = ##t + \set countPercentRepeats = ##t \repeat percent 4 { c1 } } @end lilypond - -Isolated percents can also be printed. This is done by putting a -multi-measure rest with a different print function, +Isolated percents can also be printed. This is done by entering a +multi-measure rest with a different print function: @lilypond[fragment,verbatim,quote] \override MultiMeasureRest #'stencil @@ -385,3 +403,4 @@ Internals Reference: @internalsref{RepeatSlash}, +