Guide, node Updating translation committishes..
@end ignore
-@c \version "2.17.25"
+@c \version "2.19.29"
@node Simultaneous notes
and @code{>}. A chord may be followed by a duration just like simple
notes.
-@lilypond[verbatim,quote,relative=2]
-<a c e>1 <a c e>2 <f a c e>4 <a c>8. <g c e>16
+@lilypond[verbatim,quote]
+\relative {
+ <a' c e>1 <a c e>2 <f a c e>4 <a c>8. <g c e>16
+}
@end lilypond
Chords may also be followed by articulations, again just like simple
notes.
-@lilypond[verbatim,quote,relative=2]
-<a c e>1\fermata <a c e>2-> <f a c e>4\prall <a c>8.^! <g c e>16-.
+@lilypond[verbatim,quote]
+\relative {
+ <a' c e>1\fermata <a c e>2-> <f a c e>4\prall <a c>8.^! <g c e>16-.
+}
@end lilypond
The notes within the chord themselves can also be followed by articulation
and ornamentation.
-@lilypond[verbatim,quote,relative=2]
-<a c\prall e>1 <a-> c-^ e>2 <f-. a c-. e-.>4
-<a-+ c-->8. <g\fermata c e\turn>16
+@lilypond[verbatim,quote]
+\relative {
+ <a' c\prall e>1 <a-> c-^ e>2 <f-. a c-. e-.>4
+ <a-+ c-->8. <g\fermata c e\turn>16
+}
@end lilypond
However some notation, such as dynamics, hairpins and slurs must be
attached to the chord, rather than notes within the chord, otherwise
they will not print.
-@lilypond[verbatim,quote,relative=2]
-<a\f c( e>1 <a c) e>\f <a\< c e>( <a\! c e>)
-<a c e>\< <a c e> <a c e>\!
+@lilypond[verbatim,quote]
+\relative {
+ <a'\f c( e>1 <a c) e>\f <a\< c e>( <a\! c e>)
+ <a c e>\< <a c e> <a c e>\!
+}
@end lilypond
@cindex chords, empty
be combined with them (for more complex possibilities of combining such
elements, see @ref{Simultaneous expressions}):
-@lilypond[verbatim,quote,relative=2]
-\grace { g8[( a b] }
-<> ) \p \< -. -\markup \italic "sempre staccato"
-\repeat unfold 4 { c4 e } c1\f
+@lilypond[verbatim,quote]
+\relative {
+ \grace { g'8( a b }
+ <> ) \p \< -. -\markup \italic "sempre staccato"
+ \repeat unfold 4 { c4 e } c1\f
+}
@end lilypond
@cindex relative pitch, chords
in the chord are relative to the note that came before it
@emph{within the same chord}.
-@lilypond[verbatim,quote,relative=2]
-<a c e>1 <f a c> <a c e> <f' a c> <b, e b,>
+@lilypond[verbatim,quote]
+\relative {
+ <a' c e>1 <f a c> <a c e> <f' a c> <b, e b,>
+}
@end lilypond
For more information about chords, see @ref{Chord notation}.
@node Chord repetition
@unnumberedsubsubsec Chord repetition
-@cindex Chord, repetition
+@cindex chord, repetition
@cindex repetition, using @code{q}
+@cindex @code{q}, chord repetition
In order to save typing, a shortcut can be used to repeat the preceding
chord. The chord repetition symbol is @code{q}:
-@lilypond[verbatim,quote,relative=2]
-<a c e>1 q <f a c>2 q
+@lilypond[verbatim,quote]
+\relative {
+ <a' c e>1 q <f a c>2 q
+}
@end lilypond
As with regular chords, the chord repetition symbol can be used with
durations, articulations, markups, slurs, beams, etc. as only the
pitches of the previous chord are duplicated.
-@lilypond[verbatim,quote,relative=2]
-<a c e>1\p^"text" q2\<( q8)[-! q8.]\! q16-1-2-3 q8\prall
+@lilypond[verbatim,quote]
+\relative {
+ <a' c e>1\p^"text" q2\<( q8)[-! q8.]\! q16-1-2-3 q8\prall
+}
@end lilypond
The chord repetition symbol always remembers the last instance of
a chord so it is possible to repeat the most recent chord even if
other non-chorded notes or rests have been added since.
-@lilypond[verbatim,quote,relative=2]
-<a c e>1 c'4 q2 r8 q8 |
-q2 c, |
+@lilypond[verbatim,quote]
+\relative {
+ <a' c e>1 c'4 q2 r8 q8 |
+ q2 c, |
+}
@end lilypond
However, the chord repetition symbol does not retain any dynamics,
articulation or ornamentation within, or attached to, the previous
chord.
-@lilypond[verbatim,quote,relative=2]
-<a-. c\prall e>1\sfz c'4 q2 r8 q8 |
-q2 c, |
+@lilypond[verbatim,quote]
+\relative {
+ <a'-. c\prall e>1\sfz c'4 q2 r8 q8 |
+ q2 c, |
+}
@end lilypond
To have some of them retained, the @code{\chordRepeats} function can be
present on the @code{q} chord itself.
@lilypond[verbatim,quote]
-\relative c'' {
+\relative {
\chordRepeats #'(articulation-event)
- { <a-. c\prall e>1\sfz c'4 q2 r8 q8-. } |
+ { <a'-. c\prall e>1\sfz c'4 q2 r8 q8-. } |
q2 c, |
}
@end lilypond
affect the outer one; hence the different octave entry of the final note
in this example.
-@c Without \new Voice, implicit voice creation does the dumbest thing.
@lilypond[verbatim,quote]
-\new Voice
-\relative c'' {
+\relative {
\chordRepeats #'(articulation-event)
- \relative c''
- { <a-. c\prall e>1\sfz c'4 q2 r8 q8-. } |
- q2 c |
+ \relative
+ { <a'-. c\prall e>1\sfz c'4 q2 r8 q8-. } |
+ q2 c'' |
}
@end lilypond
The following examples show simultaneous expressions on one staff:
-@lilypond[quote,verbatim,relative=2]
+@lilypond[quote,verbatim]
\new Voice { % explicit single voice
- << { a4 b g2 } { d4 g c,2 } >>
+ << \relative { a'4 b g2 }
+ \relative { d'4 g c,2 } >>
}
@end lilypond
-@lilypond[quote,verbatim,relative=2]
-% single first note
-a << { a4 b g } { d4 g c, } >>
+@lilypond[quote,verbatim]
+\relative {
+ % single first note
+ a' << \relative { a'4 b g }
+ \relative { d'4 g c, } >>
+}
@end lilypond
This can be useful if the simultaneous sections have identical
changes in a @emph{single} @samp{Voice} are collected and engraved in
musical order:
-@lilypond[quote,verbatim,relative=2]
-<a c>4-. <>-. << c a >> << { c-. <c a> } { a s-. } >>
+@lilypond[quote,verbatim]
+\relative {
+ <a' c>4-. <>-. << c a >> << { c-. <c a> } { a s-. } >>
+}
@end lilypond
Multiple stems or beams or different note durations or properties at
The following example shows how simultaneous expressions can
generate multiple staves implicitly:
-@lilypond[quote,verbatim,relative=2]
+@lilypond[quote,verbatim]
% no single first note
-<< { a4 b g2 } { d4 g2 c,4 } >>
+<< \relative { a'4 b g2 }
+ \relative { d'4 g2 c,4 } >>
@end lilypond
Here different rhythms cause no problems because they are
interpreted in different voices.
-@cindex collisions, clashing note columns
@cindex collisions, ignoring
@knownissues
-If notes from two or more voices, with stems in the same direction, are
-placed at the same position on the staff and have no shift (or have the
-same shift specified), the message:
+If notes from two or more voices, with no shifts specified,
+have stems in the same direction, the message
@example
-warning: ignoring too many clashing note columns
+warning: This voice needs a \voiceXx or \shiftXx setting
@end example
will appear during compilation. This message can be suppressed by:
entered by applying the function @code{\makeClusters} to a sequence
of chords, e.g.,
-@lilypond[quote,relative=2,verbatim]
-\makeClusters { <g b>2 <c g'> }
+@lilypond[quote,verbatim]
+\relative \makeClusters { <g' b>2 <c g'> }
@end lilypond
Ordinary notes and clusters can be put together in the same staff,
The basic structure needed to achieve multiple independent
voices in a single staff is illustrated in the following example:
-@lilypond[quote,relative=3,verbatim]
+@lilypond[quote,verbatim]
\new Staff <<
\new Voice = "first"
- { \voiceOne r8 r16 g e8. f16 g8[ c,] f e16 d }
+ \relative { \voiceOne r8 r16 g'' e8. f16 g8[ c,] f e16 d }
\new Voice= "second"
- { \voiceTwo d16 c d8~ d16 b c8~ c16 b c8~ c16 b8. }
+ \relative { \voiceTwo d''16 c d8~ 16 b c8~ 16 b c8~ 16 b8. }
>>
@end lilypond
This allows lyrics to be assigned to one continuing voice before,
during and after a polyphonic section:
-@lilypond[quote, verbatim, relative=2]
-<<
+@lilypond[quote,verbatim]
+\relative <<
\new Voice = "melody" {
- a4
+ a'4
<<
{
\voiceOne
The first example could be typeset as follows:
-@lilypond[quote,relative=3,verbatim]
+@lilypond[quote,verbatim]
<<
- { r8 r16 g e8. f16 g8[ c,] f e16 d }
+ \relative { r8 r16 g'' e8. f16 g8[ c,] f e16 d }
\\
- { d16 c d8~ d16 b c8~ c16 b c8~ c16 b8. }
+ \relative { d''16 c d8~ 16 b c8~ 16 b c8~ 16 b8. }
>>
@end lilypond
three, which has the stems up as desired. Spacer rests are
used to avoid printing doubled rests.
-@lilypond[quote,relative=3,verbatim]
+@lilypond[quote,verbatim]
<<
- { r8 g g g g f16 ees f8 d }
+ \relative { r8 g'' g g g f16 ees f8 d }
\\
- { ees,8 r ees r d r d r }
+ \relative { ees'8 r ees r d r d r }
\\
- { d'8 s c s bes s a s }
+ \relative { d''8 s c s bes s a s }
>>
@end lilypond
@code{Voice} context, thus forming chords. To achieve this, enclose
them in a simple simultaneous music construct within an explicit voice:
-@lilypond[quote,relative=2,verbatim]
+@lilypond[quote,verbatim]
\new Voice <<
- { e4 f8 d e16 f g8 d4 }
- { c4 d8 b c16 d e8 b4 }
+ \relative { e''4 f8 d e16 f g8 d4 }
+ \relative { c''4 d8 b c16 d e8 b4 }
>>
@end lilypond
Voices may be given distinct colors and shapes, allowing them to be
easily identified:
-@lilypond[quote,relative=2,verbatim]
+@lilypond[quote,verbatim]
<<
- { \voiceOneStyle d4 c2 b4 }
+ \relative { \voiceOneStyle d''4 c2 b4 }
\\
- { \voiceTwoStyle e,2 e }
+ \relative { \voiceTwoStyle e'2 e }
\\
- { \voiceThreeStyle b2. c4 }
+ \relative { \voiceThreeStyle b2. c4 }
\\
- { \voiceFourStyle g'2 g }
+ \relative { \voiceFourStyle g'2 g }
>>
@end lilypond
different circumstances, on beats 1 and 3 in bar 1 and beat 1
in bar 2, where the automatic merging fails.
-@lilypond[quote,verbatim,relative=2]
+@lilypond[quote,verbatim]
<<
- {
- c8 d e d c d c4
+ \relative {
+ c''8 d e d c d c4
g'2 fis
- } \\ {
- c2 c8. b16 c4
+ } \\
+ \relative {
+ c''2 c8. b16 c4
e,2 r
- } \\ {
+ } \\
+ \relative {
\oneVoice
s1
- e8 a b c d2
+ e'8 a b c d2
}
>>
@end lilypond
Notes with different note heads may be merged as shown
below. In this example the note heads on beat 1 of bar 1 are now merged:
-@lilypond[quote,verbatim,relative=2]
+@lilypond[quote,verbatim]
<<
- {
+ \relative {
\mergeDifferentlyHeadedOn
- c8 d e d c d c4
+ c''8 d e d c d c4
g'2 fis
- } \\ {
- c2 c8. b16 c4
+ } \\
+ \relative {
+ c''2 c8. b16 c4
e,2 r
- } \\ {
+ } \\
+ \relative {
\oneVoice
s1
- e8 a b c d2
+ e'8 a b c d2
}
>>
@end lilypond
Note heads with different dots as shown in beat 3 of bar 1 may be
also be merged:
-@lilypond[quote,relative=2,verbatim]
+@lilypond[quote,verbatim]
<<
- {
+ \relative {
\mergeDifferentlyHeadedOn
\mergeDifferentlyDottedOn
- c8 d e d c d c4
+ c''8 d e d c d c4
g'2 fis
- } \\ {
- c2 c8. b16 c4
+ } \\
+ \relative {
+ c''2 c8. b16 c4
e,2 r
- } \\ {
+ } \\
+ \relative {
\oneVoice
s1
- e8 a b c d2
+ e'8 a b c d2
}
>>
@end lilypond
@notation{g} out of the column, and @code{\mergeDifferentlyHeadedOn}
then works properly.
-@lilypond[quote,relative=2,verbatim]
+@lilypond[quote,verbatim]
<<
- {
+ \relative {
\mergeDifferentlyHeadedOn
\mergeDifferentlyDottedOn
- c8 d e d c d c4
+ c''8 d e d c d c4
\shiftOn
g'2 fis
- } \\ {
- c2 c8. b16 c4
+ } \\
+ \relative {
+ c''2 c8. b16 c4
e,2 r
- } \\ {
+ } \\
+ \relative {
\oneVoice
s1
- e8 a b c d2
+ e'8 a b c d2
}
>>
@end lilypond
vertical order of voices on the staff!}
@lilypond[quote,verbatim]
-\new Staff \relative c'' {
+\new Staff \relative {
%% abbreviated entry
<<
- { f2 } % 1: highest
+ { f''2 } % 1: highest
\\
{ g,2 } % 2: lowest
\\
Using @code{\override NoteColumn.ignore-collision = ##t} will cause
differently headed notes in different voices to merge incorrectly.
-@lilypond[quote,relative=1,verbatim]
+@lilypond[quote,verbatim,fragment]
\mergeDifferentlyHeadedOn
-<< { c16 a' b a } \\ { c,2 } >>
+<< \relative { c'16 a' b a } \\ \relative { c'2 } >>
\override NoteColumn.ignore-collision = ##t
-<< { c16 a' b a } \\ { c,2 } >>
+<< \relative { c'16 a' b a } \\ \relative { c'2 } >>
@end lilypond
@ignore
the combined staff.
@lilypond[quote,verbatim]
-instrumentOne = \relative c' {
- c4 d e f |
+instrumentOne = \relative {
+ c'4 d e f |
R1 |
d'4 c b a |
b4 g2 f4 |
e1 |
}
-instrumentTwo = \relative g' {
+instrumentTwo = \relative {
R1 |
- g4 a b c |
+ g'4 a b c |
d4 c b a |
g4 f( e) d |
e1 |
respectively. The unison (@notation{a due}) parts are marked with the
text @qq{a2}.
+By default, the partcombiner merges two notes of the same pitch as an
+@notation{a due} note, combines notes with the same
+rhythm less than a ninth apart as chords and separates notes more than
+a ninth apart (or when the voices cross) into
+separate voices. This can be overridden with an optional argument of a pair
+of numbers after the @code{\partcombine} command: the first specifies
+the interval where notes start to be combined (the default is zero) and the
+second where the notes are split into separate voices. Setting the second
+argument to zero means that the partcombiner splits notes with an interval of
+a second or more, setting it to one splits notes of a third or more, and so on.
+
+@lilypond[quote,verbatim]
+instrumentOne = \relative {
+ a4 b c d |
+ e f g a |
+ b c d e |
+}
+
+instrumentTwo = \relative {
+ c'4 c c c |
+ c c c c |
+ c c c c |
+}
+
+<<
+ \new Staff \partcombine \instrumentOne \instrumentTwo
+ \new Staff \partcombine #'(2 . 3) \instrumentOne \instrumentTwo
+>>
+@end lilypond
+
+
Both arguments to @code{\partcombine} will be interpreted as separate
@code{Voice} contexts, so if the music is being specified in relative
mode then @emph{both} parts must contain a @code{\relative} function,
@itemize
@item
-@code{\partcombineApart} and @code{\partcombineApartOnce} keep the
+@code{\partcombineApart} and @code{\once \partcombineApart} keep the
notes as two separate voices, even if they can be combined into a chord
or unison.
@item
-@code{\partcombineChords} and @code{\partcombineChordsOnce} combine the
+@code{\partcombineChords} and @code{\once \partcombineChords} combine the
notes into a chord.
@item
-@code{\partcombineUnisono} and @code{\partcombineUnisonoOnce} combine
+@code{\partcombineUnisono} and @code{\once \partcombineUnisono} combine
both voices as @qq{unison}.
@item
-@code{\partcombineSoloI} and @code{\partcombineSoloIOnce} print only
+@code{\partcombineSoloI} and @code{\once \partcombineSoloI} print only
voice one, and mark it as a @qq{Solo}.
@item
-@code{\partcombineSoloII} or @code{\partcombineSoloIIOnce} print only
+@code{\partcombineSoloII} or @code{\once \partcombineSoloII} print only
voice two and mark it as a @qq{Solo}.
@item
-@code{\partcombineAutomatic} and @code{\partcombineAutomaticOnce} end
+@code{\partcombineAutomatic} and @code{\once \partcombineAutomatic} end
the functions of the commands above, and revert back to the standard
@code{\partcombine} functionality.
@end itemize
\partcombineAutomatic e2^"auto" e |
\partcombineChords e'2^"chord" e |
\partcombineAutomatic c2^"auto" c |
- \partcombineApart c2^"apart" \partcombineChordsOnce e^"chord once" |
+ \partcombineApart c2^"apart" \once \partcombineChords e^"chord once" |
c2 c |
}
-instrumentTwo = \relative c' {
- c2 c |
+instrumentTwo = \relative {
+ c'2 c |
e2 e |
a,2 c |
c2 c' |
\parallelMusic #'(voiceA voiceB voiceC) {
% Bar 1
r8 g'16 c'' e'' g' c'' e'' r8 g'16 c'' e'' g' c'' e'' |
- r16 e'8.~ e'4 r16 e'8.~ e'4 |
+ r16 e'8.~ 4 r16 e'8.~ 4 |
c'2 c'2 |
% Bar 2
r8 a'16 d'' f'' a' d'' f'' r8 a'16 d'' f'' a' d'' f'' |
- r16 d'8.~ d'4 r16 d'8.~ d'4 |
+ r16 d'8.~ 4 r16 d'8.~ 4 |
c'2 c'2 |
}
\parallelMusic #'(voiceA voiceB voiceC) {
% Bar 1
r8 g16 c e g, c e r8 g,16 c e g, c e |
- r16 e8.~ e4 r16 e8.~ e4 |
+ r16 e8.~ 4 r16 e8.~ 4 |
c2 c |
% Bar 2
r8 a,16 d f a, d f r8 a,16 d f a, d f |
- r16 d8.~ d4 r16 d8.~ d4 |
+ r16 d8.~ 4 r16 d8.~ 4 |
c2 c |
}