lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Automatic beaming global settings


From: Nick Payne
Subject: Re: Automatic beaming global settings
Date: Sat, 11 Sep 2010 02:52:58 +1000
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.12) Gecko/20100826 Thunderbird/3.0.7

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 { }
}




reply via email to

[Prev in Thread] Current Thread [Next in Thread]