At 16:41 on 29 Jul 2016, David Kastrup wrote:
I remember that the decision to sort the remove-layers numerically was
based on the desire not to have logical circles: with this sort of
ordering, the behavior of lower numbers does not depend on that of
higher numbers. Any other solution would likely need to maintain that
property.
I still think the easiest and most logical way to do this is with the
Keep_alive_together_engraver. So the options within this engraver are:
i) using the remove-layer property
either special-casing a particular value of the remove-layer
property, whether that be an integer value, or a symbol
ii) introducing a new property specifically to control this behaviour
remove-last seems logical, but conflicts badly with remove-first,
perhaps remove-finally?
iii) introducing a new property to do this and other things
What other related things could be done?
Prior to the fix for issue 3518 (support for temporary divisi staves),
the Keep_alive_together_engraver was useful only in Frenched scores,
i.e. in conjunction with \RemoveEmptyStaves - one doesn't need to keep
things alive together if they are alive all the time.
The introduction of the VerticalAxisGroup.remove-layer property created
a usage of the Keep_alive_together_engraver in an un-Frenched score,
indeed in the current state the layer with the highest score can't
include \RemoveEmptyStaves as it would then never appear. See attached
expansion of the divisi-staves regtest.
So perhaps a new property could be useful for solving this problem?
Thoughts?
--
Mark Knoop