1.3.1 Expresiones adosadas a las notas

Esta sección explica cómo crear marcas expresivas que están aplicadas a notas: articulaciones, ornamentos y matices. También se tratan los métodos para crear las nuevas marcas dinámicas.


Articulaciones y ornamentos

Se pueden adjuntar a las notas un amplio abanico de símbolos para denotar articulaciones, adornos y otras indicaciones de ejecución, utilizando la sintaxis siguiente:

nota\nombre

La lista de los posibles valores de nombre está en Lista de articulaciones. Por ejemplo:

\relative {
  c''4\staccato c\mordent b2\turn
  c1\fermata
}

[image of music]

Algunas de estas articulaciones tienen abreviaturas que facilitan su escritura. Las abreviaturas se escriben detrás del nombre de la nota, y su sintaxis consiste en un guión - seguido de un símbolo que especifica la articulación. Existen abreviaturas predefinidas para el marcato, stopped (nota apagada), tenuto, staccatissimo, accent (acento), staccato (picado), y portato. La salida correspondiente a estas articulaciones aparece de la siguiente manera:

\relative {
  c''4-^ c-+ c-- c-!
  c4-> c-. c2-_
}

[image of music]

Las reglas para la colocación predeterminada de las articulaciones se encuentran definidas en el archivo ‘scm/script.scm’. Las articulaciones y ornamentos se pueden colocar manualmente por encima o por debajo del pentagrama; véase Dirección y posición.

Las articulaciones son objetos Script. Sus propiedades se describen de forma más completa en Script.

Se pueden aplicar articulaciones a los silencios normales y multi-compás, además de a las notas. La aplicación de una articulación a un silencio multi-compás crea un objeto MultiMeasureRestScript.

\override Script.color = #red
\override MultiMeasureRestScript.color = #blue
a'2\fermata r\fermata
R1\fermata

[image of music]

Además de articulaciones, se pueden adjuntar textos y elementos de marcado a las notas. Véase Guiones de texto.

Para ver más información acerca de la ordenación de los elementos Script y TextScript que se adjuntan a las notas, consulte Colocación de los objetos.

Fragmentos de código seleccionados

Modificar los valores predeterminados para la notación abreviada de las articulaciones

Las abreviaturas se encuentran definidas dentro del archivo ‘ly/script-init.ly’, donde las variables dashHat, dashPlus, dashDash, dashBang, dashLarger, dashDot y dashUnderscore reciben valores predeterminados. Se pueden modificar estos valores predeterminados para las abreviaturas. Por ejemplo, para asociar la abreviatura -+ (dashPlus) con el símbolo del semitrino en lugar del símbolo predeterminado +, asigne el valor trill a la variable dashPlus:

\relative c'' { c1-+ }

dashPlus = \trill

\relative c'' { c1-+ }

[image of music]

Controlar la ordenación vertical de las inscripciones

El orden vertical que ocupan las inscripciones gráficas está controlado con la propiedad 'script-priority. Cuanto más bajo es este número, más cerca de la nota se colocará. En este ejemplo, el TextScript (el sostenido) tiene primero la prioridad más baja, por lo que se sitúa en la posición más baja en el primer ejemplo. En el segundo, el Script (el semitrino) es el que la tiene más baja, por lo que se sitúa en la parte interior. Cuando dos objetos tienen la misma prioridad, el orden en que se introducen determina cuál será el que aparece en primer lugar.

\relative c''' {
  \once \override TextScript.script-priority = #-100
  a2^\prall^\markup { \sharp }

  \once \override Script.script-priority = #-100
  a2^\prall^\markup { \sharp }
}

[image of music]

Crear un grupeto de anticipación

La creación de un grupeto circular de anticipación entre dos notas, donde la nota inferior del grupeto utiliza una alteración, requiere varias sobreescrituras de propiedades. La propiedad outside-staff-priority se debe establecer al valor #f, pues en caso contrario tendría prioridad sobre la propiedad avoid-slur property. Cambiando las fracciones 2/3 y 1/3 puede ajustarse la posición horizontal.

\relative c'' {
  \after 2*2/3 \turn c2( d4) r |
  \after 4 \turn c4.( d8)
  \after 4
  {
    \once \set suggestAccidentals = ##t
    \once \override AccidentalSuggestion.outside-staff-priority = ##f
    \once \override AccidentalSuggestion.avoid-slur = #'inside
    \once \override AccidentalSuggestion.font-size = -3
    \once \override AccidentalSuggestion.script-priority = -1
    \once \hideNotes
    cis8\turn \noBeam
  }
  d4.( e8)
}

[image of music]

Véase también

Glosario musical: tenuto, accent, staccato, portato.

Manual de aprendizaje: Colocación de los objetos.

Referencia de la notación: Guiones de texto, Dirección y posición, Lista de articulaciones, Trinos.

Archivos instalados: ‘scm/script.scm’.

Fragmentos de código: Expressive marks.

Referencia de funcionamiento interno: Script, TextScript.


Matices dinámicos

Las marcas dinámicas de matiz absoluto se especifican usando una instrucción después de una nota: c4\ff. Las marcas dinámicas disponibles son \ppppp, \pppp, \ppp, \pp, \p, \mp, \mf, \f, \ff, \fff, \ffff, \fffff, \fp, \sf, \sff, \sp, \spp, \sfz, \rfz y \n. Las indicaciones dinámicas se pueden colocar manualmente por encima o por debajo del pentagrama; para ver más detalles, consulte Dirección y posición.

\relative c'' {
  c2\ppp c\mp
  c2\rfz c^\mf
  c2_\spp c^\ff
}

[image of music]

Una indicación de crescendo se comienza con \< y se termina con \!, con un matiz absoluto o con otra indicación de crescendo o de decrescendo. Una indicación de decrescendo comienza con \> y se termina también con \!, con un matiz dinámico absoluto o con otra indicación de crescendo o de decrescendo. Se pueden usar \cr y \decr en lugar de \< y \>. También es posible usar \endcr y \enddecr en lugar de \! para finalizar un crescendo o un decrescendo, respectivamente. De forma predeterminada, se tipografían reguladores en ángulo cuando se utiliza esta notación.

\relative c'' {
  c2\< c\!
  d2\< d\f
  e2\< e\>
  f2\> f\!
  e2\> e\mp
  d2\> d\>
  c1\!
}

[image of music]

Un regulador terminado mediante \! finaliza en el borde derecho de la nota que lleva el \! adosado. En el caso en que esté terminado con el comienzo de otra indicación crescendo o decrescendo, terminará en el centro de la nota que tiene adosada la siguiente indicación \< ó \>. El regulador siguiente empezará entonces en el borde derecho de la misma nota en lugar del borde izquierdo, como sería usual si hubiese terminado con \! previamente. Si un regulador termina en el inicio de un compás, finalizará sobre la línea divisoria precedente.

\relative {
  c''1\< | c4 a c\< a | c4 a c\! a\< | c4 a c a\!
}

[image of music]

Los reguladores que terminan con indicaciones dinámicas absolutas en lugar de con \! también se tipografían de manera parecida. Sin embargo, la longitud de la propia indicación dinámica puede alterar el punto en que finaliza el regulador anterior.

\relative {
  c''1\< | c4 a c\mf a | c1\< | c4 a c\ffff a
}

[image of music]

Se requieren silencios espaciadores para tipografiar varias indicaciones dinámicas sobre una sola nota. Esto es útil especialmente para añadir un crescendo y un decrescendo a la misma nota:

\relative {
  c''4\< c\! d\> e\!
  << f1 { s4 s4\< s4\> s4\! } >>
}

[image of music]

Se puede usar la instrucción \espressivo para indicar un crescendo y un decrescendo sobre la misma nota. Sin embargo, advierta que esta indicación está implementada como una articulación, no como una expresión dinámica.

\relative {
  c''2 b4 a
  g1\espressivo
}

[image of music]

Las indicaciones de crescendo textuales se inician con \cresc. Los decrescendos textuales se inician con \decresc o con \dim. Se trazan líneas extensoras cuando es necesario.

\relative {
  g'8\cresc a b c b c d e\mf |
  f8\decresc e d c e\> d c b |
  a1\dim ~ |
  a2. r4\! |
}

[image of music]

También pueden sustituirse los reguladores gráficos por cambios de dinámica textuales:

\relative c'' {
  \crescTextCresc
  c4\< d e f\! |
  \dimTextDecresc
  g4\> e d c\! |
  \dimTextDecr
  e4\> d c b\! |
  \dimTextDim
  d4\> c b a\! |
  \crescHairpin
  \dimHairpin
  c4\< d\! e\> d\! |
}

[image of music]

Para crear nuevas indicaciones de matiz absoluto o de texto que deba alinearse con los matices; véase Indicaciones dinámicas nuevas.

La colocación vertical de las indicaciones de dinámica se maneja por parte de DynamicLineSpanner.

Está disponible un contexto Dynamics para tipografiar las indicaciones de matiz dinámico en su propia línea horizontal. Utilice silencios de separación para indicar los tiempos (las notas que están dentro de un contexto Dynamics también ocupan tiempo musical, pero no se imprimen). El contexto Dynamics puede contener otros elementos como inscripciones textuales, objetos extensores de texto e indicaciones de pedal de piano.

<<
  \new Staff \relative {
    c'2 d4 e |
    c4 e e,2 |
    g'4 a g a |
    c1 |
  }
  \new Dynamics {
    s1\< |
    s1\f |
    s2\dim s2-"rit." |
    s1\p |
  }
>>

[image of music]

Instrucciones predefinidas

\dynamicUp, \dynamicDown, \dynamicNeutral, \crescTextCresc, \dimTextDim, \dimTextDecr, \dimTextDecresc, \crescHairpin, \dimHairpin.

Fragmentos de código seleccionados

Establecer el comportamiento de los reguladores en las barras de compás

Si la nota que da fin a un regulador cae sobre la primera parte de un compás, el regulador se detiene en la línea divisoria inmediatamente precedente. Se puede controlar este comportamiento sobreescribiendo la propiedad 'to-barline.

\relative c'' {
  e4\< e2.
  e1\!
  \override Hairpin.to-barline = ##f
  e4\< e2.
  e1\!
}

[image of music]

Ajustar la longitud mínima de los reguladores

Si los reguladores son demasiado cortos, se pueden alargar modificando la propiedad minimum-length del objeto Hairpin.

<<
  {
    \after 4 \< \after 2 \> \after 2. \! f'1
    \override Hairpin.minimum-length = #8
    \after 4 \< \after 2 \> \after 2. \! f'1
  }
  {
    \repeat unfold 8 c'4
  }
>>

[image of music]

Moving the ends of hairpins

The ends of hairpins may be offset by setting the shorten-pair property of the Hairpin object. Positive values move endpoints to the right, negative to the left. Unlike the minimum-length property, this property only affects the appearance of the hairpin; it does not adjust horizontal spacing (including the position of bounding dynamics). This method is thus suitable for fine-tuning a hairpin within its allotted space.

{
  c'1~\<
  c'2~ c'\!
  \once \override Hairpin.shorten-pair = #'(2 . 2)
  c'1~\<
  c'2~ c'\!
  \once \override Hairpin.shorten-pair = #'(-2 . -2)
  c'1~\<
  c'2~ c'\!
  c'1~\p-\tweak shorten-pair #'(2 . 0)\<
  c'2~ c'\ffff
}

[image of music]

Impresión de reguladores utilizando la notación «al niente»

Se pueden imprimir reguladores con un círculo en la punta (notación «al niente») estableciendo la propiedad circled-tip del objeto Hairpin al valor #t.

\relative c'' {
  \override Hairpin.circled-tip = ##t
  c2\< c\!
  c4\> c\< c2\!
}

[image of music]

Imprimir reguladores en diversos estilos

Los reguladores se pueden crear en una amplia variedad de estilos.

\relative c'' {
  \override Hairpin.stencil = #flared-hairpin
  a4\< a a a\f
  a4\p\< a a a\ff
  a4\sfz\< a a a\!
  \override Hairpin.stencil = #constante-hairpin
  a4\< a a a\f
  a4\p\< a a a\ff
  a4\sfz\< a a a\!
  \override Hairpin.stencil = #flared-hairpin
  a4\> a a a\f
  a4\p\> a a a\ff
  a4\sfz\> a a a\!
  \override Hairpin.stencil = #constante-hairpin
  a4\> a a a\f
  a4\p\> a a a\ff
  a4\sfz\> a a a\!
}

[image of music]

Indicaciones dinámicas y textuales alineadas verticalmente

Todos los objetos DynamicLineSpanner (reguladores e indicaciones dinámicas de texto) se sitúan con su línea de referencia a una distancia de al menos 'staff-padding del pentagrama, a no ser que otros elementos de notación los fuerce a colocarse a más distancia. Si se ajusta 'staff-padding a un valor suficientemente grande, las indicaciones dinámicas quedarán alineadas.

Se usa una idea similar junto a \textLengthOn para alinear las inscripciones de texto a lo largo de su línea de base.

music = \relative c' {
  a'2\p b\f
  e4\p f\f\> g, b\p
  c2^\markup { \huge gorgeous } c^\markup { \huge fantastic }
}

{
  \music
  \break
  \override DynamicLineSpanner.staff-padding = #3
  \textLengthOn
  \override TextScript.staff-padding = #1
  \music
}

[image of music]

Ocultar la línea de extensión de las expresiones textuales de dinámica

Los cambios de dinámica con estilo de texto (como cresc. y dim.) se imprimen con una línea intermitente que muestra su alcance. Esta línea se puede suprimir de la siguiente manera:

\relative c'' {
  \override DynamicTextSpanner.style = #'none
  \crescTextCresc
  c1\< | d | b | c\!
}

[image of music]

Cambiar el texto y los estilos de objeto de extensión para las indicaciones dinámicas textuales

Se puede modificar el texto empleado para los crescendos y decrescendos modificando las propiedades de contexto crescendoText y decrescendoText.

El estilo de la línea de extensión se puede cambiar modificando la propiedad 'style de DynamicTextSpanner. El valor predeterminado es 'dashed-line (línea discontinua), y entre otros valores posibles se encuentran 'line (línea), 'dotted-line (línea de puntos) y 'none (nada):

\relative c'' {
  \set crescendoText = \markup { \italic { cresc. poco } }
  \set crescendoSpanner = #'text
  \override DynamicTextSpanner.style = #'dotted-line
  a2\< a
  a2 a
  a2 a
  a2 a\mf
}

[image of music]

Véase también

Glosario musical: al niente, crescendo, decrescendo, hairpin.

Manual de aprendizaje: Articulaciones y matices dinámicos.

Referencia de la notación: Dirección y posición, Indicaciones dinámicas nuevas, Enriquecimiento de la salida MIDI, Control de las dinámicas del MIDI.

Fragmentos de código: Expressive marks.

Referencia de funcionamiento interno: DynamicText, Hairpin, DynamicLineSpanner, Dynamics.


Indicaciones dinámicas nuevas

La manera más fácil de crear indicaciones dinámicas es usar objetos de marcado (\markup).

moltoF = \markup { molto \dynamic f }

\relative {
  <d' e>16_\moltoF <d e>
  <d e>2..
}

[image of music]

En el modo de marcado se pueden crear indicaciones dinámicas editoriales (entre paréntesis o corchetes). La sintaxis del modo de marcado se describe en Formatear el texto.

roundF = \markup {
    \center-align \concat { \bold { \italic ( }
           \dynamic f \bold { \italic ) } } }
boxF = \markup { \bracket { \dynamic f } }
\relative {
  c'1_\roundF
  c1_\boxF
}

[image of music]

Las indicaciones dinámicas sencillas y centradas se crean fácilmente con la función make-dynamic-script.

sfzp = #(make-dynamic-script "sfzp")
\relative {
  c'4 c c\sfzp c
}

[image of music]

En general make-dynamic-script toma cualquier objeto de marcado como argumento. La fuente tipográfica de matices sólo contiene los caracteres f, m, p, r, s y z, por lo que si se desea obtener una indicación dinámica que incluya texto normal o signos de puntuación, es necesario utilizar instrucciones de marcado que devuelvan los ajustes de la familia de fuente tipográfica y su codificación a las del texto normal, por ejemplo \normal-text. El interés de la utilización de make-dynamic-script en lugar de un elemento de marcado corriente está en asegurar la alineación vertical de los objetos de marcado y reguladores que se aplican a la misma cabeza de nota.

roundF = \markup { \center-align \concat {
           \normal-text { \bold { \italic ( } }
           \dynamic f
           \normal-text { \bold { \italic ) } } } }
boxF = \markup { \bracket { \dynamic f } }
mfEspress = \markup { \center-align \line {
              \hspace #3.7 mf \normal-text \italic espress. } }
roundFdynamic = #(make-dynamic-script roundF)
boxFdynamic = #(make-dynamic-script boxF)
mfEspressDynamic = #(make-dynamic-script mfEspress)
\relative {
  c'4_\roundFdynamic\< d e f
  g,1~_\boxFdynamic\>
  g1
  g'1~\mfEspressDynamic
  g1
}

[image of music]

Se puede utilizar en su lugar la forma Scheme del modo de marcado. Su sintaxis se explica en Construcción de elementos de marcado en Scheme.

moltoF = #(make-dynamic-script
            (markup #:normal-text "molto"
                    #:dynamic "f"))
\relative {
  <d' e>16 <d e>
  <d e>2..\moltoF
}

[image of music]

Para alinear el texto del matiz dinámico a la izquierda en lugar de centrarlo sobre una nota, utilice un \tweak:

moltoF = \tweak DynamicText.self-alignment-X #LEFT
         #(make-dynamic-script
            (markup #:normal-text "molto"
                    #:dynamic "f"))
\relative {
  <d' e>16 <d e>
  <d e>2..\moltoF <d e>1
}

[image of music]

Los ajustes para las fuentes tipográficas en el modo de marcado se describen en Seleccionar la tipografía y su tamaño.

Véase también

Referencia de la notación: Formatear el texto, Seleccionar la tipografía y su tamaño, Enriquecimiento de la salida MIDI, Control de las dinámicas del MIDI.

Extender LilyPond: Construcción de elementos de marcado en Scheme.

Fragmentos de código: Expressive marks.


LilyPond — Referencia de la notación v2.23.82 (rama de desarrollo).