lilypond-user
[Top][All Lists]
Advanced

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

Re: manual alternative endings


From: Paul Scott
Subject: Re: manual alternative endings
Date: Thu, 4 Feb 2021 09:08:44 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.1


On 2/4/21 2:59 AM, Aaron Hill wrote:
On 2021-02-04 1:13 am, Paul Scott wrote:
The code below gives me what I want but gives me a warning.

warning: already have a volta spanner, ending that one prematurely

I'm thinking I need to add (volta #f) to the 2nd repeatCommands string
but If so my scheme is weak enough that I don't know how to add it.

TIA for any help with this,

Paul

\version "2.23.0"

voltaFine = \markup\sans\caps{Fine Ending}
voltaCont = \markup\sans\caps{To Cont.}

\relative {
  f''4 g a b
  \set Score.repeatCommands = #(list(list 'volta voltaFine))
  g4 a g a c1 \bar "|."
  \set Score.repeatCommands = #(list(list 'volta voltaCont))
  b1~1
  \set Score.repeatCommands = #'((volta #f))
  \bar "||"
}

There are a few ways to do this, depending on your comfort level with quoting (and quasi-quoting).

1:
%%%%
... = #(list (list 'volta #f) (list 'volta voltaCont))
%%%%

2:
%%%%
... = #(list '(volta #f) (list 'volta voltaCont))
%%%%

3:
%%%%
... = #`((volta #f) (volta ,voltaCont))
%%%%

NOTE: The backtick in the third option begins quasi-quoting, which allows you to "unquote" (using the comma) so you can reference the defined voltaCont variable.

Thank you so much!

Paul





reply via email to

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