[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Lilypond-auto] Issue 2583 in lilypond: Hairpins with to-barline=##f
From: |
lilypond |
Subject: |
Re: [Lilypond-auto] Issue 2583 in lilypond: Hairpins with to-barline=##f do not close at the end of a staff |
Date: |
Fri, 10 Aug 2012 09:00:00 +0000 |
Updates:
Summary: Hairpins with to-barline=##f do not close at the end of a staff
Labels: Regression Patch-new
Comment #3 on issue 2583 by address@hidden: Hairpins with
to-barline=##f do not close at the end of a staff
http://code.google.com/p/lilypond/issues/detail?id=2583
Version 2.12.3 got this right, but I haven't found when things went wrong.
Hairpins use a callback linked to their 'after-line-breaking' property
(called just after line breaking) to decide if they need not be printed.
The problem is that bar numbers and tempo marks also use
the 'after-line-breaking', to find the top staff. In order to find the top
staff at the location of a given bar number, accounting for temporary
staves, Lilypond finds the horizontal extent of each staff in the system.
In order to find those extents, she asks each grob for its width, and to
answer that, the grobs figure their stencils.
If the bar-number 'after-line-breaking' routine gets called before the one
for a Hairpin, a Hairpin will be asked to create its stencil before its
continuation hairpin has decided if it will print.
A solution is for each broken Hairpin to explicitly ask its continuation to
complete the 'after-line-breaking' on time. LilyPond claimed that this
caused a cyclic dependency, but she is wrong.
I'm pretty sure there is a typo in the cyclic dependency checker, but would
appreciate a look from someone who knows Guile.
<http://codereview.appspot.com/6449126>
- Re: [Lilypond-auto] Issue 2583 in lilypond: Hairpins with to-barline=##f do not close at the end of a staff,
lilypond <=