In the documentation on collision resolution (http://lilypond.org/doc/v2.15/Documentation/notation/multiple-voices#collision-resolution), it states: "The \shiftOn command allows (but does not force) the notes in a voice to be shifted. When \shiftOn is applied to a voice, a note or chord in that voice is shifted *only* if its stem would otherwise collide with a stem from another voice, and only if the colliding stems point in the same direction." (the emphasis on *only* is mine).

However, in the example below, where I have to use shiftOff in the middle voice (to get the two F notes to merge) and shiftOn in the treble voice (to prevent the merged half notes from having their heads filled in), the two A half notes in the treble voice *are* being shifted, though from my reading of the sentence quoted above, the shift is not needed.

\version "2.15.38"

treble = \relative c''' {
    \shiftOn
    a2 a
}

bass = \relative c' {
    f2 f
}

middle = \relative c' {
    \shiftOff f8[ c'] b c f,[ c'] b c
}

\score {
    \new Staff {
        \clef treble
        \mergeDifferentlyHeadedOn
<<
            \context Voice = "1" { \voiceOne \treble }
            \context Voice = "2" { \voiceTwo \bass }
            \context Voice = "3" { \voiceThree \middle }
>>
    }
    \layout { }
}

<<attachment: test.png>>

_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to