[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Page breaking fails for multiline embedded score
From: |
Boris Shingarov |
Subject: |
Page breaking fails for multiline embedded score |
Date: |
Wed, 10 Feb 2010 08:24:18 -0500 |
User-agent: |
Webmail 5.0 |
Neil's recent modification to
(define-builtin-markup-command (score ...) ...), in
scm/define-markup-commands.scm, fixes the bug where only the first system was
printed, and now we can have multi-line embedded scores, by vertically stacking
the stencils instead of just selecting the first one.
While this is a definite improvement over the old buggy behavior, the fact that
the whole embedded score appears as one monolithic stencil to the markup-list
word wrapper, leads to a problem with page breaking: namely, the embedded score
can not be broken across pages.
Use case 1:
There is half a page of markup, followed by a page worth of embedded score.
Lilypond will produce a half-empty first page containing markup, and the score
will follow on the next page.
What the user expects to see, is the embedded score to be broken across pages.
Use case 2:
Even worse, a very long embedded score can not be broken across pages at all;
it is not possible at all to print an embedded score that does not fit on one
page.
The fix, I believe, is to not perform the
(stack-stencils Y DOWN baseline-skip ...) application; instead, leave just the
(map paper-system-stencil ...) so each system becomes its own member of the
markup list; then let the word wrapper place them vertically. Because the
score line-breaking was already done by the Constrained breaker, I hope the
(less intelligent) word wrapper will not screw the line layout (I don't see
how, they are all page-wide lines).
- Page breaking fails for multiline embedded score,
Boris Shingarov <=