[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Beam setting surprises because of processing order
From: |
Carl Sorensen |
Subject: |
Re: Beam setting surprises because of processing order |
Date: |
Fri, 11 Feb 2011 20:43:33 -0700 |
On 2/11/11 12:46 PM, "Mats Bengtsson" <address@hidden> wrote:
> Hi,
>
> Consider the following three examples. Would you expect them to produce
> the same result or different and in that case, which are the same?
<snip>
>
> Trying it in LilyPond, it turns out that the processing order plays a
> trick here. In the first test, the baseMoment setting is done after the
> \time command, so it should be effective, however it turns out that the
> setting is processed before the \time command in the second stave. So,
> the only safe thing is to do all beam related settings in every single
> stave of the score in order to be sure that a \time command in other
> staves doesn't overwrite the settings.
> You could argue that it's sufficient to have the \time command in a
> single stave, but since the time signature is typeset in every stave,
> it's very likely that a LilyPond user includes it in all the staves. On
> the other hand, you don't really want to repeat all beam related
> settings all over the place.
The right thing to do in this case is to do
\overrideTimeSignatureSettings
#'(2 . 2) % timeSignatureFraction
#'(1 . 4) % baseMomentFraction
#'(1 1 1 1) % beatStructure
#'() % beamExceptions
before the first \time 2/2.
>
> Am I the first one to run into this problem? I couldn't find it
> mentioned in the mailing list archives.
I think so. Thanks for the catch! We'll add a warning to the docs, as well
as a snippet that shows the problem, along with possible workarounds.
Thanks,
Carl