Пользовательский текст в volta с Lilypond

Я пытаюсь поместить пользовательский текст в вольтах при гравировке с помощью Lilypond. Проблема не в том, чтобы добавить текст, а в том, чтобы добавить его с форматированием, которое я хочу. Я знаю, что аналогичный вопрос был задан и на него был дан ответ ( текст разметки внутри второй скобки volta ), но он не отвечает на мою проблему, потому что результат действительно уродлив. Это то, что у меня уже есть, за исключением того, что метод другой; Я попробовал это, так что ожидайте, что если я сделаю что-то не так, это не то, что я хочу.

То, что у меня есть на данный момент, выглядит так:
партитура с пользовательским текстом в квадратных скобках

Идея состоит в том, что текст в вольтах скорее будет похож на текст, который я поместил под си и до в первых двух тактах.

Мой код на данный момент:

\version "2.20.0"

aaaa = _\markup { \italic \teeny "Suite" }

bbbb = \tweak DynamicText.self-alignment-X #LEFT
    #(make-dynamic-script 
        (markup
            #:with-dimensions '(0 . 5) '(0 . 0) #:line
            (#:normal-text #:italic #:teeny "Fin")))

pianoUpper = \relative c' {
    \override DynamicLineSpanner.staff-padding = #3
    \clef "treble"
    \key f \major

    bes1 \bbbb
    \set Score.repeatCommands = #'((volta "Suite"))
    c \aaaa
    \set Score.repeatCommands = #'((volta #f))
    \bar "||"
    \set Score.repeatCommands = #'((volta "Fin"))
    d
    \set Score.repeatCommands = #'((volta #f))
    \bar "||"
    e_"D.S. al Fine" 
    \bar "S-S"
    \break
}

pianoLower = \relative c {
    \clef "bass"
    \key f \major
    
}

\score {
    \new PianoStaff 
        <<
            \new Staff = "upper" {
                \pianoUpper
            }
            \new Staff = "lower" {
                \pianoLower
            }
        >>
}

Как я могу получить форматирование (курсив) в тексте скобки volta?

Ответы (1)

Кажется, это работает. Только не ставь ничего раньше \text. Изменено
\set Score.repeatCommands = #(list(list 'volta finVoltaTxt) 'end-repeat)в той же форме, что и потому \set Score.repeatCommands = #(list(list 'volta suiteVoltaTxt)), что две переменные действительно должны быть вместе; не один сделал так, другой сделал иначе.suiteVoltaTxtfinVoltaTxt

suiteVoltaTxt = \markup { \text \italic Suite}
finVoltaTxt = \markup { \text \italic Fin}

pianoUpper = \relative c' {
  \key f \major
  \time 4/4
   
   bes1
   \set Score.repeatCommands = #(list(list 'volta suiteVoltaTxt))
   c1 
   \set Score.repeatCommands = #(list(list 'volta finVoltaTxt) 'end-repeat)
   d1
   \set Score.repeatCommands = #'((volta #f))
   e |
  
}