1 @c -*- coding: utf-8; mode: texinfo; -*-
3 Translation of GIT committish: FILL-IN-HEAD-COMMITTISH
5 When revising a translation, copy the HEAD committish of the
6 version that you are working on. See TRANSLATION for details.
9 @node Simultaneous notes
10 @section Simultaneous notes
12 Polyphony in music refers to having more than one voice occurring
13 in a piece of music. Polyphony in LilyPond refers to having more
14 than one voice on the same staff.
23 @subsection Single voice
31 @unnumberedsubsubsec Chorded notes
35 A chord is formed by a enclosing a set of pitches between @code{<}
36 and @code{>}. A chord may be followed by a duration, and a set of
37 articulations, just like simple notes:
39 @lilypond[verbatim,ragged-right,fragment,quote,relative=1]
43 For more information about chords, see @ref{Introducing chord
48 Music expressions like @code{<< @{ g8 e8 @} a4 >>} are not printed
49 accurately. Use @code{<g a>8 <e a>8} instead.
54 @unnumberedsubsubsec Clusters
58 A cluster indicates a continuous range of pitches to be played.
59 They can be denoted as the envelope of a set of notes. They are
60 entered by applying the function @code{makeClusters} to a sequence
63 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
64 \makeClusters { <c e > <b f'> }
67 Ordinary notes and clusters can be put together in the same staff,
68 even simultaneously. In such a case no attempt is made to
69 automatically avoid collisions between ordinary notes and
74 Program reference: @internalsref{ClusterSpanner},
75 @internalsref{ClusterSpannerBeacon},
76 @internalsref{Cluster_spanner_engraver}.
78 Examples: @lsr{contemporary,cluster@/.ly}.
83 @subsection Multiple voices
86 * Collision resolution::
87 * Automatic part combining::
88 * Writing music in parallel::
91 @node Collision resolution
92 @unnumberedsubsubsec Collision resolution
94 Normally, note heads with a different number of dots are not
95 merged, but when the object property
96 @code{merge-differently-dotted} is set in the
97 @internalsref{NoteCollision} object, they are merged:
99 @lilypond[quote,verbatim,fragment,ragged-right,relative=2]
102 \override Staff.NoteCollision
103 #'merge-differently-dotted = ##t
105 } \\ { g8.[ f16] g8.[ f16] } >>
108 Similarly, you can merge half note heads with eighth notes, by
109 setting @code{merge-differently-headed}:
111 @lilypond[quote,ragged-right,fragment,relative=2,verbatim]
114 \override Staff.NoteCollision
115 #'merge-differently-headed = ##t
116 c8 c4. } \\ { c2 c2 } >>
120 @code{merge-differently-headed} and
121 @code{merge-differently-dotted} only apply to opposing stem
122 directions (ie. Voice 1 & 2).
124 LilyPond also vertically shifts rests that are opposite of a stem,
127 @lilypond[quote,ragged-right,fragment,verbatim]
128 \new Voice << c''4 \\ r4 >>
131 If three or more notes line up in the same column,
132 @code{merge-differently-headed} cannot successfully complete the
133 merge of the two notes that should be merged. To allow the merge
134 to work properly, apply a @code{\shift} to the note that should
135 not be merged. In the first measure of following example,
136 @code{merge-differently-headed} does not work (the half-note head
137 is solid). In the second measure, @code{\shiftOn} is applied to
138 move the top @code{g} out of the column, and
139 @code{merge-differently-headed} works properly.
141 @lilypond[quote,ragged-right,fragment,verbatim,relative=2]
142 \override Staff.NoteCollision #'merge-differently-headed = ##t
145 { \oneVoice d=''8 c8 r4 e,8 c'8 r4 } \\
146 { \voiceFour e,,2 e'2}
149 { d'=''2 \shiftOn g2 } \\
150 { \oneVoice d=''8 c8 r4 e,8 c'8 r4 } \\
151 { \voiceFour e,,2 e'2}
155 In some instances of complex polyphonic music, you may need
156 additional voices to avoid collisions between notes. Additional
157 voices are added by defining an variable, as shown below:
159 @lilypond[quote,verbatim,ragged-right,relative=2]
160 voiceFive = #(context-spec-music (make-voice-props-set 4) 'Voice)
163 { \voiceOne g4 ~ \stemDown g32[ f( es d c b a b64 )g] } \\
180 @funindex \voiceThree
192 @code{\shiftOff}: these commands specify the degree to which
193 chords of the current voice should be shifted. The outer voices
194 (normally: voice one and two) have @code{\shiftOff}, while the
195 inner voices (three and four) have @code{\shiftOn}.
196 @code{\shiftOnn} and @code{\shiftOnnn} define further shift
199 When LilyPond cannot cope, the @code{force-hshift} property of the
200 @internalsref{NoteColumn} object and pitched rests can be used to
201 override typesetting decisions.
203 @lilypond[quote,verbatim,ragged-right]
210 \once \override NoteColumn #'force-hshift = #1.7
218 Program reference: the objects responsible for resolving
219 collisions are @internalsref{NoteCollision} and
220 @internalsref{RestCollision}.
225 When using @code{merge-differently-headed} with an upstem eighth
226 or a shorter note, and a downstem half note, the eighth note gets
229 There is no support for clusters where the same note occurs with
230 different accidentals in the same chord. In this case, it is
231 recommended to use enharmonic transcription, or to use special
232 cluster notation (see @ref{Clusters}).
235 @node Automatic part combining
236 @unnumberedsubsubsec Automatic part combining
237 @cindex automatic part combining
238 @cindex part combiner
240 Automatic part combining is used to merge two parts of music onto
241 a staff. It is aimed at typesetting orchestral scores. When the
242 two parts are identical for a period of time, only one is shown.
243 In places where the two parts differ, they are typeset as separate
244 voices, and stem directions are set automatically. Also, solo and
245 @emph{a due} parts are identified and can be marked.
247 The syntax for part combining is
250 \partcombine @var{musicexpr1} @var{musicexpr2}
254 The following example demonstrates the basic functionality of the
255 part combiner: putting parts on one staff, and setting stem
256 directions and polyphony
258 @lilypond[quote,verbatim,ragged-right,fragment]
259 \new Staff \partcombine
260 \relative g' { g g a( b) c c r r }
261 \relative g' { g g r4 r e e g g }
264 The first @code{g} appears only once, although it was specified
265 twice (once in each part). Stem, slur, and tie directions are set
266 automatically, depending whether there is a solo or unisono. The
267 first part (with context called @code{one}) always gets up stems,
268 and @q{Solo}, while the second (called @code{two}) always gets
269 down stems and @q{Solo II}.
271 If you just want the merging parts, and not the textual markings,
272 you may set the property @code{printPartCombineTexts} to false
274 @lilypond[quote,verbatim,ragged-right,fragment,relative=2]
276 \set Staff.printPartCombineTexts = ##f
278 \relative g' { g a( b) r }
279 \relative g' { g r4 r f }
283 To change the text that is printed for solos or merging, you may
284 set the @code{soloText}, @code{soloIIText}, and @code{aDueText}
287 @lilypond[quote,verbatim,ragged-right,fragment,relative=2]
289 \set Score.soloText = #"ichi"
290 \set Score.soloIIText = #"ni"
291 \set Score.aDueText = #"tachi"
293 \relative g' { g4 g a( b) r }
294 \relative g' { g4 g r r f }
298 Both arguments to @code{\partcombine} will be interpreted as
299 @internalsref{Voice} contexts. If using relative octaves,
300 @code{\relative} should be specified for both music expressions,
305 \relative @dots{} @var{musicexpr1}
306 \relative @dots{} @var{musicexpr2}
310 A @code{\relative} section that is outside of @code{\partcombine}
311 has no effect on the pitches of @var{musicexpr1} and
316 Program reference: @internalsref{PartCombineMusic}.
320 When @code{printPartCombineTexts} is set, when the two voices play
321 the same notes on and off, the part combiner may typeset @code{a2}
322 more than once in a measure.
324 @code{\partcombine} cannot be inside @code{\times}.
326 @code{\partcombine} cannot be inside @code{\relative}.
328 Internally, the @code{\partcombine} interprets both arguments as
329 @code{Voice}s named @code{one} and @code{two}, and then decides
330 when the parts can be combined. Consequently, if the arguments
331 switch to differently named @internalsref{Voice} contexts, the
332 events in those will be ignored.
335 @node Writing music in parallel
336 @unnumberedsubsubsec Writing music in parallel
338 @cindex Writing music in parallel
339 @cindex Interleaved music
341 Music for multiple parts can be interleaved
343 @lilypond[quote,fragment,verbatim]
344 \parallelMusic #'(voiceA voiceB) {
345 r8 g'16[ c''] e''[ g' c'' e''] r8 g'16[ c''] e''[ g' c'' e''] |
347 r8 a'16[ d''] f''[ a' d'' f''] r8 a'16[ d''] f''[ a' d'' f''] |
351 \new Staff \new Voice \voiceA
352 \new Staff \new Voice \voiceB
356 This works quite well for piano music
358 @c It would be nice if the first bar fit onto one 66-char line.
359 @c Maybe simplify the example? -gp
360 @lilypond[quote,verbatim]
364 \parallelMusic #'(voiceA voiceB voiceC voiceD) {
366 r8 g'16[ c''] e''[ g' c'' e'']
367 r8 g'16[ c''] e''[ g' c'' e''] |
370 r8 a16[ d'] f'[ a d' f']
371 r8 a16[ d'] f'[ a d' f'] |
376 a'8 b' c'' d'' e'' f'' g'' a'' |
378 c16 d e f d e f g e f g a f g a b |