lilypond-user
[Top][All Lists]
Advanced

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

Re: subdivideBeams broken?


From: Carl D. Sorensen
Subject: Re: subdivideBeams broken?
Date: Sun, 21 Jun 2009 12:16:27 -0600



On 6/21/09 9:49 AM, "Hans Aberg" <address@hidden> wrote:

> On 21 Jun 2009, at 16:47, Trevor Daniels wrote:
> 
>> SubdivideBeams will break beams at intervals
>> defined by beatLength, which by default is set
>> to 1 over the denominator of the time signature.
> 
> Yes, but this is what goes wrong, as my time signature is 7/16, and
> then I use
>    \set beatGrouping = #'(2 2 2 1)
> So they should be the same.
> 
>> I think you need to set beatLength explicitly with
>> \set beatLength = #(ly:make-moment 1 8)
> 
> However this works. If I, however set
>    \set beatLength = #(ly:make-moment 1 16)
> then I get the error. So it seems that this one is set properly by the
> time signature, but then beatGrouping expects it to be set to 8ths.

I think you misunderstand how beatGrouping works.

In previous versions of LilyPond (2.10, and less than 2.11.x, where I don't
remember what x is -- it was about August 2008), beatGrouping didn't work
for autoBeaming.

beatGrouping sets the points at which autobeams end, unless there are
explicitly set rules.

beatLength sets the points at which beams are automatically subdivided.

By default, beatLength is the numerator of the time signature.

By default, beatGrouping is set according to the time signature for standard
time signatures (you can see the defaults in scm/music-functions.scm).

In your case, LilyPond was doing exactly what you asked it to.
subdivideBeams set to ##f, the beams were not subdivided.  And the
beatGrouping of (2 2 2 1) was overridden by your explicit rule to break
beams at 4/16.

With subdivideBeams set to ##f, beams were broken at 4/16 (according to your
rule), and subdivided every 1/16 note, since that's the beatLength you had
by default.

If you want beams to be subdivided at (2 2 2 1), then just set beatLength to
1/8, and you'll get what you want.

HTH,

Carl





reply via email to

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