lilypond-devel
[Top][All Lists]
Advanced

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

Re: Shortcut for \repeat unfold


From: Lukas-Fabian Moser
Subject: Re: Shortcut for \repeat unfold
Date: Sat, 25 Sep 2021 09:46:31 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.13.0

Hi,

In short, I propose to make the first argument to
\repeat optional, making \repeat n music equivalent to
\repeat unfold n music.

Thanks for working on that!

The issue I have with your idea is that to me, \repeat unfold and \repeta volta/tremolo have slightly different semantics:

\repeat volta and \repeat tremolo create "time-honored" visual indicators for repeated music, so they are commands that correspond to special music layouts.
\repeat unfold saves typing while inputting music.

Of course, the distinction is not very strict, in particular since there's \unfoldRepeats. But still I'm not sure it's ideal syntax-wise if users have to use the same command for "saving typing" and for "creating musical repeat signs / tremolo notation". And this, I think, is exacerbated with your suggestion, because if \repeat alone is the keystroke-saving command, then \repeat volta and \repeat tremolo look like variants of that: Adding a qualifier turns the command into something completely different.

My experience is that every time I want to repeat a note
four times, I have a half-a-second wonder about whether
typing "\repeat unfold" will be shorter than cut-and-paste.
Absolutely. Of course it depends on which type of music you engrave, but in my "common practice"-heavy everyday work, \repeat unfold 16 d8 comes up _very_ often.
Other possibilities:

- "\rep n music", not as self-telling (and I think Lukas
  only calls his shortcut \rep because redefining \repeat
  is not syntactically valid);
... 'n 'cause it's even shrtr. :-)
- "music * n", attractive but the difference between c1*5
  and { c1 } * 5 would be confusing; also, for longer passages
  one would rather state the number of repetitions from the
  start than having to remember to put it at the end;
Yes, that is confusing to a degree I'm very skeptical if it's possible at all. You've already given the main example.
- "\* n music", very short but doesn't read as nicely I think,
  and I don't view repeats as special enough to warrant
  this kind of syntax with many special characters.

I think I disagree. After David suggested it in the gitlab thread, I used it in some scores and found it to be very convenient. (Maybe I'm biased because on german keybaord layout, \* can be entered in a single movement with a quite enjoyable thumb-midde-finger-pinkie-ring-finger flourish :-).) Also, brevity is key for keystroke-saving commands.

But your special-character argument made me think: Maybe it would be possible to get rid of the * sign? Maybe I'm missing something, but isn't \{unsigned int} still "available" so one could do \16 d8 instead of \*16 d8 ? Of course, probably only David K. can say for sure what implications that would have for parasing/lexing.

Aaron:

If the asterisk feels overloaded, you could use the multiplication sign:

%%%%
\version "2.22.0"

× = % U+00D7
I'd advise against introducing non-ASCII commands. Users won't be happy if they can't find on their keyboards what the documentation instructs them to type.

Lukas




reply via email to

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