Le dimanche 23 juillet 2023 à 23:23 +0200, Valentin Petzel a écrit :

> But I feel that this is a bigger issue. Generally the issue here is that 
> systems-per-page only cares about systems of music and not about anything 
> else 
> that may be placed on the page, as one can see here:
> 
> \paper {
>   systems-per-page = #16
> }
> 
> \markup\column { a a a a a a a a a a a a a a a a a a a a a a }
> 
> { \repeat unfold 32 { R1\break }}
> 
> I suppose in such cases it might be necessary to either estimate an 
> approximate system equivalent of the non system stuff on the page, or 
> alternatively calculate the reduction of paper height due to non system stuff 
> and scale down systems-per-page in such a manner, e.g. if systems-per-page is 
> 4, but a markup such as the header takes up say 20% of the pages then the 
> value should be corrected to 4*4/5 = 3.2 ~ 3 instead.


I beg to differ. LilyPond's page breaking and page spacing
algorithm is already very complicated and smart and everything.
That makes it difficult to tweak in user-understandable ways.
Part of the point of systems-per-page / min-systems-per-page /
max-systems-per-page is to provide a simple knob that does
simple things for simple cases. If the user wants smart
approximation of system heights and all that, they should just
not set systems-per-page and let the default algorithm do its work.
It's better to keep systems-per-page simple both for users to
be able to understand and use it, and for code complexity not
to explode further than it already has in that area.

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to