3 \section{Sobreescritura de propiedades:
\emph{Marte
}, de Holst (II)
}
8 Para completar el ejemplo orquestal, hoy aprenderemos a mover objetos
9 para ajustar su posición; en el caso que nos ocupa, esto ahorra
10 espacio y permite un tamaño de los pentagramas algo mayor, sin que se
11 produzcan colisiones entre los objetos de los distintos pentagramas, y
12 todo ello de forma que la música quepa en una sola página. En el
13 título usaremos el efecto
\emph{smallcaps
} de mayúsculas pequeñas para
16 En el fragmento aparecen los pentagramas de los fagotes y el
17 contrafagot, con el matiz
\emph{mezzopiano
} y la indicación ``III''
18 del tercer fagot desplazadas a la izquierda y hacia arriba. Se ha
19 enmascarado en blanco el pentagrama detrás de estas indicaciones para
20 evitar la superposición. Las pautas de percusión se han acercado
21 entre sí para ahorrar espacio. La indicación
\emph{piano
} de los
22 violines está también desplazada para hacer sitio al texto
\emph{col
23 legno
} del siguiente pentagrama. Para finalizar, hemos reducido el
24 grosor de las líneas de pauta para suavizar el aspecto demasiado negro
25 de una partitura orquestal a tamaño reducido.
29 % Aumentar la separación entre sistemas
30 \def\betweenLilyPondSystem#1{\vspace{0.4cm
}\linebreak}
32 \begin[line-width=
13\cm]{lilypond
}
35 juntaPentagrama =
\with {
36 \override VerticalAxisGroup.staff-staff-spacing =
43 \oneVoice R1*
5/
4 R1*
5/
4
44 \voiceOne g2. ^"I II a2" ~ (
\p g2 ~
45 g2. ^\< d'
2 ) \! des2. ^\> ~ des2 \!
\laissezVibrer % ~ des
51 s1*
5/
4 s1*
5/
4 R1*
5/
4*
2
52 % \once \override Voice.DynamicText.extra-offset = #'(-2.9 . 2.9)
53 \override TextScript.whiteout = ##t
54 \override DynamicText.whiteout = ##t
55 \once \override DynamicText.X-offset = #-
4.5
56 % \once \override DynamicText.extra-offset = #'(-0.1 . 2.3)
57 \once \override TextScript.outside-staff-priority = ##f
58 \once \override TextScript.X-offset = #-
4
62 \> ~ des2 \!
\laissezVibrer % ~ des
65 doble =
\relative g,
{
69 g2.
\p ~ ( g2 ~ g2. \< d'
2 \! ) des2. \> ~ des2 \!
\laissezVibrer % ~ des
73 cymbals =
{ R1*
5/
4*
5 }
76 violinI =
\relative g
{
77 \once \override DynamicText.extra-offset = #'(-
0.8 .
1)
78 \once \override DynamicText.X-offset = #-
2.5
79 \times 2/
3 { g8
\p ^"col legno" g g
} g4 g g8 g g4
80 \times 2/
3 { g8 g g
} g4 g g8 g g4
81 \times 2/
3 { g8 g g
} g4 g g8 g g4
82 \times 2/
3 { g8 \< g g
} g4 g g8 g g4\!
83 \times 2/
3 { g8 \> g g
} g4 g g8 g g4\!
}
85 violinII =
\relative g
{
86 \once \override DynamicText.extra-offset = #'(-
0.8 .
1)
87 \once \override DynamicText.X-offset = #-
2.5
88 \times 2/
3 { g8
\p ^"col legno" g g
} g4 g g8 g g4
89 \times 2/
3 { g8 g g
} g4 g g8 g g4
90 \times 2/
3 { g8 g g
} g4 g g8 g g4
91 \times 2/
3 { g8 \< g g
} g4 g g8 g g4\!
92 \times 2/
3 { g8 \> g g
} g4 g g8 g g4\!
}
95 #(set-global-staff-size
10.5)
% antes 15.5 para a3
96 #(set-default-paper-size "a4")
% antes a3
99 title =
\markup { \fontsize #6 { \smallCaps { "I. Mars, "
} "the Bringer of War"
} }
111 \new Staff
\with { instrumentName = "
3 Bassoons"
} { <<
\tempo "Allegro"
\time 5/
4 \bassoonsI \\
\bassoonsIII >>
}
112 \new Staff
\with { instrumentName = "Double Bassoon"
} { \doble } >>
116 \with { \juntaPentagrama
117 instrumentName = "Side Drum"
}
122 \with { \juntaPentagrama
123 instrumentName = "Cymbals"
}
128 \with { instrumentName = "Bass Drum"
}
133 \new Staff
\with { instrumentName = "
1st Violins"
}
135 \new Staff
\with { instrumentName = "
2nd Violins"
}
140 \layout { indent=
1.5\cm %era 4 para a3
142 \override StaffSymbol.thickness = #(magstep -
3)
156 \subsection{Sobreescritura de propiedades
}
159 Es importante aprovechar al máximo las posibilidades de tipografiado
160 automático de partituras que LilyPond ofrece, sin ninguna intervención
161 manual. Sin ambargo, en el apartado
\ref{tamano-global
}
162 (pág.
\pageref{tamano-global
}) utilizamos tímidamente la
163 sobreescritura de propiedades para modificar el tamaño de un
164 pentagrama. Las propiedades de los objetos gráficos tienen un valor
165 determinado que se usa para especificar la forma en que el objeto se
166 imprime. Hay varias instrucciones que hacen posible la modificación
167 de estos valores, y la más frecuente es
\verb+
\override+. Los valores
168 exactos son algo que se puede determinar mediante ensayo y error,
169 aunque existen ayudas muy valiosas como la herramienta Regla de
170 LilyPondTool (que no explicaremos aquí). La
171 instrucción
\verb+
\override+ se utiliza de la siguiente manera:
174 \override contexto.objeto.propiedad = #valor
177 Que significa: asignar el
\emph{valor
} a la
\emph{propiedad
} del
178 \emph{objeto
} dentro del
\emph{contexto
}. Preste especial atención a
179 los símbolos que sirven de prefijo. El contexto predeterminado es
180 Voice y muchas veces se puede dejar sin especificar. Veamos a
181 continuación un ejemplo del uso de la sobreescritura de propiedades
185 \subsection{Mover objetos
}
187 Los matices dinámicos son objetos llamados internamente
188 DynamicText, que se imprimen en el lugar determinado por una serie
189 de variables. Apliquemos la formulación general de la
190 instrucción
\verb+
\override+ que acabamos de mostrar, y
191 consignemos lo siguiente para cada uno de los apartados:
195 \begin{tabular
}{c|c|c|c
}
196 Contexto & Objeto & Propiedad & Valor \\
\hline
197 Voice & DynamicText & extra-offset & (-
2.5 .
1)
202 Estas medidas están expresadas en espacios de pentagrama, por lo que
203 (afortunadamente) no dependen del tamaño de éste. Los dos números
204 entre paréntesis se refieren a las dimensiones X e Y. El efecto de la
205 sobreescritura permanece hasta que se vuelva a sobreescribir o hasta
206 que se encuentre una instrucción
\verb+
\revert+ con el nombre del
207 objeto y la propiedad. En el ejemplo se ve que las tres indicaciones
208 están afectadas por una sola sobreescritura:
210 \begin[fragment,verbatim
]{lilypond
}
211 \override DynamicText.extra-offset = #'(-
2.5 .
1)
216 \subsection{Aplicación por una sola vez
}
218 Las sobrreescrituras permanecen hasta nueva orden, pero por
219 comodidad, en caso de que sólo se necesite una vez, podemos
220 preceder la instrucción de sobreescritura por la palabra
221 clave
\verb+
\once+. Aquí podemos ver que sólo la primera
222 indicación dinámica está afectada por
\verb+
\once \override+:
224 \begin[fragment,verbatim
]{lilypond
}
225 \once \override DynamicText.extra-offset = #'(-
2.5 .
1)
230 \subsection{Enmascarar en blanco
}
232 Cuando se quieren tapar las líneas que caen detrás de una
233 indicación dinámica o textual, se le da un valor verdadero a la
234 propiedad
\verb+whiteout+.
237 \begin{tabular
}{c|c|c|c
}
238 Contexto & Objeto & Propiedad & Valor \\
\hline
239 Voice & TextScript, DynamicText & whiteout & verdadero (\#t) o falso (\#f) \\
245 \override TextScript.whiteout = ##t
249 \new PianoStaff <<
\new Staff
252 \override TextScript.whiteout = ##t
253 \override DynamicText.whiteout = ##t
255 \once \override TextScript.outside-staff-priority = ##f
256 \once \override TextScript.X-offset = #-
3
258 \once \override DynamicText.X-offset = #-
4.5
259 % \once \override DynamicText.extra-offset = #'(0 . 1.4)
267 \new Staff
{ c'
1 c'
}
272 \subsection{Grosor de las líneas del pentagrama
}
274 Pruebe la siguiente sobreescritura para conseguir líneas más
275 delgadas en pautas sueltas o en toda la partitura:
278 \begin{tabular
}{c|c|c|c
}
279 Contexto & Objeto & Propiedad & Valor \\
\hline
280 Staff, Score & StaffSymbol & thickness & (magstep -
3) \\
286 \new Staff
\with { \override StaffSymbol.thickness = #(magstep -
3)
}
289 En el ejemplo que aparece a continuación podemos ver el efecto de dos
290 valores de signo opuesto, y el aspecto predeterminado en segundo
294 \begin[staffsize=
10]{lilypond
}
296 \new Staff
\with { \override StaffSymbol.thickness = #(magstep -
6)
} { s1 -"-
6"
}
297 \new Staff
\with { \override StaffSymbol.thickness = #(magstep
0)
} { s1 -"
0"
}
298 \new Staff
\with { \override StaffSymbol.thickness = #(magstep
6)
} { s1 -"+
6"
}
303 \subsection{Separación de pautas
}
305 El espaciado vertical es un asunto delicado. El ajuste de la
306 separación entre cada pauta y la siguiente se hace también mediante
307 sobreescritura de propiedades. Aquí suprimimos el relleno de
308 separación de manera que los pentagramas casi se tocan:
311 \begin{tabular
}{c|c|c|c
}
312 Contexto & Objeto & Propiedad & Valor \\
\hline
313 Staff & VerticalAxisGroup & staff-staff-spacing & ((padding .
0)) \\
317 Esta sobreescritura se puede almacenar en una variable para utilizarla
320 \begin[verbatim
]{lilypond
}
322 \override VerticalAxisGroup.staff-staff-spacing =
328 instrumentName= "Side Drum"
334 instrumentName= "Cymbals"
345 \item Para los nombres de instrumentos que contienen un bemol, use
\verb+
\flat+ dentro del elemento de marcado.
347 \begin[verbatim
]{lilypond
}
350 instrumentName=
\markup { "
3 Clarinets in B"
\flat }
355 \item La instrucción de marcado
\verb+
\smallCaps+ produce un estilo ``versalitas'' en que las minúsculas son mayúsculas pequeñas:
357 \begin[verbatim
]{lilypond
}
358 \markup { \smallCaps "Marte"
}