|
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 listcan 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 inthe 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).
[Prev in Thread] | Current Thread | [Next in Thread] |