Crear indicaciones dinámicas "verdaderas"entre paréntesis

Aunque la manera más fácil de añadir paréntesis a una indicación de dinámica es utilizar un bloque \markup, este método tiene un inconveniente: los objetos que se crean se comportarán como elementos de marcado de texto y no como indicaciones dinámicas.

Sin embargo, es posible crear un objeto similar utilizando el código de Scheme equivalente (como se explica en la Referencia de la notación), en combinación con la función make-dynamic-script. De esta forma, el elemento de marcado se tratará como una indicación dinámica, y por tanto seguirá siendo compatible con instrucciones como \dynamicUp o \dynamicDown.

paren =
#(define-event-function (dyn) (ly:event?)
   (make-dynamic-script
    #{ \markup \concat {
         \normal-text \italic \fontsize #2 (
	 \pad-x #0.2 #(ly:music-property dyn 'text)
	 \normal-text \italic \fontsize #2 )
       }
    #}))

\relative c'' {
  c4\paren\f c c \dynamicUp c\paren\p
}

[image of music]


LilyPond snippets v2.25.21 (rama de desarrollo).