If any of the interfaces for MultiMeasureRests (e.g. rest-interface, spanner-interface, multi-measure-rest-interface) are included in keepAliveInterfaces (useful if you want to condense some systems in a score, but not others), then when an MMR occurs on either side of a system break it can cause staves to be kept alive that otherwise should be removed due to keepAliveInterfaces = #'().
\version "2.19.82"
\layout {
\context {
\Score
keepAliveInterfaces = #'(stem-interface
note-head-interface
rest-interface
)
}
}
% Ex 1
\new Staff \with {
\override VerticalAxisGroup.remove-empty = ##t
\override VerticalAxisGroup.remove-first = ##t
} {
R1
\set Staff.keepAliveInterfaces = #'()
\break
c'1
}
% Ex 2
\new Staff \with {
\override VerticalAxisGroup.remove-empty = ##t
\override VerticalAxisGroup.remove-first = ##t
} {
\set Staff.keepAliveInterfaces = #'()
c'1
\unset Staff.keepAliveInterfaces
\break
R1
}
Is this a bug? Am I missing something about the intended behavior of MMRs? Ideas for workarounds or fixes?
Thanks!
Saul