@end lilypond
As with regular chords, the chord repetition symbol can be used with
-durations, articulations, markups, slurs, beams, etc. as only the
+durations, articulations, markups, slurs, beams, etc., as only the
pitches of the previous chord are duplicated.
@lilypond[verbatim,quote]
@cindex note cluster
@funindex \makeClusters
-@funindex makeClusters
A cluster indicates a continuous range of pitches to be played.
They can be denoted as the envelope of a set of notes. They are
* Single-staff polyphony::
* Voice styles::
* Collision resolution::
+* Merging rests::
* Automatic part combining::
* Writing music in parallel::
@end menu
@cindex lyrics assigned to one voice
@funindex \voiceOne
-@funindex voiceOne
@funindex \voiceOne ... \voiceFour
@funindex Voice
@funindex \oneVoice
-@funindex oneVoice
@subsubsubheading Explicitly instantiating voices
>>
@end lilypond
-@warning{Lyrics, spanners (such as slurs, ties, hairpins etc.) cannot be
-created @q{across} voices.}
+@funindex \voices
+When a different voice entry order is desired, the command
+@code{\voices} may be convenient:
+
+@lilypond[quote,verbatim]
+\new Staff \voices 1,3,5,6,4,2 <<
+ \time 2/4
+ { f''2 } % 1: highest
+ \\
+ { d''2 } % 3: second-highest
+ \\
+ { b'2 } % 5: third-highest
+ \\
+ { g'2 } % 6: third-lowest
+ \\
+ { e'2 } % 4: second-lowest
+ \\
+ { c'2 } % 2: lowest
+>>
+@end lilypond
+
+
+@warning{Lyrics and spanners (such as slurs, ties, hairpins, etc.) cannot
+be created @q{across} voices.}
@subsubsubheading Identical rhythms
@cindex voices, multiple
@cindex shift rest, automatic
@funindex \shiftOn
-@funindex shiftOn
@funindex \shiftOnn
-@funindex shiftOnn
@funindex \shiftOnnn
-@funindex shiftOnnn
@funindex \shiftOff
-@funindex shiftOff
@funindex \mergeDifferentlyDottedOn
-@funindex mergeDifferentlyDottedOn
@funindex \mergeDifferentlyDottedOff
-@funindex mergeDifferentlyDottedOff
@funindex \mergeDifferentlyHeadedOn
-@funindex mergeDifferentlyHeadedOn
@funindex \mergeDifferentlyHeadedOff
-@funindex mergeDifferentlyHeadedOff
The note heads of notes in different voices with the same pitch,
same note head and opposite stem direction are automatically
@end ignore
+@node Merging rests
+@unnumberedsubsubsec Merging rests
+
+When using multiple voices it is common to merge rests which occur in both
+parts. This can be accomplished using @code{Merge_rests_engraver}.
+
+@lilypond[quote,verbatim]
+voiceA = \relative { d''4 r d2 | R1 | }
+voiceB = \relative { fis'4 r g2 | R1 | }
+\score {
+ <<
+ \new Staff \with {
+ instrumentName = "unmerged"
+ }
+ <<
+ \new Voice { \voiceOne \voiceA }
+ \new Voice { \voiceTwo \voiceB }
+ >>
+ \new Staff \with {
+ instrumentName = "merged"
+ \consists #Merge_rests_engraver
+ }
+ <<
+ \new Voice { \voiceOne \voiceA }
+ \new Voice { \voiceTwo \voiceB }
+ >>
+ >>
+}
+@end lilypond
+
+Setting the context property @code{suspendRestMerging} to @code{##t} allows for
+turning off rest merging temporarily.
+
@node Automatic part combining
@unnumberedsubsubsec Automatic part combining
@cindex a due part
@cindex solo part
@funindex \partcombine
-@funindex partcombine
Automatic part combining is used to merge two separate parts of music
onto a single staff. This can be especially helpful when typesetting
@code{@var{musicexpr2}}.
@funindex \partcombineChords
-@funindex partcombineChords
@funindex \partcombineApart
-@funindex partcombineApart
@funindex \partcombineUnisono
-@funindex partcombineUnisono
@funindex \partcombineSoloI
-@funindex partcombineSoloI
@funindex \partcombineSoloII
-@funindex partcombineSoloII
@funindex \partcombineAutomatic
-@funindex partcombineAutomatic
In professional scores, voices are often kept apart from each other for
long passages of music even if some of the notes are the same in both
@code{Voice}. This can lead to a number of unexpected issues including
@qq{Solo} or @qq{Unison} marks being printed incorrectly.
-@code{\partcombine} keeps all spanners (slurs, ties, hairpins etc.) in
+@code{\partcombine} keeps all spanners (slurs, ties, hairpins, etc.) in
the same @code{Voice} so that if any such spanners start or end in a
different @code{Voice}, they may not be printed properly or at all.
If the @code{\partcombine} function cannot combine both music
-expressions (i.e. when both voices have different durations), it will
+expressions (i.e., when both voices have different durations), it will
give the voices, internally, its own custom names: @code{one} and
@code{two} respectively. This means if there is any @qq{switch} to a
differently named @code{Voice} context, the events in that differently
@cindex interleaved music
@cindex parallel music
@funindex \parallelMusic
-@funindex parallelMusic
Music for multiple parts can be interleaved in input code. The
function @code{\parallelMusic} accepts a list with the names of a