Hi, I have an orchestral score that has only 1
system per page.  I did:

\layout {
   \context { \RemoveEmptyStaffContext }
}

and it works great, except for one problem: On
most pages, not enough of the staves are removed
to be able to fit another system on.  Result: the
reader has to do more work looking at which
stave is which, while no paper is being saved.

There doesn't seem much point in doing
RemoveEmptyStaff if it doesn't actually save
paper but just leaves a slightly bigger gap at
the bottom of the page.  Is there any way (or
could it be added to some list of possible
future features) that \RemoveEmptyStaffContext
can be extended with the logic "if, after removing
empty staffs and paginating, any page has only
one system on it, then put back all the empty
staffs on that page" ?

Or if that's too hard, maybe "if, after
removing empty staffs, any system is bigger
than half a page height, then put back the
empty staffs on that system" - but that would
not be quite so good, because it wouldn't
account for what happens when there's a single
3-staff system between two 15-staff systems -
the 3-staff system would probably still have a
page to itself just because it can't be fitted
on either of its neighbour pages, in which case
it might as well have all staffs.  It would be
better to first paginate and then put back
empty staffs.  But at least "don't remove empty
staffs on systems that would still be bigger
than half a page high" would catch some cases.

Or how about this: "Remove empty staffs, but
only on systems that have at least N empty
staffs, where N is a number that I specify."
This has the same limitations as the previous
one but doesn't have to know about page height.

Or: "Remove empty staffs, but only if this
system has at least N empty staffs AND ((this
isn't the last system AND the next system has
at least N empty staffs) OR (this isn't the
first system AND the previous system has at
least N empty staffs))".  That would let the
user choose a value of N that would result in
empty staves being removed only when this would
actually result in more than 1 system being
able to fit on a page, while the empty staff
remover would not have to know about pagination
or page height.  However it would still be
limited in that if there were, say, 3 systems
each half a page high, with full-page systems
before and after the 3 half-page systems, then
the 3rd half-page system would leave half a
blank page and might as well have all its
staves filled in.

Or maybe just allow the user to switch
empty-staff removal on and off at arbitrary bars.
That would at least allow the user to go
through the printed output and manually adjust
it to make sure empty staffs are removed only
in sections where it makes sense to do so.

Thanks.

Silas


-- 
Silas S Brown http://people.pwf.cam.ac.uk/ssb22



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

Reply via email to