lilypond-user
[Top][All Lists]
Advanced

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

Re: Page breaker question: obeying explicit \breaks


From: Trevor Bača
Subject: Re: Page breaker question: obeying explicit \breaks
Date: Mon, 20 Nov 2006 15:05:23 -0600

On 11/20/06, Joe Neeman <address@hidden> wrote:
On 11/20/06, Trevor Bača <address@hidden> wrote:
> Hi,
>
> This is a page breaker question.
>
> This snippet houses explicit page breaks in a dedicated voice; it also
> has a tuplet that should break across the line:

This example will not work because the line breaker refuses to break a line
in the middle of a note head. I'm pretty sure this isn't new in 2.10 -- it
gets discussed on the mailing list every so often. One workaround is to
fudge the durations. I realise that this isn't a very good workaround in the
sense that it removes the separation between music and presentation. I think
there is also a workaround that involves removing some engraver -- the list
archives should have the details.

Ah. Of course. The minute you mentioned removing engravers it came
back to me: by default, the Forbid_line_break_engraver prevents line
breaks from occuring in the middle of a note head. Thus \remove
Forbid_line_break_engraver fixes the problem, which, exactly as you're
pointing out, has nothing at all to do with the new page and line
breaks.

Here's the fixed snippet:

%%% BEGIN EX 3 %%%

\version "2.10.0"

\layout {
  indent = #0
  ragged-right = ##t
}

\new Staff <<
  \new Voice {
     s1 \noBreak
     s1 \bar "|" \break
     s1 \noBreak
     s1 \bar "|" \break
  }
  \new Voice \with {
     \remove Forbid_line_break_engraver
  } {
     c'1
     \times 4/5 {
        c'2
        c'2
        c'2
        c'2
        c'2
     }
     c'1
  }


%%% END EX 3 %%%

The output (see attachment) is actually perfect; tuplets broken across
lines are definitely odd, but if you do need them then it's nice that
they can look exactly as they do here.

And what's particularly nice about example 3 is that it does manage to
preserve the separation between music and presentation, as you
mention. (Note that only the "music" voice need \remove
Forbid_line_break_engraver; the dedicated "breaks" voice need not make
such a removal.)

And, as long as we're on the topic, has anyone else ever thought that
maybe explicit breaking information (for both line breaks and page
breaks) should actually be encoded somewhere *outside of* musical
input? Possibly in the \layout block?

It just seems like, if ever there were global information in musical
score, that that global information would include line- and
page-breaking information. As it is, line- and page-breaking
information *must* now embed within musical input, which just seems
odd: after all, the breaking information certainly doesn't "belong" to
one voice or one staff or one staff group; if anything, maybe the
breaking information "belongs" to a single score ... almost makes me
think that explicit breaking information belongs in the \with block of
the score.

Has anyone else ever had that feeling?

Anyway, thanks, Joe, for pointing me back in the right direction.

--
Trevor Bača
address@hidden

Attachment: example-3.png
Description: PNG image


reply via email to

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