[Top][All Lists]

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

Re: Multiple repeat nested with alternative

From: Hans Aberg
Subject: Re: Multiple repeat nested with alternative
Date: Fri, 13 Mar 2009 14:59:03 +0100

On 13 Mar 2009, at 13:48, Valentin Villenave wrote:

I'd happily add an official enhancement request for that, but I need a
more precise and specific report (preferably with a minimal example).

Each \alternative might need a subsequence of the integer interval [1...n] indicated. For example, suppose someone wanted truly large repeat numbers, then it might be inconvenient to write them out all; just take 1-3,5,7-8,10 to illustrate the feature. Is there a lilyPond construct already that might express such a thing?

Then the feature that initiated this thread, the "hanging" last alternative, it strikes me might just be a way to indicate that it is empty. So a syntax like
  \repeat volta {A B}
    \alternative {C}
    \alternative {}
  \repeat volta {D E}
    \alternative {F}
    \alternative {}
  G H I J ...
might suffice for that. - It seems me that the number after "volta" is redundant, but might be kept as a check.

So combining these ideas, one might want to be able to write
  \repeat volta {A}
    \alternative 1,3 {B1}
    \alternative 2 {B2}
    \alternative 4-6 {B3}
    \alternative {}
thus calling for
  A B1 A B2 A B1 A B3 A B3 A B3 A C
typeset as
       ______  ______  ______  __
      |1,3.  ||2.    ||4-6.  ||7.
| ... | ... :|| ... :|| ... :|| ... |
   A     B1      B2      B3      C
With no terminating hook on the last case (7). Here, C is just what follows. So if it is a part of a following \repeat volta ..., it should look like
       ______  ______  ______  __
      |1,3.  ||2.    ||4-6.  ||7.
| ... | ... :|| ... :|| ... :||: ... |
   A     B1      B2      B3      C
Also, the number 7 could written in and the number 2 could be dropped:
  \repeat volta 7 {A}
    \alternative 1,3 {B1}
    \alternative {B2}
    \alternative 4-6 {B3}
    \alternative 7 {}
That is, if not numbers follows an \alternative, just the next unused number in the sequence 1, 2, 3, ... is filled in.

Would this not be backwards compatible with the current syntax and semantics for the cases it covers?


reply via email to

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