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