Carl Sorensen <[email protected]> writes:
> On 4/25/15 6:37 AM, "Urs Liska" <[email protected]> wrote:
>
>>>
>>> In that context I'd like to raise the question if baseMoment really is
>>> the appropriate property for configuring beamSubdivision or if it
>>> shouldn't have a dedicated property. Changing baseMoment might have
>>> side-effects on other aspects of the engraving that may or may not be
>>> intended.
>>>
>>
>>What would you think of the following interface:
>>
>>\set beamSubdivision = ##t behaves as currently (fetch value from
>>baseMoment)
>>\set beamSubdivision = #(ly:make-moment 1 16) sets the division
>>frequency to an explicit value.
>>
>>That way we
>>- don't need a new property
>>- decouple subdivision frequency from baseMoment
>>- don't break existing code
>
> I actually think that baseMoment is intended precisely for subdivision.
>
> baseMoment sets the subdivision interval.
>
> beatGrouping combines the baseMoment together to get beaming groups.
>
> My first fix will not include a new property, and then we'll see where we
> go from that.
The autobeamer takes a Scheme list in beamExceptions that looks like
\void \displayScheme \beamExceptions \repeat unfold 2 { 8[ 8 8 8] }
(list (list (quote end) (list 1/8 4 4)))
I think it would be conceivable to fudge around with multiple brackets
for subdivisions, like
\beamExceptions \repeat unfold 4 { 16[[ 16] 16[ 16]] }
which currently does not really do anything useful. Of course, this
needs to have \beamExceptions recognize this, create some useful
list-based rendition of it, and have the autobeamer interpret that
list-based rendition.
The first versions would likely not mess at all with \beamExceptions but
rather create the lists for the overrides manually. But \beamExceptions
could become a nice interface for creating such lists eventually.
--
David Kastrup
_______________________________________________
lilypond-devel mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/lilypond-devel