On 10/09/10 23:35, James Worlton 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 { }
}

The problem is that with just one of those rules define in \global, everything is fine. With the 2 definitions, only the last one takes effect. I tried putting them in separate variables (\globalFour and \globalThree) and then calling both in the \new Staff before \music, but that didn't work either.

Is there a way to do this?

This seems to work:

\version "2.13.32"

global = \set beamExceptions =
    #'((end . (((1 . 8) . (2 2 2 2))
                ((1 . 8) . (2 2 2)))))

revertBeaming = \set 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 { }
}


_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to