lilypond-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] Compound time signature support in lilypond


From: Hans Aberg
Subject: Re: [PATCH] Compound time signature support in lilypond
Date: Fri, 14 Jan 2011 23:04:41 +0100

On 14 Jan 2011, at 21:22, Reinhold Kainhofer wrote:

Here is a patch to create complex time signatures:
http://codereview.appspot.com/3992042/

Create compound time signatures with the \compoundMeter function. The argument is a Scheme list of lists. Each list describes one fraction, with the last entry being the denominator, while the first entries describe the summands in the enumerator. If the time signature consists of just one fraction, the list
can be given directly, i.e. not as a list containing a single list.

For example, a time signature of (3+1)/8 + 2/4 would be created as
\compoundMeter #'((3 1 8) (2 4)), and a time signature of (3+2)/8 as
\compoundMeter #'((3 2 8)) or shorter \compoundMeter #'(3 2 8).

It is basically the same code as in the LSR snippet, just included directly in
the lilypond code:
http://lsr.dsi.unimi.it/LSR/Item?u=1&id=743

Any comments?

It looks good. Another interesting variation is to sum it up in the time signature, and write a courtesy decomposition above it and the staff in small type. Somebody on the users list had made it. It would look like
  (4+2+3)
    9
    16

PS: I chose "compoundMeter", because such complex time signatures do not only specify the measure length, but also the beat structure (i.e. the "meter").

That is also my interpretation.

Would it be better to call it "compoundTime" instead?

The time signature can be different from the meter. So compoundTime might be reserved for a function that overrides the compoundMeter and writes a different time signature but preserves the beaming, possibly checking that it is courser (achieved by summing up subparts).




reply via email to

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