|
From: | Hans Aberg |
Subject: | Re: Auto-beaming infrastructure redo |
Date: | Sat, 3 Jul 2010 15:21:21 +0200 |
On 3 Jul 2010, at 12:37, Carl Sorensen wrote:
If I throw in tuplets in this AST, setting them to 1:1, I get: + | (1:1, [(2, 1/8), (3, 1/8), +, (3, 1/8)]) | (1:1, [(2, 1/8), ((3, 1/8), (2, 1/8)])That is, the tuplet p:q just appears as a pair (p, q) attached to thelist.But we don't need to introduce the tuplets in the LilyPond structure,because the p:q for tuplets is already handled by LilyPond, as far as I can tell. At least for right now, I think we can use a single fundamental unit.I think you may need to have the tuplets as a part of this structure in order to compute the correct beaming. Then the current flexible approach of LilyPond where they can be broken up in pieces might be a complication.Can you give me a specific example of beaming where the tuplets would benecessary?
If one has say a triplet, then I think LilyPond admits breaking it up into to separate parts with some non-triplet notes between - LilyPond just checks that the timing is correct.
When one wants to beam correctly, a complete triplet group, as above, is also a specification that the first not should have the stem top the right only and the last one to the left only.
So I suspect that for proper beaming, one has to first make complete tuplet groups. LilyPond might need some new syntax to ensure that this information is provided or structure enforced.
Hans
[Prev in Thread] | Current Thread | [Next in Thread] |