]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/es/learning/fundamental.itely
Merge remote-tracking branch 'origin/translation'
[lilypond.git] / Documentation / es / learning / fundamental.itely
1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
2
3 @ignore
4     Translation of GIT committish: 7fdce4f39834cc8c83f176480cc1d20900eb09f8
5
6     When revising a translation, copy the HEAD committish of the
7     version that you are working on.  For details, see the Contributors'
8     Guide, node Updating translation committishes..
9 @end ignore
10
11 @c \version "2.19.2"
12
13 @node Conceptos fundamentales
14 @chapter Conceptos fundamentales
15 @translationof Fundamental concepts
16
17 Ha podido ver en el tutorial cómo producir música bellamente impresa a
18 partir de un simple archivo de texto.  Esta sección presenta los
19 conceptos y técnicas que se requieren para producir partituras
20 igualmente bellas pero más complejas.
21
22 @menu
23 * Cómo funcionan los archivos de entrada de LilyPond::
24 * Las voces contienen música::
25 * Contextos y grabadores::
26 * Extender las plantillas::
27 @end menu
28
29
30 @node Cómo funcionan los archivos de entrada de LilyPond
31 @section Cómo funcionan los archivos de entrada de LilyPond
32 @translationof How LilyPond input files work
33
34 El formato de entrada de LilyPond es bastante libre en su forma y
35 concede a los usuarios con experiencia mucha flexibilidad para
36 estructurar sus archivos de la forma que deseen.  Sin embargo, toda
37 esta flexibilidad puede hacer que las cosas se vuelvan confusas para
38 los nuevos usuarios.  Esta sección le va a explicar parte de esta
39 estructura, pero puede obviar ciertos detalles en aras de la
40 simplicidad.  Para ver una descripción completa del formato de
41 entrada, consulte @ruser{Estructura del archivo}.
42
43
44 @menu
45 * Introducción a la estructura de los archivos de LilyPond::
46 * La partitura es una (única) expresión musical compuesta::
47 * Anidado de expresiones musicales::
48 * Acerca de la no anidabilidad de llaves y ligaduras::
49 @end menu
50
51 @node Introducción a la estructura de los archivos de LilyPond
52 @subsection Introducción a la estructura de los archivos de LilyPond
53 @translationof Introduction to the LilyPond file structure
54
55 @cindex entrada, formato de la
56 @cindex archivo, estructura del
57
58 Un ejemplo básico de archivo de entrada de LilyPond es el siguiente:
59
60 @example
61 \version @w{"@version{}"}
62
63 \header @{ @}
64
65 \score @{
66   @var{ @dots{} expresión musical compuesta @dots{} }  % toda la música va aquí
67   \layout @{ @}
68   \midi @{ @}
69 @}
70 @end example
71
72 @noindent
73 Existen muchas variaciones de este esquema básico, pero el ejemplo
74 constituye un útil punto de partida.
75
76 @funindex \book
77 @funindex book
78 @funindex \score
79 @funindex score
80 @cindex book (libro)
81 @cindex score (partitura)
82 @cindex libro
83 @cindex partitura
84
85 Hasta el momento, ninguno de los ejemplos que ha podido ver utiliza la
86 instrucción @code{\score@{@}}.  Esto es así a causa de que LilyPond
87 añade automáticamente las órdenes adicionales que se requieren cuando
88 le proporcionamos una entrada sencilla.  LilyPond trata una entrada
89 como esta:
90
91 @example
92 \relative c'' @{
93   c4 a d c
94 @}
95 @end example
96
97 @noindent
98 como una abreviatura de esta otra:
99
100 @example
101 \book @{
102   \score @{
103     \new Staff @{
104       \new Voice @{
105         \relative c'' @{
106           c4 a b c
107         @}
108       @}
109     @}
110     \layout @{ @}
111   @}
112 @}
113 @end example
114
115 En otras palabras, si la entrada consta de una única expresión
116 musical, LilyPond interpreta el archivo como si la expresión musical
117 estuviera rodeada por un envoltorio hecho por las instrucciones que
118 acabamos de ver.
119
120 @cindex contextos implícitos
121 @cindex implícitos, contextos
122
123 @strong{¡Advertencia!}  Muchos de los ejemplos que aparecen en la
124 documentación de LilyPond omiten las instrucciones @code{\new Staff} y
125 @code{\new Voice}, dejando que se creen de forma implícita.  Esto
126 funciona bien para ejemplos sencillos, pero para ejemplos más
127 complicados, especialmente cuando se usan instrucciones adicionales,
128 la creación implícita de los contextos puede dar lugar a resultados
129 inesperados, incluso en ocasiones crear pentagramas no deseados.  La
130 forma de crear contextos de forma explícita se explica en
131 @ref{Contextos y grabadores}.
132
133 @warning{Cuando se escriben más de unas pocas líneas de música, se
134 recomienda crear siempre los pentagramas y las voces de forma
135 explícita.}
136
137 De todas formas, por ahora vamos a volver al primer ejemplo para
138 examinar la instrucción @code{\score}, dejando las demás en su forma
139 predeterminada.
140
141 Un bloque @code{\score} siempre debe contener una expresión musical
142 única, que debe aparecer inmediatamente después de la instrucción
143 @code{\score}.  Recuerde que una expresión musical podía ser cualquier
144 cosa entre una sola nota hasta una enorme expresión compuesta como
145
146 @example
147 @{
148   \new StaffGroup <<
149     @var{ @dots{} inserte aquí la partitura completa de una ópera de Wagner @dots{} }
150   >>
151 @}
152 @end example
153
154 @noindent
155 Puesto que todo se encuentra dentro de @code{@{ @dots{} @}}, cuenta como
156 una expresión musical.
157
158 Como vimos anteriormente, el bloque @code{\score} puede contener otras
159 cosas, tales como
160
161 @example
162 \score @{
163   @{ c'4 a b c' @}
164   \header @{ @}
165   \layout @{ @}
166   \midi @{ @}
167 @}
168 @end example
169
170 @funindex \header
171 @funindex header
172 @funindex \layout
173 @funindex layout
174 @funindex \midi
175 @funindex midi
176 @cindex midi
177 @cindex cabecera
178 @cindex disposición
179
180 @noindent
181 Observe que estas tres instrucciones (@code{\header}, @code{\layout} y
182 @code{\midi}) son especiales: a diferencia del resto de las
183 instrucciones que comienzan con una barra invertida (@code{\}),
184 @emph{no} son expresiones musicales y no forman parte de ninguna
185 expresión musical.  Por tanto, se pueden situar dentro de un bloque
186 @code{\score} o fuera de él.  De hecho, estas instrucciones se sitúan
187 por lo general fuera del bloque @code{\score} (por ejemplo,
188 @code{\header} se suele colocar antes de la instrucción @code{\score},
189 como muestra el ejemplo que aparece al principio de la sección.
190
191 Dos instrucciones más que no hemos visto aún son @code{\layout @{ @}}
192 y @code{\midi @{ @}}.  Si aparecen tal y como se muestran aquí, hacen
193 que LilyPond produzca una salida impresa y una salida MIDI,
194 respectivamente.  Se describen con todo detalle en el manual de
195 Referencia de la notación, en @ruser{Disposición de la partitura} y en
196 @ruser{Crear archivos MIDI}.
197
198 @cindex partituras, varias
199 @cindex book, bloque implícito
200 @cindex implícito, bloque book
201 @funindex \book
202 @funindex book
203
204 Podemos escribir varios bloques @code{\score}.  Cada uno de ellos
205 recibirá el mismo tratamiento que una partitura independiente, pero se
206 combinarán todos juntos en un archivo de salida único.  No se necesita
207 ninguna instrucción @code{\book}, se creará una implícitamente.  Sin
208 embargo, si quiere archivos de salida separados a partir de un único
209 archivo @file{.ly}, entonces es necesario utilizar la instrucción
210 @code{\book} para separar las distintas secciones: cada bloque
211 @code{\book} produce un archivo de salida distinto.
212
213 En resumen:
214
215 Cada bloque @code{\book} crea un archivo de salida distinto (por
216 ejemplo, un archivo PDF).  Si no hemos escrito uno de forma explícita,
217 LilyPond envuelve todo nuestro código de entrada dentro de un bloque
218 @code{\book} de forma implícita.
219
220 Cada bloque @code{\score} es un trozo de música separado dentro de un
221 bloque @code{\book}.
222
223 @cindex layout, efecto de la situación del bloque
224
225 Cada bloque @code{\layout} afecta al bloque @code{\score} o
226 @code{\book} dentro del cual aparece (es decir, un bloque
227 @code{\layout} dentro de un bloque @code{\score} afecta solamente a
228 ese bloque @code{\score}, pero un bloque @code{\layout} fuera de un
229 bloque @code{\score} (que por ello está dentro de un bloque
230 @code{\book}, ya sea explícita o implícitamente) afecta a los bloques
231 @code{\score} que están dentro de ese @code{\book}.
232
233 Para ver más detalles, consulte @ruser{Varias partituras en un libro}.
234
235 @cindex variables
236
237 Otro magnífico atajo es la posibilidad de definir variables  como
238 se muestra en @ref{Organizar las piezas mediante variables}.  Todas las
239 plantillas emplean lo siguiente:
240
241 @example
242 melodia = \relative c' @{
243   c4 a b c
244 @}
245
246 \score @{
247   \melodia
248 @}
249 @end example
250
251 Cuando LilyPond examina este archivo, toma el valor de @code{melodia}
252 (todo lo que está después del signo igual) y lo inserta dondequiera
253 que ve @code{\melodia}.  No se requiere un cuidado especial con el
254 nombre (puede ser @code{melodia}, @code{global},
255 @code{CompasArmadura}, @code{manoderechadelpiano} o
256 @code{fulanomengano} o cualquier otro).  Recuerde que puede usar casi
257 cualquier nombre que se le ocurra, en la medida en que contenga
258 solamente caracteres alfabéticos y sea diferente de cualquiera de los
259 nombres de instrucción de LilyPond.  Para ver más detalles, consulte @ref{Ahorrar
260 tecleo mediante variables y funciones}.  Las limitaciones exactas que
261 afectan a los nombres de variable se detallan en @ruser{Estructura del
262 archivo}.
263
264
265 @seealso
266 Para ver una definición completa del formato del código de entrada,
267 consulte @ruser{Estructura del archivo}.
268
269
270 @node La partitura es una (única) expresión musical compuesta
271 @subsection La partitura es una (única) expresión musical compuesta
272 @translationof Score is a (single) compound musical expression
273
274 @cindex score
275 @cindex partitura
276 @cindex contenido del bloque score
277 @cindex score, contenido del bloque
278 @cindex compuesta, expresión musical
279 @cindex musical, expresión, compuesta
280 @cindex expresión musical compuesta
281 @funindex \score
282 @funindex score
283
284 En la sección anterior, @ref{Introducción a la estructura de los
285 archivos de LilyPond}, hemos podido ver la organización general de los
286 archivos de entrada de LilyPond.  Pero parece que nos saltamos la
287 parte más importante: ¿cómo averiguamos qué escribir después de
288 @code{\score}?
289
290 No nos hemos saltado nada en absoluto.  El gran misterio es,
291 sencillamente, que no hay @emph{ningún} misterio.  La siguiente línea
292 lo explica todo:
293
294 @quotation
295 @emph{Un bloque @code{\score} debe comenzar con una expresión musical
296 compuesta.}
297 @end quotation
298
299 @noindent
300 Para comprender lo que se entiende por expresión musical y expresión
301 musical compuesta, quizá encuentre útil dar un repaso al tutorial,
302 @ref{Explicación de las expresiones musicales}.  En esta sección vimos cómo
303 elaborar grandes expresiones musicales a partir de pequeñas piezas
304 (comenzábamos con notas, luego acordes, etc.).  Ahora partiremos de
305 una gran expresión musical y recorreremos el camino inverso hacia
306 abajo.  Por simplicidad, vamos a hacer sólo un cantante y un piano.
307 No necesitamos un @code{StaffGroup} (que simplemente agrupa un cierto
308 número de pautas con un corchete a la izquierda) para este conjunto,
309 así que lo retiramos.  Sin embargo, @emph{sí} necesitamos pentagramas
310 para un cantante y un piano.
311
312 @example
313 \score @{
314   <<
315     \new Staff = "cantante" <<
316     >>
317     \new PianoStaff = "piano" <<
318     >>
319   >>
320   \layout @{ @}
321 @}
322 @end example
323
324 Aquí hemos asignado nombres a los pentagramas: @qq{cantante} y
325 @qq{piano}.  Esto no es esencial en este momento, pero es un hábito
326 que resulta útil cultivar de manera que podamos saber de un vistazo
327 para qué es cada pentagrama.
328
329 Recuerde que utilizamos @code{<< @dots{} >>} en lugar de @code{@{ @dots{} @}}
330 para presentar la música simultánea.  Esto hace que las partes vocal y
331 del piano aparezcan una sobre la otra en la partitura.  La
332 construcción @code{<< @dots{} >>} no sería necesaria para el pentagrama
333 del cantante en el ejemplo de arriba si contiene solamente una
334 expresión musical secuencial, pero se necesitarían los @code{<<
335 @dots{} >>} en lugar de las llaves si la música de ese pentagrama fuese a
336 contener dos o más expresiones simultáneas, p.ej. dos voces
337 simultáneas, o una voz con letra.  Vamos a tener una voz con letra,
338 por lo que se requieren los ángulos dobles.  Después añadiremos algo
339 de música real; por ahora limitémonos a poner unas cuantas notas y
340 texto de relleno.  Si ha olvidado cómo añadir la letra, puede releer
341 la sección @code{\addlyrics} de @ref{Elaborar canciones sencillas}.
342
343 @lilypond[verbatim,quote,ragged-right]
344 \score {
345   <<
346     \new Staff = "singer" <<
347       \new Voice = "vocal" { c'1 }
348       \addlyrics { And }
349     >>
350     \new PianoStaff = "piano" <<
351       \new Staff = "upper" { c'1 }
352       \new Staff = "lower" { c'1 }
353     >>
354   >>
355   \layout { }
356 }
357 @end lilypond
358
359 Ahora tenemos muchos más detalles.  Tenemos la pauta del cantante:
360 contiene una @code{Voice} o voz (en LilyPond, este término hace
361 referencia a un conjunto de notas, no necesariamente notas vocales --
362 por ejemplo, un violín generalmente toca una voz --) y el texto de la
363 canción.  También tenemos una pauta de piano: contiene un pentagrama
364 superior (mano derecha) y un pentagrama inferior (mano izquierda),
365 aunque el pentagrama inferior aún no tiene la clave de Fa.
366
367 En este momento podríamos comenzar a meter las notas.  Dentro de las
368 llaves que siguen a @code{\new Voice = "vocal"}, podríamos empezar
369 escribiendo
370
371 @example
372 \relative c'' @{
373   r4 d8\noBeam g, c4 r
374 @}
375 @end example
376
377 Pero si lo hiciéramos, la sección @code{\score} se haría bastante
378 larga y sería más difícil comprender lo que ocurre.  En lugar de esto
379 utilizaremos identificadores o variables.  Recordará que las vimos por
380 primera vez en la sección anterior.
381
382 Para asegurarnos de que el contenido de la variable @code{text} se
383 interpreta como letra, lo precedemos por @code{\lyricmode}.  Como
384 @code{\addlyrics}, esto activa el modo de entrada de letra.  Sin ello,
385 LilyPond trataría de interpretar el contenido como notas, lo que
386 generaría errores (Existen algunos otros modos, véase @ruser{Modos de
387 entrada}).
388
389 Así pues, escribiendo algunas notas, y una clave de Fa para la mano
390 izquierda, ahora tenemos un fragmento musical de verdad:
391
392 @lilypond[verbatim,quote,ragged-right]
393 melody = \relative c'' { r4 d8\noBeam g, c4 r }
394 text   = \lyricmode { And God said, }
395 upper  = \relative c'' { <g d g,>2~ <g d g,> }
396 lower  = \relative c { b2 e }
397
398 \score {
399   <<
400     \new Staff = "singer" <<
401       \new Voice = "vocal" { \melody }
402       \addlyrics { \text }
403     >>
404     \new PianoStaff = "piano" <<
405       \new Staff = "upper" { \upper }
406       \new Staff = "lower" {
407         \clef "bass"
408         \lower
409       }
410     >>
411   >>
412   \layout { }
413 }
414 @end lilypond
415
416 Cuando escriba una sección @code{\score} o cuando la esté leyendo,
417 hágalo despacio y con cuidado.  Comience por el nivel exterior y luego
418 trabaje sobre cada uno de los niveles interiores.  También es de gran
419 ayuda ser muy estricto con los márgenes (asegúrese de que en su editor
420 de texto cada elemento del mismo nivel comienza en la misma posición
421 horizontal).
422
423
424 @seealso
425 Referencia de la notación:
426 @ruser{Estructura de una partitura}.
427
428
429 @node Anidado de expresiones musicales
430 @subsection Anidado de expresiones musicales
431 @translationof Nesting music expressions
432
433 @cindex pentagramas temporales
434 @cindex temporales, pentagramas
435 @cindex ossias
436
437 No es esencial declarar todos los pentagramas al comienzo; se pueden
438 crear temporalmente en cualquier momento.  Esto es de especial
439 utilidad para crear secciones de ossia (véase @rglos{ossia}).  A
440 continuación presentamos un ejemplo sencillo que muestra cómo
441 introducir temporalmente un pentagrama nuevo mientras dura un
442 fragmento de tres notas:
443
444 @lilypond[verbatim,quote,ragged-right]
445 \new Staff {
446   \relative g' {
447     r4 g8 g c4 c8 d |
448     e4 r8
449     <<
450       { f8 c c }
451       \new Staff {
452         f8 f c
453       }
454     >>
455     r4 |
456   }
457 }
458 @end lilypond
459
460 @noindent
461 Advierta que el tamaño de la clave es igual al que se imprime en un
462 cambio de clave (ligeramente menor que la clave al principio de una
463 línea).  Esto es normal para cualquier clave que se imprime en la
464 mitad de una línea.
465
466 @cindex pentagrama, posicionado del
467
468 La sección ossia se puede colocar encima del pentagrama de la manera
469 siguiente:
470
471 @lilypond[verbatim,quote,ragged-right]
472 \new Staff = "main" {
473   \relative g' {
474     r4 g8 g c4 c8 d |
475     e4 r8
476     <<
477       { f8 c c }
478       \new Staff \with {
479         alignAboveContext = #"main"
480       } { f8 f c }
481     >>
482     r4 |
483   }
484 }
485 @end lilypond
486
487 Este ejemplo utiliza @code{\with}, que se explica en todo detalle más
488 adelante.  Es un medio de modificar el comportamiento predeterminado
489 de un solo pentagrama.  Aquí, dice que el pentagrama nuevo se debe
490 colocar por encima del pentagrama llamado @qq{main} en vez de la
491 posición predeterminada que sería por debajo.
492
493
494 @seealso
495 Los fragmentos de ossia se escriben a menudo sin clave y sin
496 indicación de compás, y generalmente en un tipo más pequeño.  Esto
497 necesitaría más instrucciones que aún no se han visto.  Véase
498 @ref{Tamaño de los objetos} y @ruser{Pentagramas de Ossia}.
499
500
501 @node Acerca de la no anidabilidad de llaves y ligaduras
502 @subsection Acerca de la no anidabilidad de llaves y ligaduras
503 @translationof On the un-nestedness of brackets and ties
504
505 @cindex corchetes y paréntesis, anidado de
506 @cindex corchetes y paréntesis, tipos de
507 @cindex corchetes y paréntesis, encerrar frente a marcar
508 @cindex paréntesis y corchetes, anidado de
509 @cindex paréntesis y corchetes, tipos de
510 @cindex paréntesis y corchetes, encerrar frente a marcar
511
512 En la escritura del archivo de entrada de LilyPond, hemos podido ver
513 algunos tipos de paréntesis, llaves o ángulos de distintos tipos.
514 Éstos obedecen a distintas reglas que al principio pueden resultar
515 confusas.  Antes de explicar estas reglas, demos un repaso a las
516 distintas clases de corchetes, llaves y paréntesis.
517
518 @c attempt to force this onto a new page
519 @need 50
520 @multitable @columnfractions .3 .7
521 @headitem Tipo de paréntesis
522   @tab Función
523 @item @code{@{ @dots{} @}}
524   @tab Encierra un fragmento secuencial de música
525 @item @code{< @dots{} >}
526   @tab Encierra las notas de un acorde
527 @item @code{<< @dots{} >>}
528   @tab Encierra expresiones musicales simultáneas
529 @item @code{( @dots{} )}
530   @tab Marca el comienzo y el final de una ligadura de expresión
531 @item @code{\( @dots{} \)}
532   @tab Marca el comienzo y el final de una ligadura de fraseo
533 @item @code{[ @dots{} ]}
534   @tab Marca el comienzo y el final de un barrado manual
535 @end multitable
536
537 A las anteriores, debemos añadir otras construcciones que generan
538 líneas entre o a través de las notas: las ligaduras de unión (marcadas
539 con una tilde curva, @code{~}), los grupos especiales que se escriben
540 como @code{\tuplet x/y @{ @dots{} @}}, y las notas de adorno, que se escriben
541 como @code{\grace @{ @dots{} @}}.
542
543 Fuera de LilyPond, el uso convencional de los paréntesis y otros
544 corchetes requiere que los distintos tipos se encuentren anidados
545 correctamente, como en: @code{<< [ @{ ( @dots{} ) @} ] >>}, de manera que
546 los paréntesis que se cierran deben encontrarse en el orden
547 exactamente opuesto al de los paréntesis que se abren.  Esto
548 @strong{es} un requisito para los tres tipos de paréntesis que se
549 describen mediante la palabra @q{Encierra} en la tabla anterior: se
550 deben anidar correctamente.  Sin embargo, el resto de las llaves y
551 corchetes, que se encuentran descritos por la palabra @q{Marca} en la
552 misma tabla anterior, @strong{no} tienen por qué anidarse
553 estrictamente con ninguno de los otros paréntesis.  De hecho, éstos no
554 son paréntesis en el sentido de que encierran algo: simplemente son
555 marcadores que indican dónde empieza o finaliza algo.
556
557 Así pues, por ejemplo, una ligadura de fraseo puede dar comienzo
558 antes de una barra insertada manualmente, y acabar antes de que acabe
559 la barra (algo que quizá no sea muy musical, pero es posible):
560
561 @lilypond[quote,verbatim,ragged-right,relative=2]
562 g8\( a b[ c b\) a] g4
563 @end lilypond
564
565 En general, los distintos tipos de corchete, y los implicados en
566 grupos especiales, ligaduras de unión y notas de adorno, se pueden
567 mezclar con total libertad.  Este ejemplo muestra una barra que se
568 extiende hacia el interior de un grupo de valoración especial (línea
569 1), una ligadura de expresión que se prolonga hasta el interior de un
570 grupo especial (línea 2), una barra y una ligadura de expresión que se
571 prolongan hasta el interior de un grupo especial, una ligadura de
572 unión que atraviesa dos grupos especiales, y una ligadura de fraseo
573 que sale del interior de un grupo especial (líneas 3 y 4).
574
575 @lilypond[quote,verbatim,ragged-right,relative=1]
576 r16[ g \tuplet 3/2 { r16 e'8] }
577 g,16( a \tuplet 3/2 { b16 d) e }
578 g,8[( a \tuplet 3/2 { b8 d) e~] } |
579 \tuplet 5/4 { e32\( a, b d e } a4.\)
580 @end lilypond
581
582
583 @node Las voces contienen música
584 @section Las voces contienen música
585 @translationof Voices contain music
586
587 Igual que los cantantes, LilyPond necesita voces para cantar.  En
588 realidad, la música para cualquier instrumento de una partitura está
589 siempre contenida dentro de una voz --el concepto de LilyPond más
590 fundamental de todos--.
591
592 @menu
593 * Oigo voces::
594 * Voces explícitas::
595 * Voces y música vocal::
596 @end menu
597
598 @node Oigo voces
599 @subsection Oigo voces
600 @translationof I'm hearing Voices
601
602 @cindex polifonía
603 @cindex capas
604 @cindex varias voces
605 @cindex voces, varias
606 @cindex Voice (voz), contexto de
607 @cindex contexto Voice (de voz)
608 @cindex simultánea, música
609 @cindex concurrente, música
610 @cindex voces frente a acordes
611 @cindex acordes frente a voces
612
613 De las capas más profundas de una partitura de LilyPond, las más bajas
614 y más fundamentales reciben el nombre de @q{Voice contexts}
615 («contextos de voz») o, abreviadamente, @q{Voices} («voces»).  Las
616 voces reciben a veces el nombre de @q{layers} («capas») en otros
617 programas de edición de partituras.
618
619 De hecho, una capa o contexto de voz es la única que puede contener
620 música.  Si un contexto de voz no se declara explícitamente, se crea
621 uno de forma automática, como vimos al comienzo de este capítulo.
622 Ciertos instrumentos como el oboe solamente pueden tocar una nota cada
623 vez.  La música escrita para estos instrumentos
624 solamente requiere una voz.  Los instrumentos que pueden tocar
625 más de una nota a la vez, como el piano, con frecuencia necesitarán
626 varias voces para codificar las distintas notas y ritmos concurrentes
627 que son capaces de tocar.
628
629 Una sola voz puede contener muchas notas dentro de un acorde, por
630 supuesto; entonces ¿cuándo, exactamente, se necesitan varias voces?
631 En primer lugar observe este ejemplo de cuatro acordes:
632
633 @lilypond[quote,verbatim,ragged-right,relative=1]
634 \key g \major
635 <d g>4 <d fis> <d a'> <d g>
636 @end lilypond
637
638 Esto se puede expresar utilizando sólo símbolos de acorde con ángulos
639 simples, @code{< @dots{} >}, y para este propósito tan sólo se necesita
640 una voz.  Pero suponga que el Fa sostenido fuese realmente una corchea
641 seguida de un Sol corchea, una nota de paso que conduce al La.  Ahora
642 tenemos dos notas que empiezan en el mismo momento pero tienen
643 distintas duraciones: la negra Re, y la corchea Fa sostenido. ¿Cómo se
644 codifica esto? No se pueden escribir como un acorde porque todas las
645 notas de un acorde deben tener la misma duración.  Y no se pueden
646 escribir como dos notas en secuencia porque tienen que empezar en el
647 mismo momento.  Aquí es donde se necesitan dos voces.
648
649 Veamos cómo se hace esto dentro de la sintaxis de entrada de LilyPond.
650
651 @funindex << \\ >>
652 @funindex \\
653
654 La forma más fácil de introducir fragmentos con más de una voz en un
655 solo pentagrama es escribir cada voz como una secuencia (con
656 @code{@{ @dots{} @}}), y combinarlas simultáneamente con ángulos dobles,
657 @code{<< @dots{} >>}.  Los fragmentos también se deben separar mediante una
658 doble barra invertida, @code{\\}, para situarlos en voces separadas.
659 Sin esto, las notas irían a una sola voz, lo que normalmente produce
660 errores.  Esta técnica se adapta especialmente bien a piezas de música
661 que son mayormente homofónicas pero ocasionalmente tienen cortas
662 secciones de polifonía.
663
664 He aquí cómo dividimos los acordes anteriores en dos voces y añadimos
665 la nota de paso y la ligadura:
666
667 @lilypond[quote,verbatim,ragged-right,relative=2]
668 \key g \major
669 %    Voice "1"               Voice "2"
670 << { g4 fis8( g) a4 g } \\ { d4 d d d }  >>
671 @end lilypond
672
673 Observe cómo las plicas de la segunda voz ahora se dirigen hacia
674 abajo.
675
676 A continuación veamos otro ejemplo sencillo:
677
678 @lilypond[quote,verbatim,ragged-right,relative=2]
679 \key d \minor
680 %    Voice "1"             Voice "2"
681 << { r4 g g4. a8 }    \\ { d,2 d4 g }       >> |
682 << { bes4 bes c bes } \\ { g4 g g8( a) g4 } >> |
683 << { a2. r4 }         \\ { fis2. s4 }       >> |
684 @end lilypond
685
686 No es necesario usar una construcción @code{<< \\ >>} distinta para
687 cada compás. Para música que tenga unas pocas notas en cada compás,
688 esta disposición podría facilitar la legibilidad del código, pero si
689 hay muchas notas en cada compás podría ser mejor dividirlo en dos
690 voces separadas, de la siguiente manera:
691
692 @lilypond[quote,verbatim,ragged-right,relative=2]
693 \key d \minor
694 << {
695   % Voice "1"
696   r4 g g4. a8 |
697   bes4 bes c bes |
698   a2. r4 |
699 } \\ {
700   % Voice "2"
701   d,2 d4 g |
702   g4 g g8( a) g4 |
703   fis2. s4 |
704 } >>
705 @end lilypond
706
707 @cindex voces, nombrado de
708 @cindex voces que cruzan corchetes
709 @cindex ligaduras que cruzan corchetes
710
711 Este ejemplo tiene sólo dos voces, pero la misma construcción se puede
712 usar para codificar tres o más voces mediante la adición de más
713 separadores de barra invertida.
714
715 Los contextos de voz llevan los nombres de @code{"1"}, @code{"2"},
716 etc. Los primeros contextos establecen las voces @emph{externas}, la
717 voz aguda del contexto @code{"1"} y la voz grave del contexto
718 @code{"2"}.  Las voces interiores van en los contextos @code{"3"} y
719 @code{"4"}.  En cada uno de estos contextos, la dirección vertical de
720 las ligaduras, plicas, matices dinámicos, etc., se ajusta de forma
721 correcta.
722
723 @lilypond[quote,verbatim]
724 \new Staff \relative c' {
725   % Main voice
726   c16 d e f
727   %    Voice "1"     Voice "2"                Voice "3"
728   << { g4 f e } \\ { r8 e4 d c8~ } >> |
729   << { d2 e }   \\ { c8 b16 a b8 g~ 2 } \\ { s4 b c2 } >> |
730 }
731 @end lilypond
732
733 Todas estas voces están separadas de la voz principal que contiene las
734 notas justo por fuera de la construcción @code{<< @dots{} >>}.  Le
735 llamaremos a esto la @emph{construcción simultánea}.  Las ligaduras
736 (de prolongación y de expresión) solamente pueden conectar notas que
737 estén dentro de la misma voz, luego las ligaduras no pueden entrar o
738 salir de una construcción simultánea.  A la inversa, las voces
739 paralelas de construcciones simultáneas distintas sobre el mismo
740 pentagrama, son la misma voz.  Otras propiedades relativas a las voces
741 también conllevan construcciones simultáneas.  A continuación vemos el
742 mismo ejemplo, con colores y cabezas distintos para cada voz.  Observe
743 que los cambios en una voz no afectan a otras voces, pero persisten
744 más tarde dentro de la misma voz.  Observe también que las notas
745 ligadas se pueden dividir entre las mismas voces de dos
746 construcciones, como se indica aquí en la voz de triángulos azules.
747
748 @lilypond[quote,verbatim]
749 \new Staff \relative c' {
750   % Main voice
751   c16 d e f
752   <<  % Bar 1
753     {
754       \voiceOneStyle
755       g4 f e
756     }
757   \\
758     {
759       \voiceTwoStyle
760       r8 e4 d c8~
761     }
762   >> |
763   <<  % Bar 2
764      % Voice 1 continues
765     { d2 e }
766   \\
767      % Voice 2 continues
768     { c8 b16 a b8 g~ 2 }
769   \\
770     {
771       \voiceThreeStyle
772       s4 b c2
773     }
774   >> |
775 }
776 @end lilypond
777
778 @funindex \voiceOneStyle
779 @funindex \voiceTwoStyle
780 @funindex \voiceThreeStyle
781 @funindex \voiceFourStyle
782 @funindex \voiceNeutralStyle
783
784 Las instrucciones @code{\voiceXXXStyle} están pensadas principalmente
785 para usarlas en documentos educativos como este mismo.  Modifican el
786 color de la cabeza, la plica y las barras, y el estilo de la cabeza,
787 de forma que las voces se puedan distinguir fácilmente.  La voz uno
788 está establecida a rombos rojos, la voz dos a triángulos azules, la
789 voz tres a círculos verdes con aspas, y la voz cuatro (que no se
790 utiliza aquí) a aspas color magenta.  @code{\voiceNeutralStyle} (que
791 tampoco se usa aquí) devuelve todo al estilo predeterminado.  Veremos
792 más adelante cómo el usuario puede crear instrucciones como éstas.
793 Véase @ref{Visibilidad y color de los objetos} y
794 @ref{Uso de variables para los ajustes de disposición}.
795
796 @cindex polifonía y modo relativo
797 @cindex relativo, modo, polifonía y
798
799 La polifonía no cambia la relación de las notas dentro de un bloque
800 @code{\relative}.  La altura de cada nota aún se calcula con
801 relación a la nota que le precede inmediatamente, o a la primera nota
802 del acorde precedente.  Así, en
803
804 @example
805 \relative c' @{ notaA << < notaB notaC > \\ notaD >> notaE @}
806 @end example
807
808 @noindent
809 @code{notaB} es relativa a @code{notaA}                      @*
810 @code{notaC} es relativa a @code{notaB}, no a @code{notaA};   @*
811 @code{notaD} es relativa a @code{notaB}, no a @code{notaA} ni a
812 @code{notaC};                                                 @*
813 @code{notaE} es relativa a @code{notaD}, no a @code{notaA}.
814
815 Una forma alternativa, que podría ser más clara si las notas en las
816 voces están muy separadas, es colocar una instrucción @code{\relative}
817 al principio de cada voz:
818
819 @example
820 \relative c' @{ notaA @dots{} @}
821 <<
822   \relative c'' @{ < notaB notaC > @dots{} @}
823 \\
824   \relative g' @{ notaD @dots{} @}
825 >>
826 \relative c' @{ notaE @dots{} @}
827 @end example
828
829 Finalmente, analicemos las voces en una pieza de música más compleja.
830 He aquí las notas de los dos primeros compases del segundo de los Dos
831 Nocturnos de Chopin, Op 32.  Este ejemplo se utilizará en fases
832 posteriores dentro del presente capítulo y el siguiente, para ilustrar
833 varias técnicas para producir notación, y por tanto le pedimos que
834 ignore por ahora cualquier cosa en el código subyacente que le parezca
835 misterioso y tan sólo se concentre en la música y las voces (todas
836 las complicaciones se explicarán en secciones posteriores).
837
838 @c The following should appear as music without code
839 @lilypond[quote,ragged-right]
840 \new Staff \relative c'' {
841   \key aes \major
842   <<  % Voice one
843     { c2 aes4. bes8 }
844   \\  % Voice two
845     {
846       % Ignore these for now - they are explained in Ch 4
847       \once \override NoteColumn.ignore-collision = ##t
848       <ees, c>2
849       \once \override NoteColumn.force-hshift = #0.5
850       des2
851     }
852   \\  % No voice three
853   \\  % Voice four
854     {
855       \override NoteColumn.force-hshift = #0
856       aes'2 f4 fes
857     }
858   >> |
859   <c ees aes c>1 |
860 }
861 @end lilypond
862
863 Con frecuencia, la dirección de las plicas se utiliza para indicar la
864 continuidad de dos líneas melódicas simultáneas.  Aquí, todas las
865 plicas de las notas agudas se dirigen hacia arriba y las de las notas
866 graves hacia abajo.  Ésta es la primera indicación de que se requiere
867 más de una voz.
868
869 Pero la necesidad real de varias voces aflora cuando hay notas que
870 comienzan en el mismo tiempo pero tienen distintas duraciones.
871 Observe las notas que comienzan en la tercera parte del primer compás.
872 El La bemol es una negra con puntillo, el Fa es una negra y el Re
873 bemol es una blanca.  Estas notas no se pueden escribir como un acorde
874 porque todas las notas de un acorde deben tener la misma duración.
875 Tampoco se pueden escribir como notas secuenciales, pues deben
876 comenzar al mismo tiempo.  Esta sección del compás requiere tres
877 voces, y la práctica común sería escribir todo el compás como tres
878 voces como se muestra abajo, donde hemos usado distintas cabezas y
879 colores para las tres voces.  Una vez más, el código que subyace a
880 este ejemplo se explicará más tarde, así pues ignore todo lo que no
881 entienda.
882
883 @c The following should appear as music without code
884 @c The three voice styles should be defined in -init
885 @lilypond[quote,ragged-right]
886 \new Staff \relative c'' {
887   \key aes \major
888   <<
889     {  % Voice one
890       \voiceOneStyle
891       c2 aes4. bes8
892     }
893   \\  % Voice two
894     { \voiceTwoStyle
895       % Ignore these for now - they are explained in Ch 4
896       \once \override NoteColumn.ignore-collision = ##t
897       <ees, c>2
898       \once \override NoteColumn.force-hshift = #0.5
899       des2
900     }
901   \\  % No Voice three (we want stems down)
902   \\  % Voice four
903     { \voiceThreeStyle
904       \override NoteColumn.force-hshift = #0
905       aes'2 f4 fes
906     }
907   >> |
908   <c ees aes c>1 |
909 }
910 @end lilypond
911
912
913 Vamos a intentar codificar esta música partiendo de cero.  Como
914 veremos, esto se topa con ciertas dificultades. Comenzamos tal y como
915 hemos aprendido, usando la construcción @code{<< \\ >>} para
916 introducir la música del primer compás en tres voces:
917
918 @lilypond[quote,verbatim,ragged-right]
919 \new Staff \relative c'' {
920   \key aes \major
921   <<
922     { c2 aes4. bes8 } \\ { <ees, c>2 des } \\ { aes'2 f4 fes }
923   >> |
924   <c ees aes c>1 |
925 }
926 @end lilypond
927
928 @cindex plica abajo
929 @cindex voces y dirección de las plicas
930 @cindex plicas, voces y dirección de las
931 @cindex plica arriba
932
933 Las direcciones de las plicas se asignan automáticamente de forma que
934 las voces de numeración impar reciben las plicas hacia arriba y las de
935 numeración par hacia abajo.  Las plicas de las voces 1 y 2 están
936 correctas, pero las plicas de la voz 3 debería ir hacia abajo en este
937 fragmento en particular.  Podemos corregir esto simplemente
938 olvidándonos de la voz tres y situando la música en la voz cuatro.
939 Esto se hace escribiendo otro par de barras invertidas (@code{\\}).
940
941 @lilypond[quote,verbatim,ragged-right]
942 \new Staff \relative c'' {
943   \key aes \major
944   <<  % Voice one
945     { c2 aes4. bes8 }
946   \\  % Voice two
947     { <ees, c>2 des }
948   \\  % Omit Voice three
949   \\  % Voice four
950     { aes'2 f4 fes }
951   >> |
952   <c ees aes c>1 |
953 }
954 @end lilypond
955
956 @noindent
957 Vemos que esto arregla la dirección de la plica, pero la colocación
958 horizontal de las notas no es la deseada.  LilyPond desplaza las notas
959 interiores cuando ellas o sus plicas de otro modo colisionarían con
960 las voces exteriores, pero esto no es lo más adecuado para música de
961 piano.  En otras situaciones, los desplazamientos que LilyPond aplica
962 pueden no eliminar las colisiones.  LilyPond aporta varias formas de
963 ajustar la colocación horizontal de las notas.  Aún no estamos
964 preparados para ver cómo se corrige esto, por lo que dejaremos el
965 problema para una sección posterior (véase la propiedad
966 @code{force-hshift} en @ref{Arreglar notación con superposiciones}).
967
968 @warning{No se pueden crear letras ni objetos de extensión
969 (como ligaduras, reguladores, etc.) @q{entre} voces distintas.}
970
971 @seealso
972 Referencia de la notación:
973 @ruser{Varias voces}.
974
975
976 @node Voces explícitas
977 @subsection Voces explícitas
978 @translationof Explicitly instantiating voices
979
980
981 @funindex \voiceOne
982 @funindex voiceOne
983 @funindex \voiceTwo
984 @funindex voiceTwo
985 @funindex \voiceThree
986 @funindex voiceThree
987 @funindex \voiceFour
988 @funindex voiceFour
989 @funindex \oneVoice
990 @funindex oneVoice
991 @funindex \new Voice
992 @cindex contextos de voz, creación de
993
994 Los contextos de voz también se pueden crear manualmente dentro de un
995 bloque @code{<< >>} para crear música polifónica, utilizando
996 @code{\voiceOne} @dots{} @code{\voiceFour} para indicar las direcciones
997 requeridas de plicas, ligaduras, etc.  En partituras más largas, este
998 método es más claro porque permite que las voces estén separadas y
999 reciban nombres más descriptivos.
1000
1001 Concretamente, la construcción @code{<< \\ >>} que usamos en la
1002 sección previa:
1003
1004 @example
1005 \new Staff @{
1006   \relative c' @{
1007     << @{ e4 f g a @} \\ @{ c,4 d e f @} >>
1008   @}
1009 @}
1010 @end example
1011
1012 @noindent
1013 equivale a
1014
1015 @example
1016 \new Staff <<
1017   \new Voice = "1" @{ \voiceOne \relative c' @{ e4 f g a @} @}
1018   \new Voice = "2" @{ \voiceTwo \relative c' @{ c4 d e f @} @}
1019 >>
1020 @end example
1021
1022 Los dos ejemplos anteriores producen:
1023
1024 @c The following example should not display the code
1025 @lilypond[ragged-right,quote]
1026 \new Staff <<
1027   \new Voice = "1" { \voiceOne \relative c' { e4 f g a } }
1028   \new Voice = "2" { \voiceTwo \relative c' { c4 d e f } }
1029 >>
1030 @end lilypond
1031
1032 @cindex voces, retorno a única
1033 @cindex retorno a voz única
1034
1035 Las instrucciones @code{\voiceXXX} establecen la dirección de las
1036 plicas, ligaduras de expresión, ligaduras de prolongación,
1037 articulaciones, anotaciones de texto, puntillos y digitaciones.
1038 @code{\voiceOne} y @code{\voiceThree} hacen que estos objetos apunten
1039 hacia arriba, mientras que @code{\voiceTwo} y @code{\voiceFour} los
1040 hacen apuntar hacia abajo.  Estas instrucciones también producen un
1041 desplazamiento horizontal para cada voz cuando es necesario para
1042 evitar choques entre las cabezas.  La instrucción @code{\oneVoice}
1043 devuelve los ajustes de nuevo a los valores normales para una sola
1044 voz.
1045
1046 Veamos en algunos ejemplos sencillos exactamente qué efecto tienen
1047 @code{\oneVoice}, @code{\voiceOne} y @code{voiceTwo} sobre el marcado,
1048 las ligaduras de unión y de expresión y las indicaciones de dinámica:
1049
1050 @lilypond[quote,ragged-right,verbatim]
1051 \relative c' {
1052   % Default behavior or behavior after \oneVoice
1053   c4 d8~ 8 e4( f | g4 a) b-> c |
1054 }
1055 @end lilypond
1056
1057 @lilypond[quote,ragged-right,verbatim]
1058 \relative c' {
1059   \voiceOne
1060   c4 d8~ 8 e4( f | g4 a) b-> c |
1061   \oneVoice
1062   c,4 d8~ 8 e4( f | g4 a) b-> c |
1063 }
1064 @end lilypond
1065
1066 @lilypond[quote,ragged-right,verbatim]
1067 \relative c' {
1068   \voiceTwo
1069   c4 d8~ 8 e4( f | g4 a) b-> c |
1070   \oneVoice
1071   c,4 d8~ 8 e4( f | g4 a) b-> c |
1072 }
1073 @end lilypond
1074
1075 A continuación veremos tres formas distintas de componer la notación
1076 del mismo pasaje polifónico, cada una de las cuales tiene sus ventajas
1077 según la circunstancia, utilizando el ejemplo de la sección anterior.
1078
1079 Una expresión que aparece directamente dentro de @code{<< >>}
1080 pertenece a la voz principal (pero, observe, @strong{no} dentro de una
1081 construcción @code{<< \\ >>}).  Esto es útil cuando aparecen voces
1082 nuevas mientras la voz principal está sonando.  A continuación podemos
1083 ver una realización más correcta del ejemplo de la sección anterior.
1084 Las notas rojas en forma de rombo muestran que la melodía principal
1085 está ahora dentro de un contexto de una sola voz, haciendo que se
1086 pueda trazar una ligadura por encima de ellas.
1087
1088 @lilypond[quote,ragged-right,verbatim]
1089 \new Staff \relative c' {
1090   \voiceOneStyle
1091   % This section is homophonic
1092   c16^( d e f
1093   % Start simultaneous section of three voices
1094   <<
1095     % Continue the main voice in parallel
1096     { g4 f e | d2 e) | }
1097     % Initiate second voice
1098     \new Voice {
1099       % Set stems, etc., down
1100       \voiceTwo
1101       r8 e4 d c8~ | 8 b16 a b8 g~ 2 |
1102     }
1103     % Initiate third voice
1104     \new Voice {
1105       % Set stems, etc, up
1106       \voiceThree
1107       s2. | s4 b c2 |
1108     }
1109   >>
1110 }
1111 @end lilypond
1112
1113 @cindex anidado de expresiones musicales
1114 @cindex anidado de construcciones simultáneas
1115 @cindex anidado de voces
1116 @cindex voces temporales
1117 @cindex voces, anidado de
1118
1119 Son posibles construcciones polifónicas anidadas más profundamente, y
1120 si una voz aparece sólo brevemente podría haber una forma más natural
1121 de tipografiar la música.
1122
1123 @lilypond[quote,ragged-right,verbatim]
1124 \new Staff \relative c' {
1125   c16^( d e f
1126   <<
1127     { g4 f e | d2 e) | }
1128     \new Voice {
1129       \voiceTwo
1130       r8 e4 d c8~ |
1131       <<
1132         { c8 b16 a b8 g~ 2 | }
1133         \new Voice {
1134           \voiceThree
1135           s4 b c2 |
1136         }
1137       >>
1138     }
1139   >>
1140 }
1141 @end lilypond
1142
1143 @cindex espaciadoras, notas
1144
1145 Este método de anidar voces nuevas brevemente es útil cuando sólo hay
1146 secciones polifónicas pequeñas, pero cuando todo el pentagrama es muy
1147 polifónico podría ser más claro usar varias voces todo el tiempo,
1148 usando notas espaciadoras para pasar por encima de las secciones en
1149 que una voz está en silencio, como aquí:
1150
1151 @lilypond[quote,ragged-right,verbatim]
1152 \new Staff \relative c' <<
1153   % Initiate first voice
1154   \new Voice {
1155     \voiceOne
1156     c16^( d e f g4 f e | d2 e) |
1157   }
1158   % Initiate second voice
1159   \new Voice {
1160     % Set stems, etc, down
1161     \voiceTwo
1162     s4 r8 e4 d c8~ | 8 b16 a b8 g~ 2 |
1163   }
1164   % Initiate third voice
1165   \new Voice {
1166     % Set stems, etc, up
1167     \voiceThree
1168     s1 | s4 b c2 |
1169   }
1170 >>
1171 @end lilypond
1172
1173 @subsubheading Columnas de notas
1174
1175 @cindex columna de notas
1176 @cindex colisiones de notas
1177 @cindex notas, colisiones de
1178 @cindex desplazamiento, instrucciones de
1179 @funindex \shiftOff
1180 @funindex shiftOff
1181 @funindex \shiftOn
1182 @funindex shiftOn
1183 @funindex \shiftOnn
1184 @funindex shiftOnn
1185 @funindex \shiftOnnn
1186 @funindex shiftOnnn
1187
1188 Las notas cercanas de un acorde, o las notas que se producen al mismo
1189 tiempo en distintas voces, se disponen en dos (y ocasionalmente más)
1190 columnas para evitar el solapamiento de las cabezas.  Reciben el
1191 nombre de columnas de notas.  Hay columnas distintas para cada voz, y
1192 el desplazamiento especificado en curso dependiente de la voz se
1193 aplica a la columna de la nota si en caso contrario se produjese una
1194 colisión.  Esto se puede ver en el ejemplo anterior. En el compás 2 el
1195 Do en la voz dos está desplazado a la derecha respecto del Re de la
1196 voz uno, y en el último acorde el Do de la voz tres también está
1197 desplazado a la derecha respecto de las otras notas.
1198
1199 Las instrucciones @code{\shiftOn}, @code{\shiftOnn}, @code{\shiftOnnn}
1200 y @code{\shiftOff} especifican el grado en que se deben desplazar las
1201 notas y acordes de la voz si en caso contrario ocurriese una
1202 colisión.  De forma predeterminada, las voces exteriores (normalmente
1203 las voces uno y dos) llevan especificado @code{\shiftOff}, mientras
1204 que las voces interiores (tres y cuatro) tienen @code{\shiftOn}
1205 especificado.  Cuando se aplica un desplazamiento, las voces uno y
1206 tres se desplazan hacia la derecha y las voces dos y cuatro se
1207 desplazan hacia la izquierda.
1208
1209 @code{\shiftOnn} y @code{\shiftOnnn} definen niveles adicionales de
1210 desplazamiento que se pueden especificar temporalmente para resolver
1211 colisiones en situaciones complejas (véase @ref{Ejemplos reales de música}).
1212
1213 Una columna de notas puede contener sólo una nota (o acorde) de una
1214 voz con las plicas hacia arriba y una not (o acorde) de una voz con
1215 las plicas hacia abajo.  Si las notas de dos voces que tienen las
1216 plicas en la misma dirección se sitúan en la misma posición y las dos
1217 voces no tienen ningún desplazamiento o llevan especificado el mismo
1218 desplazamiento, se producirá el mensaje de error @qq{Chocan demasiadas
1219 columnas de notas}.
1220
1221
1222 @seealso
1223 Manual de aprendizaje:
1224 @ref{Mover objetos}.
1225
1226 Referencia de la notación:
1227 @ruser{Varias voces}.
1228
1229
1230 @node Voces y música vocal
1231 @subsection Voces y música vocal
1232 @translationof Voices and vocals
1233
1234
1235 La música vocal presenta una dificultad especial: tenemos que combinar
1236 dos expresiones, a saber, las notas y la letra.
1237
1238 @funindex \new Lyrics
1239 @funindex \lyricsto
1240 @funindex lyricsto
1241 @funindex Lyrics
1242 @cindex Lyrics, creación de un contexto
1243 @cindex letra, creación de un contexto de
1244 @cindex letra, enlazar con una voz
1245
1246 Ya ha visto la instrucción @code{\addlyrics@{@}}, que maneja bien
1247 partituras sencillas.  Sin embargo esta técnica es algo limitada.
1248 Para música de mayor complejidad, tenemos que introducir la letra en
1249 un contexto @code{Lyrics} utilizando @code{\new Lyrics} y enlazar
1250 explícitamente la letra y las notas mediante @code{\lyricsto@{@}},
1251 usando el nombre asignado a la voz.
1252
1253 @lilypond[quote,verbatim]
1254 <<
1255   \new Voice = "one" {
1256     \relative c'' {
1257       \autoBeamOff
1258       \time 2/4
1259       c4 b8. a16 | g4. f8 | e4 d | c2 |
1260     }
1261   }
1262   \new Lyrics \lyricsto "one" {
1263     No more let | sins and | sor -- rows | grow. |
1264   }
1265 >>
1266 @end lilypond
1267
1268 Observe que la letra se debe enlazar a un contexto de @code{Voice},
1269 @emph{no} a un contexto de @code{Staff}.  Este es un caso en que es
1270 necesario crear contextos de @code{Staff} y de @code{Voice}
1271 explícitamente.
1272
1273 @cindex letra y barrado
1274 @cindex barrado y letra
1275 @funindex \autoBeamOff
1276 @funindex autoBeamOff
1277
1278 El barrado automático que LilyPond usa de forma predeterminada
1279 funciona bien para la música instrumental, pero no tan bien para
1280 música con letra, donde o bien el barrado no se necesita en absoluto,
1281 o bien se utiliza para indicar los melismas de la letra.  En el
1282 ejemplo anterior hemos utilizado la instrucción @code{\autoBeamOff}
1283 para desactivar el barrado automático.
1284
1285 @funindex \new ChoirStaff
1286 @funindex ChoirStaff
1287 @funindex \lyricmode
1288 @funindex lyricmode
1289 @cindex vocal, estructura de una partitura
1290 @cindex coro, sistema de
1291
1292 Ahora vamos a reutilizar el ejemplo anterior de «Judas Macabeo» para
1293 ilustrar esta técnica más flexible.  Primero la reescribiremos para
1294 que use variables, de manera que la música y la letra se puedan
1295 separar de la estructura de pentagramas.  También introduciremos una
1296 llave de grupo de ChoirStaff.  La letra en sí se debe introducir con
1297 @code{\lyricmode} para estar seguros de que se interpreta como letra y
1298 no como música.
1299
1300 @lilypond[quote,verbatim]
1301 global = { \key f \major \time 6/8 \partial 8 }
1302
1303 SopOneMusic = \relative c'' {
1304   c8 | c8([ bes)] a a([ g)] f | f'4. b, | c4.~ 4
1305 }
1306 SopOneLyrics = \lyricmode {
1307   Let | flee -- cy flocks the | hills a -- dorn, __
1308 }
1309 SopTwoMusic = \relative c' {
1310   r8 | r4. r4 c8 | a'8([ g)] f f([ e)] d | e8([ d)] c bes'
1311 }
1312 SopTwoLyrics = \lyricmode {
1313   Let | flee -- cy flocks the | hills a -- dorn,
1314 }
1315
1316 \score {
1317   \new ChoirStaff <<
1318     \new Staff <<
1319       \new Voice = "SopOne" {
1320         \global
1321         \SopOneMusic
1322       }
1323       \new Lyrics \lyricsto "SopOne" {
1324         \SopOneLyrics
1325       }
1326     >>
1327     \new Staff <<
1328       \new Voice = "SopTwo" {
1329         \global
1330         \SopTwoMusic
1331       }
1332       \new Lyrics \lyricsto "SopTwo" {
1333         \SopTwoLyrics
1334       }
1335     >>
1336   >>
1337 }
1338 @end lilypond
1339
1340 Ésta es la estructura básica de todas las partituras vocales.  Se
1341 pueden añadir más pentagramas según se necesite, se pueden añadir más
1342 voces a los pentagramas y más estrofas a la letra, y las variables que
1343 contienen la música se pueden colocar fácilmente en archivos separados
1344 cuando se hagan demasiado largos.
1345
1346 @cindex himno, estructura de
1347 @cindex SATB, estructura de
1348 @cindex vocal, partitura, varias estrofas
1349 @cindex varias estrofas vocales
1350 @cindex estrofas, varias, vocales
1351
1352 A continuación podemos ver un ejemplo final de la primera línea de un
1353 himno con cuatro estrofas, para coro SATB.  En este caso la letra de
1354 las cuatro partes es la misma.  Observe cómo utilizamos variables para
1355 separar la notación musical de la estructura de pentagramas.  Observe
1356 también cómo se utiliza una variable, para la que hemos elegido el
1357 nombre @q{TimeKey} («compás y tonalidad»), para que contenga varias
1358 instrucciones que se usarán dentro de los dos pentagramas.  En otros
1359 ejemplos se le suele dar el nombre de @q{global}.
1360
1361
1362
1363 @lilypond[quote,verbatim]
1364 keyTime = { \key c \major \time 4/4 \partial 4 }
1365
1366 SopMusic   = \relative c' { c4 | e4. e8 g4  g    | a4   a   g  }
1367 AltoMusic  = \relative c' { c4 | c4. c8 e4  e    | f4   f   e  }
1368 TenorMusic = \relative c  { e4 | g4. g8 c4.   b8 | a8 b c d e4 }
1369 BassMusic  = \relative c  { c4 | c4. c8 c4  c    | f8 g a b c4 }
1370
1371 VerseOne =
1372   \lyricmode { E -- | ter -- nal fa -- ther, | strong to save, }
1373 VerseTwo   =
1374   \lyricmode { O | Christ, whose voice the | wa -- ters heard, }
1375 VerseThree =
1376   \lyricmode { O | Ho -- ly Spi -- rit, | who didst brood }
1377 VerseFour  =
1378   \lyricmode { O | Tri -- ni -- ty of | love and pow'r }
1379
1380 \score {
1381   \new ChoirStaff <<
1382     \new Staff <<
1383       \clef "treble"
1384       \new Voice = "Sop"  { \voiceOne \keyTime \SopMusic }
1385       \new Voice = "Alto" { \voiceTwo \AltoMusic }
1386       \new Lyrics \lyricsto "Sop" { \VerseOne   }
1387       \new Lyrics \lyricsto "Sop" { \VerseTwo   }
1388       \new Lyrics \lyricsto "Sop" { \VerseThree }
1389       \new Lyrics \lyricsto "Sop" { \VerseFour  }
1390     >>
1391     \new Staff <<
1392       \clef "bass"
1393       \new Voice = "Tenor" { \voiceOne \keyTime \TenorMusic }
1394       \new Voice = "Bass"  { \voiceTwo \BassMusic }
1395     >>
1396   >>
1397 }
1398 @end lilypond
1399
1400
1401 @seealso
1402 Referencia de la notación:
1403 @ruser{Música vocal}.
1404
1405
1406 @node Contextos y grabadores
1407 @section Contextos y grabadores
1408 @translationof Contexts and engravers
1409
1410 Los contextos y grabadores se han mencionado de manera informal en
1411 secciones anteriores; ahora tan sólo vamos a ver estos conceptos con
1412 más detalle, pues son importantes en el ajuste fino de la salida de
1413 LilyPond.
1414
1415 @menu
1416 * Explicación de los contextos::
1417 * Crear contextos::
1418 * Explicación de los grabadores::
1419 * Modificar las propiedades de los contextos::
1420 * Añadir y eliminar grabadores::
1421 @end menu
1422
1423 @node Explicación de los contextos
1424 @subsection Explicación de los contextos
1425 @translationof Contexts explained
1426
1427 @cindex contextos, explicación de los
1428
1429 Cuando se imprime la música, se tienen que añadir a la salida una gran
1430 cantidad de elementos notacionales que no aparecen explícitamente en
1431 el archivo de entrada.  Por ejemplo, compare la entrada y la salida
1432 del siguiente ejemplo:
1433
1434 @lilypond[quote,verbatim,relative=2]
1435 cis4 cis2. | a4 a2. |
1436 @end lilypond
1437
1438 La entrada es bastante escueta, pero en la salida se han añadido las
1439 líneas divisorias, las alteraciones, la clave y la armadura de la
1440 tonalidad.  Cuando LilyPond @emph{interpreta} la entrada, la
1441 información musical se analiza de izquierda a derecha de igual forma
1442 que un intérprete lee la partitura.  Mientras se lee el código de
1443 entrada, el programa recuerda dónde están los límites de los compases,
1444 y qué alturas requieren alteraciones accidentales explícitas.  Esta
1445 información se debe conservar a varios niveles.  Por ejemplo, una
1446 alteración accidental afecta solamente a un pentagrama, mientras que
1447 una línea divisoria debe estar sincronizada a lo largo de todo el
1448 sistema.
1449
1450 Dentro de LilyPond, estas reglas y pequeñas porciones de información
1451 se agrupan en @emph{Contexts}.  Ya hemos visto el contexto de voz,
1452 @code{Voice}.  Otros ejemplos de contextos son @code{Staff} (Pauta o
1453 pentagrama) y @code{Score} (Partitura).  Los contextos son
1454 jerárquicos, de forma que reflejan la naturaleza jerárquica de una
1455 partitura musical.  Por ejemplo: un contexto de @code{Staff} contener
1456 muchos contextos de @code{Voice}, y un contexto de @code{Score} puede
1457 contener muchos contextos de @code{Staff}.
1458
1459 @quotation
1460 @sourceimage{context-example,5cm,,}
1461 @end quotation
1462
1463 Cada contexto asume la responsabilidad de imponer algunas reglas de
1464 notación, creando ciertos objetos de notación y manteniendo las
1465 propiedades asociadas.  Por ejemplo, el contexto @code{Voice} puede
1466 introducir una alteración accidental y entonces el contexto
1467 @code{Staff} mantiene la regla de mostrar o suprimir la alteración
1468 para el resto del compás.
1469
1470 Otro ejemplo lo constituye el hecho de que la sincronización de las
1471 líneas divisorias se gestiona dentro del contexto de la partitura,
1472 @code{Score}, de forma predeterminada.  Sin embargo, en algunas
1473 músicas posiblemente no queramos que las líneas divisorias estén
1474 sincronizadas (pensemos en una partitura polimétrica en compases de
1475 4/4 y de 3/4).  En tales casos, debemos modificar los ajustes por
1476 omisión de los contextos @code{Score} y @code{Staff}.
1477
1478 Para partituras muy sencillas, los contextos se crean implícitamente y
1479 no debemos preocuparnos por ellos.  Para piezas mayores, como por
1480 ejemplo cualquiera que tenga más de un pentagrama, los contextos se
1481 deben crear explícitamente para asegurarnos de que tendremos la
1482 cantidad exacta de pentagramas que necesitamos, y que están en el
1483 orden correcto.  Para tipografiar piezas con notación especializada,
1484 es frecuente la modificación de contextos existentes o incluso definir
1485 unos completamente nuevos.
1486
1487
1488 Además de los contextos @code{Score,} @code{Staff} y @code{Voice}, hay
1489 contextos que se sitúan entre los niveles de partitura y de pentagrama
1490 para controlar los grupos de pentagramas, como los contextos
1491 @code{PianoStaff} y @code{ChoirStaff}.  También existen contextos
1492 alternativos de pentagrama y de voz, y contextos para la letra, la
1493 percusión, diagramas de trastes, bajo cifrado, etc.
1494
1495 Los nombres de todos los tipos de contextos se componen de una o más
1496 palabras que comienzan con mayúscula y que están unidas unas a otras
1497 sin guión ni barra baja, por ejemplo:
1498 @code{GregorianTranscriptionStaff}.
1499
1500
1501 @seealso
1502 Referencia de la notación:
1503 @ruser{Explicación de los contextos}.
1504
1505
1506 @node Crear contextos
1507 @subsection Crear contextos
1508 @translationof Creating contexts
1509
1510 @funindex \new
1511 @funindex new
1512 @cindex nuevos contextos
1513 @cindex creación de contextos
1514 @cindex contextos, creación de
1515
1516 En un archivo de entrada, el bloque de partitura, que se presenta
1517 precedido por la instrucción @code{\score}, contiene una sola
1518 expresión musical y una definición de salida asociada (bien un bloque
1519 @code{\layout} o bien un bloque @code{\midi}).  El contexto
1520 @code{Score} se suele dejar que se cree automáticamente cuando
1521 comienza la interpretación de esa expresión musical.
1522
1523 Para partituras que solamente tienen una voz y un pentagrama, podemos
1524 también dejar que los contextos @code{Voice} y @code{Staff} se creen
1525 automáticamente, pero para partituras más complejas es necesario
1526 crearlos a mano.  La instrucción más simple que hace esto es
1527 @code{\new}.  Se antepone a una expresión musical, por ejemplo
1528
1529 @example
1530 \new @var{tipo} @var{expresión_musical}
1531 @end example
1532
1533 @noindent
1534 donde @var{tipo} es el nombre de un contexto (como @code{Staff} o
1535 @code{Voice}).  Esta instrucción crea un contexto nuevo, y comienza a
1536 interpretar la @var{expresión_musical} que está dentro de ese
1537 contexto.
1538
1539 @warning{No se debe usar @bs{}@code{new Score} porque el contexto
1540 @code{Score} esencial del nivel superior ya se crea automáticamente al
1541 interpretarse la expresión musical que está dentro del bloque
1542 @bs{}@code{score}.  Los valores predeterminados de propiedades de
1543 contexto válidos para toda la partitura se pueden cambiar dentro del
1544 bloque @bs{}@code{layout}.  Véase @ref{Modificar las propiedades de
1545 los contextos}.}
1546
1547 En las secciones anteriores ha podido ver muchos ejemplos prácticos que
1548 creaban nuevos contextos de @code{Staff} y de @code{Voice}, pero para
1549 recordarle cómo se emplean estas instrucciones en la práctica, he aquí
1550 un ejemplo anotado de música real:
1551
1552 @lilypond[quote,verbatim,ragged-right]
1553 \score {  % start of single compound music expression
1554   <<  % start of simultaneous staves section
1555     \time 2/4
1556     \new Staff {  % create RH staff
1557       \clef "treble"
1558       \key g \minor
1559       \new Voice {  % create voice for RH notes
1560         \relative c'' {  % start of RH notes
1561           d4 ees16 c8. |
1562           d4 ees16 c8. |
1563         }  % end of RH notes
1564       }  % end of RH voice
1565     }  % end of RH staff
1566     \new Staff <<  % create LH staff; needs two simultaneous voices
1567       \clef "bass"
1568       \key g \minor
1569       \new Voice {  % create LH voice one
1570         \voiceOne
1571         \relative g {  % start of LH voice one notes
1572           g8 <bes d> ees, <g c> |
1573           g8 <bes d> ees, <g c> |
1574         }  % end of LH voice one notes
1575       }  % end of LH voice one
1576       \new Voice {  % create LH voice two
1577         \voiceTwo
1578         \relative g {  % start of LH voice two notes
1579           g4 ees |
1580           g4 ees |
1581         }  % end of LH voice two notes
1582       }  % end of LH voice two
1583     >>  % end of LH staff
1584   >>  % end of simultaneous staves section
1585 }  % end of single compound music expression
1586 @end lilypond
1587
1588 (Observe cómo todas las instrucciones que abren un bloque con una
1589 llave curva, @code{@{}, o con ángulos dobles, @code{<<}, están
1590 sangrados (tienen un margen adicional) con dos espacios adicionales, y
1591 la llave de cierre correspondiente tiene un margen exactamente igual.
1592 Aunque no es necesario, la observancia de esta práctica reducirá
1593 considerablemente el número de errores de @q{paréntesis
1594 descompensados}, y se recomienda vivamente.  Permite apreciar de un
1595 solo vistazo la estructura de la música, y cualquier paréntesis
1596 descompensado aparecerá con obviedad.  Observe también cómo el
1597 pentagrama de la MI se crea usando dobles ángulos porque requiere dos
1598 voces, mientras que el pentagrama de la MD se crea con una expresión
1599 musical única encerrada entre llaves porque sólo requiere una voz.)
1600
1601
1602 @cindex contextos, nombrado
1603 @cindex nombrar contextos
1604
1605 La instrucción @code{\new} también puede otorgar un nombre
1606 identificativo al contexto para distinguirlo de otros contextos del
1607 mismo tipo:
1608
1609 @example
1610 \new @var{tipo} = @var{identificador} @var{expresión_musical}
1611 @end example
1612
1613 Observe la distinción entre el nombre del tipo de contexto,
1614 @code{Staff}, @code{Voice}, etc., y el nombre identificativo de una
1615 instancia en particular de ese tipo, que puede ser cualquier secuencia
1616 de letras inventada por el usuario.  En el nombre identificativo
1617 también se pueden utilizar dígitos y espacios, pero en este caso aquél
1618 debe ir entre comillas p.ej. @code{\new Staff = "MiPentagrama 1"
1619 @var{expresión_musical}}.  El nombre identificativo se utiliza para
1620 referirnos más tarde a esa instancia en particular de un contexto.
1621 Hemos visto esto en la sección acerca de la letra, en @ref{Voces y música vocal}.
1622
1623
1624 @seealso
1625 Referencia de la notación:
1626 @ruser{Crear y referenciar contextos}.
1627
1628
1629 @node Explicación de los grabadores
1630 @subsection Explicación de los grabadores
1631 @translationof Engravers explained
1632
1633 @cindex grabadores
1634
1635 Todas y cada una de las marcas de la salida impresa de una partitura
1636 hecha con LilyPond está producida por un @code{Engraver} (grabador).
1637 Así, tenemos un grabador para imprimir pentagramas, otro para imprimir
1638 las cabezas de las notas, otro para las plicas, otro para las barras,
1639 etc, etc.  ¡En total hay más de 120 grabadores!  Afortunadamente, para
1640 la mayor parte de las partituras no es necesario conocer más que
1641 algunos, y para partituras sencillas no tenemos que saber nada de
1642 ninguno de ellos.
1643
1644 Los grabadores residen y operan dentro de Contextos.  Los grabadores
1645 como el grabador de la indicación metronómica,
1646 @code{Metronome_mark_engraver}, cuya acción y resultado se aplican a
1647 la partitura como un todo, operan en el contexto del nivel más alto:
1648 el contexto de partitura @code{Score}.
1649
1650 El grabador de la clave @code{Clef_engraver} y el de la armadura
1651 @code{Key_engraver} se encuentran probablemente en todos los contextos
1652 de pentagrama (@code{Staff}), pues los distintos pentagramas podrían
1653 requerir diferentes claves y armaduras.
1654
1655 El grabador de las cabezas de nota @code{Note_heads_engraver} y el de
1656 las plicas @code{Stem_engraver} viven en cada uno de los contextos de
1657 voz @code{Voice}, el contexto de nivel más bajo de todos.
1658
1659 Cada grabador procesa los objetos particulares asociados con su
1660 función, y mantiene las propiedades que están relacionadas con dicha
1661 función.  Estas propiedades, como las que están asociadas con los
1662 contextos, se pueden modificar para cambiar el funcionamiento del
1663 grabador o el aspecto de esos elementos en la partitura impresa.
1664
1665 Todos los grabadores tienen nombres compuestos de varias palabras que
1666 describen su función.  Sólo está en mayúsculas la inicial de la
1667 primera palabra, y el resto se le une mediante guiones bajos.  Así, el
1668 grabador @code{Staff_symbol_engraver} es responsable de la creación de
1669 las líneas del pentagrama, y el @code{Clef_engraver} determina y
1670 establece la altura o el punto de referencia sobre el pentagrama
1671 dibujando un símbolo de clave.
1672
1673 A continuación presentamos algunos de los grabadores más comunes,
1674 junto a su función.  Podrá comprobar que es fácil adivinar la función
1675 a partir del nombre (en inglés), y viceversa.
1676
1677 @multitable @columnfractions .3 .7
1678 @headitem Grabador
1679   @tab Función
1680 @item Accidental_engraver
1681   @tab Hace las alteraciones accidentales, de precaución y de sugerencia.
1682 @item Beam_engraver
1683   @tab Graba las barras
1684 @item Clef_engraver
1685   @tab Graba las claves
1686 @item Completion_heads_engraver
1687   @tab Divide las notas que atraviesan una línea divisoria
1688 @item Dynamic_engraver
1689   @tab Crea reguladores e indicaciones dinámicas textuales
1690 @item Forbid_line_break_engraver
1691   @tab Evita los saltos de línea si queda algún elemento musical activo
1692 @item Key_engraver
1693   @tab Crea la armadura de la tonalidad
1694 @item Metronome_mark_engraver
1695   @tab Graba la indicación metronómica
1696 @item Note_heads_engraver
1697   @tab Graba la cabeza de las notas
1698 @item Rest_engraver
1699   @tab Graba los silencios
1700 @item Staff_symbol_engraver
1701   @tab Graba las cinco líneas (de forma predeterminada) del pentagrama
1702 @item Stem_engraver
1703   @tab Crea las plicas y los trémolos de una sola plica
1704 @item Time_signature_engraver
1705   @tab Crea las indicaciones de compás
1706 @end multitable
1707
1708 @smallspace
1709
1710 Más adelante veremos cómo la salida de LilyPond se puede cambiar
1711 mediante la modificación del funcionamiento de los Grabadores.
1712
1713
1714 @seealso
1715 Referencia de funcionamiento interno:
1716 @rinternals{Engravers and Performers}.
1717
1718
1719 @node Modificar las propiedades de los contextos
1720 @subsection Modificar las propiedades de los contextos
1721 @translationof Modifying context properties
1722
1723 @cindex contexto, propiedades de
1724 @cindex contexto, propiedades de, modificación
1725 @cindex modificar las propiedades de contexto
1726 @funindex \set
1727 @funindex set
1728 @funindex \unset
1729 @funindex unset
1730
1731 Los contextos se responsabilizan de mantener los valores de un cierto
1732 número de @emph{properties} de contexto.  Muchas de ellas se pueden
1733 cambiar para influir en la interpretación del código de entrada y
1734 cambiar así la apariencia de la salida impresa.  Se modifican mediante
1735 la instrucción @code{\set}.  Esta instrucción toma la forma siguiente:
1736
1737 @example
1738 \set @emph{NombreDelContexto}.@emph{nombreDeLaPropiedad} = #@emph{valor}
1739 @end example
1740
1741 Donde el @emph{NombreDelContexto} es normalmente @code{Score},
1742 @code{Staff} o @code{Voice}.  Se puede omitir, en cuyo caso se supone
1743 que es el contexto en curso (normalmente @code{Voice}).
1744
1745 Los nombres de las propiedades de contexto consisten en palabras
1746 unidas sin ningún guión o barra baja, y donde todas las palabras
1747 excepto la primera empiezan en mayúscula.  A continuación podemos ver
1748 algunos ejemplos de nombres de propiedades utilizadas con frecuencia.
1749 Hay muchas más que las que se muestran aquí.
1750
1751 @c attempt to force this onto a new page
1752 @need 50
1753 @multitable @columnfractions .25 .15 .45 .15
1754 @headitem nombreDeLaPropiedad
1755   @tab Tipo
1756   @tab Función
1757   @tab Valor de ejemplo
1758 @item extraNatural
1759   @tab Booleano
1760   @tab Si es verdadero, poner becuadros adicionales antes de las alteraciones
1761   @tab @code{#t}, @code{#f}
1762 @item currentBarNumber
1763   @tab Entero
1764   @tab Ajustar el número del compás actual
1765   @tab @code{50}
1766 @item doubleSlurs
1767   @tab Booleano
1768   @tab Si es verdadero, imprimir ligaduras de expresión por encima y por debajo de las notas
1769   @tab @code{#t}, @code{#f}
1770 @item instrumentName
1771   @tab Texto
1772   @tab Establecer el nombre del pentagrama, situado a la izquierda
1773   @tab @code{"Cello I"}
1774 @item fontSize
1775   @tab Real
1776   @tab Aumentar o disminuir el tamaño de la fuente tipográfica
1777   @tab @code{2.4}
1778 @item stanza
1779   @tab Texto
1780   @tab Establecer el texto que se imprime antes del comienzo de una estrofa
1781   @tab @code{"2"}
1782 @end multitable
1783
1784 @noindent
1785 donde un valor Booleano es verdadero (@code{#t}, True) o falso
1786 (@code{#f}, False), un Entero es un número entero positivo, un número
1787 Real es un número decimal positivo o negativo, y el texto se encierra
1788 entre comillas dobles.  Observe la aparición de signos de cuadradillo,
1789 (@code{#}), en dos lugares diferentes: como parte del valor Booleano
1790 antes de la @code{t} o la @code{f}, y antes del @emph{valor} dentro de
1791 la sentencia @code{\set}.  Así pues, cuando se está escribiendo un
1792 valor Booleano, hay que escribir dos signos de cuadradillo, por
1793 ejemplo: @code{##t}.
1794
1795 @cindex propiedades que funcionan en contextos
1796 @cindex establecer propiedades en contextos
1797
1798 Antes de poder establecer cualquiera de estas propiedades, tenemos que
1799 saber en qué contexto operan.  A veces es algo obvio, pero en
1800 ocasiones puede ser algo enrevesado.  Si especificamos un contexto
1801 equivocado, no se produce ningún mensaje de error, pero el
1802 funcionamiento esperado no tendrá lugar.  Por ejemplo, la propiedad
1803 @code{instrumentName} (nombre del instrumento) vive claramente dentro
1804 del contexto de @code{Staff}, puesto que es el pentagrama el que debe
1805 ser nombrado.  En este ejemplo, el primer pentagrama resulta
1806 etiquetado, pero no el segundo, porque hemos omitido el nombre del
1807 contexto.
1808
1809 @lilypond[quote,verbatim,ragged-right]
1810 <<
1811   \new Staff \relative c'' {
1812     \set Staff.instrumentName = #"Soprano"
1813     c2 c
1814   }
1815   \new Staff \relative c' {
1816     \set instrumentName = #"Alto"  % Wrong!
1817     d2 d
1818   }
1819 >>
1820 @end lilypond
1821
1822 Recuerde que el nombre del contexto predeterminado es @code{Voice},
1823 así que la segunda instrucción @code{\set} establece la propiedad
1824 @code{instrumentName} del contexto @code{Voice} a @qq{Alto}, pero como
1825 LilyPond no busca esta propiedad en el contexto @code{Voice}, no se
1826 realiza ninguna acción.  Esto no es un error, y no se registra ningún
1827 mensaje en el archivo Log de registro de errores.
1828
1829 De forma parecida, si el nombre de la propiedad se escribe con alguna
1830 falta, no se produce ningún mensaje de error, y claramente la acción
1831 esperada no puede tener lugar.  De hecho, se puede establecer
1832 cualquier @q{property} (ficticia) usando cualquier nombre que queramos
1833 en cualquier contexto que exista, mediante el uso de la instrucción
1834 @code{\set}.  Pero si el nombre no es conocido para LilyPond, no
1835 producirá ninguna acción.  Algunos editores de texto que apoyan a los
1836 archivos de entrada de LilyPond de manera especial, documentan los
1837 nombres de propiedades con viñetas cuando pasamos sobre ellos con el
1838 puntero del ratón, como JEdit con la extensión LilyPondTool, o
1839 resaltan los nombres de propiedades desconocidas de manera diferente,
1840 como ConTEXT.  Si no se utiliza un editor con tales posibilidades, se
1841 recomienda comprobar la corrección del nombre de la propiedad en el
1842 manual de Referencia de funcionamiento interno: véase
1843 @rinternals{Tunable context properties} o @rinternals{Contexts}.
1844
1845 La propiedad @code{instrumentName} tendrá efecto solamente si se
1846 establece dentro del contexto @code{Staff}, pero algunas propiedades
1847 se pueden establecer en más de un contexto.  Por ejemplo, la propiedad
1848 @code{extraNatural} está establecida por defecto al valor @code{##t}
1849 (verdadero) para todos los pentagramas.  Si se establece a @code{##f}
1850 (falso) en un contexto de @code{Staff} determinado, se aplicará
1851 solamente a las alteraciones de ese pentagrama.  Si se establece a
1852 falso en el contexto de la partitura, @code{Score}, se aplicará a
1853 todos los pentagramas.
1854
1855 Así, esto desactivará los becuadros adicionales en un pentagrama:
1856
1857 @lilypond[quote,verbatim,ragged-right]
1858 <<
1859   \new Staff \relative c'' {
1860     aeses2 aes
1861   }
1862   \new Staff \relative c'' {
1863     \set Staff.extraNatural = ##f
1864     aeses2 aes
1865   }
1866 >>
1867 @end lilypond
1868
1869 @noindent
1870 y esto los desactivará en todos los pentagramas:
1871
1872 @lilypond[quote,verbatim,ragged-right]
1873 <<
1874   \new Staff \relative c'' {
1875     aeses2 aes
1876   }
1877   \new Staff \relative c'' {
1878     \set Score.extraNatural = ##f
1879     aeses2 aes
1880   }
1881 >>
1882 @end lilypond
1883
1884 Como un ejemplo más, si se establece @code{clefTransposition} dentro del
1885 contexto de @code{Score}, éste cambia inmediatamente el valor de la
1886 transposición en todos los pentagramas en curso y establece un nuevo
1887 valor predeterminado que se aplicará a todos los pentagramas.
1888
1889 La instrucción opuesta, @code{\unset}, tiene el efecto de suprimir la
1890 propiedad del contexto, lo que ocasiona que la mayoría de las
1891 propiedades vuelvan a su valor predeterminado.  Normalmente no es
1892 necesario el uso de @code{\unset}, pues una nueva instrucción
1893 @code{\set} hará el ajuste deseado.
1894
1895 Las instrucciones @code{\set} y @code{\unset} pueden aparecer en
1896 cualquier lugar del archivo de entrada y tendrán efecto a partir del
1897 tiempo en que se encuentran y hasta el final de la partitura o hasta
1898 que la propiedad se establezca de nuevo mediante @code{\set} o
1899 @code{\unset}.  Probemos a modificar el tamaño de la fuente
1900 tipográfica, lo que afecta al tamaño de las cabezas de las notas
1901 (entre otras cosas) varias veces.  El cambio se toma a partir del
1902 valor predeterminado, no el valor en curso.
1903
1904 @lilypond[quote,verbatim,ragged-right,relative=1]
1905 c4 d
1906 % make note heads smaller
1907 \set fontSize = #-4
1908 e4 f |
1909 % make note heads larger
1910 \set fontSize = #2.5
1911 g4 a
1912 % return to default size
1913 \unset fontSize
1914 b4 c |
1915 @end lilypond
1916
1917 Hemos podido ver cómo establecer los valores de diversos tipos de
1918 propiedad diferentes.  Observe que los números enteros y reales van
1919 siempre precedidos de un símbolo de cuadradillo, @code{#}, mientras
1920 que un valor booleano verdadero o falso se especifica mediante
1921 @code{##t} y @code{##f}, con dos cuadradillos.  Una propiedad de texto
1922 se debe encerrar entre comillas dobles, como antes, aunque veremos más
1923 adelante que el texto realmente se puede especificar de una forma
1924 mucho más general utilizando la potentísima instrucción @code{markup}.
1925
1926 @subsubheading Cambiar las propiedades de un contexto con @code{\with}
1927
1928 @funindex \with
1929 @funindex with
1930 @cindex contexto, propiedades de, establecimiento con \with
1931
1932 El valor predeterminado de las propiedades de contexto se puede establecer en el momento
1933 en que se crea el contexto.  A veces esta forma de establecer el valor
1934 de una propiedad es mucho más clara, si ha de quedar fijo durante todo
1935 el tiempo que dure el contexto.  Cuando se crea un contexto con una
1936 instrucción @code{\new} puede ir inmediatamente seguido de un bloque
1937 @code{\with @{ @dots{} @}} en el que se establecen los valores predeterminados de las
1938 propiedades.  Por ejemplo, si queremos suprimir la impresión de
1939 becuadros adicionales para toda la duración de un pentagrama, podemos
1940 escribir:
1941
1942 @example
1943 \new Staff \with @{ extraNatural = ##f @}
1944 @end example
1945
1946 @noindent
1947 de la siguiente forma:
1948
1949 @lilypond[quote,verbatim,ragged-right]
1950 <<
1951   \new Staff {
1952     \relative c'' {
1953       gisis4 gis aeses aes
1954     }
1955   }
1956   \new Staff \with { extraNatural = ##f } {
1957     \relative c'' {
1958       gisis4 gis aeses aes
1959     }
1960   }
1961 >>
1962 @end lilypond
1963
1964 Las propiedades ajustadas de esta manera aún pueden cambiarse
1965 dinámicamente utilizando @code{\set} y ser devueltas al valor
1966 predeterminados que se estableció en el bloque @code{\with} mediante
1967 @code{\unset}.
1968
1969 @cindex fontSize (tamaño de la tipografía)
1970 @cindex fuente, tamaño de la
1971 @cindex tamaño de la fuente
1972
1973 Así pues, si la propiedad @code{fontSize} se ajusta dentro de una
1974 cláusula @code{\with}, tiene el efecto de reiniciar el valor
1975 predeterminado del tamaño de la fuente tipográfica.  Si más tarde se
1976 modifica con @code{\set}, este nuevo valor predeterminado puede
1977 restablecerse con la instrucción @code{\unset fontSize}.
1978
1979 @subsubheading Cambiar las propiedades de un contexto con @code{\context}
1980
1981 @cindex contextos, establecer propiedades de, con \context
1982 @funindex \context
1983 @funindex context
1984
1985 Los valores de propiedad de los contextos se pueden establecer para
1986 @emph{todos} los contextos de un tipo determinado, como por ejemplo
1987 todos los contextos de @code{Staff}, con una única instrucción.  El
1988 tipo de contexto se identifica mediante la utilización del nombre de
1989 su tipo, como @code{Staff}, precedido de una barra invertida:
1990 @code{\Staff}.  El enunciado que establece el valor de la propiedad es
1991 el mismo que el que está en un bloque @code{\with}, presentado
1992 anteriormente.  Se coloca en un bloque @code{\context} dentro de un
1993 bloque @code{\layout}.  Cada bloque @code{\context} afecta a todos los
1994 contextos del tipo especificado a lo largo del bloque @code{\score} o
1995 @code{\book} en el que aparece el bloque @code{\layout}.  A
1996 continuación presentamos un ejemplo que muestra el formato:
1997
1998 @lilypond[verbatim,quote]
1999 \score {
2000   \new Staff {
2001     \relative c'' {
2002       cisis4 e d cis
2003     }
2004   }
2005   \layout {
2006     \context {
2007       \Staff
2008       extraNatural = ##t
2009     }
2010   }
2011 }
2012 @end lilypond
2013
2014 Si se quiere aplicar la sobreescritura de propiedades a todos los
2015 pentagramas de la partitura:
2016
2017 @lilypond[quote,verbatim]
2018 \score {
2019   <<
2020     \new Staff {
2021       \relative c'' {
2022         gisis4 gis aeses aes
2023       }
2024     }
2025     \new Staff {
2026       \relative c'' {
2027         gisis4 gis aeses aes
2028       }
2029     }
2030   >>
2031   \layout {
2032     \context {
2033       \Score extraNatural = ##f
2034     }
2035   }
2036 }
2037 @end lilypond
2038
2039 @noindent
2040 Las propiedades de contexto establecidas de esta forma se pueden
2041 sobreescribir para ejemplares concretos de contextos mediante
2042 enunciados dentro de un bloque @code{\with}, y mediante instrucciones
2043 @code{\set} intercaladas dentro de enunciados musicales.
2044
2045
2046 @seealso
2047 Referencia de la notación:
2048 @ruser{Cambiar los valores por omisión de los contextos},
2049 @c FIXME
2050 @c uncomment when backslash-node-name issue is resolved -pm
2051 @ruser{La instrucción set}.
2052
2053 Referencia de funcionamiento interno:
2054 @rinternals{Contexts},
2055 @rinternals{Tunable context properties}.
2056
2057
2058 @node Añadir y eliminar grabadores
2059 @subsection Añadir y eliminar grabadores
2060 @translationof Adding and removing engravers
2061
2062 @cindex grabadores, adición
2063 @cindex grabadores, eliminación
2064 @cindex adición de grabadores
2065 @cindex eliminación de grabadores
2066
2067 @funindex \consists
2068 @funindex consists
2069 @funindex \remove
2070 @funindex remove
2071
2072 Hemos visto que cada uno de los contextos contiene varios grabadores,
2073 cada uno de los cuales a su vez es responsable de la producción de una
2074 fracción particular del resultado impreso, como líneas divisorias,
2075 pentagramas, cabezas, plicas, etc.  Si un grabador es eliminado de un
2076 contexto, ya no podrá producir su salida impresa.  Es una forma algo
2077 radical de modificar la salida, pero a veces puede ser útil.
2078
2079 @subsubheading Cambiar un solo contexto
2080
2081 Para eliminar un grabador de un contexto único, usamos la instrucción
2082 @code{\with} situada inmediatamente después de la instrucción que crea
2083 el contexto, como en la sección anterior.
2084
2085 Como ilustración, repitamos un ejemplo extraído de la sección anterior
2086 con las líneas del pentagrama eliminadas.  Recuerde que las líneas del
2087 pentagrama están dibujadas por el grabador
2088 @code{Staff_symbol_engraver}.
2089
2090 @lilypond[quote,verbatim,ragged-right]
2091 \new Staff \with {
2092   \remove "Staff_symbol_engraver"
2093 }
2094 \relative c' {
2095   c4 d
2096   \set fontSize = #-4  % make note heads smaller
2097   e4 f |
2098   \set fontSize = #2.5  % make note heads larger
2099   g4 a
2100   \unset fontSize  % return to default size
2101   b4 c |
2102 }
2103 @end lilypond
2104
2105 @cindex ámbito, grabador del
2106
2107 Los grabadores también se pueden añadir a los contextos individuales
2108 La instrucción que lo hace es
2109
2110 @code{\consists @var{Nombre_del_grabador}},
2111
2112 situada dentro de un bloque @code{\with}.  Ciertas partituras vocales
2113 tienen una indicación de ámbito o tesitura situada al principio del
2114 pentagrama para indicar el ámbito de notas en dicho pentagrama, véase
2115 @rglos{ambitus}.  El ambitus se produce por parte del grabador
2116 @code{Ambitus_engraver}, que normalmente no está incluido en ningún
2117 contexto.  Si lo añadimos al contexto @code{Voice}, calcula el rango a
2118 partir de esa única voz:
2119
2120 @lilypond[quote,verbatim,ragged-right]
2121 \new Staff <<
2122   \new Voice \with {
2123     \consists "Ambitus_engraver"
2124   } {
2125     \relative c'' {
2126       \voiceOne
2127       c4 a b g
2128     }
2129   }
2130   \new Voice {
2131     \relative c' {
2132       \voiceTwo
2133       c4 e d f
2134     }
2135   }
2136 >>
2137 @end lilypond
2138
2139 @noindent
2140 pero si añadimos el grabador de ámbito al contexto de @code{Staff},
2141 calcula el rango de todas las notas en todas las voces de ese
2142 pentagrama:
2143
2144 @lilypond[quote,verbatim,ragged-right]
2145 \new Staff \with {
2146   \consists "Ambitus_engraver"
2147 }
2148 <<
2149   \new Voice {
2150     \relative c'' {
2151       \voiceOne
2152       c4 a b g
2153     }
2154   }
2155   \new Voice {
2156     \relative c' {
2157       \voiceTwo
2158       c4 e d f
2159     }
2160   }
2161 >>
2162 @end lilypond
2163
2164 @subsubheading Cambiar todos los contextos del mismo tipo
2165
2166 @funindex \layout
2167 @funindex layout
2168
2169 Los ejemplos anteriores muestran la manera de eliminar o añadir
2170 grabadores a los contextos individuales.  También es posible eliminar
2171 o añadir grabadores a todos los contextos de un tipo específico,
2172 situando las instrucciones en el contexto correspondiente dentro de un
2173 bloque @code{\layout}.  Por ejemplo, si queremos mostrar los rangos de
2174 tesitura para todos los pentagramas de una partitura de cuatro pautas,
2175 podemos escribir
2176
2177 @lilypond[quote,verbatim,ragged-right]
2178 \score {
2179   <<
2180     \new Staff {
2181       \relative c'' {
2182         c4 a b g
2183       }
2184     }
2185     \new Staff {
2186       \relative c' {
2187         c4 a b g
2188       }
2189     }
2190     \new Staff {
2191       \clef "G_8"
2192       \relative c' {
2193         c4 a b g
2194       }
2195     }
2196     \new Staff {
2197       \clef "bass"
2198       \relative c {
2199         c4 a b g
2200       }
2201     }
2202   >>
2203   \layout {
2204     \context {
2205       \Staff
2206       \consists "Ambitus_engraver"
2207     }
2208   }
2209 }
2210 @end lilypond
2211
2212 @noindent
2213 Los valores predeterminados de las propiedades de los contextos
2214 también se pueden establecer para todos los contextos de un tipo en
2215 particular incluyendo la instrucción @code{\set} dentro de un bloque
2216 @code{\context} de la misma forma.
2217
2218
2219 @seealso
2220 Referencia de la notación:
2221 @ruser{Modificar los complementos (plug-ins) de contexto},
2222 @ruser{Cambiar los valores por omisión de los contextos}.
2223
2224 @knownissues
2225 Los grabadores @code{Stem_engraver} y @code{Beam_engraver}
2226 (de plica y de barra) adjuntan a la cabeza de las notas
2227 los objetos que crean.  Si se suprime el grabador de cabezas de nota
2228 @code{Note_heads_engraver}, no se produce ninguna cabeza y por tanto
2229 no se crean tampoco plicas ni barras.
2230
2231
2232 @node Extender las plantillas
2233 @section Extender las plantillas
2234 @translationof Extending the templates
2235
2236 Ha leído el tutorial y ahora sabe escribir música.  Pero ¿cómo puede
2237 poner los pentagramas que quiere?  Las plantillas están muy bien, pero
2238 ¿qué ocurre si quiere algo que no está en una de ellas?  Bien, puede
2239 encontrar montañas de plantillas (véase @ref{Plantillas}) que le pueden
2240 servir como punto de partida.  Pero ¿y si quiere algo que no está
2241 contemplado aquí? Continúe leyendo.
2242
2243
2244 @menu
2245 * Soprano y violoncello::
2246 * Partitura vocal a cuatro voces SATB::
2247 * Crear una partitura partiendo de cero::
2248 * Ahorrar tecleo mediante variables y funciones::
2249 * Partituras y particellas::
2250 @end menu
2251
2252 @node Soprano y violoncello
2253 @subsection Soprano y violoncello
2254 @translationof Soprano and cello
2255
2256 @cindex plantilla, modificar
2257 @cindex modificar plantillas
2258
2259 Para empezar, tome la plantilla que le parezca más parecida a aquello
2260 que quiere conseguir.  Digamos que quiere escribir algo para soprano y
2261 cello.  En este caso comenzaríamos con la plantilla @q{Notas y letra}
2262 (para la parte de soprano).
2263
2264 @example
2265 \version @w{"@version{}"}
2266 melodia = \relative c' @{
2267   \clef "treble"
2268   \key c \major
2269   \time 4/4
2270   a4 b c d
2271 @}
2272
2273 texto = \lyricmode @{
2274   Aaa Bee Cee Dee
2275 @}
2276
2277 \score @{
2278   <<
2279     \new Voice = "uno" @{
2280       \autoBeamOff
2281       \melodia
2282     @}
2283     \new Lyrics \lyricsto "uno" \texto
2284   >>
2285   \layout @{ @}
2286   \midi @{ @}
2287 @}
2288 @end example
2289
2290 Ahora queremos añadir una parte de violoncello.  Veamos el ejemplo
2291 @q{Sólo notas}:
2292
2293 @example
2294 \version @w{"@version{}"}
2295 melodia = \relative c' @{
2296   \clef "treble"
2297   \key c \major
2298   \time 4/4
2299   a4 b c d
2300 @}
2301
2302 \score @{
2303   \new Staff \melodia
2304   \layout @{ @}
2305   \midi @{ @}
2306 @}
2307 @end example
2308
2309 No necesitamos dos instrucciones @code{\version}.  Vamos a necesitar
2310 la sección @code{melodia}.  No queremos dos secciones @code{\score}
2311 (si tuviésemos dos @code{\score}s, acabaríamos con las dos particellas
2312 por separado.  Queremos las dos juntas, como un dúo.  Dentro de la
2313 sección @code{\score}, no nos hacen falta dos @code{\layout} ni dos
2314 @code{\midi}.
2315
2316 Si nos limitásemos a copiar y pegar la sección @code{melodia},
2317 acabaríamos con dos secciones @code{melodia} separadas, así que vamos
2318 a cambiarles el nombre.  Llamaremos @code{musicaSoprano} a la sección
2319 de la soprano y @code{musicaCello} a la sección del violoncello.  Al
2320 mismo tiempo cambiaremos el nombre de @code{texto} a
2321 @code{letraSoprano}.  Recuerde cambiar el nombre a las dos apariciones
2322 de todos estos nombres -- tanto la definición inicial (la parte
2323 @code{melodia = relative c' @{ }) -- como el uso de ese nombre (en la
2324 sección @code{\score}).
2325
2326 También aprovecharemos para cambiar el pentagrama de la parte del
2327 cello (los violoncellos se escriben normalmente en clave de Fa).
2328 Asimismo, cambiaremos algunas notas del cello.
2329
2330 @example
2331 \version @w{"@version{}"}
2332 musicaSoprano = \relative c' @{
2333   \clef "treble"
2334   \key c \major
2335   \time 4/4
2336   a4 b c d
2337 @}
2338
2339 letraSoprano = \lyricmode @{
2340   Aaa Bee Cee Dee
2341 @}
2342
2343 musicaCello = \relative c @{
2344   \clef "bass"
2345   \key c \major
2346   \time 4/4
2347   d4 g fis8 e d4
2348 @}
2349
2350 \score@{
2351   <<
2352     \new Voice = "uno" @{
2353       \autoBeamOff
2354       \musicaSoprano
2355     @}
2356     \new Lyrics \lyricsto "uno" \letraSoprano
2357   >>
2358   \layout @{ @}
2359   \midi @{ @}
2360 @}
2361 @end example
2362
2363 Esto tiene una apariencia prometedora, pero la parte del cello no sale
2364 en la partitura (no la hemos puesto en la sección @code{\score}).  Si
2365 queremos que la parte del cello aparezca debajo de la de soprano,
2366 tenemos que añadir
2367
2368 @example
2369 \new Staff \musicaCello
2370 @end example
2371
2372 @noindent
2373 justo debajo de todo lo de la soprano.  También tenemos que poner
2374 @code{<<} y @code{>>} antes y después de la música -- lo que indica a
2375 LilyPond que hay más de una cosa (en este caso, @code{Staff})
2376 sucediendo al mismo tiempo --.  La @code{\score} se parecerá ahora a
2377 esto:
2378
2379 @c Indentation in this example is deliberately poor
2380 @example
2381 \score @{
2382   <<
2383   <<
2384     \new Voice = "uno" @{
2385       \autoBeamOff
2386       \sopranoMusic
2387     @}
2388     \new Lyrics \lyricsto "uno" \letraSoprano
2389   >>
2390   \new Staff \musicaCello
2391   >>
2392   \layout @{ @}
2393   \midi @{ @}
2394 @}
2395 @end example
2396
2397 @noindent
2398 Esto parece un poco enrevesado; los márgenes están descuadrados.  Esto
2399 tiene fácil solución.  Presentamos aquí la plantilla completa para
2400 soprano y cello.
2401
2402 @lilypond[quote,verbatim,ragged-right,addversion]
2403 sopranoMusic = \relative c' {
2404   \clef "treble"
2405   \key c \major
2406   \time 4/4
2407   a4 b c d
2408 }
2409
2410 sopranoLyrics = \lyricmode {
2411   Aaa Bee Cee Dee
2412 }
2413
2414 celloMusic = \relative c {
2415   \clef "bass"
2416   \key c \major
2417   \time 4/4
2418   d4 g fis8 e d4
2419 }
2420
2421 \score {
2422   <<
2423     <<
2424       \new Voice = "one" {
2425         \autoBeamOff
2426         \sopranoMusic
2427       }
2428       \new Lyrics \lyricsto "one" \sopranoLyrics
2429     >>
2430     \new Staff \celloMusic
2431   >>
2432   \layout { }
2433   \midi { }
2434 }
2435 @end lilypond
2436
2437
2438 @seealso
2439 Las plantillas de inicio se pueden encontrar en el apéndice
2440 @q{Plantillas}, véase @ref{Plantillas de pentagrama único}.
2441
2442
2443 @node Partitura vocal a cuatro voces SATB
2444 @subsection Partitura vocal a cuatro voces SATB
2445 @translationof Four-part SATB vocal score
2446
2447 La mayor parte de las partituras vocales escritas para coro mixto a
2448 cuatro voces con acompañamiento orquestal, como el «Elías» de
2449 Mendelssohn o el «Mesías» de Haendel, tienen la música coral y la
2450 letra en cuatro pentagramas para S, A, T y B, respectivamente, con una
2451 reducción de piano del acompañamiento de orquesta, por debajo. He aquí
2452 un ejemplo del «Mesías» de Haendel:
2453
2454 @c The following should appear as music without code
2455 @lilypond[quote,ragged-right]
2456 global = { \key d \major \time 4/4 }
2457
2458 sopranoMusic = \relative c'' {
2459   \clef "treble"
2460   r4 d2 a4 | d4. d8 a2 | cis4 d cis2 |
2461 }
2462 sopranoWords = \lyricmode {
2463   Wor -- thy | is the lamb | that was slain |
2464 }
2465
2466 altoMusic = \relative a' {
2467   \clef "treble"
2468   r4 a2 a4 | fis4. fis8 a2 | g4 fis e2 |
2469 }
2470 altoWords = \sopranoWords
2471
2472 tenorMusic = \relative c' {
2473   \clef "G_8"
2474   r4 fis2 e4 | d4. d8 d2 | e4 a, cis2 |
2475 }
2476 tenorWords = \sopranoWords
2477
2478 bassMusic = \relative c' {
2479   \clef "bass"
2480   r4 d2 cis4 | b4. b8 fis2 | e4 d a'2 |
2481 }
2482 bassWords = \sopranoWords
2483
2484 upper = \relative a' {
2485   \clef "treble"
2486   \global
2487   r4 <a d fis>2 <a e' a>4 |
2488   <d fis d'>4. <d fis d'>8 <a d a'>2 |
2489   <g cis g'>4 <a d fis> <a cis e>2 |
2490 }
2491
2492 lower = \relative c, {
2493   \clef "bass"
2494   \global
2495   <d d'>4 <d d'>2 <cis cis'>4 |
2496   <b b'>4. <b' b'>8 <fis fis'>2 |
2497   <e e'>4 <d d'> <a' a'>2 |
2498 }
2499
2500 \score {
2501   <<  % combine ChoirStaff and PianoStaff in parallel
2502     \new ChoirStaff <<
2503       \new Staff = "sopranos" <<
2504         \set Staff.instrumentName = #"Soprano"
2505         \new Voice = "sopranos" {
2506           \global
2507           \sopranoMusic
2508         }
2509       >>
2510       \new Lyrics \lyricsto "sopranos" {
2511         \sopranoWords
2512       }
2513       \new Staff = "altos" <<
2514         \set Staff.instrumentName = #"Alto"
2515         \new Voice = "altos" {
2516           \global
2517           \altoMusic
2518         }
2519       >>
2520       \new Lyrics \lyricsto "altos" { \altoWords }
2521       \new Staff = "tenors" <<
2522         \set Staff.instrumentName = #"Tenor"
2523         \new Voice = "tenors" {
2524           \global
2525           \tenorMusic
2526         }
2527       >>
2528       \new Lyrics \lyricsto "tenors" { \tenorWords }
2529       \new Staff = "basses" <<
2530         \set Staff.instrumentName = #"Bass"
2531         \new Voice = "basses" {
2532           \global
2533           \bassMusic
2534         }
2535       >>
2536       \new Lyrics \lyricsto "basses" {
2537         \bassWords
2538       }
2539     >>  % end ChoirStaff
2540     \new PianoStaff <<
2541       \set PianoStaff.instrumentName = #"Piano"
2542       \new Staff = "upper" \upper
2543       \new Staff = "lower" \lower
2544     >>
2545   >>
2546 }
2547 @end lilypond
2548
2549 Ninguna de las plantillas proporciona esta disposición con exactitud.
2550 La más parecida es @ref{Partitura vocal SATB y reducción para piano automática},
2551 pero necesitamos cambiar la
2552 disposición y añadir un acompañamiento de piano que no esté derivado
2553 automáticamente de las partes vocales.  Las variables que contienen la
2554 música y la letra de las partes vocales es adecuada, pero tendremos
2555 que añadir variables para la reducción de piano.
2556
2557 El orden en que aparecen los contextos en el ChoirStaff de la
2558 plantilla no se corresponde con el orden de la partitura vocal que
2559 hemos mostrado más arriba.  Tenemos que reordenarlas para que haya
2560 cuatro pentagramas con la letra escrita directamente bajo las notas de
2561 cada parte.  Todas las voces deben ser @code{\voiceOne}, que es la
2562 predeterminada, para que las instrucciones @code{\voiceXXX} se puedan
2563 eliminar.  También tenemos que especificar la clave de tenor (clave de
2564 sol octava baja) en las partes de tenor.  Aún no hemos encontrado la
2565 forma en que la letra se especifica en la plantilla, así que tenemos
2566 que utilizar el método que nos resulta familiar.  También tenemos que
2567 escribir los nombres de cada pentagrama.
2568
2569 Al hacerlo así obtenemos el ChoirStaff siguiente:
2570
2571 @example
2572 \new ChoirStaff <<
2573   \new Staff = "sopranos" <<
2574     \set Staff.instrumentName = #"Soprano"
2575     \new Voice = "sopranos" @{
2576       \global
2577       \musicaSoprano
2578     @}
2579   >>
2580   \new Lyrics \lyricsto "sopranos" @{
2581     \letraSoprano
2582   @}
2583   \new Staff = "altos" <<
2584     \set Staff.instrumentName = #"Alto"
2585     \new Voice = "altos" @{
2586       \global
2587       \musicaAlto
2588     @}
2589   >>
2590   \new Lyrics \lyricsto "altos" @{
2591     \letraAlto
2592   @}
2593   \new Staff = "tenors" <<
2594     \set Staff.instrumentName = #"Tenor"
2595     \new Voice = "tenors" @{
2596       \global
2597       \musicaTenor
2598     @}
2599   >>
2600   \new Lyrics \lyricsto "tenors" @{
2601     \letraTenor
2602   @}
2603   \new Staff = "bajos" <<
2604     \set Staff.instrumentName = #"Bajo"
2605     \new Voice = "bajos" @{
2606       \global
2607       \musicaBajo
2608     @}
2609   >>
2610   \new Lyrics \lyricsto "bajos" @{
2611     \letraBajo
2612   @}
2613 >>  % fin del ChoirStaff
2614 @end example
2615
2616 A continuación debemos trabajar sobre la parte de piano.  Es fácil:
2617 tan sólo hay que sacar la parte de piano de la plantilla de @q{Piano
2618 solista}:
2619
2620 @example
2621 \new PianoStaff <<
2622   \set PianoStaff.instrumentName = #"Piano"
2623   \new Staff = "superior" \superior
2624   \new Staff = "inferior" \inferior
2625 >>
2626 @end example
2627
2628 y escribir las definiciones de variable para @code{superior} e
2629 @code{inferior}.
2630
2631 Los grupos ChoirStaff y PianoStaff se deben combinar utilizando
2632 ángulos dobles, ya queremos apilarlos unos sobre otros:
2633
2634 @example
2635 <<  % combinar los grupos ChoirStaff y PianoStaff uno sobre el otro
2636   \new ChoirStaff <<
2637     \new Staff = "sopranos" <<
2638       \new Voice = "sopranos" @{
2639         \global
2640         \musicaSoprano
2641       @}
2642     >>
2643     \new Lyrics \lyricsto "sopranos" @{
2644       \letraSoprano
2645      @}
2646     \new Staff = "altos" <<
2647       \new Voice = "altos" @{
2648         \global
2649         \musicaAlto
2650       @}
2651     >>
2652     \new Lyrics \lyricsto "altos" @{
2653       \letraAlto
2654     @}
2655     \new Staff = "tenores" <<
2656       \clef "G_8"  % clave de tenor
2657       \new Voice = "tenores" @{
2658         \global
2659         \musicaTenor
2660       @}
2661     >>
2662     \new Lyrics \lyricsto "tenores" @{
2663       \letraTenor
2664     @}
2665     \new Staff = "bajos" <<
2666       \clef "bass"
2667       \new Voice = "bajos" @{
2668         \global
2669         \musicaBajo
2670       @}
2671     >>
2672     \new Lyrics \lyricsto "bajos" @{
2673       \letraBajo
2674     @}
2675   >>  % fin del ChoirStaff
2676
2677   \new PianoStaff <<
2678     \set PianoStaff.instrumentName = #"Piano"
2679     \new Staff = "upper" \upper
2680     \new Staff = "lower" \lower
2681   >>
2682 >>
2683 @end example
2684
2685 Al combinar todo esto junto y escribir la música de los tres compases
2686 del ejemplo anterior, obtenemos:
2687
2688 @lilypond[quote,verbatim,ragged-right,addversion]
2689 global = { \key d \major \time 4/4 }
2690 sopranoMusic = \relative c'' {
2691   \clef "treble"
2692   r4 d2 a4 | d4. d8 a2 | cis4 d cis2 |
2693 }
2694 sopranoWords = \lyricmode {
2695   Wor -- thy | is the lamb | that was slain |
2696 }
2697 altoMusic = \relative a' {
2698   \clef "treble"
2699   r4 a2 a4 | fis4. fis8 a2 | g4 fis fis2 |
2700 }
2701 altoWords = \sopranoWords
2702 tenorMusic = \relative c' {
2703   \clef "G_8"
2704   r4 fis2 e4 | d4. d8 d2 | e4 a, cis2 |
2705 }
2706 tenorWords = \sopranoWords
2707 bassMusic = \relative c' {
2708   \clef "bass"
2709   r4 d2 cis4 | b4. b8 fis2 | e4 d a'2 |
2710 }
2711 bassWords = \sopranoWords
2712 upper = \relative a' {
2713   \clef "treble"
2714   \global
2715   r4 <a d fis>2 <a e' a>4 |
2716   <d fis d'>4. <d fis d'>8 <a d a'>2 |
2717   <g cis g'>4 <a d fis> <a cis e>2 |
2718 }
2719 lower = \relative c, {
2720   \clef "bass"
2721   \global
2722   <d d'>4 <d d'>2 <cis cis'>4 |
2723   <b b'>4. <b' b'>8 <fis fis'>2 |
2724   <e e'>4 <d d'> <a' a'>2 |
2725 }
2726
2727 \score {
2728   <<  % combine ChoirStaff and PianoStaff in parallel
2729     \new ChoirStaff <<
2730       \new Staff = "sopranos" <<
2731         \set Staff.instrumentName = #"Soprano"
2732         \new Voice = "sopranos" {
2733           \global
2734           \sopranoMusic
2735         }
2736       >>
2737       \new Lyrics \lyricsto "sopranos" {
2738         \sopranoWords
2739       }
2740       \new Staff = "altos" <<
2741         \set Staff.instrumentName = #"Alto"
2742         \new Voice = "altos" {
2743           \global
2744           \altoMusic
2745         }
2746       >>
2747       \new Lyrics \lyricsto "altos" {
2748         \altoWords
2749       }
2750       \new Staff = "tenors" <<
2751         \set Staff.instrumentName = #"Tenor"
2752         \new Voice = "tenors" {
2753           \global
2754           \tenorMusic
2755         }
2756       >>
2757       \new Lyrics \lyricsto "tenors" {
2758         \tenorWords
2759       }
2760       \new Staff = "basses" <<
2761         \set Staff.instrumentName = #"Bass"
2762         \new Voice = "basses" {
2763           \global
2764           \bassMusic
2765         }
2766       >>
2767       \new Lyrics \lyricsto "basses" {
2768         \bassWords
2769       }
2770     >>  % end ChoirStaff
2771
2772     \new PianoStaff <<
2773       \set PianoStaff.instrumentName = #"Piano  "
2774       \new Staff = "upper" \upper
2775       \new Staff = "lower" \lower
2776     >>
2777   >>
2778 }
2779 @end lilypond
2780
2781
2782 @node Crear una partitura partiendo de cero
2783 @subsection Crear una partitura partiendo de cero
2784 @translationof Building a score from scratch
2785
2786 @cindex plantilla, escribir su propia
2787 @cindex ejemplo de escritura de una partitura
2788 @cindex escribir una partitura, ejemplo
2789 @cindex partitura, ejemplo de escritura
2790
2791 Después de adquirir algo de soltura en la escritura del código de
2792 LilyPond, se dará cuenta de que es más fácil construir completamente
2793 una partitura partiendo de cero, que modificar una plantilla.  También
2794 puede desarrollar su propio estilo de forma que se adapte al tipo de
2795 música que le apetezca.  Veamos a continuación cómo confeccionar una
2796 partitura para un preludio de órgano, como ejemplo.
2797
2798 Comenzamos con una sección para el encabezamiento.  Aquí es donde van
2799 el título, nombre del compositor, etc., después van las definiciones
2800 de las variables, y finalmente el bloque de partitura.  Comencemos a
2801 verlas por encima y más tarde completaremos los detalles.
2802
2803 Utilizaremos los dos primeros compases del preludio de Bach basado en
2804 @emph{Jesu, meine Freude}, que está escrito para órgano con dos
2805 manuales y pedal.  Tiene estos dos compases de música al final de la
2806 sección.  La parte del manual superior tiene dos voces, y el inferior
2807 y el pedal, una voz cada uno.  Así pues, necesitamos cuatro
2808 definiciones para la música y una más para definir el compás y la
2809 tonalidad:
2810
2811 @example
2812 \version @w{"@version{}"}
2813 \header @{
2814   title = "Jesu, meine Freude"
2815   composer = "J S Bach"
2816 @}
2817 keyTime = @{ \key c \minor \time 4/4 @}
2818 MusicaManualUnoVozUno = @{ s1 @}
2819 MusicaManualUnoVozDos = @{ s1 @}
2820 MusicaManualDos = @{ s1 @}
2821 MusicaPedal = @{ s1 @}
2822
2823 \score @{
2824 @}
2825 @end example
2826
2827 Por el momento hemos escrito tan sólo una nota espaciadora, @code{s1},
2828 en lugar de la música de verdad.  La añadiremos más adelante.
2829
2830 A continuación veamos qué va en el bloque de partitura.
2831 Sencillamente, reflejaremos la estructura de pentagramas que deseemos.
2832 La música de órgano se escribe por lo general en tres pentagramas, uno
2833 para cada uno de los manuales y otro para el pedal.  Los pentagramas
2834 de los manuales se abarcan con una llave, así que los incluiremos en
2835 un grupo PianoStaff.  La primera parte de manual tiene dos voces, y la
2836 segunda sólo una.
2837
2838 @example
2839 \new PianoStaff <<
2840   \new Staff = "ManualUno" <<
2841     \new Voice @{
2842       \MusicaManualUnoVozUno
2843     @}
2844     \new Voice @{
2845       \MusicaManualUnoVozDos
2846     @}
2847   >>  % fin del contexto de Staff ManualUno
2848   \new Staff = "ManualDos" <<
2849     \new Voice @{
2850       \MusicaManualDos
2851     @}
2852   >>  % fin del contexto de Staff ManualDos
2853 >>  % fin del contexto de PianoStaff
2854 @end example
2855
2856 Después, tenemos que añadir un pentagrama para el órgano de pedal.
2857 Esto va por debajo del PianoStaff, pero debe ser simultáneo con él,
2858 por lo que escribimos dobles ángulos rodeando a los dos.  Si esto se
2859 nos olvida, se producirá un error en el archivo log de registro.  ¡Es
2860 un error muy común que cometerá antes o después!  Intente copiar el
2861 ejemplo final que aparece al final de la sección, borre los dobles
2862 ángulos y procese el archivo para ver qué error produce.
2863
2864 @example
2865 <<  % el grupo PianoStaff y el pentagrama de Pedal son simultáneos
2866   \new PianoStaff <<
2867     \new Staff = "ManualUno" <<
2868       \new Voice @{
2869         \MusicaManualUnoVozUno
2870       @}
2871       \new Voice @{
2872         \MusicaManualUnoVozDos
2873       @}
2874     >>  % fin del contexto de Staff ManualUno
2875     \new Staff = "ManualDos" <<
2876       \new Voice @{
2877         \MusicaManualDos
2878       @}
2879     >>  % fin del contexto de Staff ManualDos
2880   >>  % fin del contexto de PianoStaff
2881   \new Staff = "OrganoPedal" <<
2882     \new Voice @{
2883       \MusicaOrganoPedal
2884     @}
2885   >>
2886 >>
2887 @end example
2888
2889 No es necesario utilizar la construcción simultánea @code{<< @dots{} >>} para
2890 el pentagrama del manual dos y el pentagrama del órgano de pedal, ya
2891 que contienen una única expresión, pero no hace daño, y es una buena
2892 costumbre utilizar siempre dobles ángulos después de @code{\new Staff}
2893 cuando hay varias voces.  Lo opuesto es cierto para las voces:
2894 normalmente deben ir seguidas de llaves @code{@{ @dots{} @}} en caso de que
2895 tengamos música codificada como distintas variables que se deben
2896 situar consecutivamente.
2897
2898 Añadamos esta estructura al bloque de partitura, y ajustemos el
2899 sangrado de los márgenes.  También escribimos las claves
2900 correspondientes, nos aseguramos de que las plicas y ligaduras de
2901 unión y de expresión en cada una de las voces del pentagrama superior
2902 apuntan en la dirección adecuada con @code{\voiceOne} y
2903 @code{\voiceTwo} y escribimos el compás y la tonalidad en cada uno de
2904 los pentagramas usando nuestra variable previamente definida
2905 @code{\TimeKey}.
2906
2907 @example
2908 \score @{
2909   <<  % el grupo PianoStaff y el pentagrama de Pedal son simultáneos
2910     \new PianoStaff <<
2911       \new Staff = "ManualUno" <<
2912         \keyTime  % establecer compás y tonalidad
2913         \clef "treble"
2914         \new Voice @{
2915           \voiceOne
2916           \MusicaManualUnoVozUno
2917         @}
2918         \new Voice @{
2919           \voiceTwo
2920           \MusicaManualUnoVozDos
2921         @}
2922       >>  % fin del contexto de Staff ManualUno
2923       \new Staff = "ManualDos" <<
2924         \keyTime
2925         \clef "bass"
2926         \new Voice @{
2927           \MusicaManualDos
2928         @}
2929       >>  % fin del contexto de Staff ManualDos
2930     >>  % fin del contexto de PianoStaff
2931     \new Staff = "OrganoPedal" <<
2932      \keyTime
2933       \clef "bass"
2934       \new Voice @{
2935         \MusicaOrganoPedal
2936       @}
2937     >>  % fin del pentagrama de OrganoPedal
2938   >>
2939 @}  % fin del contexto Score
2940 @end example
2941
2942 @cindex ampliabilidad de las pautas
2943 @cindex pautas, ampliabilidad
2944
2945 La disposición anterior de los pentagramas de órgano es casi perfecta;
2946 sin embargo, existe un ligero defecto que no es visible cuando se
2947 observa un solo sistema: la distancia entre el pentagrama de pedal y
2948 el de la mano izquierda debiera ser aproximadamente la misma que la
2949 que existe entre los pentagramas de las manos izquierda y derecha.
2950 Concretamente, la ampliabilidad de los pentagramas dentro de un
2951 contexto @code{PianoStaff} es limitada (de forma que la distancia
2952 entre los pentagramas de las manos izquierda y derecha nunca crezcan
2953 excesivamente), y el pentagrama de los pedales debería comportarse de
2954 una forma similar.
2955
2956 @cindex sub-propiedades
2957 @cindex propiedades, sub-propiedades
2958 @cindex objetos gráficos
2959 @cindex gráficos, objetos
2960 @cindex grobs
2961
2962 El grado de ampliabilidad o separabilidad de los pentagramas se puede
2963 controlar con la propiedad @code{staff-staff-spacing} del @q{objeto
2964 gráfico} @code{VerticalAxisGroup} (los objetos gráficos reciben por lo
2965 general el nombre de @q{grob}s en la documentación de lilypond); no se
2966 preocupe por el momento de los detalles, pues esto se explica más
2967 tarde de forma exhaustiva.  Los más curiosos pueden echar un vistazo a
2968 @ruser{Panorámica de la modificación de las propiedades}.  En este
2969 caso, queremos modificar solamente la sub-propiedad
2970 @code{stretchability}.
2971 De nuevo, los curiosos encontrarán los valores
2972 predeterminados para la propiedad staff-staff-spacing
2973 en el archivo @file{scm/define-grobs.scm}
2974 examinando la definición del grob @code{VerticalAxisGroup} grob.  El
2975 valor de @code{stretchability} se toma de la definición del contexto
2976 @code{PianoStaff} (en el archivo @file{ly/engraver-init.ly}) de
2977 forma que los valores sean idénticos.
2978
2979 @example
2980 \score @{
2981   <<  % el grupo PianoStaff y el pentagrama de Pedal son simultáneos
2982     \new PianoStaff <<
2983       \new Staff = "ManualUno" <<
2984         \keyTime  % establecer compás y tonalidad
2985         \clef "treble"
2986         \new Voice @{
2987           \voiceOne
2988           \MusicaManualUnoVozUno
2989         @}
2990         \new Voice @{
2991           \voiceTwo
2992           \MusicaManualUnoVozDos
2993         @}
2994       >>  % % fin del contexto de Staff ManualUno
2995       \new Staff = "ManualDos" \with @{
2996         \override VerticalAxisGroup.staff-staff-spacing.stretchability = 5
2997       @} <<
2998         \keyTime
2999         \clef "bass"
3000         \new Voice @{
3001           \MusicaManualDos
3002         @}
3003       >>  % fin del contexto de Staff ManualDos
3004     >>  % fin del contexto de PianoStaff
3005     \new Staff = "OrganoPedal" <<
3006       \keyTime
3007       \clef "bass"
3008       \new Voice @{
3009         \MusicaOrganoPedal
3010       @}
3011     >>  % fin del pentagrama de OrganoPedal
3012   >>
3013 @}  % fin del contexto Score
3014 @end example
3015
3016 Con esto se completa la estructura.  Toda música para órgano de tres
3017 pentagramas tendrá una estructura similar, aunque el número de voces
3018 puede variar.  Todo lo que nos queda es añadir la música, y combinar
3019 todas las partes.
3020
3021 @lilypond[quote,verbatim,ragged-right,addversion]
3022 \header {
3023   title = "Jesu, meine Freude"
3024   composer = "J S Bach"
3025 }
3026 keyTime = { \key c \minor \time 4/4 }
3027 ManualOneVoiceOneMusic = \relative g' {
3028   g4 g f ees |
3029   d2 c |
3030 }
3031 ManualOneVoiceTwoMusic = \relative c' {
3032   ees16 d ees8~ 16 f ees d c8 d~ d c~ |
3033   8 c4 b8 c8. g16 c b c d |
3034 }
3035 ManualTwoMusic = \relative c' {
3036   c16 b c8~ 16 b c g a8 g~ 16 g aes ees |
3037   f16 ees f d g aes g f ees d ees8~ 16 f ees d |
3038 }
3039 PedalOrganMusic = \relative c {
3040   r8 c16 d ees d ees8~ 16 a, b g c b c8 |
3041   r16 g ees f g f g8 c,2 |
3042 }
3043
3044 \score {
3045   <<  % PianoStaff and Pedal Staff must be simultaneous
3046     \new PianoStaff <<
3047       \new Staff = "ManualOne" <<
3048         \keyTime  % set key and time signature
3049         \clef "treble"
3050         \new Voice {
3051           \voiceOne
3052           \ManualOneVoiceOneMusic
3053         }
3054         \new Voice {
3055           \voiceTwo
3056           \ManualOneVoiceTwoMusic
3057         }
3058       >>  % end ManualOne Staff context
3059       \new Staff = "ManualTwo" \with {
3060         \override VerticalAxisGroup.staff-staff-spacing.stretchability = 5
3061       } <<
3062         \keyTime
3063         \clef "bass"
3064         \new Voice {
3065           \ManualTwoMusic
3066         }
3067       >>  % end ManualTwo Staff context
3068     >>  % end PianoStaff context
3069     \new Staff = "PedalOrgan" <<
3070       \keyTime
3071       \clef "bass"
3072       \new Voice {
3073         \PedalOrganMusic
3074       }
3075     >>  % end PedalOrgan Staff context
3076   >>
3077 }  % end Score context
3078 @end lilypond
3079
3080 @seealso
3081 Glosario musical:
3082 @rglos{system}.
3083
3084 @node Ahorrar tecleo mediante variables y funciones
3085 @subsection Ahorrar tecleo mediante variables y funciones
3086 @translationof Saving typing with variables and functions
3087
3088 @cindex variables
3089 @cindex identificadores
3090
3091 Llegado a este punto, usted ha visto cosas de este tipo:
3092
3093 @lilypond[quote,verbatim,ragged-right]
3094 hornNotes = \relative c'' { c4 b dis c }
3095
3096 \score {
3097   {
3098     \hornNotes
3099   }
3100 }
3101 @end lilypond
3102
3103 Incluso se dará cuenta de que esto puede ser útil en música
3104 minimalista:
3105
3106 @lilypond[quote,verbatim,ragged-right]
3107 fragmentA = \relative c'' { a4 a8. b16 }
3108 fragmentB = \relative c'' { a8. gis16 ees4 }
3109
3110 violin = \new Staff {
3111   \fragmentA \fragmentA |
3112   \fragmentB \fragmentA |
3113 }
3114
3115 \score {
3116   {
3117     \violin
3118   }
3119 }
3120 @end lilypond
3121
3122 Sin embargo también puede usar estos identificadores (que también se
3123 conocen como variables, macros o instrucciones definidas por el
3124 usuario) para hacer trucos:
3125
3126 @c TODO Avoid padtext - not needed with skylining
3127 @lilypond[quote,verbatim,ragged-right]
3128 dolce = \markup { \italic \bold dolce }
3129
3130 padText = { \once \override TextScript.padding = #5.0 }
3131 fthenp =_\markup {
3132   \dynamic f \italic \small { 2nd } \hspace #0.1 \dynamic p
3133 }
3134
3135 violin = \relative c'' {
3136   \repeat volta 2 {
3137     c4._\dolce b8 a8 g a b |
3138     \padText
3139     c4.^"hi there!" d8 e' f g d |
3140     c,4.\fthenp b8 c4 c-. |
3141   }
3142 }
3143
3144 \score {
3145   {
3146     \violin
3147   }
3148   \layout { ragged-right = ##t }
3149 }
3150 @end lilypond
3151
3152 Obviamente estos identificadores son útiles para ahorrar tecleo.  Pero
3153 son dignos de tener en cuenta incluso si se van a utilizar una sola
3154 vez: reducen la complejidad.  Examinemos el ejemplo anterior reescrito
3155 sin ningún identificador.  Encontrará que es mucho más difícil de
3156 leer, sobre todo la última línea.
3157
3158 @example
3159 violin = \relative c'' @{
3160   \repeat volta 2 @{
3161     c4._\markup @{ \italic \bold dolce @} b8 a8 g a b |
3162     \once \override TextScript.padding = #5.0
3163     c4.^"hi there!" d8 e' f g d |
3164     c,4.\markup @{
3165       \dynamic f \italic \small @{ 2nd @} \hspace #0.1 \dynamic p
3166     @}
3167     b8 c4 c-. |
3168   @}
3169 @}
3170 @end example
3171
3172 @c TODO Replace the following with a better example  -td
3173 @c Skylining handles this correctly without padText
3174
3175 Hasta ahora hemos contemplado la sustitución estática: cuando LilyPond
3176 se encuentra con @code{\padText}, lo sustituye con aquello que
3177 hemos definido que sea (es decir, todo lo que está a la derecha de
3178 @code{padtext=}).
3179
3180 LilyPond también puede manejar sustituciones no estáticas (piense en
3181 ellas como en funciones).
3182
3183 @lilypond[quote,verbatim,ragged-right]
3184 padText =
3185 #(define-music-function
3186      (parser location padding)
3187      (number?)
3188    #{
3189      \once \override TextScript.padding = #padding
3190    #})
3191
3192 \relative c''' {
3193   c4^"piu mosso" b a b |
3194   \padText #1.8
3195   c4^"piu mosso" d e f |
3196   \padText #2.6
3197   c4^"piu mosso" fis a g |
3198 }
3199 @end lilypond
3200
3201 La utilización de identificadores también es una buena forma de
3202 reducir el trabajo si la sintaxis de entrada de LilyPond cambia (véase
3203 @rprogram{Actualizar ficheros con convert-ly}).  Si tiene una sola
3204 definición (como p.ej. @code{\dolce}) para todos sus archivos (ver
3205 @ref{Hojas de estilo}), y después la sintaxis se modifica, sólo tendrá
3206 que actualizar su definición @code{\dolce} única, en lugar de tener
3207 que hacer cambios en cada uno de los archivos @file{.ly}.
3208
3209
3210
3211 @node Partituras y particellas
3212 @subsection Partituras y particellas
3213 @translationof Scores and parts
3214
3215 En música orquestal, todas las notas se imprimen dos veces.  Una vez
3216 en las particellas para los músicos, y otra para la partitura del
3217 director.  Los identificadores se pueden usar para evitar la
3218 duplicación del trabajo.  La música se escribe una vez y se almacena
3219 en una variable.  El contenido de dicha variable se usa después para
3220 generar tanto la particella como la partitura del director.
3221
3222 Es muy conveniente definir las notas en un archivo especial.  Por
3223 ejemplo, supongamos que el archivo @file{trompa.ly} contiene la
3224 siguiente parte de un dúo para trompa y fagot:
3225
3226 @example
3227 notasTrompa = \relative c @{
3228   \time 2/4
3229   r4 f8 a | cis4 f | e4 d |
3230 @}
3231 @end example
3232
3233 @noindent
3234 Luego se hace una particella escribiendo en un archivo lo siguiente
3235
3236 @example
3237 \include "trompa.ly"
3238
3239 \header @{
3240   instrument = "Trompa en Fa"
3241 @}
3242
3243 @{
3244  \transpose f c' \notasTrompa
3245 @}
3246 @end example
3247
3248 La línea
3249
3250 @example
3251 \include "trompa.ly"
3252 @end example
3253
3254 @noindent
3255 sustituye el contenido de @file{trompa.ly} en esta posición dentro del
3256 archivo, así que @code{notasTrompa} se define con posterioridad.  La
3257 instrucción @code{\transpose f@tie{}c'} indica que el argumento
3258 constituido por @code{\notasTrompa} se debe transponer una quinta
3259 hacia arriba.  Lo que suena como @code{f} se escribe como @code{c'},
3260 lo que corresponde con el tono de afinación de una trompa normal
3261 en@tie{}Fa.  La transposición se puede ver en la siguiente salida
3262
3263 @lilypond[quote,ragged-right]
3264 \transpose f c' \relative c {
3265   \time 2/4
3266   r4 f8 a | cis4 f | e4 d |
3267 }
3268 @end lilypond
3269
3270 En piezas para conjunto, con frecuencia una de las voces no suena
3271 durante muchos compases.  Esto queda denotado por un silencio
3272 especial, el silencio multicompás.  Se introduce con una @code{R}
3273 mayúscula seguida de una duración (@code{1}@tie{}en el caso de la
3274 redonda, @code{2}@tie{}en el caso de una blanca, etc.).  Multiplicando
3275 la duración se pueden construir silencios más largos.  Por ejemplo,
3276 este silencio ocupa 3@tie{}compases de 2/4
3277
3278 @example
3279 R2*3
3280 @end example
3281
3282 Cuando se imprime la particella tienen que comprimirse los silencios
3283 multicompás.  Esto se hace estableciendo una variable en tiempo de
3284 ejecución
3285
3286 @example
3287 \set Score.skipBars = ##t
3288 @end example
3289
3290 @noindent
3291 Esta instrucción establece el valor de la propiedad @code{skipBars} en
3292 el contexto de @code{Score} a verdadero (@code{##t}).  Anteponiendo el
3293 silencio y esta opción a la música anterior, llegamos al siguiente
3294 resultado
3295
3296 @lilypond[quote,ragged-right]
3297 \transpose f c' \relative c {
3298   \time 2/4
3299   \set Score.skipBars = ##t
3300   R2*3 |
3301   r4 f8 a | cis4 f | e4 d |
3302 }
3303 @end lilypond
3304
3305
3306 Esta partitura se hace combinando toda la música junta.  Suponiendo
3307 que la otra voz se encuentra dentro de @code{notasFagot} en el archivo
3308 @file{fagot.ly}, la partitura se hace con
3309
3310 @example
3311 \include "fagot.ly"
3312 \include "trompa.ly"
3313
3314 <<
3315   \new Staff \notasTrompa
3316   \new Staff \notasFagot
3317 >>
3318 @end example
3319
3320 @noindent
3321 lo que nos lleva a
3322
3323 @lilypond[quote,ragged-right]
3324 \relative c <<
3325   \new Staff {
3326     \clef "treble"
3327     \time 2/4
3328     R2*3 |
3329     r4 f8 a | cis4 f | e4 d |
3330   }
3331   \new Staff {
3332     \clef "bass"
3333     \time 2/4
3334     r4 d,8 f | gis4 c | b4 bes |
3335     a8 e f4 | g4 d | gis4 f |
3336   }
3337 >>
3338 @end lilypond
3339
3340
3341