[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Automatic beaming global settings
From: |
Carl Sorensen |
Subject: |
Re: Automatic beaming global settings |
Date: |
Fri, 10 Sep 2010 11:15:11 -0600 |
On 9/10/10 7:35 AM, "James Worlton" <address@hidden> wrote:
> Hello,
>
> I'm trying to define the set of default automatic beamings for a score. The
> new beaming function is nice, but it won't let me set multiple rules in a
> global variable. Here is what I'm trying to do--I have a rule for 4/4 and a
> rule for 3/4 that limits beaming to a quarter note:
>
> \version "2.13.32"
> global = {
> \overrideTimeSignatureSettings
> #'Score
> #'(4 . 4) % time signature fraction
> #'(1 . 4) % base moment fraction
> #'(1 1 1 1) % beatStructure
> #'() % beamExceptions
>
> \overrideTimeSignatureSettings
> #'Score
> #'(3 . 4) % time signature fraction
> #'(1 . 4) % base moment fraction
> #'(1 1 1) % beatStructure
> #'() % beamExceptions %}
> }
>
> music = \relative c' {
> \time 4/4
> \repeat unfold 4 { c8 c c c c c c c }
> \time 3/4
> \repeat unfold 4 { c8 c c c c c }
> }
>
> \score {
> \new Staff {
> \global
> \music
> }
> \layout { }
> }
If this doesn't work, that would be a bug. I've forwarded the message to
bug-lilypond, and the Bug Squad should be getting an issue created.
I hope that I'll be able to get it fixed in a day or two, but I'm really
busy today.
As a workaround, may I suggest that you define a couple of LilyPond
variables
setThreeFour = {
\time 3/4
\set Score.beatStructure = #'(1 1 1)
\set Score.beamExceptions = #'()
}
setFourFour = {
\time 4/4
\set Score.beatStructure = #'(1 1 1 1)
\set Score.beamExceptions = #'()
}
Then, instead of \time 4/4, use \setFourFour.
HTH,
Carl