[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Sun, 03 Sep 2006 20:04:57 +1000
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.
The patch also fixes a number of bugs that I discovered when I tried to
make web with the new page-breaker as default. The ChangeLog is long,
but most of the changes are small.
2006-09-02 Joe Neeman <address@hidden>
* lily/simple-spacer.cc (get_line_forces): Ignore loose columns
unless they are breakable. This fixes discrepancies between the forces
calculated here and the forces calculated in get_line_configuration.
* lily/grob.cc (pure_relative_y_coordinate): fix some
mis-estimation that was happening with piano staves.
* lily/constrained-breaking.cc (resize): don't choke if we get a
measure that won't fit on a line.
(combine_demerits): don't consider uniformity when ragged
* lily/page-spacing.cc (solve): why the f* were there two of these?
(calc_subproblem): properly handle the case where a system is taller
than the page.
* lily/system.cc (get_paper_system): ensure that all the permissions
and penalties are passed to the paper systems.
* lily/page-breaking.cc (create_system_list): support system-count.
* scm/define-grobs.scm (pure-print-callbacks): add
* lily/page-spacing.cc (min_page_count): fix calculation of min
pages if we are ragged and there are non-zero springs.
* scm/layout-page-layout.scm: if the pure-height estimates are under
the real height, allow space-systems to ignore padding if it is
needed in order to fit the systems on one page
* lily/optimal-page-breaking.cc (try_page_spacing): fix reading
(solve): fix performance problem. Make sure we always get at least
* lily/page-breaking.cc (make_pages): include write-page-breaks
* lily/paper-score.cc (calc_breaking): remove Gourlay breaker
* scm/define-grobs.scm: add the new slur-callback
fix pure-relevant to not exclude grobs whose extent is already
* ly/paper-defaults.ly: make ly:optimal-breaking the new default
* lily/slur.cc (pure_height): new callback to estimate the height
of a slur
Re: breaking cleanups, Joe Neeman, 2006/09/08
- breaking cleanups,
Joe Neeman <=