[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Repeat alternative count
From: |
Dan Eble |
Subject: |
Re: Repeat alternative count |
Date: |
Sun, 30 Aug 2020 14:42:19 -0400 |
On Aug 29, 2020, at 15:50, Dan Eble <dan@faithful.be> wrote:
>
> On Aug 29, 2020, at 14:52, David Kastrup <dak@gnu.org> wrote:
>>
>> \repeat volta 40 {
>> ...
>> \alternative { ... }
>> \alternative { ... }
>> \alternative { ... }
>> }
>>
>> since that would avoid several syntactical problems and would allow to
>> produce alternatives by music functions.
>
> I agree, but that's a little too far into fantasy land for me to attempt
> right now.
After further thought, I believe we can do this, but using \volta where you
have \alternative. These are my current thoughts (some informed by experiment).
\volta i,j,k can be used anywhere and is semantically similar to tags. During
unfolding, music is kept which is either marked for the current volta or is
unmarked. An important difference from tags is that unfolding will avoid
processing nested repeats before their time.
If you write { \volta 6,12 {…} … \volta 12,13,5 {…} }, LilyPond will give you
what you seem to be asking for, in repeat layout, unfolded layout, and in midi,
and not try to make more sense of it than is necessary.
\alternative remains (but at some point is renamed \alternatives) for these
reasons at least:
a. backward compatibility: the legacy syntax produces the same data structures
as if \volta had been used
b. it provides a scope in which LilyPond can derive implied volta numbers as
previously discussed in this thread
c. like (b), it might be helpful for producing brackets (but I haven't thought
much about it yet)
—
Dan