%{
NullVoice is unlike a Voice in this respect: trying to move it to a
different Staff with \change fails with this warning:
Change_iterator::process (): NullVoice = `soprano':
cannot change `Staff' to `S': not changing to same context type: Staff
Apart from the warning, this is inconvenient. The NullVoice remaining
in the original staff keeps the original staff alive, demanding manual
work to make it disappear.
The NullVoice context definition contains both of the following:
\alias "Staff"
\alias "Voice"
My knowledge of contexts is not extensive, but I suggest that the test
that \change applies is too simple.
%}
\version "2.19.54" %% just because it's what I'm using
sopranoNotes = \fixed c' {
c1 d e f
\break
\change Staff = "S"
g a b c'
}
\new ChoirStaff \with {
\RemoveEmptyStaves
\override VerticalAxisGroup.remove-first = ##t
} <<
\new Staff = "S" \with {
instrumentName = "S"
shortInstrumentName = "S"
} {
$(skip-of-length sopranoNotes)
}
\new Staff = "SA" \with {
instrumentName = "SA"
shortInstrumentName = "SA"
} <<
\new Voice { \sopranoNotes }
\new NullVoice = "soprano" { \sopranoNotes }
>>
>>
_______________________________________________
bug-lilypond mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-lilypond