Program reference: @internalsref{TransposedMusic}.
-Example: @inputfileref{input/@/test,smart@/-transpose@/.ly}.
+Example: @lsr{scheme,transpose-pitches-with-minimum-accidentals.ly}.
@refbugs
If you want to allow line breaking on the bar lines where
@internalsref{Completion_heads_engraver} splits notes, you must
-also remove @internalsref{Forbid_line_breaks_engraver}.
+also remove @internalsref{Forbid_line_break_engraver}.
@refbugs
For more information about chords, see @ref{Chord names}.
+@c I don't like having this here, but I can't think of
+@c anywhere else to put it. :( -gp
@node Stems
@subsection Stems
outside the @code{<< \\ >>} construct. This should be noted when making
changes at the voice level. This also means that slurs and ties cannot go
into or out of a @code{<< \\ >>} construct. Conversely, parallel voices
-from separate @code{<< \\ >>} constructs on the same staff are the the
-same voice. Here is the same example, with different noteheads for each
+from separate @code{<< \\ >>} constructs on the same staff are the
+same voice. Here is the same example, with different noteheads and
+colors for each
voice. Note that the change to the note-head style in the main voice does
not affect
the inside of the @code{<< \\ >>} constructs. Also, the change to the
@lilypond[quote,verbatim,fragment]
\new Staff \relative c' {
\override NoteHead #'style = #'cross
+ \override NoteHead #'color = #red
c16 d e f
<<
{ g4 f e } \\
{ \override NoteHead #'style = #'triangle
+ \override NoteHead #'color = #blue
r8 e4 d c8 ~ }
>> |
<<
{ d2 e2 } \\
{ c8 b16 a b8 g ~ g2 } \\
- { \override NoteHead #'style = #'slash s4 b4 c2 }
+ { \override NoteHead #'style = #'slash
+ \override NoteHead #'color = #green
+ s4 b4 c2 }
>>
}
@end lilypond
An expression that appears directly inside a @code{<< >>} belongs to
the main voice. This is useful when extra voices appear while the main
voice is playing. Here is a more correct rendition of the example from
-the previous section. The crossed noteheads demonstrate that the main
+the previous section. The crossed colored noteheads demonstrate that the main
melody is now in a single voice context.
@lilypond[quote,ragged-right,verbatim]
\new Staff \relative c' {
\override NoteHead #'style = #'cross
+ \override NoteHead #'color = #red
c16 d e f
\voiceOne
<<
Program reference: @internalsref{TimeSignature}, and
@internalsref{Timing_translator}.
-Examples: @inputfileref{input/@/test,compound@/-time@/.ly}.
+Examples: @lsr{contemporary,compound-time-signature.ly}.
@refbugs
@internalsref{SystemStartBar}, @internalsref{SystemStartBrace}, and
@internalsref{SystemStartBracket}. Only one of these types is created
in every context, and that type is determined by the property
-@internalsref{systemStartDelimiter}.
+@code{systemStartDelimiter}.
@commonprop
System start delimiters may be deeply nested,
@lilypond[quote,ragged-right,verbatim]
-\new StaffGroup
+\new StaffGroup
\relative <<
\set StaffGroup.systemStartDelimiterHierarchy
= #'(SystemStartSquare (SystemStartBracket a (SystemStartSquare b)) d)
The staff symbol may be tuned in the number, thickness and distance
of lines, using properties. This is demonstrated in the example files
-@inputfileref{input/@/test,staff@/-lines@/.ly},
-@inputfileref{input/@/test,staff@/-size@/.ly}.
+@lsr{staff,changing-the-number-of-lines-in-a-staff.ly} and
+@lsr{staff,changing-the-staff-size.ly}.
In addition, staves may be started and stopped at will. This is done
with @code{\startStaff} and @code{\stopStaff}.
Program reference: @internalsref{StaffSymbol}.
-Examples: @inputfileref{input/@/test,staff@/-lines@/.ly},
-@inputfileref{input/@/test@/,ossia.ly},
-@inputfileref{input/@/test,staff@/-size@/.ly},
-@lsr{staff,staff-line-positions.ly}
+Examples: @lsrdir{staff}
@node Writing music in parallel
@lilypond[fragment,verbatim,relative=1,ragged-right,quote]
\set tieWaitForNote = ##t
\grace { c16[~ e~ g]~ } <c, e g>2
-\repeat "tremolo" 8 { c32~ c'~ } <c c,>1
+\repeat tremolo 8 { c32~ c'~ } <c c,>1
e8~ c~ a~ f~ <e' c a f>2
@end lilypond
@funindex stemLeftBeamCount
@funindex stemRightBeamCount
-Normally, beaming patterns within a beam are determined automatically.
-If necessary, the properties @code{stemLeftBeamCount} and
-@code{stemRightBeamCount} can be used to override the defaults. If
+
+LilyPond can automatically determine beaming patterns within a beam,
+but this automatic behavior can sometimes produce odd results;
+therefore the @code{stemLeftBeamCount} and @code{stemRightBeamCount} properties can
+be used to override the defaults. If
either property is set, its value will be used only once, and then it
-is erased
+is erased.
@lilypond[quote,ragged-right,fragment,relative=1,verbatim]
{
@cindex kneed beams
@cindex auto-knee-gap
-
-@refbugs
-
Kneed beams are inserted automatically when a large gap is detected
between the note heads. This behavior can be tuned through the
@code{auto-knee-gap} object.
+
+@refbugs
+
Automatically kneed cross-staff beams cannot be used together with
hidden staves. See @ref{Hiding staves}.
+@c Is this still true with skyline spacing stuff? -J.Mandereau
Beams do not avoid collisions with symbols around the notes, such as
texts and accidentals.
Unlike @code{\acciaccatura} and @code{\appoggiatura}, the
@code{\grace} command does not start a slur.
+@cindex timing, internal
+
Internally, timing for grace notes is done using a second, @q{grace}
timing. Every point in time consists of two rational numbers: one
denotes the logical time, one denotes the grace timing. The above
By adjusting the duration of the skip note (here it is a half-note),
the space between the main-note and the grace is adjusted.
-A @code{\grace} section will introduce special typesetting settings,
+A @code{\grace} music expression will introduce special typesetting settings,
for example, to produce smaller type, and set directions. Hence, when
-introducing layout tweaks, they should be inside the grace section,
+introducing layout tweaks, they should be inside the grace expression,
for example,
@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
@end lilypond
@noindent
-The overrides should also be reverted inside the grace section.
+The overrides should also be reverted inside the grace expression.
-The layout of grace sections can be changed throughout the music using
-the function @code{add-grace-property}. The following example
-undefines the @code{Stem} direction for this grace, so
-that stems do not always point up.
+The layout of grace expressions can be changed throughout the music
+using the function @code{add-grace-property}. The following example
+undefines the @code{Stem} direction for this grace, so that stems do not
+always point up.
@example
\new Staff @{
@refbugs
-A score that starts with a @code{\grace} section needs an explicit
+A score that starts with a @code{\grace} expression needs an explicit
@code{\new Voice} declaration, otherwise the main note and the grace
note end up on different staves.
This can be remedied by inserting grace skips of the corresponding
durations in the other staves. For the above example
-@example
-\new Staff @{ c4 \bar "|:" \grace s16 d4 @}
-@end example
+@lilypond[quote,ragged-right,relative=2,verbatim,fragment]
+<< \new Staff { e4 \bar "|:" \grace c16 d4 }
+ \new Staff { c4 \bar "|:" \grace s16 d4 } >>
+@end lilypond
Grace sections should only be used within sequential music
expressions. Nesting or juxtaposing grace sections is not supported,
@cindex organ pedal marks
@cindex turn
@cindex open
+@cindex stopped
@cindex flageolet
@cindex reverseturn
@cindex trill
@cindex prallmordent
@cindex prall, up
@cindex prall, down
-@cindex mordent
@cindex thumb marking
@cindex segno
@cindex coda
f\stopTrillSpan
@end lilypond
+@noindent
The first argument is the main note. The pitch of the second
is printed as a stemless note head in parentheses.
@end lilypond
+@commonprop
+
+@lilypond[quote,ragged-right,verbatim]
+I = \once \override NoteColumn #'ignore-collision = ##t
+
+\relative <<
+ { \oneVoice \stemDown f2 \glissando \stemNeutral a } \\
+ { \oneVoice \I c2 \glissando \I d, }
+>>
+@end lilypond
+
+
+
@seealso
Program reference: @internalsref{Glissando}.
@lsr{expressive,glissando.ly}, @lsr{expressive,line-styles.ly}
-
@refbugs
Printing text over the line (such as @emph{gliss.}) is not supported.
>>
@end lilypond
+@c TODO: cross-voice arpeggio example?
+@c such an example is already in LSR -J.Mandereau
@refcommands
@subsection Repeat types
@cindex repeats
-@funindex \repeat
The following types of repetition are supported
@cindex volta
@cindex prima volta
@cindex seconda volta
+@funindex \repeat
LilyPond has one syntactic construct for specifying different types of
repeats. The syntax is
}
@end lilypond
+@noindent
+or
+
+@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
+\new Staff {
+ \partial 4
+ \repeat volta 4 { e | c2 d2 | e2 f2 | }
+ \alternative { { \partial 4*3 g4 g g } { a a a a | b2. } }
+}
+@end lilypond
+
+
+
@funindex \repeatTie
Ties may be added to a second ending,
\relative c''{
\time 3/4
c c c
- \set Staff.voltaSpannerDuration = #(ly:make-moment 3 4)
- \repeat "volta" 5 { d d d }
+ \set Score.voltaSpannerDuration = #(ly:make-moment 3 4)
+ \repeat volta 5 { d d d }
\alternative { { e e e f f f }
{ g g g } }
}
@end lilypond
+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
+@example
+@dots{} \bar "||:" \break
+\repeat volta 2 @{ @dots{}
+@end example
+see @ref{Bar lines} for more information.
@seealso
+Program reference: @internalsref{VoltaBracket},
+@internalsref{RepeatedMusic},
+@internalsref{VoltaRepeatedMusic}, and
+@internalsref{UnfoldedRepeatedMusic}.
+
Examples:
Brackets for the repeat are normally only printed over the topmost
-staff. This can be adjusted by setting the @code{voltaOnThisStaff}
-property; see
+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}.
example, by setting @code{Score.measurePosition} or entering
@code{\partial}. Similarly, slurs or ties are also not repeated.
-Volta brackets are not vertically aligned.
-
@node Repeats and MIDI
@subsection Repeats and MIDI
Program reference: @internalsref{VoltaBracket},
@internalsref{RepeatedMusic},
-@internalsref{VoltaRepeatedMusic},
-@internalsref{UnfoldedRepeatedMusic}, and
-@internalsref{FoldedRepeatedMusic}.
+@internalsref{VoltaRepeatedMusic}, and
+@internalsref{UnfoldedRepeatedMusic}.
@node Tremolo repeats
style
@lilypond[quote,verbatim,ragged-right]
\new Voice \relative c' {
- \repeat "tremolo" 8 { c16 d16 }
- \repeat "tremolo" 4 { c16 d16 }
- \repeat "tremolo" 2 { c16 d16 }
+ \repeat tremolo 8 { c16 d16 }
+ \repeat tremolo 4 { c16 d16 }
+ \repeat tremolo 2 { c16 d16 }
}
@end lilypond
Tremolo marks can also be put on a single note. In this case, the
note should not be surrounded by braces.
@lilypond[quote,verbatim,ragged-right]
-\repeat "tremolo" 4 c'16
+\repeat tremolo 4 c'16
@end lilypond
Similar output is obtained using the tremolo subdivision, described in
@lilypond[quote,verbatim,ragged-right]
\new Voice \relative c' {
- \repeat "percent" 4 { c4 }
- \repeat "percent" 2 { c2 es2 f4 fis4 g4 c4 }
+ \repeat percent 4 { c4 }
+ \repeat percent 2 { c2 es2 f4 fis4 g4 c4 }
}
@end lilypond
@lilypond[relative=2,fragment,quote,verbatim,ragged-right]
\new Voice {
\set countPercentRepeats = ##t
- \repeat "percent" 4 { c1 }
+ \repeat percent 4 { c1 }
}
@end lilypond