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