[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

5.4 Conceptos y propiedades útiles

@translationof Useful concepts and properties


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

5.4.1 Modos de entrada

@translationof Input modes

La forma en que se interpreta la notación contenida dentro de un archivo de entrada, está determinada por el modo de entrada en curso. In general, there are two ways of specifying the mode: a long form, e.g. \chordmode, and a short form, e.g. \chords. The long form is typically used when supplying input to a variable or when entering input directly into an explicitly created context. The short form implicitly creates a context of the correct type for the input and passes the input directly to it. It is useful in simple situations when there is no requirement to explicitly create the receiving context.

Modo de acordes

Se activa con la instrucción \chordmode y produce que la entrada se interprete con al sintaxis de la notación de acordes, véase Notación de acordes. Music in chord mode is rendered as chords on a staff when entered into a Staff context, as chord names when entered into a ChordNames context or as fret boards when entered into a FretBoards context.

El modo de acordes se activa también con la instrucción \chords. Esto también produce que el código que sigue se interprete con la sintaxis de la notación de acordes but in addition it implicitly creates a new ChordNames context and renders the input into it as chord names, véase Impresión de los nombres de acorde.

Modo de percusión

Se activa con la instrucción \drummode y produce que el código de entrada se interprete con la sintaxis de la notación de percusión, véase Notación básica de percusión. Music in drum mode is rendered as percussion notes when entered into a DrumStaff context.

El modo de percusión también se activa con la instrucción \drums. También hace que el código que sigue se interprete con la sintaxis de la notación de percusión but in addition it implicitly creates a new DrumStaff context and renders the input into it as percussion notes, véase Notación básica de percusión.

Modo de cifras

Se activa con la instrucción \figuremode y hace que el código de entrada se interprete con la sintaxis del bajo cifrado, véase Introducir el bajo cifrado. Music in figure mode is rendered as figured bass when entered into a FiguredBass context or a Staff context.

El modo de cifras también se activa con la instrucción \figures. También hace que el código que viene a continuación se interprete con la sintaxis del bajo cifrado but in addition it implicitly creates a new FiguredBass context and renders the input into it as figured bass, véase Introducción al bajo cifrado.

Modos de traste y tablatura

No existen modos de entrada especiales para introducir símbolos de trastes y de tablatura.

Para crear diagramas de trastes, escriba las notas o acordes en el modo de notas e imprímalos dentro de un contexto TabStaff, véase Tablaturas predeterminadas.

Para crear diagramas de trastes encima de un pentagrama, enter notes or chords in either note mode or chord mode and render them in a FretBoards context, véase Diagramas de traste automáticos. Alternatively, los diagramas de trastes se pueden introducir como elementos de marcado encima de las notas utilizando la instrucción \fret-diagram, véase Marcas de diagramas de trastes.

Modo de letra

Se activa con la instrucción \lyricmode, y hace que la entrada se interprete como sílabas de la letra de la canción con duraciones opcionales y modificadores de letra asociados, véase Música vocal. Input in lyric mode is rendered as lyric syllables when entered into a Lyrics context.

El modo de letra también se habilita con la instrucción \addlyrics. This also causes the following input to be interpreted as lyric syllables but in addition it implicitly creates a new Lyrics context and renders the input into it as lyric syllables.

Lyric mode is also activated with the \addlyrics command. Esto también crea un contexto Lyrics nuevo y además añade una instrucción \lyricsto implícita que asocia la letra que viene a continuación con la música precedente, véase @ref{Automatic syllable durations}.

Modo de marcado

Se activa con la instrucción \markup, y hace que la entrada se interprete con la sintaxis del marcado, véase @ref{Text markup commands}.

Modo de notas

Es el modo predeterminado o se puede activar con la instrucción \notemode. La entrada se interpreta como alturas, duraciones, marcado, etc. y se imprime como notación musical sobre un pentagrama.

Normalmente no es necesario especificar el modo de notas de forma explícita, pero puede ser útil hacerlo en ciertas situaciones, por ejemplo si estamos en el modo de letra, en el modo de acordes o en otro modo y queremos insertar algo que solamente se puede hacer con la sintaxis del modo de notas.


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

5.4.2 Dirección y posición

@translationof Direction and placement

Al tipografiar música, la dirección y colocación de muchos elementos es cuestión de elección. Por ejemplo, las plicas de las notas se pueden dirigir hacia arriba o hacia abajo; la letra, las indicaciones dinámicas y otras marcas expresivas se pueden colocar encima o debajo del pentagrama; el texto se pude alinear a la izquierda, a la derecha o centrado; etc. La mayoría de estas elecciones pueden dejarse que LilyPond las determine automáticamente, pero en ciertos casos puede ser deseable forzar una dirección o colocación concreta.


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

Indicadores de dirección de las articulaciones

@translationof Articulation direction indicators

De forma predeterminada algunas direcciones siempre son hacia arriba o siempre hacia abajo (p. ej. los matices o el calderón), mientras que otras cosas pueden alternar entre arriba y abajo en función de la dirección de las plicas (como las ligaduras o los acentos).

Se puede sobreescribir la acción predeterminada mediante el prefijado de la articulación por un indicacor de dirección. Están disponibles tres indicadores de dirección: ^ (que significa “arriba”), _ (que significa “abajo”) o - (que significa “usar la dirección predeterminada”). El indicador de dirección se puede normalmente omitir, en cuyo caso se supone el indicador predeterminado -, pero se necesita un indicador de dirección siempre antes de:

Estas indicaciones afectan sólo a la nota siguiente.

 
\relative {
  c''2( c)
  c2_( c)
  c2( c)
  c2^( c)
}

[image of music]


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

La propiedad de dirección

@translationof The direction property

La posición o dirección de muchos objetos de presentación está controlada por la propiedad direction.

El valor de la propiedad direction se puede establecer al valor 1, con el significado de “hacia arriba” o “encima”, o a -1, con el significado de “hacia abajo” o “debajo”. Se pueden usar los símbolos UP y DOWN en sustitución de 1 y -1 respectivamente. La dirección predeterminada se puede especificar estableciendo direction a 0 ó a CENTER. De forma alternativa, en muchos casos existen instrucciones predefinidas para especificar la dirección. Todas ellas son de la forma:

 
\xxxUp, \xxxDown o \xxxNeutral

donde \xxxNeutral significa “utilizar la dirección predeterminada”. Véase pentagrama (learning)Objetos interiores al pentagrama sección ‘Objetos interiores al pentagrama’ en Manual de Aprendizaje.

En alguna que otra ocasión como en el arpegio, el valor de la propiedad direction puede especificar si el objeto se debe colocar a la izquierda o a la derecha del objeto padre. En este caso -1 ó LEFT significan “a la izquierda” y 1 ó RIGHT significan “a la derecha”. 0 ó CENTER significan “utilizar la dirección predeterminada”.

Estas indicaciones afectan a todas las notas hasta que son canceladas.

 
\relative {
  c''2( c)
  \slurDown
  c2( c)
  c2( c)
  \slurNeutral
  c2( c)
}

[image of music]

En música polifónica, en general es mejor especificar una voz explícita que cambiar la dirección de un objeto. Para ver más información, véase Varias voces.

Véase también

Manual de aprendizaje: (learning)Objetos interiores al pentagrama sección ‘Objetos interiores al pentagrama’ en Manual de Aprendizaje.

Referencia de la notación: Varias voces.


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

5.4.3 Distancias y medidas

@translationof Distances and measurements

Las distancias en LilyPond son de dos tipos: absolutas y escaladas.

Las distancias absolutas se usan para especificar márgenes, sangrados y otros detalles de diseño de página, y de forma predeterminada se especifican en milímetros. Las distancias se pueden especificar en otras unidades escribiendo después de la cifra indicativa de la cantidad, \mm, \cm, \in (pulgadas), o \pt (puntos, 1/72.27 pulgadas). Las distancias de diseño de página se pueden especificar también en unidades escalables (véase el párrafo siguiente) adjuntando \staff-space a la cantidad. La disposición de página se describe en detalle en Disposición de la página.

Las distancias escaladas siempre se especifican en unidades de un espacio del pentagrama o, más raramente, medio espacio del pentagrama. El espacio de pentagrama es la distancia entre dos líneas del pentagrama adyacentes. El valor predeterminado se puede cambiar globalmente fijando el tamaño global del pentagrama, o se puede sobreescribir localmente cambiando la propiedad staff-space del objeto StaffSymbol. Las distancias escaladas se escalan automáticamente con cualquier cambio al tamaño global del pentagrama o a la propiedad staff-space del objeto StaffSymbol, pero las fuentes tipográficas se escalan solamente con los cambios efectuados al tamaño global del pentagrama. Así, el tamaño global del pentagrama posibilita la fácil variación del tamaño general de una partitura impresa. Para ver los métodos de establecimiento del tamaño global del pentagrama, véase Establecer el tamaño del pentagrama.

Si se necesita dibujar sólo una sección de una partitura a una escala distinta, por ejemplo una sección ossia o una nota al pie, no se puede simplemente cambiar el tamaño global del pentagrama porque esto afectaría a toda la partitura. En tales casos, el cambio de tamaño se hace sobreescribiendo tanto la propiedad staff-space de StaffSymbol como el tamaño de las fuentes tipográficas. Está a nuestra disposición una función de Scheme, magstep, para convertir de un cambio en el tamaño de la fuente al cambio equivalente en staff-space. Para ver una explicación y un ejemplo de su utilización, consulte (learning)Longitud y grosor de los objetos sección ‘Longitud y grosor de los objetos’ en Manual de Aprendizaje.

Véase también

Manual de aprendizaje: (learning)Longitud y grosor de los objetos sección ‘Longitud y grosor de los objetos’ en Manual de Aprendizaje.

Referencia de la notación: Disposición de la página, Establecer el tamaño del pentagrama.


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

5.4.4 Dimensiones

@translationof Dimensions

Las dimensiones de un objeto gráfico especifican las posiciones de los límites izquierdo y derecho, así como los límites inferior y superior de las cajas limítrofes de los objetos como distancias a partir del punto de referencia del objeto en unidades de espacios de pentagrama. Estas posiciones se codifican frecuentemente como dos parejas de valores de Scheme. Por ejemplo, la instrucción de marcado de texto \with-dimensions toma tres argumentos, de los cuales los dos primeros son una pareja de Scheme que da las posiiciones de los bordes izquierdo y derecho y otra pareja de Scheme que da las posiciones de los límites inferior y superior:

 
\with-dimensions #'(-5 . 10) #'(-3 . 15) arg

Esto especifica una caja circundante para arg con su límite izquierdo en -5, su límite derecho en 10, el inferior en -3 y el superior e 15, todos ellos medidos a partir del punto de referencia del objeto en unidades de espacios de pentagrama.

Véase también

Referencia de la notación: Distancias y medidas.


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

5.4.5 Propiedades del símbolo del pentagrama

@translationof Staff symbol properties

Se puede definir al mismo tiempo la posición vertical de las líneas de la pauta y el número de líneas de la misma. Como muestra el siguiente ejemplo, las posiciones de las notas no están influidas por las posiciones de las líneas de la pauta.

Nota: La propiedad 'line-positions sobreescribe a la propiedad 'line-count. El número de líneas de la pauta está definido implícitamente por el número de elementos de la lista de valores de 'line-positions.

 
\new Staff \with {
  \override StaffSymbol.line-positions = #'(7 3 0 -4 -6 -7)
}
\relative { a4 e' f b | d1 }

[image of music]

Se puede modificar la anchura de la pauta. Las unidades son espacios de pentagrama. El espaciado de los objetos dentro del pentagrama no resulta afectado por este ajuste.

 
\new Staff \with {
  \override StaffSymbol.width = #23
}
\relative { a4 e' f b | d1 }

[image of music]


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

5.4.6 Objetos de extensión

@translationof Spanners

Muchos objetos de notación musical abarcan varias notas o incluso varios compases. Son ejemplos los crescendi, trinos, corchetes de grupo especial y corchetes de primera y segunda vez. Estos objetos se llaman “spanners” u «objetos de extensión», y tienen propiedades especiales para controlar su apariencia y comportamiento. Algunas de estas propiedades son comunes a todos los objetos de extensión; otras se limitan a un subconjunto de los extensores.

Todos los objetos de extensión contemplan el interface spanner-interface. Algunos, básicamente aquellos que trazan una línea recta entre los dos objetos, contemplan también el interface line-spanner-interface.


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

Uso del spanner-interface

@translationof Using the spanner-interface

Este interface proporciona dos propiedades que se aplican a varios extensores.

La propiedad minimum-length (longitud mínima)

La longitud mínima del objeto de extensión se especifica a través de la propiedad minimum-length. Su aumento suele producir el efecto necesario de aumentar el espaciado de las notas entre los dos puntos extremos. Sin embargo, esta sobreescritura no tiene ningún efecto sobre muchos extensores, pues su longitud está determinada por otras consideraciones. Más abajo se muestran algunos ejemplos de dónde es efectiva.

 
a'~ a'
a'
% increase the length of the tie
-\tweak minimum-length #5
~ a'

[image of music]

 
\relative \compressMMRests {
  a'1
  R1*23
  % increase the length of the rest bar
  \once \override MultiMeasureRest.minimum-length = #20
  R1*23
  a1
}

[image of music]

 
\relative {
  a' \< a a a \!
  % increase the length of the hairpin
  \override Hairpin.minimum-length = #20
  a \< a a a \!
}

[image of music]

Esta sobreescritura se puede usar también para aumentar la longitud de las ligaduras de expresión y de fraseo:

 
\relative {
  a'( g)
  a
  -\tweak minimum-length #5
  ( g)

  a\( g\)
  a
  -\tweak minimum-length #5
  \( g\)
}

[image of music]

Para algunos objetos de presentación, la propiedad minimum-length es efectiva sólo si se llama explícitamente al procedimiento set-spacing-rods. Para hacerlo, se debe fijar la propiedad springs-and-rods al valor ly:spanner::set-spacing-rods. Por ejemplo, la longitud mínima de un glissando no tiene efecto a no ser que se establezca la propiedad springs-and-rods:

 
% default
e' \glissando c''

% not effective alone
\once \override Glissando.minimum-length = #20
e' \glissando c''

% effective only when both overrides are present
\once \override Glissando.minimum-length = #20
\once \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods
e' \glissando c''

[image of music]

Lo mismo se puede decir del objeto Beam:

 
% not effective alone
\once \override Beam.minimum-length = #20
e'8 e' e' e'

% effective only when both overrides are present
\once \override Beam.minimum-length = #20
\once \override Beam.springs-and-rods = #ly:spanner::set-spacing-rods
e'8 e' e' e'

[image of music]

La propiedad to-barline

La segunda propiedad útil del spanner-interface es to-barline. De forma predeterminada tiene el valor cierto, haciendo que los reguladores y otros objetos de extensión que terminan sobre la primera nota de un compás, en vez de eso terminen en la línea divisoria inmediatamente precedente. Si se establece al valor falso, el extensor llegará más allá de la barra de compás y terminará exactamente sobre la nota:

 
\relative {
  a' \< a a a a \! a a a \break
  \override Hairpin.to-barline = ##f
  a \< a a a a \! a a a
}

[image of music]

Esta propiedad no es efectiva para todos los extensores. Por ejemplo, su establecimiento a #t no tienen ningún efecto sobre las ligaduras de expresión o de fraseo, o sobre otros extensores para los que terminar en la barra de compás no tendría ningún significado.


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

Uso del line-spanner-interface

@translationof Using the line-spanner-interface

Entre los objetos que contemplan el interface line-spanner-interface se encuentran

La rutina responsable de dibujar los sellos de estos extensores es ly:line-spanner::print. esta rutina determina la localización exacta de los dos puntos extremos y traza una línea entre ellos, en el estilo solicitado. Las posiciones de los dos puntos extremos del extensor se calculan al vuelo, pero es posible sobreescribir sus coordenadas Y. Las propiedades que se deben especificar están anidadas a dos niveles de profundidad en la jerarquía de propiedades, pero la sintaxis de la instrucción \override es bastante sencilla:

 
e''2 \glissando b'
\once \override Glissando.bound-details.left.Y = #3
\once \override Glissando.bound-details.right.Y = #-2
e''2 \glissando b'

[image of music]

Las unidades para la propiedad Y son staff-spaces, siendo el punto del cero la línea central del pentagrama. Para el glissando, esto es el valor de Y en la coordenada X que corresponde al punto central de cada cabeza de nota si nos imaginamos que la línea se extiende hasta allí.

Si no está fijado Y, su valor se calcula a partir de la posición vertical del punto de anclaje correspondiente del extensor.

En caso de salto de línea, los valores para los puntos extremos se especifican por las sub-listas left-broken y right-broken de bound-details. Por ejemplo:

 
\override Glissando.breakable = ##t
\override Glissando.bound-details.right-broken.Y = #-3
c''1 \glissando \break
f''1

[image of music]

Un número de propiedades adicionales de las sub-listas left y right de la propiedad bound-details se pueden especificar de la misma forma que Y:

Y

Establece la coordenada Y del punto extremo, en desplazamientos de staff-spaces desde la línea central del pentagrama. De forma predeterminada es el centro del objeto ancla, y así un glissando apunta al centro vertical de la cabeza de la nota.

Para extensores horizontales como los extensores de texto y los trinos, está inamoviblemente codificado como 0.

attach-dir (dirección de anclaje)

Determina dónde comienza y termina la línea en la dirección X, con relación al objeto ancla. Sí, un valor de -1 (o LEFT, izquierda) hace que la línea comience o termine en el lado izquierdo de la cabeza de la nota a la que está anclado.

X

Es la coordenada X absoluta del punto extremo. Se suele calcular al vuelo, y su sobreescritura no tiene un efecto útil.

stencil (sello)

Los extensores de línea pueden tener símbolos al comienzo o al final, lo que está contenido en esta sub-propiedad. Esto es para uso interno; se recomienda en su lugar el uso de text.

text (texto)

Es un elemento de marcado que se evalúa para dar lugar al sello. Se usa para escribir cresc., tr y otros textos sobre los objetos de extensión horizontales.

 
\override TextSpanner.bound-details.left.text
   = \markup { \small \bold Slower }
\relative { c''2\startTextSpan b c a\stopTextSpan }

[image of music]

stencil-align-dir-y (alineación del sello en y)
stencil-offset (desplazamiento del sello)

Si no se modifican uno u otro, el sello se coloca sencillamente en el punto extremo, centrado sobre la línea, como viene definido por las subpropiedades X e Y. Si se fijan stencil-align-dir-y o stencil-offset se moverá el símbolo del borde verticalmente con relación al extremo de la línea:

 
\override TextSpanner.bound-details.left.stencil-align-dir-y = #-2
\override TextSpanner.bound-details.right.stencil-align-dir-y = #UP

\override TextSpanner.bound-details.left.text = "ggg"
\override TextSpanner.bound-details.right.text = "hhh"

\relative { c'4^\startTextSpan c c c \stopTextSpan }

[image of music]

Observe que los valores negativos mueven el texto hacia arriba, al contrario de lo que podría esperarse, pues el valor de -1 o DOWN (abajo) significa alinear el borde inferior del texto con la línea de extensión. Un valor de 1 o UP (arriba) alinea el borde superior del texto con la línea extensora.

arrow (flecha)

Al establecer esta sub-propiedad a #t se produce una punta de flecha en el extremo de la línea.

padding (relleno)

Esta sub-propiedad controla el espacio entre el punto extremo especificado de la línea y el extremo real. Sin relleno, un glissando empezaría y terminaría en el centro de la cabeza de las notas.

La función musical \endSpanners finaliza de forma prematura el extensor que comienza sobre la nota que sigue inmediatamente a continuación. Se termina después de una nota exactamente, o en la siguiente barra de compás si to-barline es verdadero y se produce una divisoria antes de la siguiente nota.

 
\relative c'' {
  \endSpanners
  c2 \startTextSpan c2 c2
  \endSpanners
  c2 \< c2 c2
}

[image of music]

Si se usa \endSpanners no es necesario cerrar \startTextSpan con \stopTextSpan, ni cerrar los reguladores con \!.

Véase también

Referencia de funcionamiento interno: (internals)TextSpanner sección ‘TextSpanner’ en Referencia de Funcionamiento Interno, (internals)Glissando sección ‘Glissando’ en Referencia de Funcionamiento Interno, (internals)VoiceFollower sección ‘VoiceFollower’ en Referencia de Funcionamiento Interno, (internals)TrillSpanner sección ‘TrillSpanner’ en Referencia de Funcionamiento Interno, (internals)line-spanner-interface sección ‘line-spanner-interface’ en Referencia de Funcionamiento Interno.


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

5.4.7 Visibilidad de los objetos

@translationof Visibility of objects

Hay cuatro formas principales en que se puede controlar la visibilidad de los objetos de presentación: se puede eliminar su sello, se pueden volver transparentes, se pueden pintar de blanco, o se puede sobreescribir su propiedad break-visibility. Las tres primeras se aplican a todos los objetos de presentación; la última sólo a unos pocos: los objetos divisibles. El Manual de aprendizaje introduce estas cuatro técnicas, véase (learning)Visibilidad y color de los objetos sección ‘Visibilidad y color de los objetos’ en Manual de Aprendizaje.

Hay también algunas otras técnicas que son específicas de ciertos objetos de presentación. Se estudian bajo Consideraciones especiales.


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

Eliminar el sello

@translationof Removing the stencil

Todo objeto de presentación tiene una propiedad stencil (sello). De forma predeterminada está establecida a la función específica que dibuja ese objeto. Si se sobreescribe esta propiedad a #f no se llama a ninguna función y el objeto no se dibuja. La acción predeterminada se puede recuperar con \revert.

 
a1 a
\override Score.BarLine.stencil = ##f
a a
\revert Score.BarLine.stencil
a a a

[image of music]

Esta operación, bastante común, tiene la forma abreviada \omit como atajo:

 
a1 a
\omit Score.BarLine
a a
\undo \omit Score.BarLine
a a a

[image of music]


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

Hacer transparentes los objetos

@translationof Making objects transparent

Todo objeto de presentación tiene una propiedad transparent (transparente) que de forma predeterminada está establecida a #f. Si se fija a #t el objeto aún ocupa espacio pero es invisible.

 
a'4 a'
\once \override NoteHead.transparent = ##t
a' a'

[image of music]

Esta operación, bastante común, tiene la forma abreviada \hide como atajo:

 
a'4 a'
\once \hide NoteHead
a' a'

[image of music]


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

Pintar los objetos de blanco

@translationof Painting objects white

Todo objeto de presentación tiene una propiedad de color que de forma predeterminada está establecida a black (negro). Si se sobreescribe a white (blanco) el objeto será indistinguible del fondo blanco. Sin embargo, si el objeto cruza a otros objetos, el color de los puntos de cruce queda determinado por el orden en que se dibujan estos objetos, lo que puede dejar una imagen fantasma del objeto blanco, como puede verse aquí:

 
\override Staff.Clef.color = #white
a'1

[image of music]

Se puede evitar esto cambiando el orden de impresión de los objetos. Todos los objetos de presentación tienen una propiedad layer (capa) que se debe establecer a un valor entero. Los objetos con el valor de layer más bajo se dibujan primero, después se dibujan los objetos con valores progresivamente mayores, y así los objetos con valores más altos se dibujan encima de los que tienen valores más bajos. De forma predeterminada, casi todos los objetos tienen asignado un valor layer de 1, aunque algunos objetos, entre ellos el pentagrama y las líneas divisorias, StaffSymbol y BarLine, tienen asignado un calor de 0. El orden de impresión de los objetos con el mismo valor de layer es indeterminado.

En el ejemplo de arriba, la clave blanca, con un valor layer predeterminado de 1, se dibuja después de las líneas del pentagrama (valor layer predeterminado de 0), sobreimpresionándolas. Para cambiarlo, se debe dar al objeto Clef un valor de layer más bajo, digamos -1, para que se dibuje antes:

 
\override Staff.Clef.color = #white
\override Staff.Clef.layer = #-1
a'1

[image of music]


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

Uso de break-visibility (visibilidad en el salto)

@translationof Using break-visibility

Casi todos los objetos de presentación se imprimen una sola vez, pero algunos como las líneas divisorias, claves, indicaciones de compás y armaduras de tonalidad, se pueden tener que imprimir dos veces cuando se produce un salto de línea : una vez al final de la línea y otra al comienzo de la siguiente. Estos objetos reciben el nombre de divisibles, y tienen una propiedad, break-visibility (visibilidad en el salto), para controlar su visibilidad en las tres posiciones en que pueden aparecer: al comienzo de una línea, dentro de la línea si se produce un cambio, y al final de la línea si el cambio se produce en ese lugar.

Por ejemplo, la indicación de compás se imprime de forma predeterminada al comienzo de la primera línea y en ningún otro lugar a no ser que cambie, en cuyo caso se imprime en el punto en que se produce el cambio. Si este cambio se produce al final de una línea, la nueva indicación de compás se imprime al principio de la línea siguiente y también al final de la línea anterior como indicación de precaución.

Este comportamiento se controla por medio de la propiedad break-visibility, que se explica en (learning)Visibilidad y color de los objetos sección ‘Visibilidad y color de los objetos’ en Manual de Aprendizaje. Esta propiedad toma un vector de tres valores booleanos que, por orden, determinan si el objeto se imprime al final, dentro, o al principio de la línea. O, para ser más exactos: antes del salto de línea, si no hay salto, o después del salto.

Como alternativa se puede especificar cualquiera de las ocho combinaciones mediante funciones predefinidas cuya definición está en ‘scm/output-lib.scm’, donde las tres últimas columnas indican si los objetos de presentación serán visibles en las posiciones que se muestran en el encabezamiento de cada columna:

FormaFormaAntes delSi no hayDespués del
de funciónde vectorsaltosaltosalto
all-visible#(#t #t #t)sísísí
begin-of-line-visible#(#f #f #t)nonosí
center-visible#(#f #t #f)nosíno
end-of-line-visible#(#t #f #f)sínono
begin-of-line-invisible#(#t #t #f)sísíno
center-invisible#(#t #f #t)sínosí
end-of-line-invisible#(#f #t #t)nosísí
all-invisible#(#f #f #f)nonono

Los ajustes predeterminados de break-visibility dependen del objeto de presentación. La tabla siguiente muestra todos los objetos de presentación de interés que resultan afectados por break-visibility y el ajuste predeterminado de esta propiedad:

ObjetoContexto usualValor predet.
BarLineScorecalculado
BarNumberScorebegin-of-line-visible
BreathingSignVoicebegin-of-line-invisible
ClefStaffbegin-of-line-visible
CustosStaffend-of-line-visible
DoublePercentRepeatVoicebegin-of-line-invisible
KeyCancellationStaffbegin-of-line-invisible
KeySignatureStaffbegin-of-line-visible
ClefModifierStaffbegin-of-line-visible
RehearsalMarkScoreend-of-line-invisible
TimeSignatureStaffall-visible

El ejemplo de abajo muestra el uso de la forma de vector para controlar la visibilidad de las líneas divisorias:

 
\relative {
  f'4 g a b
  f4 g a b
  % Remove bar line at the end of the current line
  \once \override Score.BarLine.break-visibility = ##(#f #t #t)
  \break
  f4 g a b
  f4 g a b
}

[image of music]

Aunque los tres componentes del vector utilizado para sobreescribir break-visibility deben estar presentes, no todos son efectivos para todos los objetos de presentación, y algunas combinaciones pueden incluso dar errores. Son de aplicación las siguientes limitaciones:


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

Consideraciones especiales

@translationof Special considerations

Visibilidad después de un cambio explícito

La propiedad break-visibility controla la visibilidad de las armaduras y cambios de clave sólo al principio de las líneas, es decir, después de un salto. No tiene ningún efecto sobre la visibilidad de la armadura o la clave después de un cambio explícito de tonalidad o de clave dentro o al final de una línea. En el ejemplo siguiente la armadura que sigue al cambio explícito de tonalidad a Si bemol mayor es visible incluso con all-invisible establecido.

 
\relative {
  \key g \major
  f'4 g a b
  % Try to remove all key signatures
  \override Staff.KeySignature.break-visibility = #all-invisible
  \key bes \major
  f4 g a b
  \break
  f4 g a b
  f4 g a b
}

[image of music]

La visibilidad de estos cambios explícitos de tonalidad y de clave se controla por medio de las propiedades explicitKeySignatureVisibility y explicitClefVisibility. Son los equivalentes de la propiedad break-visibility y las dos toman un vector de tres valores booleanos o las funciones predefinidas relacionadas anteriormente, exactamente igual que break-visibility. Las dos son propiedades del contexto Staff, no de los propios objetos de presentación, y por tanto se establecen utilizando la instrucción \set. Las dos están establecidas de forma predeterminada al valor all-visible. Estas propiedades controlan sólo la visibilidad de las armaduras y las claves que resultan de los cambios explícitos y no afectan a las armaduras y tonalidades que están al principio de las líneas; para quitarlas, aún se debe sobreescribir la propiedad break-visibility en el objeto correspondiente.

 
\relative {
  \key g \major
  f'4 g a b
  \set Staff.explicitKeySignatureVisibility = #all-invisible
  \override Staff.KeySignature.break-visibility = #all-invisible
  \key bes \major
  f4 g a b \break
  f4 g a b
  f4 g a b
}

[image of music]

Visibilidad de las alteraciones de precaución

Para eliminar las alteraciones de cancelación que se imprimen en un cambio de tonalidad explícito, establezca la propiedad printKeyCancellation del contexto Staff a #f:

 
\relative {
  \key g \major
  f'4 g a b
  \set Staff.explicitKeySignatureVisibility = #all-invisible
  \set Staff.printKeyCancellation = ##f
  \override Staff.KeySignature.break-visibility = #all-invisible
  \key bes \major
  f4 g a b \break
  f4 g a b
  f4 g a b
}

[image of music]

Con estas sobreescrituras solamente permanecen las alteraciones accidentales delante de las notas para indicar el cambio de tonalidad.

Observe que al modificar la tonalidad a Do mayor o La menor, las alteraciones de cancelación serían la única indicación del cambio de armadura. En este caso, el establecimiento de printKeyCancellation al valor #f no tiene ningún efecto:

 
\relative {
  \key g \major
  f'4 g a b
  \set Staff.explicitKeySignatureVisibility = #all-invisible
  \set Staff.printKeyCancellation = ##f
  \key c \major
  f4 g a b \break
  f4 g a b
  f4 g a b
}

[image of music]

En lugar de ello, para suprimir las alteraciones de cancelación aún cuando la armadura cambia a Do mayor o a La menor, sobreescriba la visibilidad del grob KeyCancellation:

 
\relative {
  \key g \major
  f'4 g a b
  \set Staff.explicitKeySignatureVisibility = #all-invisible
  \override Staff.KeyCancellation.break-visibility = #all-invisible
  \key c \major
  f4 g a b \break
  f4 g a b
  f4 g a b
}

[image of music]

Líneas divisorias automáticas

Como caso especial, la impresión de las líneas divisorias también se puede inhabilitar estableciendo la propiedad automaticBars en el contexto Score. Si se fija a #f, las barras de compás no se imprimen automáticamente; se deben crear explícitamente con una instrucción \bar. A diferencia de la instrucción predefinida \cadenzaOn, los compases se siguen contando. La generación de compases continúa de acuerdo a esta cuenta si esta propiedad se establece posteriormente a #t. Si se fija al valor #f, sólo pueden producirse saltos de línea en instrucciones \bar explícitas.

Claves transportadas

El pequeño símbolo de transposición sobre una clave se produce por parte del objeto ClefModifier. Su visibilidad se hereda automáticamente de la del objeto Clef, así que no es necesario aplicar las sobreescrituras correspondientes break-visibility a los objetos ClefModifier para suprimir los símbolos de transposición u octavación para las claves invisibles.

Para los cambios de clave explícitos, la propiedad explicitClefVisibility controla tanto el símbolo de clave como el símbolo de transposición o de octava asociado.

Véase también

Manual de aprendizaje: (learning)Visibilidad y color de los objetos sección ‘Visibilidad y color de los objetos’ en Manual de Aprendizaje


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

5.4.8 Estilos de línea

@translationof Line styles

Ciertas indicaciones de ejecución, p.ej., rallentando, accelerando y los trinos se escriben como texto y se extienden sobre muchos compases mediante líneas, a veces punteadas u onduladas.

Todos ellos usan las mismas rutinas que el glissando para dibujar los textos y las líneas, y por ello el ajuste fino de su comportamiento se hace de la misma manera. Se hace con un spanner (un objeto de extensión), y la rutina responsable de dibujar los objetos de extensión es ly:line-spanner::print. Esta rutina determina la colocación exacta de los dos extremos del objeto de extensión y dibuja una línea entre ellos, en el estilo solicitado.

He aquí un ejemplo de los distintos estilos de línea disponibles, y cómo aplicarles ajustes finos.

 
\relative {
  d''2 \glissando d'2
  \once \override Glissando.style = #'dashed-line
  d,2 \glissando d'2
  \override Glissando.style = #'dotted-line
  d,2 \glissando d'2
  \override Glissando.style = #'zigzag
  d,2 \glissando d'2
  \override Glissando.style = #'trill
  d,2 \glissando d'2
}

[image of music]

Las posiciones de los puntos extremos del objeto de extensión se computan al vuelo para cada uno de los objetos gráficos, pero es posible sobreescribirlos:

 
\relative {
  e''2 \glissando f
  \once \override Glissando.bound-details.right.Y = #-2
  e2 \glissando f
}

[image of music]

El valor de Y está establecido a -2 para el extremo derecho. El lado izquierdo se puede ajustar de forma similar especificando left en vez de right.

Si no está establecido Y, el valor se computa a partir de la posición vertical de los puntos de anclaje izquierdo y derecho del extensor.

Son posibles otros ajustes de los extensores, para ver más detalles consulte Objetos de extensión.


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

5.4.9 Rotación de objetos

@translationof Rotating objects

Tanto los objetos de presentación como los elementos de texto de marcado se pueden girar cualquier ángulo respecto a cualquier punto, pero difiere el método de hacerlo.


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

Rotación de objetos de presentación

@translationof Rotating layout objects

Todos los objetos de presentación que contemplan el interface grob-interface se pueden rotar estableciendo su propiedad rotation. Acepta una lista de tres elementos: el ángulo de la rotación en sentido antihorario, y las coordenadas x e y del punto con relación al punto de referencia del objeto, alrededor del que se va a realizar la rotación. El ángulo de rotación se especifica en grados y las coordenadas en espacios de pentagrama.

El ángulo de rotación y las coordenadas del punto de rotación se deben determinar por ensayo y error.

Solamente en ciertas ocasiones es útil la rotación de objetos de presentación; el ejemplo siguiente muestra una situación en que puede serlo:

 
g4\< e' d'' f''\!
\override Hairpin.rotation = #'(15 -1 0)
g4\< e' d'' f''\!

[image of music]


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]         [Arriba] [Índice general] [Índice] [ ? ]

Rotación de elementos de marcado

@translationof Rotating markup

Todos los textos de marcado se pueden rotar para que se dispongan en cualquier ángulo precediéndolos de la instrucción \rotate. La instrucción acepta dos argumentos: el ángulo de rotación en grados en sentido antihorario, y el texto que rotar. Los límites que ocupa el texto no se rotan: toman su valor a partir de los extremos de las coordenadas x e y del texto rotado. En el ejemplo siguiente la propiedad outside-staff-priority del texto se establece a #f para desactivar la evitación automática de colisiones, lo que empuja al texto a una posición muy alta.

 
\override TextScript.outside-staff-priority = ##f
g4^\markup { \rotate #30 "a G" }
b^\markup { \rotate #30 "a B" }
des'^\markup { \rotate #30 "a D-Flat" }
fis'^\markup { \rotate #30 "an F-Sharp" }

[image of music]


[ < ] [ > ]   [ << ] [ Subir ] [ >> ]

Este documento ha sido generado por gub el el 13 julio 2020 utilizando texi2html 1.82.

Otros idiomas: English, català, deutsch, français, italiano, 日本語.
Acerca de la selección automática del idioma.