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