+y de nuevo podemos comprobar que las barras de compás no son visibles.
+Observe que @emph{white} no viene precedido de un apóstrofe: no es un
+símbolo, sino una @emph{función}. Cuando se invoca, proporciona la
+lista de valores internos que se requieren para establecer el color a
+blanco. Los otros colores de la lista normal también son funciones.
+Para convencerse de que esto funciona, quizá quiera cambiar el color a
+una de las otras funciones de la lista.
+
+@cindex colores de X11
+@cindex X11, colores de
+
+La segunda forma de cambiar el color es utilizar la lista de nombres
+de colores de X11 que aparecen en la segunda lista de @ruser{List of
+colors}. Sin embargo, éstos deben ir precedidos de otra función, que
+convierte los nombres de colores de X11 en la lista de valores
+internos, @code{x11-color}, de la siguiente manera:
+
+@lilypond[quote,verbatim,relative=2]
+{
+ \time 12/16
+ \override Staff.BarLine #'color = #(x11-color 'white)
+ c4 b8 c d16 c d8 |
+ g, a16 b8 c d4 e16 |
+ e8
+}
+@end lilypond
+
+@noindent
+Observe que en este caso la función @code{x11-color} toma un símbolo
+como argumento, así que el símbolo debe ir precedido de un apóstrofe y
+los dos deben ir entre paréntesis.
+
+@cindex rgb, colores
+@cindex color, rgb
+
+Aún hay una tercera función, que convierte valores RGB en colores
+internos: la función @code{rgb-color}. Toma tres argumentos que dan
+las intensidades de rojo, verde y azul. Cada uno de ellos puede tomar
+valores entre 0 y 1. Por lo tanto, para establecer el color a rojo el
+valor debe ser @code{(rgb-color 1 0 0)} y para blanco debe ser
+@code{(rgb-color 1 1 1)}:
+
+@lilypond[quote,verbatim,relative=2]
+{
+ \time 12/16
+ \override Staff.BarLine #'color = #(rgb-color 1 1 1)
+ c4 b8 c d16 c d8 |
+ g, a16 b8 c d4 e16 |
+ e8
+}
+@end lilypond
+
+Finalmente, existe también una escala de grises como parte del
+conjunto de colores de X11. Varían desde el negro, @code{'grey0'},
+hasta el blanco, @code{'grey100}, en pasos de 1. Vamos a ilustrar esto
+estableciendo todos los objetos de presentación de nuestro ejemplo a
+varias gradaciones de gris:
+
+@lilypond[quote,verbatim,relative=2]
+{
+ \time 12/16
+ \override Staff.StaffSymbol #'color = #(x11-color 'grey30)
+ \override Staff.TimeSignature #'color = #(x11-color 'grey60)
+ \override Staff.Clef #'color = #(x11-color 'grey60)
+ \override Voice.NoteHead #'color = #(x11-color 'grey85)
+ \override Voice.Stem #'color = #(x11-color 'grey85)
+ \override Staff.BarLine #'color = #(x11-color 'grey10)
+ c4 b8 c d16 c d8 |
+ g, a16 b8 c d4 e16 |
+ e8
+}
+@end lilypond
+
+@noindent
+Observe los contextos asociados con cada uno de los objetos de
+presentación. Es importante que estén correctamente escritos, o las
+instrucciones ¡no funcionarán! Recuerde que el contexto es aquel en
+que se encuentra el grabador correspondiente. El contesto
+predeterminado para los grabadores puede encontrarse empezando por el
+objeto de presentación, de ahí al grabador que lo produce, y en la
+página del grabador del RFI aparece en qué contexto se puede encontrar
+normalmente el grabador.
+
+
+@node Size of objects
+@subsection Size of objects
+
+Empezaremos examinando de nuevo un ejemplo anterior (véase
+@ref{Nesting music expressions}) que nos mostraba cómo introducir un
+pentagrama temporal, como en un @rglos{ossia}.
+
+@lilypond[quote,verbatim,relative=2]
+\new Staff ="main" {
+ \relative g' {
+ r4 g8 g c4 c8 d |
+ e4 r8
+ <<
+ { f c c }
+ \new Staff \with {
+ alignAboveContext = "main" }
+ { f8 f c }
+ >>
+ r4 |
+ }
+ }
+@end lilypond
+
+Los fragmentos de Ossia se escriben normalmente sin clave ni compás, y
+por lo normal se imprimen más pequeños que el pentagrama principal.
+Ya sabemos cómo quitar la clave y el compás: simplemente establecemos
+el sello de cada uno de ellos a @code{#f}, como sigue:
+
+@lilypond[quote,verbatim,relative=2]
+\new Staff ="main" {
+ \relative g' {
+ r4 g8 g c4 c8 d |
+ e4 r8
+ <<
+ { f c c }
+ \new Staff \with {
+ alignAboveContext = "main"
+ }
+ {
+ \override Staff.Clef #'stencil = ##f
+ \override Staff.TimeSignature #'stencil = ##f
+ { f8 f c }
+ }
+ >>
+ r4 |
+ }
+}
+@end lilypond
+
+@noindent
+donde el par de llaves adicional después de la cláusula @code{\with}
+es necesario para asegurar que la sobreescritura encerrada y la música
+se aplican al pentagrama de ossia.
+
+Pero ¿cuál es la diferencia entre modificar el contexto de pentagrama
+usando @code{\with} y modificar los sellos de clave y de compás con
+\override? La diferencia principal es que los cambios que se realizan
+en una cláusula @code{\with} se hacen en el momento en que se crea el
+contexto, y permanecen activos como valores @strong{predeterminados}
+durante toda la duración de dicho contexto, mientras que las
+instrucciones @code{\set} o @code{\override} incluidas dentro de la
+música son dinámicas: hacen cambios sincronizados con un punto
+concreto de la música. Si los cambios se deshacen o se devuelven
+mediante @code{\unset} o @code{\revert} volverán a su valor
+predeterminado que será el establecido en la cláusula @code{\with}, o
+si no se ha establecido ninguno en este lugar, los valores
+predeterminados normales.
+
+Ciertas propiedades de contexto se pueden modificar solamente dentro
+de cláusulas @code{\with}. Son aquellas propiedades que no se pueden
+cambiar después de que el contexto se ha creado.
+@code{alignAboveContext} y su compañero, @code{alignBelowContext}, son
+dos de tales propiedades: una vez que el pentagrama se ha creado, su
+alineación está decidida y no tendría sentido intentar cambiarla más
+tarde.
+
+Los valores predeterminados de las propiedades de los objetos de
+presentación también se pueden establecer dentro de cláusulas
+@code{\with}. Simplemente utilice la instrucción @code{\override}
+normal dejando aparte el nombre del contexto, ya que está definido sin
+ambigüedad como el contexto que la cláusula @code{\with} está
+modificando. De hecho, se producirá un error si se especifica un
+contexto en este lugar.
+
+Así pues, podemos reemplazar el ejemplo anterior con
+
+@lilypond[quote,verbatim,relative=2]
+\new Staff ="main" {
+ \relative g' {
+ r4 g8 g c4 c8 d |
+ e4 r8
+ <<
+ { f c c }
+ \new Staff \with {
+ alignAboveContext = "main"
+ % Don't print clefs in this staff
+ \override Clef #'stencil = ##f
+ % Don't print time signatures in this staff
+ \override TimeSignature #'stencil = ##f
+ }
+ { f8 f c }
+ >>
+ r4 |
+ }
+}
+@end lilypond
+
+Finalmente llegamos a la forma de cambiar el tamaño de los objetos de
+presentación.
+
+Ciertos objetos de presentación se crean como glifos sacados de una
+fuente tipográfica. Entre ellos se encuentran las cabezas,
+alteraciones, elementos de marcado, claves, indicaciones de compás,
+indicaciones dinámicas y la letra de las canciones. Su tamaño se
+cambia mediante la modificación de la propiedad @code{font-size}, como
+veremos en breve. Otros objetos de presentación como ligaduras de
+unión y de expresión (en general, objetos de extensión) se trazan
+individualmente, por lo que no hay un tamaño de tipografía
+@code{font-size} asociado a ellos. Estos objetos generalmente derivan
+su tamaño de los objetos a los que están adosados, y por ello
+normalmente no hay necesidad de cambiarles el tamaño manualmente. Aún
+otras propiedades como la longitud de las plicas y las barras de
+compás, el grosor de las barras de corchea y otras líneas, y la
+separación de las líneas del pentagrama se deben modificar de otras
+formas especiales.
+
+Volviendo al ejemplo del ossia, vamos a cambiar en primer lugar el
+tamaño de la tipografía. Podemos hacerlo de dos formas. Podemos
+cambiar el tamaño de las tipografías de cada uno de los tipos de
+objeto como las cabezas (@code{NoteHead}s) con instrucciones como
+
+@example
+\override NoteHead #'font-size = #-2
+@end example
+
+o podemos cambiar el tamaño de todas las tipografías estableciendo una
+propiedad especial, @code{fontSize}, utilizando @code{\set}, o
+mediante su inclusión dentro de una cláusula @code{\with} (pero sin el
+@code{\set}).
+
+@example
+\set fontSize = #-2
+@end example
+
+Los dos enunciados producirían una reducción del tamaño de la
+tipografía en dos pasos a partir de su valor previo, donde cada paso
+reduce o aumenta el tamaño aproximadamente en un 12%.
+
+Vamos a probarlo en nuestro ejemplo del ossia:
+
+@lilypond[quote,verbatim,relative=2]
+\new Staff ="main" {
+ \relative g' {
+ r4 g8 g c4 c8 d |
+ e4 r8
+ <<
+ { f c c }
+ \new Staff \with {
+ alignAboveContext = "main"
+ \override Clef #'stencil = ##f
+ \override TimeSignature #'stencil = ##f
+ % Reduce all font sizes by ~24%
+ fontSize = #-2
+ }
+ { f8 f c }
+ >>
+ r4 |
+ }
+}
+@end lilypond
+
+Aún no está demasiado bien. Las cabezas y los corchetes de las notas
+son más pequeños, pero las plicas son demasiado largas en proporción,
+y las líneas del pentagrama están demasiado separadas entre sí. Se
+debe reducir su escala en proporción a la reducción de la tipografía.
+El siguiente apartado trata sobre cómo se hace esto.
+
+@node Length and thickness of objects
+@subsection Length and thickness of objects
+
+@cindex distancias
+@cindex grosor
+@cindex longitud
+@cindex magstep
+@cindex tamaño, cambiar
+@cindex plica, cambiar la longitud
+@cindex pentagrama, cambiar la separación de las líneas
+
+Las distancias y longitudes en LilyPond se miden generalmente en
+espacios de pentagrama, la distancia entre líneas adyacentes de la
+pauta (o de manera ocasional medios espacios), mientras que la mayoría
+de las propiedades de @code{thickness} (grosor) se miden en unidades
+de una propiedad interna llamada @code{line-thickness.} Por ejemplo,
+de forma predeterminada, a las líneas de los reguladores se les da un
+grosor de 1 unidad de @code{line-thickness}, mientras que el
+@code{thickness} de una plica es 1.3. Observe sin embargo que ciertas
+propiedades de grosor son diferentes; por ejemplo, el grosor de las
+barras de corchea se mide en espacios de pentagrama.
+
+Entonces ¿cómo se tienen que escalar las longitudes en proporción al
+tamaño de la tipografía? Se puede hacer con la ayuda de una función
+especial que se llama @code{magstep}, pensada especialmente para este
+propósito. Toma un argumento, el cambio de tamaño de la tipografía
+(#-2 en nuestro ejemplo) y devuelve un factor de escalado adecuado
+para reducir otros objetos en la misma proporción. Se usa de la
+siguiente forma:
+
+@lilypond[quote,verbatim,relative=2]
+\new Staff ="main" {
+ \relative g' {
+ r4 g8 g c4 c8 d |
+ e4 r8
+ <<
+ { f c c }
+ \new Staff \with {
+ alignAboveContext = "main"
+ \override Clef #'stencil = ##f
+ \override TimeSignature #'stencil = ##f
+ fontSize = #-2
+ % Reduce stem length and line spacing to match
+ \override StaffSymbol #'staff-space = #(magstep -2)
+ }
+ { f8 f c }
+ >>
+ r4 |
+ }
+}
+@end lilypond
+
+@noindent
+Puesto que la longitud de las plicas y muchas otras propiedades
+relacionadas con la longitudes calculan siempre con relación al valor
+de la propiedad @code{staff-space}, su longitud también ve reducida su
+escala automáticamente. Observe que esto afecta solamente a la escala
+vertical del ossia: la escala horizontal se determina por medio de la
+disposición de la música principal con el objeto de mantenerse en
+sincronía con ella, de forma que no resulte afectada por ninguno de
+estos cambios de tamaño. Por supuesto, si la escala de toda la música
+principal se cambiase de esta forma, entonces el espaciado horizontal
+se vería afectado. Trataremos de esto más tarde en la sección sobre
+la disposición.
+
+Esto, en fin, completa la creación de un ossia. Los tamaños y
+longitudes del resto de los objetos se pueden modificar de manera
+análoga.
+
+Para cambios de escala pequeños, como en el ejemplo de arriba, el
+grosor de las diversas líneas dibujadas como divisorias, barras de
+corchea, reguladores, ligaduras, etc, no requieren normalmente ningún
+ajuste global. Si el grosor de cualquier objeto de presentación en
+particular necesita ajustarse, se puede hacer mejor mediante la
+sobreescritura de su propiedad @code{thickness}. Anteriormente
+mostramos un ejemplo de cambio de grosor en las ligaduras, en
+@ref{Properties of layout objects}. El grosor de todos los objetos
+trazados (es decir, aquellos que no se producen a partir de una
+tipografía) se pueden cambiar de la misma forma.
+
+
+@node Placement of objects
+@section Placement of objects
+
+@menu
+* Automatic behaviour::
+* Within-staff objects::
+* Outside staff objects::
+@end menu
+
+
+@node Automatic behaviour
+@subsection Automatic behaviour
+
+Hay ciertos objetos en notación musical que pertenecen al pentagrama y
+otros cuyo lugar se sitúa fuera del pentagrama. Reciben el nombre de
+objetos dentro-del-pentagrama y objetos fuera-del-pentagrama,
+respectivamente.
+
+Los objetos dentro-del-pentagrama son los que se sitúan sobre la
+pauta: cabezas, plicas, alteraciones, etc. Sus posiciones normalmente
+se fijan por la propia música; se posicionan verticalmente sobre
+líneas específicas del pentagrama o están unidos a otros objetos
+posicionados de esta forma. Las colisiones entre cabezas, plicas y
+alteraciones en acordes de notas muy juntas, normalmente se evitan
+automáticamente. Hay instrucciones y sobreescrituras que pueden
+modificar este comportamiento automático, como veremos en breve.
+
+Entre los objetos que pertenecen al exterior de la pauta se encuentran
+cosas como las marcas de ensayo, las marcas de texto y las de
+dinámica. La regla de LilyPond para la colocación vertical de los
+objetos fuera-de-pentagrama es colocarlos tan cerca del pentagrama
+como sea posible, pero no tan cerca como para que puedan chocar con
+algún otro objeto. LilyPond utiliza la propiedad
+@code{outside-staff-priority} para determinar el orden en que se deben
+situar los objetos, como veremos ahora.
+
+En primer lugar, LilyPond sitúa todos los objetos
+dentro-del-pentagrama. Después ordena los objetos
+fuera-del-pentagrama de acuerdo con su prioridad
+@code{outside-staff-priority}. Los objetos fuera-del-pentagrama se
+toman de uno en uno, comenzando por el que tiene la prioridad
+@code{outside-staff-priority} más baja, y se sitúan de forma que no
+colisionen con ningún objeto que se haya colocado ya. Esto es, si dos
+grobs fuera-del-pentagrama compiten por el mismo espacio, el que tiene
+la prioridad @code{outside-staff-priority} más baja se colocará más
+cerca del pentagrama. Si dos objetos tienen la misma
+@code{outside-staff-priority}, el que se ha encontrado primero se
+situará más cerca de la pauta.
+
+En el siguiente ejemplo, todos los textos de marcado tienen la misma
+prioridad (pues no se ha establecido explícitamente). Observe que
+@q{Text3} se posiciona de nuevo automáticamente cerca del pentagrama,
+acomodado por debajo de @q{Text2}.
+
+@lilypond[quote,verbatim,relative=2]
+c2^"Text1"
+c^"Text2"
+c^"Text3"
+c^"Text4"
+@end lilypond
+
+Los pentagramas también se posicionan, de forma predeterminada, tan
+cerca unos de otros como sea posible (sujeto a una separación mínima).
+Si las notas se proyectan muy lejos en dirección a un pentagrama
+adyacente, forzarán a alejarse a los pentagramas sólo si en caso
+contrario fuese a ocurrir un solapamiento de la notación. El ejemplo
+siguiente muestra esta acomodación @q{nestling} de las notas sobre
+pentagramas adyacentes:
+
+@lilypond[quote,ragged-right,verbatim]
+<<
+ \new Staff {
+ \relative c' { c a, }
+ }
+ \new Staff {
+ \relative c'''' { c a, }
+ }
+>>
+@end lilypond
+
+
+@node Within-staff objects
+@subsection Within-staff objects
+
+Ya hemos visto cómo las instrucciones @code{\voiceXXX} affectan a la
+dirección de las ligaduras de expresión y de unión, digitaciones y
+todo lo demás que dependa de la dirección de las plicas. Cuando se
+escribe música polifónica, estas instrucciones son esenciales para que
+puedan distinguirse varias líneas melódicas entrelazadas. Pero
+ocasionalmente puede ser necesario sobreescribir este comportamiento
+automático. Se puede hacer por secciones de música completas o
+incluso para una nota individual. La propiedad que controla este
+comportamiento es la propiedad de @code{direction} (dirección) de cada
+objeto de presentación. En primer lugar explicaremos qué hace esto, y
+luego introduciremos algunas instrucciones listas para usar que le
+evitarán tener que codificar sobreescrituras explícitas para las
+modificaciones más comunes.
+
+Algunos objetos de presentación como las ligaduras se curvan hacia
+arriba o hacia abajo; otros como las plicas y los corchetes también se
+mueven a la derecha o a la izquierda cuando apuntan hacia arriba o
+hacia abajo. Esto se controla automáticamente cuando está establecida
+la propiedad @code{direction}.
+
+El ejemplo siguiente muestra en el compás 1 el comportamiento
+predeterminado de las plicas, con las de las notas agudas apuntando
+hacia abajo y las graves hacia arriba, seguidas de cuatro notas con
+todas las plicas forzadas hacia abajo, cuatro notas con las plicas
+forzadas hacia arriba, y por último cuatro notas devueltas al
+comportamiento predeterminado.
+
+@lilypond[quote,verbatim,relative=2]
+a4 g c a
+\override Stem #'direction = #DOWN
+a g c a
+\override Stem #'direction = #UP
+a g c a
+\revert Stem #'direction
+a g c a
+@end lilypond
+
+Aquí utilizamos las constantes @code{DOWN} (abajo) y @code{UP}
+(arriba). Éstos tienen los valores @code{-1} y @code{+1}
+respectivamente, y dichos valores numéricos también se pueden usar
+directamente. El valor @code{0} también se puede usar en algunos
+casos. Se trata simplemente con el significado de @code{UP} para las
+plicas, pero para algunos objetos tiene el significado de
+@q{centrado}. Existe una constante @code{CENTER} que tiene el valor
+@code{0}.
+
+Sin embargo, estas sobreescrituras no se usan muy a menudo porque
+están disponibles instrucciones predefinidas equivalentes más
+sencillas. Aquí podemos ver una tabla de las más comunes. Se
+menciona el significado de cada una allí donde no es obvio.
+
+@multitable @columnfractions .2 .2 .25 .35
+@headitem Abajo o Izquierda
+ @tab Arriba o Derecha
+ @tab Anular
+ @tab Efecto
+@item @code{\arpeggioArrowDown}
+ @tab @code{\arpeggioArrowUp}
+ @tab @code{\arpeggioNormal}
+ @tab La flecha está abajo, arriba o no hay flecha
+@item @code{\dotsDown}
+ @tab @code{\dotsUp}
+ @tab @code{\dotsNeutral}
+ @tab Dirección del desplazamiento para evitar las líneas del pentagrama
+@item @code{\dynamicDown}
+ @tab @code{\dynamicUp}
+ @tab @code{\dynamicNeutral}
+ @tab
+@item @code{\phrasingSlurDown}
+ @tab @code{\phrasingSlurUp}
+ @tab @code{\phrasingSlurNeutral}
+ @tab Nota: diferente de las instrucciones de ligaduras de expresión
+@item @code{\slurDown}
+ @tab @code{\slurUp}
+ @tab @code{\slurNeutral}
+ @tab
+@item @code{\stemDown}
+ @tab @code{\stemUp}
+ @tab @code{\stemNeutral}
+ @tab
+@item @code{\textSpannerDown}
+ @tab @code{\textSpannerUp}
+ @tab @code{\textSpannerNeutral}
+ @tab El texto introducido como objeto de extensión está debajo o encima del pentagrama
+@item @code{\tieDown}
+ @tab @code{\tieUp}
+ @tab @code{\tieNeutral}
+ @tab
+@item @code{\tupletDown}
+ @tab @code{\tupletUp}
+ @tab @code{\tupletNeutral}
+ @tab Los grupos especiales están debajo o encima de las notas
+@end multitable
+
+Observe que estas instrucciones predefinidas @strong{no} pueden ir
+precedidas de @code{\once}. Si quiere limitar el efecto a una sola
+nota, deberá elegir entre usar la instrucción @code{\once \override}
+equivalente, o usar la instrucción predefinida, seguida después de la
+nota afectada por la instrucción @code{\xxxNeutral} correspondiente.
+
+@subheading Fingering
+@cindex digitación, colocación
+
+La colocación de las digitaciones también resulta afectada por el
+valor de su propiedad @code{direction}, pero existen instrucciones
+especiales que permiten controlar las digitaciones de notas
+individuales, situando la digitación encima, debajo, a la izquierda o
+a la derecha de cada nota.
+
+En primer lugar, he aquí el efecto de @code{direction} sobre las
+digitaciones; el primer compás muestra el comportamiento
+predeterminado, y después el efecto de especificar @code{DOWN} y
+@code{UP}:
+
+@lilypond[quote,verbatim,relative=2]
+c-5 a-3 f-1 c'-5
+\override Fingering #'direction = #DOWN
+c-5 a-3 f-1 c'-5
+\override Fingering #'direction = #UP
+c-5 a-3 f-1 c'-5
+@end lilypond
+
+Así es como se controla la digitación sobre notas aisladas, pero la
+propiedad @code{direction} se ignora para los acordes. En su lugar,
+de forma predeterminada las digitaciones se colocan automáticamente
+encima y debajo de las notas del acorde, como se muestra aquí:
+
+@lilypond[quote,verbatim,relative=2]
+<c-5 g-3>
+<c-5 g-3 e-2>
+<c-5 g-3 e-2 c-1>
+@end lilypond
+
+Es posible tener un mayor control sobre la situación exacta de las
+digitaciones mediante la utilización de la instrucción @code{\set
+fingeringOrientations}. El formato de esta instrucción es