On Mon, 2006-09-04 at 01:07 +0200, Han-Wen Nienhuys wrote: > Joe Neeman wrote: > > And of course I forgot to attach the patch... > > > > On Sun, 2006-09-03 at 20:05 +1000, Joe Neeman wrote: > >> This patch gets rid of the old line breaker. It keeps the old page > >> breaker for now, but it is no longer the default. It adds horizontal > >> compression penalties, for which I don't think there are any outstanding > >> objections. I might make the penalty configurable in a later patch > >> anyway. The current penalty is a bit arbitrary and I don't really like > >> adding un-configurable, arbitrary constants. > >> > > hi, > > a couple of nitpicks. Please apply after addressing these. > > >> + /* we may have to deal with single lines that are taller than a page > >> */ > >> + if (isinf (space.force_) && page_start == line) > >> + space.force_ = 200000; > >> + > > is this the hardcoded constant you're talking about?
No, I'm not so worried about that one. That one's just a number that is smaller than infinity but larger than any other reasonable value. I did change it to negative, though since negative <=> compression. The constant I don't like is in simple-spacer.cc:482 Real f = spacer.force (); force[b * breaks.size () + c] = f - (f < 0 ? f*f*f*f*4 : 0); I chose 4*f^4 after hacking lily to produce snippets with predefined force and comparing them visually. So it isn't _completely_ arbitrary, but still... > >> -(define (space-systems page-height lines ragged? paper) > >> +(define (space-systems page-height lines ragged? paper ignore-padding?) > > style problem that we ourselves haven't done in the past: foo? is > reserved for a predicate, i.e. a function rather than a boolean. Just > use ignore-padding as a name. I took the liberty of also making that change for the other booleans in layout-page-layout.scm. _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel