https://codereview.appspot.com/4515158/diff/2009/lily/align-interface.cc File lily/align-interface.cc (right):
https://codereview.appspot.com/4515158/diff/2009/lily/align-interface.cc#newcode222 lily/align-interface.cc:222: dy = max (dy, min_distance); On 2011/06/09 02:55:55, Keith wrote:
On 2011/06/07 04:48:01, joeneeman wrote: > If pure is true, there may be some staves that are going to be
removed.
However, > these staves won't be removed until after line-breaking.
... and, as you say, these staves are not yet removed when
Y-extent-estimates
for the page breaker are calculated, so this patch messes up the page
breaker.
If the page breaker depends on empty, but living, staves disappearing
for
vertical spacing purposes, then maybe empty staves should be treated
that way
consistently. That would be tantamount to giving all empty-able
contexts the
hara-kiri engraver, as you suggested much earlier.
The obvious alternative would be to have the empty staves decide
whether to
suicide before page breaking, but my suspicion is that is awkward, or
it would
have been done that way at first.
Having minimum_distances() change behavior based on whether 'pure' is
true is
too tricky for me. (how do we know that any staff that is empty we are
pure will
suicide later)
I'll think on it, but mark the patch as abandoned for now.
Couldn't there just be a vector<bool> ignore_me that contains the result request_suicide for all elements (when pure)? Then, the for loop would be continued for these elements and they wouldn't have to be removed in get_skylines. https://codereview.appspot.com/4515158/ _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel