[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Forbid_line_break_engraver
From: |
Adam James Wilson |
Subject: |
Re: Forbid_line_break_engraver |
Date: |
Mon, 20 Aug 2007 10:51:05 -0400 |
Terribly sorry - I just discovered that adding
\context { \Staff
\override Beam #'breakable = ##t
}
will produce the correct page breaking results. Adding this (IMHO) to
the example in the bug report from August 17 titled
"Forbid_line_break_engraver" shows that the example is NOT buggy after
all.
Best regards,
Adam
On 8/19/07, Adam James Wilson <address@hidden> wrote:
> My apologies for so many postings on this issue -
>
> It turns out you can get proportional notation for two staves in
> different tempos WITHIN pages, but not ACROSS pages.
>
> Lilypond seems to be fine with page breaking through a note duration,
> but NOT fine with breaking through a note duration if the note has a
> beam that connects it to the next note.
>
> In order to get true proportional notation that continues across more
> than one page, it would seem necessary to be able to slice a system
> right through beams.
>
> There are two examples attached that illustrate this (similar to Mats'
> example in the bug report from August 17th titled
> "Forbid_line_break_engraver again"). They are identical except that
> the notes are beamed together in the second example.
>
> In the first, without the beams, the music is broken into 4 pages as expected.
>
> In the second, only two page breaks are allowed, and it seems that
> beams are the culprits. The console prints "warning: forced break was
> overridden by some other event, should you be using bar checks?"
> multiple times.
>
> %%% EXAMPLE 1 (expected results) %%%
>
> \version "2.11.29"
>
> \layout {
>
> \context { \Score
> \remove "Timing_translator"
> \remove "Default_bar_line_engraver"
> \override SpacingSpanner #'uniform-stretching = ##t
> \override SpacingSpanner #'strict-note-spacing = ##t
> proportionalNotationDuration = #(ly:make-moment 1 128)
> }
>
> \context { \Staff
>
> \consists "Timing_translator"
> \consists "Default_bar_line_engraver"
> }
>
> \context { \Voice
> \remove Forbid_line_break_engraver
> }
>
> }
>
> global = { \repeat unfold 4 { \skip 4. \bar "" \pageBreak} }
>
> \new StaffGroup <<
>
> \new Staff <<
>
> \global
>
> {
>
> \time 12/8
>
> \set Staff.timeSignatureFraction = #'(3 . 8)
> \repeat unfold 4 { c8 c8 c8 \bar "|" }
>
> }
>
> >>
>
> \new Staff <<
>
> \global
>
> {
>
> \time 12/8
>
> \compressMusic #'(12 . 17) {
> \set Staff.timeSignatureFraction = #'(3 . 8)
> \repeat unfold 5 { c8 c8 c8 \bar "|" }
> \set Staff.timeSignatureFraction = #'(2 . 8)
> c8 c8 \bar "|"
>
> }
> }
>
> >>
>
> >>
>
> %%% EXAMPLE 2 (beams prevent breaks) %%%
>
>
> \version "2.11.29"
>
> \layout {
>
> \context { \Score
> \remove "Timing_translator"
> \remove "Default_bar_line_engraver"
> \override SpacingSpanner #'uniform-stretching = ##t
> \override SpacingSpanner #'strict-note-spacing = ##t
> proportionalNotationDuration = #(ly:make-moment 1 128)
> }
>
> \context { \Staff
>
> \consists "Timing_translator"
> \consists "Default_bar_line_engraver"
> }
>
> \context { \Voice
> \remove Forbid_line_break_engraver
> }
>
> }
>
> global = { \repeat unfold 4 { \skip 4. \bar "" \pageBreak} }
>
> \new StaffGroup <<
>
> \new Staff <<
>
> \global
>
> {
>
> \time 12/8
>
> \set Staff.timeSignatureFraction = #'(3 . 8)
> \repeat unfold 4 { c8[ c8 c8] \bar "|" }
>
> }
>
> >>
>
> \new Staff <<
>
> \global
>
> {
>
> \time 12/8
>
> \compressMusic #'(12 . 17) {
> \set Staff.timeSignatureFraction = #'(3 . 8)
> \repeat unfold 5 { c8[ c8 c8] \bar "|" }
> \set Staff.timeSignatureFraction = #'(2 . 8)
> c8[ c8] \bar "|"
>
> }
> }
>
> >>
>
> >>
>