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