On Sun, 2010-06-27 at 06:56 -0400, Boris Shingarov wrote: > Hi Arno, > > Here are some design remarks about what I understood from my work on the > breaker. Hopefully a sum of a few [dozen?] of mails like this will > together constitute something to transform into a chapter in the CG... > > > >> Thanks, I've reverted the patch in the meantime. However, the > >> information that you see in annotate-spacing is actually computed after > >> line-breaking, > > > > ok, so why can't it then be taken into account for page-breaking? > The problem is that page-breaking does not come *after* page-breaking. > Well, conceptually, it sort of does. But the optimization of breaking > is global over the product space of all line breaking possibilities by > all page breaking possibilities. It is done in the hope to get more > optimal breaks. The downside is that we are forced to use "height > estimations" instead of real heights of things; otherwise we would need > to do page layout for every possible break configuration, which would be > prohibitively expensive. > > This was discussed on this list only a few weeks ago. I think we are on > our way to get rid of global page*line breaking.
Although I am happy to have an option to do full line-breaking before page-breaking, I am very much against getting rid of the line and page-breaking interaction. For example, if we did that then we would have to scrap the new vertical layout since it relies on being able to stretch the systems after the pages are determined. And while I have a personal bias against scrapping the vertical layout (since I wrote it), I do think that it is a big improvement over the previous layout algorithm and I have heard comments to that effect on the lists too. Also, the page-turn-breaker can't function without some interaction between line- and page-breaking. > > Since it more than doubles the computation time (often by far) there > > must be something redundant, no? > No, because the height used in page breaking, is not the actual height; > it is just an estimate (often wrong). This is what Joe means when he > says, "...and they aren't actually correct to begin with". Actually, in this case it was just stupidity on my part. I was including into the height-estimate of each system _every_ RehearsalMark in the whole score, whether it belonged to that staff or not. Cheers, Joe
_______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel