Hi, Spent some time figuring this one out this morning, so thought I would pass the tip along; you can figure all of this out by reading 6.3.4 "Explicitly instantiating voices" very carefully, but maybe this tip will help a little.
This tip describes how to add an "extra", voice- or melody-marking stem to a cross-staff notehead in piano music; you can see the final result in the attached imagefile. Here's a minimal example of some cross-staff beaming in a piano music: %%% EX 1: MINIMAL CROSS-STAFF BEAMING %%% \version "2.11.29" \new PianoStaff << \new Staff = RH { \time 4/8 c''8 [ c''8 \change Staff = LH e'8 \change Staff = RH c''8 ] } \new Staff = LH { s2 } >> %%% END EX 1 %%% Example 1 is easy enough to figure out if you first consider that the spanning beam needs to live inside a single, staff-changing voice, and then read section 7.1.2 "Manual staff switches" on the \change command. The question now arises as to how to add the "extra", flagged stem to the e'8. We need an extra voice to appear for the duration of just the e'8. We might at first be tempted to use the << \\ >> polyphony construct described in 6.3.3 "Basic polyphony". But, in fact, the presence of the \\ separator will kill our spanning beam and block our desired solution. Much better is example 2. %%% EX 2: CROSS-STAFF WITH DOUBLE STEM %%% \version "2.11.29" \new PianoStaff << \new Staff = RH { \time 4/8 c''8 [ c''8 \change Staff = LH << { e'8 } \new Voice { \once \override Stem #'direction = #down e'8 } >> \change Staff = RH c''8 ] } \new Staff = LH { s2 } >> %%% END EX 2 %%% The key thing to notice about example 2 is that we use the << >> polyphony construct *without the \\ separator*. Section 6.3.4 "Explicitly instantiating voices" describes this form of the polyphony constructor. Section 6.3.4 also points to the fact that the *absence* of the \\ separator means that the first { e'8 } expression in the << >> *continues the voice of the outer, containing music*. We want our { e'8 } to continue the voice of the outer music that our beam will continue uninterrupted. What's neat about this is that nowhere in either example did we have to explicitly *name* a voice; we just had to pick the right *structure*. Trevor. -- Trevor Bača [EMAIL PROTECTED]
<<attachment: double-stems.png>>
_______________________________________________ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user