lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: breaking cleanups


From: Joe Neeman
Subject: Re: breaking cleanups
Date: Sun, 03 Sep 2006 20:14:24 +1000

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.
> 
> 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
>       ly:script-interface::print
> 
>       * 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
>       ragged properties
>       (solve): fix performance problem. Make sure we always get at least
>       one solution
> 
>       * lily/page-breaking.cc (make_pages): include write-page-breaks
>       and page-stencil
> 
>       * 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
>       calculated
> 
>       * ly/paper-defaults.ly: make ly:optimal-breaking the new default
>       page breaker
> 
>       * lily/slur.cc (pure_height): new callback to estimate the height
>       of a slur
> 

Attachment: page_breaking_cleanup.patch
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]