On 4/7/06, Joe Neeman <[EMAIL PROTECTED]> wrote: > I think they have to be. In the page-turning case, if G is much smaller than > F, the penalties for a bad turn get ignored. Conversely, if G is too big, we > sacrifice nice spacing. I hadn't actually thought of this before, but it > looks like this might be a main cause of the instability. I don't see a way > around it while keeping penalties, though.
Comparing LilyPond to TeX, LilyPond faces a somewhat different challenge. Most of the time, TeX deals with lines that have many words in them. It can move a word from one line to another without changing things too much. It can even hyphenate words to make the change even smaller. Its input is structured into paragraphs, which give fairly frequent mandatory line breaks that are also good page break points. LilyPond doesn't have paragraphs to help it limit the line breaking decisions, and it doesn't have nearly as much flexibility for breaking lines. Lines in LilyPond could be as short as three or four measures, and breaking a measure lies somewhere between extremely bad and unthinkable. LilyPond will need to make compromises. I think one thing that could help would be to allow users to give LilyPond an idea of how fast the music should be played at different points. The penalty for breaking between two notes should probably depend on their real-life length in seconds. A slower piece will end up aesthetically better, while a faster one will bow more to practical concerns. David _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel