Thanks Keith

On 2014/10/22 05:48:36, you wrote:

Yuck.  The problem seems to be that the override takes effect at the
first beat
in a bar, after the paper-column for the previous barline has been
generated,
and the \once makes the override expire before the next bar.

Unfortunately this also means that
   \override Score.NonMusicalPaperColumn.line-break-permission =
#'allow
    R1
only has effect /after/ the R1.

We have a workaround for that timing problem in \overrideProperty, and
then
\once works fine with

autoLineBreaksOn = {
   \overrideProperty Score.NonMusicalPaperColumn.line-break-permission
#'allow
   \override Score.NonMusicalPaperColumn.line-break-permission =
#'allow }

autoLineBreaksOff = {
   %?? \overrideProperty
Score.NonMusicalPaperColumn.line-break-permission ##f
   \override Score.NonMusicalPaperColumn.line-break-permission = ##f }


That looks like the way to go.  It seems \once works fine with
\overrideProperty.

I put the %?? because I'm not sure whether it is more intuitive if
    \autoBreaksOff
    R1
should forbid a break before the R1, or mean "here is your last chance
to break,
Lily".

I prefer "forbid a break before the R1".  That's more consistent with
\autoBreaksOn R1 permitting a break before the R1.  But one drawback is
that placing
\autoBreaksOff before all music in a score gives errors: "bounds of
spanner are invalid".
That's not a problem in practice, but would require a Known issues
entry.

I'll post a new patch along these lines.


https://codereview.appspot.com/156400043/

_______________________________________________
lilypond-devel mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to