Lilypond: melisma multibarra con línea extensora en contexto `\lyricmode`

Por razones , estoy configurando la letra de una canción con \lyricmodeen lugar de \lyricsto. Sin embargo, tengo problemas para que un melisma largo funcione en este modo. Algo como esto:

ejemplo de melisma

es fácil de lograr \lyricstousando un __como se detalla en el manual aquí , pero no he encontrado ninguna referencia que describa cómo podría hacerse con \lyricmode. Todo lo que he intentado hasta ahora produce errores. He aquí un ejemplo de una de estas fallas:

\version "2.19.12"
\language english

lyricMelody = \relative c' {
  \time 4/4
  \key c \major
  \tempo 4=120
  c2 d( | %m1
  e2 f | %m2
  g2) a | %m3
}

textOne = \lyricmode {
  A2 long__ | %1
  __1 | %2
  __2 note | %3
}

\score {
  <<
  \new Voice = "vocals" { \autoBeamOff \lyricMelody }
  \new Lyrics \lyricmode { \textOne }
  >>
}

Respuestas (1)

Tenga en cuenta que una línea de extensión es una especie de articulación/acento en la sílaba anterior. entonces estas buscando

textOne = \lyricmode {
  A2 long2*4__ % 2.5
  note2 | %3
}

Es un poco incómodo que no puedas dividir esta nota en partes con una duración más natural. Podrías escribir algo como

textOne = \lyricmode {
  A2 long$(make-duration-of-length (ly:music-length #{ 2 | 1 | 2 #})) %3
  note2 | %3
}

y las entrañas de eso podrían convertirse en alguna función de Scheme, pero el | en su argumento, obviamente, sería sólo un escaparate.

Ahora, si intenta esto, encontrará que simplemente no hay una línea de extensión. La razón de esto es que la línea de extensión obtiene su extensión de las notas correspondientes y sus letras ya no están asociadas con ningún Voicecontexto particular o de otro tipo.

Entonces, para que aparezca la línea de extensión (y que la letra se organice para que coincida con las notas reales en lugar de más o menos el tiempo), también debe escribir

  \new Lyrics \with { associatedVoice = "vocals" } \lyricmode { \textOne }

en tu puntuación. \lyricstoy \addlyricsconfigurar automáticamente associatedVoice(bueno, a \addlyricsveces es impredecible) para que no tenga que hacerlo usted mismo. Pero cuando sus duraciones no se seleccionan del Voice, todavía las necesita para los puntos de conexión.