Yo uso Lilypond 2.20.0. Tengo musica y letra con un melisma definido asi:
music = {
\relative
{
\numericTimeSignature
\time 4/4
c'4 e g a
}
\addlyrics {
foo __ _ _! foo
}
}
Entiendo esto:
Pero quiero que la línea del extensor de melisma llegue hasta el signo de exclamación.
El comportamiento es el mismo para cualquier signo de puntuación (! , . ?).
Intenté desconectar el !
del melisma y conectarlo a la siguiente sílaba, así:
\addlyrics { foo __ _ _ !~foo }
pero luego me sale este arco que no quiero:
Considero que esto es un truco feo. Si hay una manera de hacer que el arco sea invisible, consideraré este truco como una solución, si no puedo encontrar otra.
Pero prefiero una solución en la que el signo de puntuación siga siendo parte del melisma, solo que la línea se dibuja hasta el signo de puntuación, sin dejar espacios en el medio.
¿Algunas ideas?
Como ha indicado en un comentario que, de hecho, no está buscando hacer algo no estándar, agregaré esto como respuesta:
La práctica estándar es que la puntuación vaya inmediatamente después de la palabra, antes de la línea de extensión.
Por supuesto, esto es fácil de lograr en lilypond al incluir la puntuación con la sílaba, por lo tanto: foo!
.
También es estándar usar una ligadura para indicar la distribución de una sola sílaba en varias notas. Algunos (incluyéndome a mí) prefieren la práctica que prevaleció hasta finales del siglo XX, donde las ligaduras de expresión se usan solo con notas negras o más largas, es decir, notas que no tienen banderas; con notas marcadas, la distribución de sílabas se indica mediante vigas. La práctica moderna es transmitir esas notas de acuerdo con la métrica y usar ligaduras para la distribución de sílabas como con las notas sin bandera.
Una respuesta corta es que su última versión casi funciona; puede ocultar el arco usando un _
(que se muestra como un espacio) en lugar del ~
.
Sin embargo, también te sugiero que ligas las primeras tres notas. Eso le dice a Lilypond que solo toman una sílaba, por lo que solo necesita un solo melisma. Y un insulto facilitaría la lectura de los cantantes.
Puede haber otra opción, si especifica la longitud de la sílaba manualmente según esta pregunta .
Pero estoy de acuerdo con phoog en que es raro cambiar la puntuación de esta manera; Recomiendo evitar todo el problema y tenerlo inmediatamente después de la palabra.
Encontré esto . Copiaré el contenido aquí en caso de que esa página desaparezca.
Adición de puntuación al final de un extensor en melismata Se puede agregar puntuación al final de un extensor en melismata anulando la plantilla predeterminada para
LyricExtender
.Para mayor comodidad, este fragmento aplica la anulación de la plantilla como un ajuste al evento extensor.
%% http://lsr.di.unimi.it/LSR/Item?id=643 %% see also http://lilypond.org/doc/v2.18/Documentation/notation/common-notation-for-vocal-music %LSR contributed by Neil Puttock #(define (extend text . padding) (let ((extender (make-music 'ExtenderEvent)) ;; optional padding (padding (if (pair? padding) (car padding) 0))) #{ \tweak stencil #(lambda (grob) (let* ((orig (ly:grob-original grob)) (siblings (ly:spanner-broken-into orig))) (if (or (null? siblings) (and (>= (length siblings) 2) (eq? (car (last-pair siblings)) grob))) (ly:stencil-combine-at-edge (ly:lyric-extender::print grob) X RIGHT (grob-interpret-markup grob text) padding)))) $extender #})) %Define custom extenders, first with extra padding extendComma = #(extend "," 0.2) extendExclaim = #(extend "!") \score { << \new Staff \new Voice = melody \relative c' { c4( d e f) g4( f e2) } \new Lyrics \lyricsto melody { Aah \extendComma Ooh \extendExclaim } >> \layout { \context { \Lyrics \consists "Tweak_engraver" } } }
phoog
Aarón