Comment #2 on issue 2142 by m...@apollinemike.com: accidental right-padding
should depend on the tightness of music
http://code.google.com/p/lilypond/issues/detail?id=2142
Welcome to my world of pain.
I toyed around with ideas like this in my summer-of-lily but gave up
because of the following reason :
In LilyPond, springs and rods are calculated based on the distances between
paper columns, which requires knowing the columns' horizontal skylines.
What you're suggesting are having conditional skylines that can change in
different spacing situations. This means that a given spring-and-rod
problem will need to be solved 2**n times, where n is the number of
conditional spacing variations that could happen in it. If there are 10ish
conditional variations (meaning accidentals) per line, you're looking at
compilation times that last well into the end of Western music (if not
earth).
I've suggested several times that linear programming & the simplex method
(or a commensurately effective solver) could be the solution to these woes,
but Han-Wen told me that in the early days of LilyPond this is how things
were done & compilation times got outta hand. I'd be interested in seeing
how linear programming w/ 10000ish variables would fare on a modern
computer - if it's hackable, it may be worth looking into this.
_______________________________________________
bug-lilypond mailing list
bug-lilypond@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-lilypond