1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
4 Translation of GIT committish: 4244c3a9fbf1f3ff2e20e665f92516d35b61de53
6 When revising a translation, copy the HEAD committish of the
7 version that you are working on. For details, see the Contributors'
8 Guide, node Updating translation committishes..
13 @node Conceptos fundamentales
14 @chapter Conceptos fundamentales
15 @translationof Fundamental concepts
17 Ha podido ver en el tutorial cómo producir música bellamente
18 impresa a partir de un simple archivo de texto. Esta sección
19 presenta los conceptos y técnicas que se requieren para producir
20 partituras igualmente bellas pero más complejas.
23 * Cómo funcionan los archivos de entrada de LilyPond::
24 * Las voces contienen música::
25 * Contextos y grabadores::
26 * Extender las plantillas::
30 @node Cómo funcionan los archivos de entrada de LilyPond
31 @section Cómo funcionan los archivos de entrada de LilyPond
32 @translationof How LilyPond input files work
34 El formato de entrada de LilyPond es bastante libre en su forma y
35 concede a los usuarios con experiencia mucha flexibilidad para
36 estructurar sus archivos de la forma que deseen. Sin embargo,
37 toda esta flexibilidad puede hacer que las cosas se vuelvan
38 confusas para los nuevos usuarios. Esta sección le va a explicar
39 parte de esta estructura, pero puede obviar ciertos detalles en
40 aras de la simplicidad. Para ver una descripción completa del
41 formato de entrada, consulte @ruser{Estructura del archivo}.
45 * Introducción a la estructura de los archivos de LilyPond::
46 * La partitura es una (única) expresión musical compuesta::
47 * Anidado de expresiones musicales::
48 * Acerca de la no anidabilidad de llaves y ligaduras::
51 @node Introducción a la estructura de los archivos de LilyPond
52 @subsection Introducción a la estructura de los archivos de LilyPond
53 @translationof Introduction to the LilyPond file structure
55 @cindex entrada, formato de la
56 @cindex archivo, estructura del
58 Un ejemplo básico de archivo de entrada de LilyPond es el
62 \version @w{"@version{}"}
67 @var{ @dots{} expresión musical compuesta @dots{} } % toda la música va aquí
74 Existen muchas variaciones de este esquema básico, pero el
75 ejemplo constituye un útil punto de partida.
80 @cindex score (partitura)
84 Hasta el momento, ninguno de los ejemplos que ha podido ver
85 utiliza la instrucción @code{\score@{@}}. Esto es así a causa de
86 que LilyPond añade automáticamente las órdenes adicionales que se
87 requieren cuando le proporcionamos una entrada sencilla.
88 LilyPond trata una entrada como esta:
97 como una abreviatura de esta otra:
114 En otras palabras, si la entrada consta de una única expresión
115 musical, LilyPond interpreta el archivo como si la expresión
116 musical estuviera rodeada por un envoltorio hecho por las
117 instrucciones que acabamos de ver.
119 @cindex contextos implícitos
120 @cindex implícitos, contextos
122 @strong{¡Advertencia!} Muchos de los ejemplos que aparecen en la
123 documentación de LilyPond omiten las instrucciones @code{\new
124 Staff} y @code{\new Voice}, dejando que se creen de forma
125 implícita. Esto funciona bien para ejemplos sencillos, pero para
126 ejemplos más complicados, especialmente cuando se usan
127 instrucciones adicionales, la creación implícita de los contextos
128 puede dar lugar a resultados inesperados, incluso en ocasiones
129 crear pentagramas no deseados. La forma de crear contextos de
130 forma explícita se explica en @ref{Contextos y grabadores}.
132 @warning{Cuando se escriben más de unas pocas líneas de música,
133 se recomienda crear siempre los pentagramas y las voces de forma
136 De todas formas, por ahora vamos a volver al primer ejemplo para
137 examinar la instrucción @code{\score}, dejando las demás en su
138 forma predeterminada.
140 Un bloque @code{\score} siempre debe contener una expresión musical
141 única. Recuerde que una expresión musical podía ser cualquier
142 cosa entre una sola nota hasta una enorme expresión compuesta como
147 @var{ @dots{} inserte aquí la partitura completa de una ópera de Wagner @dots{} }
153 Puesto que todo se encuentra dentro de @code{@{ @dots{} @}},
154 cuenta como una expresión musical.
156 Como vimos anteriormente, el bloque @code{\score} puede contener
157 otras cosas, tales como
176 Observe que estas tres instrucciones (@code{\header},
177 @code{\layout} y @code{\midi}) son especiales: a diferencia del
178 resto de las instrucciones que comienzan con una barra invertida
179 (@code{\}), @emph{no} son expresiones musicales y no forman parte
180 de ninguna expresión musical. Por tanto, se pueden situar dentro
181 de un bloque @code{\score} o fuera de él. De hecho, estas
182 instrucciones se sitúan por lo general fuera del bloque
183 @code{\score} (por ejemplo, @code{\header} se suele colocar antes
184 de la instrucción @code{\score}, como muestra el ejemplo que
185 aparece al principio de la sección.
187 Dos instrucciones más que no hemos visto aún son @code{\layout @{
188 @}} y @code{\midi @{ @}}. Si aparecen tal y como se muestran
189 aquí, hacen que LilyPond produzca una salida impresa y una salida
190 MIDI, respectivamente. Se describen con todo detalle en el
191 manual de Referencia de la notación, en @ruser{Disposición de la
192 partitura} y en @ruser{Creación de salida MIDI}.
194 @cindex partituras, varias
195 @cindex book, bloque implícito
196 @cindex implícito, bloque book
199 Podemos escribir varios bloques @code{\score}. Cada uno de ellos
200 recibirá el mismo tratamiento que una partitura independiente,
201 pero se combinarán todos juntos en un archivo de salida único.
202 No se necesita ninguna instrucción @code{\book}, se creará una
203 implícitamente. Sin embargo, si quiere archivos de salida
204 separados a partir de un único archivo @file{.ly}, entonces es
205 necesario utilizar la instrucción @code{\book} para separar las
206 distintas secciones: cada bloque @code{\book} produce un archivo
211 Cada bloque @code{\book} crea un archivo de salida distinto (por
212 ejemplo, un archivo PDF). Si no hemos escrito uno de forma
213 explícita, LilyPond envuelve todo nuestro código de entrada
214 dentro de un bloque @code{\book} de forma implícita.
216 Cada bloque @code{\score} es un trozo de música separado dentro
217 de un bloque @code{\book}.
219 @cindex layout, efecto de la situación del bloque
221 Cada bloque @code{\layout} afecta al bloque @code{\score} o
222 @code{\book} dentro del cual aparece (es decir, un bloque
223 @code{\layout} dentro de un bloque @code{\score} afecta solamente
224 a ese bloque @code{\score}, pero un bloque @code{\layout} fuera
225 de un bloque @code{\score} (que por ello está dentro de un bloque
226 @code{\book}, ya sea explícita o implícitamente) afecta a los
227 bloques @code{\score} que están dentro de ese @code{\book}.
229 Para ver más detalles, consulte
230 @ruser{Varias partituras en un libro}.
234 Otro magnífico atajo es la posibilidad de definir variables como
235 se muestra en @ref{Organizar las piezas mediante variables}.
236 Todas las plantillas emplean lo siguiente:
239 melodia = \relative @{
248 Cuando LilyPond examina este archivo, toma el valor de
249 @code{melodia} (todo lo que está después del signo igual) y lo
250 inserta dondequiera que ve @code{\melodia}. No se requiere un
251 cuidado especial con el nombre (puede ser @code{melodia},
252 @code{global}, @code{CompasArmadura}, @code{manoderechadelpiano}
253 o @code{fulanomengano} o cualquier otro). Recuerde que puede
254 usar casi cualquier nombre que se le ocurra, en la medida en que
255 contenga solamente caracteres alfabéticos y sea diferente de
256 cualquiera de los nombres de instrucción de LilyPond. Para ver
257 más detalles, consulte
258 @ref{Ahorrar tecleo mediante variables y funciones}. Las
259 limitaciones exactas que afectan a los nombres de variable se
260 detallan en @ruser{Estructura del archivo}.
264 Para ver una definición completa del formato del código de
265 entrada, consulte @ruser{Estructura del archivo}.
268 @node La partitura es una (única) expresión musical compuesta
269 @subsection La partitura es una (única) expresión musical compuesta
270 @translationof Score is a (single) compound musical expression
275 @cindex contenido del bloque score
276 @cindex score, contenido del bloque
277 @cindex compuesta, expresión musical
278 @cindex musical, expresión, compuesta
279 @cindex expresión musical compuesta
282 En la sección anterior,
283 @ref{Introducción a la estructura de los archivos de LilyPond},
284 hemos podido ver la organización general de los archivos de
285 entrada de LilyPond. Pero parece que nos saltamos la parte más
286 importante: ¿cómo averiguamos qué escribir después de
289 No nos hemos saltado nada en absoluto. El gran misterio es,
290 sencillamente, que no hay @emph{ningún} misterio. La siguiente
291 línea lo explica todo:
294 @emph{Un bloque @code{\score} debe contener exactamente una expresión musical.}
298 Para comprender lo que se entiende por expresión musical, quizá
299 encuentre útil dar un repaso al tutorial,
300 @ref{Explicación de las expresiones musicales}. En esta sección
301 vimos cómo elaborar grandes expresiones musicales a partir de
302 pequeñas piezas (comenzábamos con notas, luego acordes, etc.).
303 Ahora partiremos de una gran expresión musical y recorreremos el
304 camino inverso hacia abajo. Por simplicidad, vamos a hacer sólo
305 un cantante y un piano. No necesitamos un @code{StaffGroup} (que
306 simplemente agrupa un cierto número de pautas con un corchete a
307 la izquierda) para este conjunto, así que lo retiramos. Sin
308 embargo, @emph{sí} necesitamos pentagramas para un cantante y un
314 \new Staff = "cantante" <<
316 \new PianoStaff = "piano" <<
323 Aquí hemos asignado nombres a los pentagramas: @qq{cantante} y
324 @qq{piano}. Esto no es esencial en este momento, pero es un
325 hábito que resulta útil cultivar de manera que podamos saber de
326 un vistazo para qué es cada pentagrama.
328 Recuerde que utilizamos @code{<< @dots{} >>} en lugar de @code{@{
329 @dots{} @}} para presentar la música simultánea. Esto hace que
330 las partes vocal y del piano aparezcan una sobre la otra en la
331 partitura. La construcción @code{<< @dots{} >>} no sería
332 necesaria para el pentagrama del cantante en el ejemplo de arriba
333 si contiene solamente una expresión musical secuencial, pero se
334 necesitarían los @code{<< @dots{} >>} en lugar de las llaves si
335 la música de ese pentagrama fuese a contener dos o más
336 expresiones simultáneas, p.ej. dos voces simultáneas, o una voz
337 con letra. Vamos a tener una voz con letra, por lo que se
338 requieren los ángulos dobles. Después añadiremos algo de música
339 real; por ahora limitémonos a poner unas cuantas notas y texto de
340 relleno. Si ha olvidado cómo añadir la letra, puede releer la
341 sección @code{\addlyrics} de @ref{Elaborar canciones sencillas}.
343 @lilypond[verbatim,quote,ragged-right]
346 \new Staff = "singer" <<
347 \new Voice = "vocal" { c'1 }
350 \new PianoStaff = "piano" <<
351 \new Staff = "upper" { c'1 }
352 \new Staff = "lower" { c'1 }
359 Ahora tenemos muchos más detalles. Tenemos la pauta del
360 cantante: contiene una @code{Voice} o voz (en LilyPond, este
361 término hace referencia a un conjunto de notas, no necesariamente
362 notas vocales -- por ejemplo, un violín generalmente toca una voz
363 --) y el texto de la canción. También tenemos una pauta de
364 piano: contiene un pentagrama superior (mano derecha) y un
365 pentagrama inferior (mano izquierda), aunque el pentagrama
366 inferior aún no tiene la clave de Fa.
368 En este momento podríamos comenzar a meter las notas. Dentro de
369 las llaves que siguen a @code{\new Voice = "vocal"}, podríamos
374 r4 d''8\noBeam g, c4 r
378 Pero si lo hiciéramos, la sección @code{\score} se haría bastante
379 larga y sería más difícil comprender lo que ocurre. En lugar de
380 esto utilizaremos identificadores o variables. Recordará que las
381 vimos por primera vez en la sección anterior.
383 Para asegurarnos de que el contenido de la variable @code{text}
384 se interpreta como letra, lo precedemos por @code{\lyricmode}.
385 Como @code{\addlyrics}, esto activa el modo de entrada de letra.
386 Sin ello, LilyPond trataría de interpretar el contenido como
387 notas, lo que generaría errores (Existen algunos otros modos,
388 véase @ruser{Modos de entrada}).
390 Así pues, escribiendo algunas notas, y una clave de Fa para la
391 mano izquierda, ahora tenemos un fragmento musical de verdad:
393 @lilypond[verbatim,quote,ragged-right]
394 melody = \relative { r4 d''8\noBeam g, c4 r }
395 text = \lyricmode { And God said, }
396 upper = \relative { <g' d g,>2~ <g d g,> }
397 lower = \relative { b,2 e }
401 \new Staff = "singer" <<
402 \new Voice = "vocal" { \melody }
405 \new PianoStaff = "piano" <<
406 \new Staff = "upper" { \upper }
407 \new Staff = "lower" {
417 Cuando escriba una sección @code{\score} o cuando la esté
418 leyendo, hágalo despacio y con cuidado. Comience por el nivel
419 exterior y luego trabaje sobre cada uno de los niveles
420 interiores. También es de gran ayuda ser muy estricto con los
421 márgenes (asegúrese de que en su editor de texto cada elemento
422 del mismo nivel comienza en la misma posición horizontal).
426 Referencia de la notación:
427 @ruser{Estructura de una partitura}.
430 @node Anidado de expresiones musicales
431 @subsection Anidado de expresiones musicales
432 @translationof Nesting music expressions
434 @cindex pentagramas temporales
435 @cindex temporales, pentagramas
438 No es esencial declarar todos los pentagramas al comienzo; se
439 pueden crear temporalmente en cualquier momento. Esto es de
440 especial utilidad para crear secciones de ossia (véase
441 @rglos{ossia}). A continuación presentamos un ejemplo sencillo
442 que muestra cómo introducir temporalmente un pentagrama nuevo
443 mientras dura un fragmento de tres notas:
445 @lilypond[verbatim,quote,ragged-right]
462 Advierta que el tamaño de la clave es igual al que se imprime en
463 un cambio de clave (ligeramente menor que la clave al principio
464 de una línea). Esto es normal para cualquier clave que se
465 imprime en la mitad de una línea.
467 @cindex pentagrama, posicionado del
469 La sección ossia se puede colocar encima del pentagrama de la
472 @lilypond[verbatim,quote,ragged-right]
473 \new Staff = "main" {
480 alignAboveContext = #"main"
488 Este ejemplo utiliza @code{\with}, que se explica en todo detalle
489 más adelante. Es un medio de modificar el comportamiento
490 predeterminado de un solo pentagrama. Aquí, dice que el
491 pentagrama nuevo se debe colocar por encima del pentagrama
492 llamado @qq{main} en vez de la posición predeterminada que sería
497 Los fragmentos de ossia se escriben a menudo sin clave y sin
498 indicación de compás, y generalmente en un tipo más pequeño.
499 Esto necesitaría más instrucciones que aún no se han visto.
500 Véase @ref{Tamaño de los objetos} y @ruser{Pentagramas de Ossia}.
503 @node Acerca de la no anidabilidad de llaves y ligaduras
504 @subsection Acerca de la no anidabilidad de llaves y ligaduras
505 @translationof On the un-nestedness of brackets and ties
507 @cindex corchetes y paréntesis, anidado de
508 @cindex corchetes y paréntesis, tipos de
509 @cindex corchetes y paréntesis, encerrar frente a marcar
510 @cindex paréntesis y corchetes, anidado de
511 @cindex paréntesis y corchetes, tipos de
512 @cindex paréntesis y corchetes, encerrar frente a marcar
514 En la escritura del archivo de entrada de LilyPond, hemos podido
515 ver algunos tipos de paréntesis, llaves o ángulos de distintos
516 tipos. Éstos obedecen a distintas reglas que al principio pueden
517 resultar confusas. Antes de explicar estas reglas, demos un
518 repaso a las distintas clases de corchetes, llaves y paréntesis.
520 @c attempt to force this onto a new page
522 @multitable @columnfractions .3 .7
523 @headitem Tipo de paréntesis
525 @item @code{@{ @dots{} @}}
526 @tab Encierra un fragmento secuencial de música
527 @item @code{< @dots{} >}
528 @tab Encierra las notas de un acorde
529 @item @code{<< @dots{} >>}
530 @tab Encierra expresiones musicales simultáneas
531 @item @code{( @dots{} )}
532 @tab Marca el comienzo y el final de una ligadura de expresión
533 @item @code{\( @dots{} \)}
534 @tab Marca el comienzo y el final de una ligadura de fraseo
535 @item @code{[ @dots{} ]}
536 @tab Marca el comienzo y el final de un barrado manual
539 A las anteriores, debemos añadir otras construcciones que generan
540 líneas entre o a través de las notas: las ligaduras de unión
541 (marcadas con una tilde curva, @code{~}), los grupos especiales
542 que se escriben como @code{\tuplet x/y @{ @dots{} @}}, y las
543 notas de adorno, que se escriben como @code{\grace @{ @dots{}
546 Fuera de LilyPond, el uso convencional de los paréntesis y otros
547 corchetes requiere que los distintos tipos se encuentren anidados
548 correctamente, como en: @code{<< [ @{ ( @dots{} ) @} ] >>}, de
549 manera que los paréntesis que se cierran deben encontrarse en el
550 orden exactamente opuesto al de los paréntesis que se abren.
551 Esto @strong{es} un requisito para los tres tipos de paréntesis
552 que se describen mediante la palabra @q{Encierra} en la tabla
553 anterior: se deben anidar correctamente. Sin embargo, el resto
554 de las llaves y corchetes, que se encuentran descritos por la
555 palabra @q{Marca} en la misma tabla anterior, @strong{no} tienen
556 por qué anidarse estrictamente con ninguno de los otros
557 paréntesis. De hecho, éstos no son paréntesis en el sentido de
558 que encierran algo: simplemente son marcadores que indican dónde
559 empieza o finaliza algo.
561 Así pues, por ejemplo, una ligadura de fraseo puede dar comienzo
562 antes de una barra insertada manualmente, y acabar antes de que
563 acabe la barra (algo que quizá no sea muy musical, pero es
566 @lilypond[quote,verbatim,ragged-right]
567 \relative { g'8\( a b[ c b\) a] g4 }
570 En general, los distintos tipos de corchete, y los implicados en
571 grupos especiales, ligaduras de unión y notas de adorno, se
572 pueden mezclar con total libertad. Este ejemplo muestra una
573 barra que se extiende hacia el interior de un grupo de valoración
574 especial (línea 1), una ligadura de expresión que se prolonga
575 hasta el interior de un grupo especial (línea 2), una barra y una
576 ligadura de expresión que se prolongan hasta el interior de un
577 grupo especial, una ligadura de unión que atraviesa dos grupos
578 especiales, y una ligadura de fraseo que sale del interior de un
579 grupo especial (líneas 3 y 4).
581 @lilypond[quote,verbatim,ragged-right]
583 r16[ g' \tuplet 3/2 { r16 e'8] }
584 g,16( a \tuplet 3/2 { b16 d) e }
585 g,8[( a \tuplet 3/2 { b8 d) e~] } |
586 \tuplet 5/4 { e32\( a, b d e } a4.\)
591 @node Las voces contienen música
592 @section Las voces contienen música
593 @translationof Voices contain music
595 Igual que los cantantes, LilyPond necesita voces para cantar. En
596 realidad, la música para cualquier instrumento de una partitura
597 está siempre contenida dentro de una voz --el concepto de
598 LilyPond más fundamental de todos--.
603 * Voces y música vocal::
607 @subsection Oigo voces
608 @translationof I'm hearing Voices
613 @cindex voces, varias
614 @cindex Voice (voz), contexto de
615 @cindex contexto Voice (de voz)
616 @cindex simultánea, música
617 @cindex concurrente, música
618 @cindex voces frente a acordes
619 @cindex acordes frente a voces
621 De las capas más profundas de una partitura de LilyPond, las más
622 bajas y más fundamentales reciben el nombre de @q{Voice contexts}
623 («contextos de voz») o, abreviadamente, @q{Voices} («voces»).
624 Las voces reciben a veces el nombre de @q{layers} («capas») en
625 otros programas de edición de partituras.
627 De hecho, una capa o contexto de voz es la única que puede
628 contener música. Si un contexto de voz no se declara
629 explícitamente, se crea uno de forma automática, como vimos al
630 comienzo de este capítulo. Ciertos instrumentos como el oboe
631 solamente pueden tocar una nota cada vez. La música escrita para
632 estos instrumentos solamente requiere una voz. Los instrumentos
633 que pueden tocar más de una nota a la vez, como el piano, con
634 frecuencia necesitarán varias voces para codificar las distintas
635 notas y ritmos concurrentes que son capaces de tocar.
637 Una sola voz puede contener muchas notas dentro de un acorde, por
638 supuesto; entonces ¿cuándo, exactamente, se necesitan varias
639 voces? En primer lugar observe este ejemplo de cuatro acordes:
641 @lilypond[quote,verbatim,ragged-right]
644 <d' g>4 <d fis> <d a'> <d g>
648 Esto se puede expresar utilizando sólo símbolos de acorde con
649 ángulos simples, @code{< @dots{} >}, y para este propósito tan
650 sólo se necesita una voz. Pero suponga que el Fa sostenido fuese
651 realmente una corchea seguida de un Sol corchea, una nota de paso
652 que conduce al La. Ahora tenemos dos notas que empiezan en el
653 mismo momento pero tienen distintas duraciones: la negra Re, y la
654 corchea Fa sostenido. ¿Cómo se codifica esto? No se pueden
655 escribir como un acorde porque todas las notas de un acorde deben
656 tener la misma duración. Y no se pueden escribir como dos notas
657 en secuencia porque tienen que empezar en el mismo momento. Aquí
658 es donde se necesitan dos voces.
660 Veamos cómo se hace esto dentro de la sintaxis de entrada de
666 La forma más fácil de introducir fragmentos con más de una voz en
667 un solo pentagrama es escribir cada voz como una secuencia (con
668 @code{@{ @dots{} @}}), y combinarlas simultáneamente con ángulos
669 dobles, @code{<< @dots{} >>}. Los fragmentos también se deben
670 separar mediante una doble barra invertida, @code{\\}, para
671 situarlos en voces separadas. Sin esto, las notas irían a una
672 sola voz, lo que normalmente produce errores. Esta técnica se
673 adapta especialmente bien a piezas de música que son mayormente
674 homofónicas pero ocasionalmente tienen cortas secciones de
677 He aquí cómo dividimos los acordes anteriores en dos voces y
678 añadimos la nota de paso y la ligadura:
680 @lilypond[quote,verbatim,ragged-right]
683 % Voice = "1" Voice = "2"
684 << { g'4 fis8( g) a4 g } \\ { d4 d d d } >>
688 Observe cómo las plicas de la segunda voz ahora se dirigen hacia
691 A continuación veamos otro ejemplo sencillo:
693 @lilypond[quote,verbatim,ragged-right]
696 % Voice = "1" Voice = "2"
697 << { r4 g' g4. a8 } \\ { d,2 d4 g } >> |
698 << { bes4 bes c bes } \\ { g4 g g8( a) g4 } >> |
699 << { a2. r4 } \\ { fis2. s4 } >> |
703 No es necesario usar una construcción @code{<< \\ >>} distinta
704 para cada compás. Para música que tenga unas pocas notas en cada
705 compás, esta disposición podría facilitar la legibilidad del
706 código, pero si hay muchas notas en cada compás podría ser mejor
707 dividirlo en dos voces separadas, de la siguiente manera:
709 @lilypond[quote,verbatim,ragged-right]
712 \relative { % Voice = "1"
717 \relative { % Voice = "2"
725 @cindex voces, nombrado de
726 @cindex voces que cruzan corchetes
727 @cindex ligaduras que cruzan corchetes
729 Este ejemplo tiene sólo dos voces, pero la misma construcción se
730 puede usar para codificar tres o más voces mediante la adición de
731 más separadores de barra invertida.
733 Los contextos de voz llevan los nombres de @code{"1"},
734 @code{"2"}, etc. Los primeros contextos establecen las voces
735 @emph{externas}, la voz aguda del contexto @code{"1"} y la voz
736 grave del contexto @code{"2"}. Las voces interiores van en los
737 contextos @code{"3"} y @code{"4"}. En cada uno de estos
738 contextos, la dirección vertical de las ligaduras, plicas,
739 matices dinámicos, etc., se ajusta de forma correcta.
741 @lilypond[quote,verbatim]
742 \new Staff \relative {
745 % Voice = "1" Voice = "2" Voice = "3"
746 << { g4 f e } \\ { r8 e4 d c8~ } >> |
747 << { d2 e } \\ { c8 b16 a b8 g~ 2 } \\ { s4 b c2 } >> |
752 Si prefiere introducir las voces en un orden distinto, como de
753 arriba a abajo, puede especificar los números de voz respectivos
754 delante de una construcción @code{<< @dots{} >>} usando la
755 instrucción @code{\voices} command, como por ejemplo:
757 @lilypond[quote,verbatim]
758 \new Staff \relative {
761 % Voice = "1" Voice = "2"
762 << { g4 f e } \\ { r8 e4 d c8~ } >> |
764 % Voice = "1" Voice = "3" Voice = "2"
765 << { d2 e } \\ { s4 b c2 } \\ { c8 b16 a b8 g~ 2 } >> |
769 Todas estas voces están separadas de la voz principal que
770 contiene las notas justo por fuera de la construcción @code{<<
771 @dots{} >>}. Le llamaremos a esto la @emph{construcción
772 simultánea}. Las ligaduras (de prolongación y de expresión)
773 solamente pueden conectar notas que estén dentro de la misma voz,
774 luego las ligaduras no pueden entrar o salir de una construcción
775 simultánea. A la inversa, las voces paralelas de construcciones
776 simultáneas distintas sobre el mismo pentagrama, son la misma
777 voz. Otras propiedades relativas a las voces también conllevan
778 construcciones simultáneas. A continuación vemos el mismo
779 ejemplo, con colores y cabezas distintos para cada voz. Observe
780 que los cambios en una voz no afectan a otras voces, pero
781 persisten más tarde dentro de la misma voz. Observe también que
782 las notas ligadas se pueden dividir entre las mismas voces de dos
783 construcciones, como se indica aquí en la voz de triángulos
786 @lilypond[quote,verbatim]
787 \new Staff \relative {
816 @funindex \voiceOneStyle
817 @funindex \voiceTwoStyle
818 @funindex \voiceThreeStyle
819 @funindex \voiceFourStyle
820 @funindex \voiceNeutralStyle
822 Las instrucciones @code{\voiceXXXStyle} están pensadas
823 principalmente para usarlas en documentos educativos como este
824 mismo. Modifican el color de la cabeza, la plica y las barras, y
825 el estilo de la cabeza, de forma que las voces se puedan
826 distinguir fácilmente. La voz uno está establecida a rombos
827 rojos, la voz dos a triángulos azules, la voz tres a círculos
828 verdes con aspas, y la voz cuatro (que no se utiliza aquí) a
829 aspas color magenta. @code{\voiceNeutralStyle} (que tampoco se
830 usa aquí) devuelve todo al estilo predeterminado. Veremos más
831 adelante cómo el usuario puede crear instrucciones como éstas.
832 Véase @ref{Visibilidad y color de los objetos} y @ref{Uso de
833 variables para los ajustes de disposición}.
835 @cindex polifonía y modo relativo
836 @cindex relativo, modo, polifonía y
838 La polifonía no cambia la relación de las notas dentro de un
839 bloque @code{\relative}. La altura de cada nota aún se calcula
840 con relación a la nota que le precede inmediatamente, o a la
841 primera nota del acorde precedente. Así, en
844 \relative c' @{ notaA << < notaB notaC > \\ notaD >> notaE @}
848 @code{notaB} es relativa a @code{notaA} @*
849 @code{notaC} es relativa a @code{notaB}, no a @code{notaA}; @*
850 @code{notaD} es relativa a @code{notaB}, no a @code{notaA} ni a
852 @code{notaE} es relativa a @code{notaD}, no a @code{notaA}.
854 Una forma alternativa, que podría ser más clara si las notas en las
855 voces están muy separadas, es colocar una instrucción @code{\relative}
856 al principio de cada voz:
859 \relative @{ notaA @dots{} @}
861 \relative @{ < notaB notaC > @dots{} @}
863 \relative @{ notaD @dots{} @}
865 \relative @{ notaE @dots{} @}
868 Finalmente, analicemos las voces en una pieza de música más
869 compleja. He aquí las notas de los dos primeros compases del
870 segundo de los Dos Nocturnos de Chopin, Op 32. Este ejemplo se
871 utilizará en fases posteriores dentro del presente capítulo y el
872 siguiente, para ilustrar varias técnicas para producir notación,
873 y por tanto le pedimos que ignore por ahora cualquier cosa en el
874 código subyacente que le parezca misterioso y tan sólo se
875 concentre en la música y las voces (todas las complicaciones se
876 explicarán en secciones posteriores).
878 @c The following should appear as music without code
879 @lilypond[quote,ragged-right]
880 \new Staff \relative {
882 \voices 1,2,4 % No voice three
887 % Ignore these for now - they are explained in Ch 4
888 \once \override NoteColumn.force-hshift = #0
890 \once \override NoteColumn.force-hshift = #0.5
895 \override NoteColumn.force-hshift = #0
903 Con frecuencia, la dirección de las plicas se utiliza para
904 indicar la continuidad de dos líneas melódicas simultáneas.
905 Aquí, todas las plicas de las notas agudas se dirigen hacia
906 arriba y las de las notas graves hacia abajo. Ésta es la primera
907 indicación de que se requiere más de una voz.
909 Pero la necesidad real de varias voces aflora cuando hay notas
910 que comienzan en el mismo tiempo pero tienen distintas
911 duraciones. Observe las notas que comienzan en la tercera parte
912 del primer compás. El La bemol es una negra con puntillo, el Fa
913 es una negra y el Re bemol es una blanca. Estas notas no se
914 pueden escribir como un acorde porque todas las notas de un
915 acorde deben tener la misma duración. Tampoco se pueden escribir
916 como notas secuenciales, pues deben comenzar al mismo tiempo.
917 Esta sección del compás requiere tres voces, y la práctica común
918 sería escribir todo el compás como tres voces como se muestra
919 abajo, donde hemos usado distintas cabezas y colores para las
920 tres voces. Una vez más, el código que subyace a este ejemplo se
921 explicará más tarde, así pues ignore todo lo que no entienda.
923 @c The following should appear as music without code
924 @c The three voice styles should be defined in -init
925 @lilypond[quote,ragged-right]
926 \new Staff \relative {
928 \voices 1,2,4 % No Voice three (we want stems down)
936 % Ignore these for now - they are explained in Ch 4
937 \once \override NoteColumn.force-hshift = #0
939 \once \override NoteColumn.force-hshift = #0.5
944 \override NoteColumn.force-hshift = #0
953 Vamos a intentar codificar esta música partiendo de cero. Como
954 veremos, esto se topa con ciertas dificultades. Comenzamos tal y
955 como hemos aprendido, usando la construcción @code{<< \\ >>} para
956 introducir la música del primer compás en tres voces:
958 @lilypond[quote,verbatim,ragged-right]
959 \new Staff \relative {
962 { c''2 aes4. bes8 } \\ { <ees, c>2 des } \\ { aes'2 f4 fes }
969 @cindex voces y dirección de las plicas
970 @cindex plicas, voces y dirección de las
973 Las direcciones de las plicas se asignan automáticamente de forma
974 que las voces de numeración impar reciben las plicas hacia arriba
975 y las de numeración par hacia abajo. Las plicas de las voces 1 y
976 2 están correctas, pero las plicas de la voz 3 debería ir hacia
977 abajo en este fragmento en particular. Puede hacerse simplemente
978 añadiendo otro par de barras @code{\\}, pero en lugar de eso
979 usamosla instrucción @code{\voices} (que también nos permitiría
980 introducir las voces en un orden distinto, si quisiéramos):
982 @lilypond[quote,verbatim,ragged-right]
983 \new Staff \relative {
985 \voices 1,2,4 % Omit Voice three
998 Vemos que esto arregla la dirección de la plica, pero la
999 colocación horizontal de las notas no es la deseada. LilyPond
1000 desplaza las notas interiores cuando ellas o sus plicas de otro
1001 modo colisionarían con las voces exteriores, pero esto no es lo
1002 más adecuado para música de piano. En otras situaciones, los
1003 desplazamientos que LilyPond aplica pueden no eliminar las
1004 colisiones. LilyPond aporta varias formas de ajustar la
1005 colocación horizontal de las notas. Aún no estamos preparados
1006 para ver cómo se corrige esto, por lo que dejaremos el problema
1007 para una sección posterior (véase la propiedad
1008 @code{force-hshift} en @ref{Arreglar notación con
1011 @warning{No se pueden crear letras ni objetos de extensión (como
1012 ligaduras, reguladores, etc.) @q{entre} voces distintas.}
1015 Referencia de la notación:
1016 @ruser{Varias voces}.
1019 @node Voces explícitas
1020 @subsection Voces explícitas
1021 @translationof Explicitly instantiating voices
1026 @funindex \voiceThree
1027 @funindex \voiceFour
1029 @funindex \new Voice
1030 @cindex contextos de voz, creación de
1032 Los contextos de voz también se pueden crear manualmente dentro
1033 de un bloque @code{<< >>} para crear música polifónica,
1034 utilizando @code{\voiceOne} @dots{} @code{\voiceFour} para
1035 indicar las direcciones requeridas de plicas, ligaduras, etc. En
1036 partituras más largas, este método es más claro porque permite
1037 que las voces estén separadas y reciban nombres más descriptivos.
1039 Concretamente, la construcción @code{<< \\ >>} que usamos en la
1045 << @{ e'4 f g a @} \\ @{ c,4 d e f @} >>
1055 \new Voice = "1" @{ \voiceOne \relative @{ e'4 f g a @} @}
1056 \new Voice = "2" @{ \voiceTwo \relative @{ c'4 d e f @} @}
1060 Los dos ejemplos anteriores producen:
1062 @c The following example should not display the code
1063 @lilypond[ragged-right,quote]
1065 \new Voice = "1" { \voiceOne \relative { e'4 f g a } }
1066 \new Voice = "2" { \voiceTwo \relative { c'4 d e f } }
1070 @cindex voces, retorno a única
1071 @cindex retorno a voz única
1073 Las instrucciones @code{\voiceXXX} establecen la dirección de las
1074 plicas, ligaduras de expresión, ligaduras de prolongación,
1075 articulaciones, anotaciones de texto, puntillos y digitaciones.
1076 @code{\voiceOne} y @code{\voiceThree} hacen que estos objetos
1077 apunten hacia arriba, mientras que @code{\voiceTwo} y
1078 @code{\voiceFour} los hacen apuntar hacia abajo. Estas
1079 instrucciones también producen un desplazamiento horizontal para
1080 cada voz cuando es necesario para evitar choques entre las
1081 cabezas. La instrucción @code{\oneVoice} devuelve los ajustes de
1082 nuevo a los valores normales para una sola voz.
1084 Veamos en algunos ejemplos sencillos exactamente qué efecto
1085 tienen @code{\oneVoice}, @code{\voiceOne} y @code{voiceTwo} sobre
1086 el marcado, las ligaduras de unión y de expresión y las
1087 indicaciones de dinámica:
1089 @lilypond[quote,ragged-right,verbatim]
1091 % Default behavior or behavior after \oneVoice
1092 c'4 d8~ 8 e4( f | g4 a) b-> c |
1096 @lilypond[quote,ragged-right,verbatim]
1099 c'4 d8~ 8 e4( f | g4 a) b-> c |
1101 c,4 d8~ 8 e4( f | g4 a) b-> c |
1105 @lilypond[quote,ragged-right,verbatim]
1108 c'4 d8~ 8 e4( f | g4 a) b-> c |
1110 c,4 d8~ 8 e4( f | g4 a) b-> c |
1114 A continuación veremos cuatro formas distintas de componer la
1115 notación del mismo pasaje polifónico, cada una de las cuales
1116 tiene sus ventajas según la circunstancia, utilizando el ejemplo
1117 de la sección anterior.
1119 Una expresión que aparece directamente dentro de @code{<< >>}
1120 pertenece a la voz principal (pero, observe, @strong{no} dentro
1121 de una construcción @code{<< \\ >>}). Esto es útil cuando
1122 aparecen voces nuevas mientras la voz principal está sonando. A
1123 continuación podemos ver una realización más correcta del ejemplo
1124 de la sección anterior. Las notas rojas en forma de rombo
1125 muestran que la melodía principal está ahora dentro de un
1126 contexto de una sola voz, haciendo que se pueda trazar una
1127 ligadura por encima de ellas.
1129 @lilypond[quote,ragged-right,verbatim]
1130 \new Staff \relative {
1132 % This section is homophonic
1134 % Start simultaneous section of three voices
1136 % Continue the main voice in parallel
1137 { g4 f e | d2 e) | }
1138 % Initiate second voice
1140 % Set stems, etc., down
1142 r8 e4 d c8~ | 8 b16 a b8 g~ 2 |
1144 % Initiate third voice
1146 % Set stems, etc, up
1154 @cindex voices, continuas
1157 La instrucción @code{\voices} se puede usar también para continuar
1158 una voz principal dentro de la construcción de voces simultáneas:
1160 @lilypond[quote,ragged-right,verbatim]
1161 \new Staff \relative {
1162 \new Voice = "main" {
1164 % This section is homophonic
1166 % Start simultaneous section of three voices
1169 % Continue the main voice in parallel
1170 { g4 f e | d2 e) | }
1171 % Initiate second voice
1173 % Set stems, etc., down
1174 { r8 e4 d c8~ | 8 b16 a b8 g~ 2 | }
1176 % Initiate third voice
1177 % Set stems, etc, up
1185 @cindex anidado de expresiones musicales
1186 @cindex anidado de construcciones simultáneas
1187 @cindex anidado de voces
1188 @cindex voces temporales
1189 @cindex voces, anidado de
1191 Son posibles construcciones polifónicas anidadas más
1192 profundamente, y si una voz aparece sólo brevemente podría haber
1193 una forma más natural de tipografiar la música.
1195 @lilypond[quote,ragged-right,verbatim]
1196 \new Staff \relative {
1199 { g4 f e | d2 e) | }
1204 { c8 b16 a b8 g~ 2 | }
1215 @cindex espaciadoras, notas
1217 Este método de anidar voces nuevas brevemente es útil cuando sólo
1218 hay secciones polifónicas pequeñas, pero cuando todo el
1219 pentagrama es muy polifónico podría ser más claro usar varias
1220 voces todo el tiempo, usando notas espaciadoras para pasar por
1221 encima de las secciones en que una voz está en silencio, como
1224 @lilypond[quote,ragged-right,verbatim]
1225 \new Staff \relative <<
1226 % Initiate first voice
1229 c'16^( d e f g4 f e | d2 e) |
1231 % Initiate second voice
1233 % Set stems, etc, down
1235 s4 r8 e4 d c8~ | 8 b16 a b8 g~ 2 |
1237 % Initiate third voice
1239 % Set stems, etc, up
1246 @subsubheading Columnas de notas
1248 @cindex columna de notas
1249 @cindex colisiones de notas
1250 @cindex notas, colisiones de
1251 @cindex desplazamiento, instrucciones de
1255 @funindex \shiftOnnn
1257 Las notas cercanas de un acorde, o las notas que se producen al
1258 mismo tiempo en distintas voces, se disponen en dos (y
1259 ocasionalmente más) columnas para evitar el solapamiento de las
1260 cabezas. Reciben el nombre de columnas de notas. Hay columnas
1261 distintas para cada voz, y el desplazamiento especificado en
1262 curso dependiente de la voz se aplica a la columna de la nota si
1263 en caso contrario se produjese una colisión. Esto se puede ver
1264 en el ejemplo anterior. En el compás 2 el Do en la voz dos está
1265 desplazado a la derecha respecto del Re de la voz uno, y en el
1266 último acorde el Do de la voz tres también está desplazado a la
1267 derecha respecto de las otras notas.
1269 Las instrucciones @code{\shiftOn}, @code{\shiftOnn},
1270 @code{\shiftOnnn} y @code{\shiftOff} especifican el grado en que
1271 se deben desplazar las notas y acordes de la voz si en caso
1272 contrario ocurriese una colisión. De forma predeterminada, las
1273 voces exteriores (normalmente las voces uno y dos) llevan
1274 especificado @code{\shiftOff}, mientras que las voces interiores
1275 (tres y cuatro) tienen @code{\shiftOn} especificado. Cuando se
1276 aplica un desplazamiento, las voces uno y tres se desplazan hacia
1277 la derecha y las voces dos y cuatro se desplazan hacia la
1280 @code{\shiftOnn} y @code{\shiftOnnn} definen niveles adicionales
1281 de desplazamiento que se pueden especificar temporalmente para
1282 resolver colisiones en situaciones complejas (véase
1283 @ref{Ejemplos reales de música}).
1285 Una columna de notas puede contener sólo una nota (o acorde) de
1286 una voz con las plicas hacia arriba y una not (o acorde) de una
1287 voz con las plicas hacia abajo. Si las notas de dos voces que
1288 tienen las plicas en la misma dirección se sitúan en la misma
1289 posición y las dos voces no tienen ningún desplazamiento o llevan
1290 especificado el mismo desplazamiento, se producirá el mensaje de
1291 error @qq{Esta voz requiere un ajuste de @code{@bs{}voiceXx} o
1292 @code{@bs{}shiftXx}}.
1296 Manual de aprendizaje:
1297 @ref{Mover objetos}.
1299 Referencia de la notación:
1300 @ruser{Varias voces}.
1303 @node Voces y música vocal
1304 @subsection Voces y música vocal
1305 @translationof Voices and vocals
1308 La música vocal presenta una dificultad especial: tenemos que
1309 combinar dos expresiones, a saber, las notas y la letra.
1311 @funindex \new Lyrics
1314 @cindex Lyrics, creación de un contexto
1315 @cindex letra, creación de un contexto de
1316 @cindex letra, enlazar con una voz
1318 Ya ha visto la instrucción @code{\addlyrics@{@}}, que maneja bien
1319 partituras sencillas. Sin embargo esta técnica es algo limitada.
1320 Para música de mayor complejidad, tenemos que introducir la letra
1321 en un contexto @code{Lyrics} utilizando @code{\new Lyrics} y
1322 enlazar explícitamente la letra y las notas mediante
1323 @code{\lyricsto@{@}}, usando el nombre asignado a la voz.
1325 @lilypond[quote,verbatim]
1327 \new Voice = "one" {
1331 c''4 b8. a16 | g4. f8 | e4 d | c2 |
1334 \new Lyrics \lyricsto "one" {
1335 No more let | sins and | sor -- rows | grow. |
1340 Observe que la letra se debe enlazar a un contexto de
1341 @code{Voice}, @emph{no} a un contexto de @code{Staff}. Este es
1342 un caso en que es necesario crear contextos de @code{Staff} y de
1343 @code{Voice} explícitamente.
1345 @cindex letra y barrado
1346 @cindex barrado y letra
1347 @funindex \autoBeamOff
1349 El barrado automático que LilyPond usa de forma predeterminada
1350 funciona bien para la música instrumental, pero no tan bien para
1351 música con letra, donde o bien el barrado no se necesita en
1352 absoluto, o bien se utiliza para indicar los melismas de la
1353 letra. En el ejemplo anterior hemos utilizado la instrucción
1354 @code{\autoBeamOff} para desactivar el barrado automático.
1356 @funindex \new ChoirStaff
1357 @funindex ChoirStaff
1358 @funindex \lyricmode
1359 @cindex vocal, estructura de una partitura
1360 @cindex coro, sistema de
1362 Ahora vamos a reutilizar el ejemplo anterior de «Judas Macabeo»
1363 para ilustrar esta técnica más flexible. Primero la
1364 reescribiremos para que use variables, de manera que la música y
1365 la letra se puedan separar de la estructura de pentagramas.
1366 También introduciremos una llave de grupo de ChoirStaff. La
1367 letra en sí se debe introducir con @code{\lyricmode} para estar
1368 seguros de que se interpreta como letra y no como música.
1370 @lilypond[quote,verbatim]
1371 global = { \key f \major \time 6/8 \partial 8 }
1373 SopOneMusic = \relative {
1374 c''8 | c8([ bes)] a a([ g)] f | f'4. b, | c4.~ 4
1376 SopOneLyrics = \lyricmode {
1377 Let | flee -- cy flocks the | hills a -- dorn, __
1379 SopTwoMusic = \relative {
1380 r8 | r4. r4 c'8 | a'8([ g)] f f([ e)] d | e8([ d)] c bes'
1382 SopTwoLyrics = \lyricmode {
1383 Let | flee -- cy flocks the | hills a -- dorn,
1389 \new Voice = "SopOne" {
1393 \new Lyrics \lyricsto "SopOne" {
1398 \new Voice = "SopTwo" {
1402 \new Lyrics \lyricsto "SopTwo" {
1410 Ésta es la estructura básica de todas las partituras vocales. Se
1411 pueden añadir más pentagramas según se necesite, se pueden añadir
1412 más voces a los pentagramas y más estrofas a la letra, y las
1413 variables que contienen la música se pueden colocar fácilmente en
1414 archivos separados cuando se hagan demasiado largos.
1416 @cindex himno, estructura de
1417 @cindex SATB, estructura de
1418 @cindex vocal, partitura, varias estrofas
1419 @cindex varias estrofas vocales
1420 @cindex estrofas, varias, vocales
1422 A continuación podemos ver un ejemplo final de la primera línea
1423 de un himno con cuatro estrofas, para coro SATB. En este caso la
1424 letra de las cuatro partes es la misma. Observe cómo utilizamos
1425 variables para separar la notación musical de la estructura de
1426 pentagramas. Observe también cómo se utiliza una variable, para
1427 la que hemos elegido el nombre @q{TimeKey} («compás y
1428 tonalidad»), para que contenga varias instrucciones que se usarán
1429 dentro de los dos pentagramas. En otros ejemplos se le suele dar
1430 el nombre de @q{global}.
1434 @lilypond[quote,verbatim]
1435 keyTime = { \key c \major \time 4/4 \partial 4 }
1437 SopMusic = \relative { c'4 | e4. e8 g4 g | a4 a g }
1438 AltoMusic = \relative { c'4 | c4. c8 e4 e | f4 f e }
1439 TenorMusic = \relative { e4 | g4. g8 c4. b8 | a8 b c d e4 }
1440 BassMusic = \relative { c4 | c4. c8 c4 c | f8 g a b c4 }
1443 \lyricmode { E -- | ter -- nal fa -- ther, | strong to save, }
1445 \lyricmode { O | Christ, whose voice the | wa -- ters heard, }
1447 \lyricmode { O | Ho -- ly Spi -- rit, | who didst brood }
1449 \lyricmode { O | Tri -- ni -- ty of | love and pow'r }
1455 \new Voice = "Sop" { \voiceOne \keyTime \SopMusic }
1456 \new Voice = "Alto" { \voiceTwo \AltoMusic }
1457 \new Lyrics \lyricsto "Sop" { \VerseOne }
1458 \new Lyrics \lyricsto "Sop" { \VerseTwo }
1459 \new Lyrics \lyricsto "Sop" { \VerseThree }
1460 \new Lyrics \lyricsto "Sop" { \VerseFour }
1464 \new Voice = "Tenor" { \voiceOne \keyTime \TenorMusic }
1465 \new Voice = "Bass" { \voiceTwo \BassMusic }
1473 Referencia de la notación:
1474 @ruser{Música vocal}.
1477 @node Contextos y grabadores
1478 @section Contextos y grabadores
1479 @translationof Contexts and engravers
1481 Los contextos y grabadores se han mencionado de manera informal
1482 en secciones anteriores; ahora tan sólo vamos a ver estos
1483 conceptos con más detalle, pues son importantes en el ajuste fino
1484 de la salida de LilyPond.
1487 * Explicación de los contextos::
1489 * Explicación de los grabadores::
1490 * Modificar las propiedades de los contextos::
1491 * Añadir y eliminar grabadores::
1494 @node Explicación de los contextos
1495 @subsection Explicación de los contextos
1496 @translationof Contexts explained
1498 @cindex contextos, explicación de los
1500 Cuando se imprime la música, se tienen que añadir a la salida una
1501 gran cantidad de elementos notacionales que no aparecen
1502 explícitamente en el archivo de entrada. Por ejemplo, compare la
1503 entrada y la salida del siguiente ejemplo:
1505 @lilypond[quote,verbatim]
1506 \relative { cis''4 cis2. | a4 a2. | }
1509 La entrada es bastante escueta, pero en la salida se han añadido
1510 las líneas divisorias, las alteraciones, la clave y la armadura
1511 de la tonalidad. Cuando LilyPond @emph{interpreta} la entrada,
1512 la información musical se analiza de izquierda a derecha de igual
1513 forma que un intérprete lee la partitura. Mientras se lee el
1514 código de entrada, el programa recuerda dónde están los límites
1515 de los compases, y qué alturas requieren alteraciones
1516 accidentales explícitas. Esta información se debe conservar a
1517 varios niveles. Por ejemplo, una alteración accidental afecta
1518 solamente a un pentagrama, mientras que una línea divisoria debe
1519 estar sincronizada a lo largo de todo el sistema.
1521 Dentro de LilyPond, estas reglas y pequeñas porciones de
1522 información se agrupan en @emph{Contexts}. Ya hemos visto el
1523 contexto de voz, @code{Voice}. Otros ejemplos de contextos son
1524 @code{Staff} (Pauta o pentagrama) y @code{Score} (Partitura).
1525 Los contextos son jerárquicos, de forma que reflejan la
1526 naturaleza jerárquica de una partitura musical. Por ejemplo: un
1527 contexto de @code{Staff} contener muchos contextos de
1528 @code{Voice}, y un contexto de @code{Score} puede contener muchos
1529 contextos de @code{Staff}.
1532 @sourceimage{context-example,5cm,,}
1535 Cada contexto asume la responsabilidad de imponer algunas reglas
1536 de notación, creando ciertos objetos de notación y manteniendo
1537 las propiedades asociadas. Por ejemplo, el contexto @code{Voice}
1538 puede introducir una alteración accidental y entonces el contexto
1539 @code{Staff} mantiene la regla de mostrar o suprimir la
1540 alteración para el resto del compás.
1542 Otro ejemplo lo constituye el hecho de que la sincronización de
1543 las líneas divisorias se gestiona dentro del contexto de la
1544 partitura, @code{Score}, de forma predeterminada. Sin embargo,
1545 en algunas músicas posiblemente no queramos que las líneas
1546 divisorias estén sincronizadas (pensemos en una partitura
1547 polimétrica en compases de 4/4 y de 3/4). En tales casos,
1548 debemos modificar los ajustes por omisión de los contextos
1549 @code{Score} y @code{Staff}.
1551 Para partituras muy sencillas, los contextos se crean
1552 implícitamente y no debemos preocuparnos por ellos. Para piezas
1553 mayores, como por ejemplo cualquiera que tenga más de un
1554 pentagrama, los contextos se deben crear explícitamente para
1555 asegurarnos de que tendremos la cantidad exacta de pentagramas
1556 que necesitamos, y que están en el orden correcto. Para
1557 tipografiar piezas con notación especializada, es frecuente la
1558 modificación de contextos existentes o incluso definir unos
1559 completamente nuevos.
1561 Además de los contextos @code{Score,} @code{Staff} y
1562 @code{Voice}, hay contextos que se sitúan entre los niveles de
1563 partitura y de pentagrama para controlar los grupos de
1564 pentagramas, como los contextos @code{PianoStaff} y
1565 @code{ChoirStaff}. También existen contextos alternativos de
1566 pentagrama y de voz, y contextos para la letra, la percusión,
1567 diagramas de trastes, bajo cifrado, etc.
1569 Los nombres de todos los tipos de contextos se componen de una o
1570 más palabras que comienzan con mayúscula y que están unidas unas
1571 a otras sin guión ni barra baja, por ejemplo:
1572 @code{GregorianTranscriptionStaff}.
1576 Referencia de la notación:
1577 @ruser{Explicación de los contextos}.
1580 @node Crear contextos
1581 @subsection Crear contextos
1582 @translationof Creating contexts
1585 @cindex nuevos contextos
1586 @cindex creación de contextos
1587 @cindex contextos, creación de
1589 En un archivo de entrada, el bloque de partitura (que se presenta
1590 precedido por la instrucción @code{\score}) contiene una sola
1591 expresión musical; pero también puede contener
1592 una definición de salida asociada: bien un
1593 bloque @code{\layout} o bien un bloque @code{\midi}. El
1594 contexto @code{Score} se suele dejar que se cree automáticamente
1595 cuando comienza la interpretación de esa expresión musical.
1597 Para partituras que solamente tienen una voz y un pentagrama,
1598 podemos también dejar que los contextos @code{Voice} y
1599 @code{Staff} se creen automáticamente, pero para partituras más
1600 complejas es necesario crearlos a mano. La instrucción más
1601 simple que hace esto es @code{\new}. Se antepone a una expresión
1602 musical, por ejemplo
1605 \new @var{tipo} @var{expresión_musical}
1609 donde @var{tipo} es el nombre de un contexto (como @code{Staff} o
1610 @code{Voice}). Esta instrucción crea un contexto nuevo, y
1611 comienza a interpretar la @var{expresión_musical} que está dentro
1614 @warning{No se debe usar @bs{}@code{new Score} porque el contexto
1615 @code{Score} esencial del nivel superior ya se crea
1616 automáticamente al interpretarse la expresión musical que está
1617 dentro del bloque @bs{}@code{score}. Los valores predeterminados
1618 de propiedades de contexto válidos para toda la partitura se
1619 pueden cambiar dentro del bloque @bs{}@code{layout}. Véase
1620 @ref{Modificar las propiedades de los contextos}.}
1622 En las secciones anteriores ha podido ver muchos ejemplos
1623 prácticos que creaban nuevos contextos de @code{Staff} y de
1624 @code{Voice}, pero para recordarle cómo se emplean estas
1625 instrucciones en la práctica, he aquí un ejemplo anotado de
1628 @lilypond[quote,verbatim,ragged-right]
1629 \score { % start of single compound music expression
1630 << % start of simultaneous staves section
1632 \new Staff { % create RH staff
1635 \new Voice { % create voice for RH notes
1636 \relative { % start of RH notes
1642 \new Staff << % create LH staff; needs two simultaneous voices
1645 \new Voice { % create LH voice one
1647 \relative { % start of LH voice one notes
1648 g8 <bes d> ees, <g c> |
1649 g8 <bes d> ees, <g c> |
1650 } % end of LH voice one notes
1651 } % end of LH voice one
1652 \new Voice { % create LH voice two
1654 \relative { % start of LH voice two notes
1657 } % end of LH voice two notes
1658 } % end of LH voice two
1659 >> % end of LH staff
1660 >> % end of simultaneous staves section
1661 } % end of single compound music expression
1664 (Observe cómo todas las instrucciones que abren un bloque con una
1665 llave curva, @code{@{}, o con ángulos dobles, @code{<<}, están
1666 sangrados (tienen un margen adicional) con dos espacios
1667 adicionales, y la llave de cierre correspondiente tiene un margen
1668 exactamente igual. Aunque no es necesario, la observancia de
1669 esta práctica reducirá considerablemente el número de errores de
1670 @q{paréntesis descompensados}, y se recomienda vivamente.
1671 Permite apreciar de un solo vistazo la estructura de la música, y
1672 cualquier paréntesis descompensado aparecerá con obviedad.
1673 Observe también cómo el pentagrama de la MI se crea usando dobles
1674 ángulos porque requiere dos voces, mientras que el pentagrama de
1675 la MD se crea con una expresión musical única encerrada entre
1676 llaves porque sólo requiere una voz.)
1679 @cindex contextos, nombrado
1680 @cindex nombrar contextos
1682 La instrucción @code{\new} también puede otorgar un nombre
1683 identificativo al contexto para distinguirlo de otros contextos
1687 \new @var{tipo} = @var{identificador} @var{expresión_musical}
1690 Observe la distinción entre el nombre del tipo de contexto,
1691 @code{Staff}, @code{Voice}, etc., y el nombre identificativo de
1692 una instancia en particular de ese tipo, que puede ser cualquier
1693 secuencia de letras inventada por el usuario. En el nombre
1694 identificativo también se pueden utilizar dígitos y espacios,
1695 pero en este caso aquél debe ir entre comillas p.ej. @code{\new
1696 Staff = "MiPentagrama 1" @var{expresión_musical}}. El nombre
1697 identificativo se utiliza para referirnos más tarde a esa
1698 instancia en particular de un contexto. Hemos visto esto en la
1699 sección acerca de la letra, en @ref{Voces y música vocal}.
1703 Referencia de la notación:
1704 @ruser{Crear y referenciar contextos}.
1707 @node Explicación de los grabadores
1708 @subsection Explicación de los grabadores
1709 @translationof Engravers explained
1713 Todas y cada una de las marcas de la salida impresa de una
1714 partitura hecha con LilyPond está producida por un
1715 @code{Engraver} (grabador). Así, tenemos un grabador para
1716 imprimir pentagramas, otro para imprimir las cabezas de las
1717 notas, otro para las plicas, otro para las barras, etc, etc. ¡En
1718 total hay más de 120 grabadores! Afortunadamente, para la mayor
1719 parte de las partituras no es necesario conocer más que algunos,
1720 y para partituras sencillas no tenemos que saber nada de ninguno
1723 Los grabadores residen y operan dentro de Contextos. Los
1724 grabadores como el grabador de la indicación metronómica,
1725 @code{Metronome_mark_engraver}, cuya acción y resultado se
1726 aplican a la partitura como un todo, operan en el contexto del
1727 nivel más alto: el contexto de partitura @code{Score}.
1729 El grabador de la clave @code{Clef_engraver} y el de la armadura
1730 @code{Key_engraver} se encuentran probablemente en todos los
1731 contextos de pentagrama (@code{Staff}), pues los distintos
1732 pentagramas podrían requerir diferentes claves y armaduras.
1734 El grabador de las cabezas de nota @code{Note_heads_engraver} y
1735 el de las plicas @code{Stem_engraver} viven en cada uno de los
1736 contextos de voz @code{Voice}, el contexto de nivel más bajo de
1739 Cada grabador procesa los objetos particulares asociados con su
1740 función, y mantiene las propiedades que están relacionadas con
1741 dicha función. Estas propiedades, como las que están asociadas
1742 con los contextos, se pueden modificar para cambiar el
1743 funcionamiento del grabador o el aspecto de esos elementos en la
1746 Todos los grabadores tienen nombres compuestos de varias palabras
1747 que describen su función. Sólo está en mayúsculas la inicial de
1748 la primera palabra, y el resto se le une mediante guiones bajos.
1749 Así, el grabador @code{Staff_symbol_engraver} es responsable de
1750 la creación de las líneas del pentagrama, y el
1751 @code{Clef_engraver} determina y establece la altura o el punto
1752 de referencia sobre el pentagrama dibujando un símbolo de clave.
1754 A continuación presentamos algunos de los grabadores más comunes,
1755 junto a su función. Podrá comprobar que es fácil adivinar la
1756 función a partir del nombre (en inglés), y viceversa.
1758 @multitable @columnfractions .3 .7
1761 @item Accidental_engraver
1762 @tab Hace las alteraciones accidentales, de precaución y de sugerencia.
1764 @tab Graba las barras
1766 @tab Graba las claves
1767 @item Completion_heads_engraver
1768 @tab Divide las notas que atraviesan una línea divisoria
1769 @item Dynamic_engraver
1770 @tab Crea reguladores e indicaciones dinámicas textuales
1771 @item Forbid_line_break_engraver
1772 @tab Evita los saltos de línea si queda algún elemento musical activo
1774 @tab Crea la armadura de la tonalidad
1775 @item Metronome_mark_engraver
1776 @tab Graba la indicación metronómica
1777 @item Note_heads_engraver
1778 @tab Graba la cabeza de las notas
1780 @tab Graba los silencios
1781 @item Staff_symbol_engraver
1782 @tab Graba las cinco líneas (de forma predeterminada) del pentagrama
1784 @tab Crea las plicas y los trémolos de una sola plica
1785 @item Time_signature_engraver
1786 @tab Crea las indicaciones de compás
1791 Más adelante veremos cómo la salida de LilyPond se puede cambiar
1792 mediante la modificación del funcionamiento de los Grabadores.
1796 Referencia de funcionamiento interno:
1797 @rinternals{Engravers and Performers}.
1800 @node Modificar las propiedades de los contextos
1801 @subsection Modificar las propiedades de los contextos
1802 @translationof Modifying context properties
1804 @cindex contexto, propiedades de
1805 @cindex contexto, propiedades de, modificación
1806 @cindex modificar las propiedades de contexto
1810 Los contextos se responsabilizan de mantener los valores de un
1811 cierto número de @emph{properties} de contexto. Muchas de ellas
1812 se pueden cambiar para influir en la interpretación del código de
1813 entrada y cambiar así la apariencia de la salida impresa. Se
1814 modifican mediante la instrucción @code{\set}. Esta instrucción
1815 toma la forma siguiente:
1818 \set @emph{NombreDelContexto}.@emph{nombreDeLaPropiedad} = #@emph{valor}
1821 Donde el @emph{NombreDelContexto} es normalmente @code{Score},
1822 @code{Staff} o @code{Voice}. Se puede omitir, en cuyo caso se
1823 supone que es el contexto en curso (normalmente @code{Voice}).
1825 Los nombres de las propiedades de contexto consisten en palabras
1826 unidas sin ningún guión o barra baja, y donde todas las palabras
1827 excepto la primera empiezan en mayúscula. A continuación podemos
1828 ver algunos ejemplos de nombres de propiedades utilizadas con
1829 frecuencia. Hay muchas más que las que se muestran aquí.
1831 @c attempt to force this onto a new page
1833 @multitable @columnfractions .25 .15 .45 .15
1834 @headitem nombreDeLaPropiedad
1837 @tab Valor de ejemplo
1840 @tab Si es verdadero, poner becuadros adicionales antes de las alteraciones
1841 @tab @code{#t}, @code{#f}
1842 @item currentBarNumber
1844 @tab Ajustar el número del compás actual
1848 @tab Si es verdadero, imprimir ligaduras de expresión por encima y por debajo de las notas
1849 @tab @code{#t}, @code{#f}
1850 @item instrumentName
1852 @tab Establecer el nombre del pentagrama, situado a la izquierda
1853 @tab @code{"Cello I"}
1856 @tab Aumentar o disminuir el tamaño de la fuente tipográfica
1860 @tab Establecer el texto que se imprime antes del comienzo de una estrofa
1865 donde un valor Booleano es verdadero (@code{#t}, True) o falso
1866 (@code{#f}, False), un Entero es un número entero positivo, un
1867 número Real es un número decimal positivo o negativo, y el texto
1868 se encierra entre comillas dobles. Observe la aparición de
1869 signos de cuadradillo, (@code{#}), en dos lugares diferentes:
1870 como parte del valor Booleano antes de la @code{t} o la @code{f},
1871 y antes del @emph{valor} dentro de la sentencia @code{\set}. Así
1872 pues, cuando se está escribiendo un valor Booleano, hay que
1873 escribir dos signos de cuadradillo, por ejemplo: @code{##t}.
1875 @cindex propiedades que funcionan en contextos
1876 @cindex establecer propiedades en contextos
1878 Antes de poder establecer cualquiera de estas propiedades,
1879 tenemos que saber en qué contexto operan. A veces es algo obvio,
1880 pero en ocasiones puede ser algo enrevesado. Si especificamos un
1881 contexto equivocado, no se produce ningún mensaje de error, pero
1882 el funcionamiento esperado no tendrá lugar. Por ejemplo, la
1883 propiedad @code{clefGlyph} (dibujo de la clave) vive
1884 claramente dentro del contexto de @code{Staff}, puesto que es el
1885 glifo de la clave del pentagrama lo que se quiere cambiar.
1886 En este ejemplo, la primera clave del
1887 pentagrama se imprime correctamente, pero no la segunda (que imprime
1888 la clave predeterminada de Sol en lugar de la de Fa), porque hemos
1889 omitido el nombre del contexto.
1891 @lilypond[quote,verbatim,ragged-right]
1893 \new Staff \relative {
1894 \set Staff.clefGlyph = "clefs.C"
1897 \new Staff \relative {
1898 \set clefGlyph = "clefs.F" % Wrong!
1904 Recuerde que el nombre del contexto predeterminado es
1905 @code{Voice}, así que la segunda instrucción @code{\set}
1906 establece la propiedad @code{clefGlyph} del contexto
1907 @code{Voice} a @code{clefs.F}, pero como LilyPond no busca esta
1908 propiedad en el contexto @code{Voice}, no se realiza ninguna
1909 acción. Esto no es un error, y no se registra ningún mensaje en
1910 el archivo Log de registro de errores.
1912 De forma parecida, si el nombre de la propiedad se escribe con
1913 alguna falta, no se produce ningún mensaje de error, y claramente
1914 la acción esperada no puede tener lugar. De hecho, se puede
1915 establecer cualquier @q{property} (ficticia) usando cualquier
1916 nombre que queramos en cualquier contexto que exista, mediante el
1917 uso de la instrucción @code{\set}. Pero si el nombre no es
1918 conocido para LilyPond, no producirá ninguna acción. Algunos
1919 editores de texto que apoyan a los archivos de entrada de
1920 LilyPond de manera especial, documentan los nombres de
1921 propiedades con viñetas cuando pasamos sobre ellos con el puntero
1922 del ratón, como JEdit con la extensión LilyPondTool, o resaltan
1923 los nombres de propiedades desconocidas de manera diferente, como
1924 ConTEXT. Si no se utiliza un editor con tales posibilidades, se
1925 recomienda comprobar la corrección del nombre de la propiedad en
1926 el manual de Referencia de funcionamiento interno: véase
1927 @rinternals{Tunable context properties} o @rinternals{Contexts}.
1929 La propiedad @code{clefGlyph} tendrá efecto solamente si se
1930 establece dentro del contexto @code{Staff}, pero algunas
1931 propiedades se pueden establecer en más de un contexto. Por
1932 ejemplo, la propiedad @code{extraNatural} está establecida por
1933 defecto al valor @code{##t} (verdadero) para todos los
1934 pentagramas. Si se establece a @code{##f} (falso) en un contexto
1935 de @code{Staff} determinado, se aplicará solamente a las
1936 alteraciones de ese pentagrama. Si se establece a falso en el
1937 contexto de la partitura, @code{Score}, se aplicará a todos los
1940 Así, esto desactivará los becuadros adicionales en un pentagrama:
1942 @lilypond[quote,verbatim,ragged-right]
1944 \new Staff \relative {
1947 \new Staff \relative {
1948 \set Staff.extraNatural = ##f
1955 y esto los desactivará en todos los pentagramas:
1957 @lilypond[quote,verbatim,ragged-right]
1959 \new Staff \relative {
1962 \new Staff \relative {
1963 \set Score.extraNatural = ##f
1969 Como un ejemplo más, si se establece @code{clefTransposition}
1970 dentro del contexto de @code{Score}, éste cambia inmediatamente
1971 el valor de la transposición en todos los pentagramas en curso y
1972 establece un nuevo valor predeterminado que se aplicará a todos
1975 La instrucción opuesta, @code{\unset}, tiene el efecto de
1976 suprimir la propiedad del contexto, lo que ocasiona que la
1977 mayoría de las propiedades vuelvan a su valor predeterminado.
1978 Normalmente no es necesario el uso de @code{\unset}, pues una
1979 nueva instrucción @code{\set} hará el ajuste deseado.
1981 Las instrucciones @code{\set} y @code{\unset} pueden aparecer en
1982 cualquier lugar del archivo de entrada y tendrán efecto a partir
1983 del tiempo en que se encuentran y hasta el final de la partitura
1984 o hasta que la propiedad se establezca de nuevo mediante
1985 @code{\set} o @code{\unset}. Probemos a modificar el tamaño de
1986 la fuente tipográfica, lo que afecta al tamaño de las cabezas de
1987 las notas (entre otras cosas) varias veces. El cambio se toma a
1988 partir del valor predeterminado, no el valor en curso.
1990 @lilypond[quote,verbatim,ragged-right]
1993 % make note heads smaller
1996 % make note heads larger
1997 \set fontSize = #2.5
1999 % return to default size
2005 Hemos podido ver cómo establecer los valores de diversos tipos de
2006 propiedad diferentes. Observe que los números enteros y reales
2007 van siempre precedidos de un símbolo de cuadradillo, @code{#},
2008 mientras que un valor booleano verdadero o falso se especifica
2009 mediante @code{##t} y @code{##f}, con dos cuadradillos. Una
2010 propiedad de texto se debe encerrar entre comillas dobles, como
2011 antes, aunque veremos más adelante que el texto realmente se
2012 puede especificar de una forma mucho más general utilizando la
2013 potentísima instrucción @code{markup}.
2015 @subsubheading Cambiar las propiedades de un contexto con @code{\with}
2018 @cindex contexto, propiedades de, establecimiento con \with
2020 El valor predeterminado de las propiedades de contexto se puede
2021 establecer en el momento en que se crea el contexto. A veces
2022 esta forma de establecer el valor de una propiedad es mucho más
2023 clara, si ha de quedar fijo durante todo el tiempo que dure el
2024 contexto. Cuando se crea un contexto con una instrucción
2025 @code{\new} puede ir inmediatamente seguido de un bloque
2026 @code{\with @{ @dots{} @}} en el que se establecen los valores
2027 predeterminados de las propiedades. Por ejemplo, si queremos
2028 suprimir la impresión de becuadros adicionales para toda la
2029 duración de un pentagrama, podemos escribir:
2032 \new Staff \with @{ extraNatural = ##f @}
2036 de la siguiente forma:
2038 @lilypond[quote,verbatim,ragged-right]
2042 gisis'4 gis aeses aes
2045 \new Staff \with { extraNatural = ##f } {
2047 gisis'4 gis aeses aes
2053 Las propiedades ajustadas de esta manera aún pueden cambiarse
2054 dinámicamente utilizando @code{\set} y ser devueltas al valor
2055 predeterminados que se estableció en el bloque @code{\with}
2056 mediante @code{\unset}.
2058 @cindex fontSize (tamaño de la tipografía)
2059 @cindex fuente, tamaño de la
2060 @cindex tamaño de la fuente
2062 Así pues, si la propiedad @code{fontSize} se ajusta dentro de una
2063 cláusula @code{\with}, tiene el efecto de reiniciar el valor
2064 predeterminado del tamaño de la fuente tipográfica. Si más tarde
2065 se modifica con @code{\set}, este nuevo valor predeterminado
2066 puede restablecerse con la instrucción @code{\unset fontSize}.
2068 @subsubheading Cambiar las propiedades de un contexto con @code{\context}
2070 @cindex contextos, establecer propiedades de, con \context
2073 Los valores de propiedad de los contextos se pueden establecer
2074 para @emph{todos} los contextos de un tipo determinado, como por
2075 ejemplo todos los contextos de @code{Staff}, con una única
2076 instrucción. El tipo de contexto se identifica mediante la
2077 utilización del nombre de su tipo, como @code{Staff}, precedido
2078 de una barra invertida: @code{\Staff}. El enunciado que
2079 establece el valor de la propiedad es el mismo que el que está en
2080 un bloque @code{\with}, presentado anteriormente. Se coloca en
2081 un bloque @code{\context} dentro de un bloque @code{\layout}.
2082 Cada bloque @code{\context} afecta a todos los contextos del tipo
2083 especificado a lo largo del bloque @code{\score} o @code{\book}
2084 en el que aparece el bloque @code{\layout}. A continuación
2085 presentamos un ejemplo que muestra el formato:
2087 @lilypond[verbatim,quote]
2103 Si se quiere aplicar la sobreescritura de propiedades a todos los
2104 pentagramas de la partitura:
2106 @lilypond[quote,verbatim]
2111 gisis'4 gis aeses aes
2116 gisis'4 gis aeses aes
2122 \Score extraNatural = ##f
2129 Las propiedades de contexto establecidas de esta forma se pueden
2130 sobreescribir para ejemplares concretos de contextos mediante
2131 enunciados dentro de un bloque @code{\with}, y mediante
2132 instrucciones @code{\set} intercaladas dentro de enunciados
2137 Referencia de la notación:
2138 @ruser{Cambiar los valores por omisión de los contextos},
2140 @c uncomment when backslash-node-name issue is resolved -pm
2141 @ruser{La instrucción set}.
2143 Referencia de funcionamiento interno:
2144 @rinternals{Contexts},
2145 @rinternals{Tunable context properties}.
2148 @node Añadir y eliminar grabadores
2149 @subsection Añadir y eliminar grabadores
2150 @translationof Adding and removing engravers
2152 @cindex grabadores, adición
2153 @cindex grabadores, eliminación
2154 @cindex adición de grabadores
2155 @cindex eliminación de grabadores
2160 Hemos visto que cada uno de los contextos contiene varios
2161 grabadores, cada uno de los cuales a su vez es responsable de la
2162 producción de una fracción particular del resultado impreso, como
2163 líneas divisorias, pentagramas, cabezas, plicas, etc. Si un
2164 grabador es eliminado de un contexto, ya no podrá producir su
2165 salida impresa. Es una forma algo radical de modificar la
2166 salida, pero a veces puede ser útil.
2168 @subsubheading Cambiar un solo contexto
2170 Para eliminar un grabador de un contexto único, usamos la
2171 instrucción @code{\with} situada inmediatamente después de la
2172 instrucción que crea el contexto, como en la sección anterior.
2174 Como ilustración, repitamos un ejemplo extraído de la sección
2175 anterior con las líneas del pentagrama eliminadas. Recuerde que
2176 las líneas del pentagrama están dibujadas por el grabador
2177 @code{Staff_symbol_engraver}.
2179 @lilypond[quote,verbatim,ragged-right]
2181 \remove "Staff_symbol_engraver"
2185 \set fontSize = #-4 % make note heads smaller
2187 \set fontSize = #2.5 % make note heads larger
2189 \unset fontSize % return to default size
2194 @cindex ámbito, grabador del
2196 Los grabadores también se pueden añadir a los contextos
2197 individuales La instrucción que lo hace es
2199 @code{\consists @var{Nombre_del_grabador}},
2201 situada dentro de un bloque @code{\with}. Ciertas partituras
2202 vocales tienen una indicación de ámbito o tesitura situada al
2203 principio del pentagrama para indicar el ámbito de notas en dicho
2204 pentagrama, véase @rglos{ambitus}. El ambitus se produce por
2205 parte del grabador @code{Ambitus_engraver}, que normalmente no
2206 está incluido en ningún contexto. Si lo añadimos al contexto
2207 @code{Voice}, calcula el rango a partir de esa única voz:
2209 @lilypond[quote,verbatim,ragged-right]
2212 \consists "Ambitus_engraver"
2229 pero si añadimos el grabador de ámbito al contexto de
2230 @code{Staff}, calcula el rango de todas las notas en todas las
2231 voces de ese pentagrama:
2233 @lilypond[quote,verbatim,ragged-right]
2235 \consists "Ambitus_engraver"
2253 @subsubheading Cambiar todos los contextos del mismo tipo
2257 Los ejemplos anteriores muestran la manera de eliminar o añadir
2258 grabadores a los contextos individuales. También es posible
2259 eliminar o añadir grabadores a todos los contextos de un tipo
2260 específico, situando las instrucciones en el contexto
2261 correspondiente dentro de un bloque @code{\layout}. Por ejemplo,
2262 si queremos mostrar los rangos de tesitura para todos los
2263 pentagramas de una partitura de cuatro pautas, podemos escribir
2265 @lilypond[quote,verbatim,ragged-right]
2294 \consists "Ambitus_engraver"
2301 Los valores predeterminados de las propiedades de los contextos
2302 también se pueden establecer para todos los contextos de un tipo
2303 en particular incluyendo la instrucción @code{\set} dentro de un
2304 bloque @code{\context} de la misma forma.
2308 Referencia de la notación:
2309 @ruser{Modificar los complementos (plug-ins) de contexto},
2310 @ruser{Cambiar los valores por omisión de los contextos}.
2313 Los grabadores @code{Stem_engraver} y @code{Beam_engraver} (de
2314 plica y de barra) adjuntan a la cabeza de las notas los objetos
2315 que crean. Si se suprime el grabador de cabezas de nota
2316 @code{Note_heads_engraver}, no se produce ninguna cabeza y por
2317 tanto no se crean tampoco plicas ni barras.
2320 @node Extender las plantillas
2321 @section Extender las plantillas
2322 @translationof Extending the templates
2324 Ha leído el tutorial y ahora sabe escribir música. Pero ¿cómo
2325 puede poner los pentagramas que quiere? Las plantillas están muy
2326 bien, pero ¿qué ocurre si quiere algo que no está en una de
2327 ellas? Bien, puede encontrar montañas de plantillas (véase
2328 @ref{Plantillas}) que le pueden servir como punto de partida.
2329 Pero ¿y si quiere algo que no está contemplado aquí? Continúe
2334 * Soprano y violoncello::
2335 * Partitura vocal a cuatro voces SATB::
2336 * Crear una partitura partiendo de cero::
2337 * Ahorrar tecleo mediante variables y funciones::
2338 * Partituras y particellas::
2341 @node Soprano y violoncello
2342 @subsection Soprano y violoncello
2343 @translationof Soprano and cello
2345 @cindex plantilla, modificar
2346 @cindex modificar plantillas
2348 Para empezar, tome la plantilla que le parezca más parecida a
2349 aquello que quiere conseguir. Digamos que quiere escribir algo
2350 para soprano y cello. En este caso comenzaríamos con la
2351 plantilla @q{Notas y letra} (para la parte de soprano).
2354 \version @w{"@version{}"}
2355 melodia = \relative @{
2362 texto = \lyricmode @{
2368 \new Voice = "uno" @{
2372 \new Lyrics \lyricsto "uno" \texto
2379 Ahora queremos añadir una parte de violoncello. Veamos el
2380 ejemplo @q{Sólo notas}:
2383 \version @w{"@version{}"}
2384 melodia = \relative @{
2398 No necesitamos dos instrucciones @code{\version}. Vamos a
2399 necesitar la sección @code{melodia}. No queremos dos secciones
2400 @code{\score} (si tuviésemos dos @code{\score}s, acabaríamos con
2401 las dos particellas por separado. Queremos las dos juntas, como
2402 un dúo. Dentro de la sección @code{\score}, no nos hacen falta
2403 dos @code{\layout} ni dos @code{\midi}.
2405 Si nos limitásemos a copiar y pegar la sección @code{melodia},
2406 acabaríamos con dos secciones @code{melodia} separadas, así que
2407 vamos a cambiarles el nombre. Llamaremos @code{musicaSoprano} a
2408 la sección de la soprano y @code{musicaCello} a la sección del
2409 violoncello. Al mismo tiempo cambiaremos el nombre de
2410 @code{texto} a @code{letraSoprano}. Recuerde cambiar el nombre a
2411 las dos apariciones de todos estos nombres -- tanto la definición
2412 inicial (la parte @code{melodia = \relative @{ }) -- como el uso
2413 de ese nombre (en la sección @code{\score}).
2415 También aprovecharemos para cambiar el pentagrama de la parte del
2416 cello (los violoncellos se escriben normalmente en clave de Fa).
2417 Asimismo, cambiaremos algunas notas del cello.
2420 \version @w{"@version{}"}
2421 musicaSoprano = \relative @{
2428 letraSoprano = \lyricmode @{
2432 musicaCello = \relative @{
2441 \new Voice = "uno" @{
2445 \new Lyrics \lyricsto "uno" \letraSoprano
2452 Esto tiene una apariencia prometedora, pero la parte del cello no
2453 sale en la partitura (no la hemos puesto en la sección
2454 @code{\score}). Si queremos que la parte del cello aparezca
2455 debajo de la de soprano, tenemos que añadir
2458 \new Staff \musicaCello
2462 justo debajo de todo lo de la soprano. También tenemos que poner
2463 @code{<<} y @code{>>} antes y después de la música -- lo que
2464 indica a LilyPond que hay más de una cosa (en este caso,
2465 @code{Staff}) sucediendo al mismo tiempo --. La @code{\score} se
2466 parecerá ahora a esto:
2468 @c Indentation in this example is deliberately poor
2473 \new Voice = "uno" @{
2477 \new Lyrics \lyricsto "uno" \letraSoprano
2479 \new Staff \musicaCello
2487 Lo anterior parece un poco enrevesado; los márgenes están
2488 descuadrados. Esto tiene fácil solución. Presentamos aquí la
2489 plantilla completa para soprano y cello.
2491 @lilypond[quote,verbatim,ragged-right,addversion]
2492 sopranoMusic = \relative {
2499 sopranoLyrics = \lyricmode {
2503 celloMusic = \relative {
2513 \new Voice = "one" {
2517 \new Lyrics \lyricsto "one" \sopranoLyrics
2519 \new Staff \celloMusic
2528 Las plantillas de inicio se pueden encontrar en el apéndice
2529 @q{Plantillas}, véase @ref{Plantillas de pentagrama único}.
2532 @node Partitura vocal a cuatro voces SATB
2533 @subsection Partitura vocal a cuatro voces SATB
2534 @translationof Four-part SATB vocal score
2536 La mayor parte de las partituras vocales escritas para coro mixto
2537 a cuatro voces con acompañamiento orquestal, como el «Elías» de
2538 Mendelssohn o el «Mesías» de Haendel, tienen la música coral y la
2539 letra en cuatro pentagramas para S, A, T y B, respectivamente,
2540 con una reducción de piano del acompañamiento de orquesta, por
2541 debajo. He aquí un ejemplo del «Mesías» de Haendel:
2543 @c The following should appear as music without code
2544 @lilypond[quote,ragged-right]
2545 global = { \key d \major \time 4/4 }
2547 sopranoMusic = \relative {
2549 r4 d''2 a4 | d4. d8 a2 | cis4 d cis2 |
2551 sopranoWords = \lyricmode {
2552 Wor -- thy | is the lamb | that was slain |
2555 altoMusic = \relative {
2557 r4 a'2 a4 | fis4. fis8 a2 | g4 fis e2 |
2559 altoWords = \sopranoWords
2561 tenorMusic = \relative {
2563 r4 fis'2 e4 | d4. d8 d2 | e4 a, cis2 |
2565 tenorWords = \sopranoWords
2567 bassMusic = \relative {
2569 r4 d'2 cis4 | b4. b8 fis2 | e4 d a'2 |
2571 bassWords = \sopranoWords
2576 r4 <a' d fis>2 <a e' a>4 |
2577 <d fis d'>4. <d fis d'>8 <a d a'>2 |
2578 <g cis g'>4 <a d fis> <a cis e>2 |
2584 <d, d'>4 <d d'>2 <cis cis'>4 |
2585 <b b'>4. <b' b'>8 <fis fis'>2 |
2586 <e e'>4 <d d'> <a' a'>2 |
2590 << % combine ChoirStaff and PianoStaff in parallel
2592 \new Staff = "sopranos"
2593 \with { instrumentName = #"Soprano" }
2595 \new Voice = "sopranos" {
2600 \new Lyrics \lyricsto "sopranos" {
2603 \new Staff = "altos"
2604 \with { instrumentName = #"Alto" }
2606 \new Voice = "altos" {
2611 \new Lyrics \lyricsto "altos" {
2614 \new Staff = "tenors"
2615 \with { instrumentName = #"Tenor" }
2617 \new Voice = "tenors" {
2622 \new Lyrics \lyricsto "tenors" {
2625 \new Staff = "basses"
2626 \with { instrumentName = #"Bass" }
2628 \new Voice = "basses" {
2633 \new Lyrics \lyricsto "basses" {
2637 \new PianoStaff \with { instrumentName = #"Piano" }
2639 \new Staff = "upper" \upper
2640 \new Staff = "lower" \lower
2646 @warning{Esta disposición se puede conseguir muy fácilmente
2647 usando la plantilla incorporada: @code{satb.ly}, véase
2648 @ref{Plantillas incorporadas}. Pero para mayor facilidad de uso,
2649 esta plantilla oculta deliberadamente la necesaria estructura de
2650 contexto, proporcionándola automáticamente en vez de ello. Así
2651 pues, para nuestro objetivo de aprendizaje, veamos cómo construir
2652 la estructura partiendo de cero. Quizá necesite hacerlo cada vez
2653 que la plantilla incorporada no cumpla sus necesidades
2656 La plantilla (no incorporada: de copiar y editar) más parecida a
2658 @ref{Partitura vocal SATB y reducción para piano automática},
2659 pero necesitamos cambiar la disposición y añadir un
2660 acompañamiento de piano que no esté derivado automáticamente de
2661 las partes vocales. Las variables que contienen la música y la
2662 letra de las partes vocales es adecuada, pero tendremos que
2663 añadir variables para la reducción de piano.
2665 El orden en que aparecen los contextos en el ChoirStaff de la
2666 plantilla no se corresponde con el orden de la partitura vocal
2667 que hemos mostrado más arriba. Tenemos que reordenarlas para que
2668 haya cuatro pentagramas con la letra escrita directamente bajo
2669 las notas de cada parte. Todas las voces deben ser
2670 @code{\voiceOne}, que es la predeterminada, para que las
2671 instrucciones @code{\voiceXXX} se puedan eliminar. También
2672 tenemos que especificar la clave de tenor (clave de sol octava
2673 baja) en las partes de tenor. Aún no hemos encontrado la forma
2674 en que la letra se especifica en la plantilla, así que tenemos
2675 que utilizar el método que nos resulta familiar. También tenemos
2676 que escribir los nombres de cada pentagrama.
2678 Al hacerlo así obtenemos el ChoirStaff siguiente:
2682 \new Staff = "sopranos"
2683 \with @{ instrumentName = #"Soprano" @}
2685 \new Voice = "sopranos" @{
2690 \new Lyrics \lyricsto "sopranos" @{
2693 \new Staff = "altos"
2694 \with @{ instrumentName = #"Alto" @}
2696 \new Voice = "altos" @{
2701 \new Lyrics \lyricsto "altos" @{
2704 \new Staff = "tenors"
2705 \with @{ instrumentName = #"Tenor" @}
2707 \new Voice = "tenors" @{
2712 \new Lyrics \lyricsto "tenors" @{
2715 \new Staff = "basses"
2716 \with @{ instrumentName = #"Bass" @}
2718 \new Voice = "basses" @{
2723 \new Lyrics \lyricsto "bajos" @{
2726 >> % fin del ChoirStaff
2729 A continuación debemos trabajar sobre la parte de piano. Es
2730 fácil: tan sólo hay que sacar la parte de piano de la plantilla
2731 de @q{Piano solista}:
2734 \new PianoStaff \with @{ instrumentName = #"Piano " @}
2736 \new Staff = "superior" \superior
2737 \new Staff = "inferior" \inferior
2741 y escribir las definiciones de variable para @code{superior} e
2744 Los grupos ChoirStaff y PianoStaff se deben combinar utilizando
2745 ángulos dobles, ya queremos apilarlos unos sobre otros:
2748 << % combinar los grupos ChoirStaff y PianoStaff uno sobre el otro
2750 \new Staff = "sopranos" <<
2751 \new Voice = "sopranos" @{
2756 \new Lyrics \lyricsto "sopranos" @{
2759 \new Staff = "altos" <<
2760 \new Voice = "altos" @{
2765 \new Lyrics \lyricsto "altos" @{
2768 \new Staff = "tenores" <<
2769 \clef "G_8" % clave de tenor
2770 \new Voice = "tenores" @{
2775 \new Lyrics \lyricsto "tenores" @{
2778 \new Staff = "bajos" <<
2780 \new Voice = "bajos" @{
2785 \new Lyrics \lyricsto "bajos" @{
2788 >> % fin del ChoirStaff
2790 \new PianoStaff \with @{ instrumentName = #"Piano" @}
2792 \new Staff = "upper" \upper
2793 \new Staff = "lower" \lower
2798 Al combinar todo esto junto y escribir la música de los tres
2799 compases del ejemplo anterior, obtenemos:
2801 @lilypond[quote,verbatim,ragged-right,addversion]
2802 global = { \key d \major \time 4/4 }
2803 sopranoMusic = \relative {
2805 r4 d''2 a4 | d4. d8 a2 | cis4 d cis2 |
2807 sopranoWords = \lyricmode {
2808 Wor -- thy | is the lamb | that was slain |
2810 altoMusic = \relative {
2812 r4 a'2 a4 | fis4. fis8 a2 | g4 fis fis2 |
2814 altoWords = \sopranoWords
2815 tenorMusic = \relative {
2817 r4 fis'2 e4 | d4. d8 d2 | e4 a, cis2 |
2819 tenorWords = \sopranoWords
2820 bassMusic = \relative {
2822 r4 d'2 cis4 | b4. b8 fis2 | e4 d a'2 |
2824 bassWords = \sopranoWords
2828 r4 <a' d fis>2 <a e' a>4 |
2829 <d fis d'>4. <d fis d'>8 <a d a'>2 |
2830 <g cis g'>4 <a d fis> <a cis e>2 |
2835 <d, d'>4 <d d'>2 <cis cis'>4 |
2836 <b b'>4. <b' b'>8 <fis fis'>2 |
2837 <e e'>4 <d d'> <a' a'>2 |
2841 << % combine ChoirStaff and PianoStaff in parallel
2843 \new Staff = "sopranos"
2844 \with { instrumentName = #"Soprano" }
2846 \new Voice = "sopranos" {
2851 \new Lyrics \lyricsto "sopranos" {
2854 \new Staff = "altos"
2855 \with { instrumentName = #"Alto" }
2857 \new Voice = "altos" {
2862 \new Lyrics \lyricsto "altos" {
2865 \new Staff = "tenors"
2866 \with { instrumentName = #"Tenor" }
2868 \new Voice = "tenors" {
2873 \new Lyrics \lyricsto "tenors" {
2876 \new Staff = "basses"
2877 \with { instrumentName = #"Bass" }
2879 \new Voice = "basses" {
2884 \new Lyrics \lyricsto "basses" {
2890 \with { instrumentName = #"Piano " }
2892 \new Staff = "upper" \upper
2893 \new Staff = "lower" \lower
2900 @node Crear una partitura partiendo de cero
2901 @subsection Crear una partitura partiendo de cero
2902 @translationof Building a score from scratch
2904 @cindex plantilla, escribir su propia
2905 @cindex ejemplo de escritura de una partitura
2906 @cindex escribir una partitura, ejemplo
2907 @cindex partitura, ejemplo de escritura
2909 Después de adquirir algo de soltura en la escritura del código de
2910 LilyPond, se dará cuenta de que es más fácil construir
2911 completamente una partitura partiendo de cero, que modificar una
2912 plantilla. También puede desarrollar su propio estilo de forma
2913 que se adapte al tipo de música que le apetezca. Veamos a
2914 continuación cómo confeccionar una partitura para un preludio de
2915 órgano, como ejemplo.
2917 Comenzamos con una sección para el encabezamiento. Aquí es donde
2918 van el título, nombre del compositor, etc., después van las
2919 definiciones de las variables, y finalmente el bloque de
2920 partitura. Comencemos a verlas por encima y más tarde
2921 completaremos los detalles.
2923 Utilizaremos los dos primeros compases del preludio de Bach
2924 basado en @emph{Jesu, meine Freude}, que está escrito para órgano
2925 con dos manuales y pedal. Tiene estos dos compases de música al
2926 final de la sección. La parte del manual superior tiene dos
2927 voces, y el inferior y el pedal, una voz cada uno. Así pues,
2928 necesitamos cuatro definiciones para la música y una más para
2929 definir el compás y la tonalidad:
2932 \version @w{"@version{}"}
2934 title = "Jesu, meine Freude"
2935 composer = "J S Bach"
2937 keyTime = @{ \key c \minor \time 4/4 @}
2938 MusicaManualUnoVozUno = @{ s1 @}
2939 MusicaManualUnoVozDos = @{ s1 @}
2940 MusicaManualDos = @{ s1 @}
2941 MusicaPedal = @{ s1 @}
2947 Por el momento hemos escrito tan sólo una nota espaciadora,
2948 @code{s1}, en lugar de la música de verdad. La añadiremos más
2951 A continuación veamos qué va en el bloque de partitura.
2952 Sencillamente, reflejaremos la estructura de pentagramas que
2953 deseemos. La música de órgano se escribe por lo general en tres
2954 pentagramas, uno para cada uno de los manuales y otro para el
2955 pedal. Los pentagramas de los manuales se abarcan con una llave,
2956 así que los incluiremos en un grupo PianoStaff. La primera parte
2957 de manual tiene dos voces, y la segunda sólo una.
2961 \new Staff = "ManualUno" <<
2963 \MusicaManualUnoVozUno
2966 \MusicaManualUnoVozDos
2968 >> % fin del contexto de Staff ManualUno
2969 \new Staff = "ManualDos" <<
2973 >> % fin del contexto de Staff ManualDos
2974 >> % fin del contexto de PianoStaff
2977 Después, tenemos que añadir un pentagrama para el órgano de
2978 pedal. Esto va por debajo del PianoStaff, pero debe ser
2979 simultáneo con él, por lo que escribimos dobles ángulos rodeando
2980 a los dos. Si esto se nos olvida, se producirá un error en el
2981 archivo log de registro. ¡Es un error muy común que cometerá
2982 antes o después! Intente copiar el ejemplo final que aparece al
2983 final de la sección, borre los dobles ángulos y procese el
2984 archivo para ver qué error produce.
2987 << % el grupo PianoStaff y el pentagrama de Pedal son simultáneos
2989 \new Staff = "ManualUno" <<
2991 \MusicaManualUnoVozUno
2994 \MusicaManualUnoVozDos
2996 >> % fin del contexto de Staff ManualUno
2997 \new Staff = "ManualDos" <<
3001 >> % fin del contexto de Staff ManualDos
3002 >> % fin del contexto de PianoStaff
3003 \new Staff = "OrganoPedal" <<
3011 No es necesario utilizar la construcción simultánea @code{<<
3012 @dots{} >>} para el pentagrama del manual dos y el pentagrama del
3013 órgano de pedal, ya que contienen una única expresión, pero no
3014 hace daño, y es una buena costumbre utilizar siempre dobles
3015 ángulos después de @code{\new Staff} cuando hay varias voces. Lo
3016 opuesto es cierto para las voces: normalmente deben ir seguidas
3017 de llaves @code{@{ @dots{} @}} en caso de que tengamos música
3018 codificada como distintas variables que se deben situar
3021 Añadamos esta estructura al bloque de partitura, y ajustemos el
3022 sangrado de los márgenes. También escribimos las claves
3023 correspondientes, nos aseguramos de que las plicas y ligaduras de
3024 unión y de expresión en cada una de las voces del pentagrama
3025 superior apuntan en la dirección adecuada con @code{\voiceOne} y
3026 @code{\voiceTwo} y escribimos el compás y la tonalidad en cada
3027 uno de los pentagramas usando nuestra variable previamente
3028 definida @code{\TimeKey}.
3032 << % el grupo PianoStaff y el pentagrama de Pedal son simultáneos
3034 \new Staff = "ManualUno" <<
3035 \keyTime % establecer compás y tonalidad
3039 \MusicaManualUnoVozUno
3043 \MusicaManualUnoVozDos
3045 >> % fin del contexto de Staff ManualUno
3046 \new Staff = "ManualDos" <<
3052 >> % fin del contexto de Staff ManualDos
3053 >> % fin del contexto de PianoStaff
3054 \new Staff = "OrganoPedal" <<
3060 >> % fin del pentagrama de OrganoPedal
3062 @} % fin del contexto Score
3065 @cindex ampliabilidad de las pautas
3066 @cindex pautas, ampliabilidad
3068 La disposición anterior de los pentagramas de órgano es casi
3069 perfecta; sin embargo, existe un ligero defecto que no es visible
3070 cuando se observa un solo sistema: la distancia entre el
3071 pentagrama de pedal y el de la mano izquierda debiera ser
3072 aproximadamente la misma que la que existe entre los pentagramas
3073 de las manos izquierda y derecha. Concretamente, la
3074 ampliabilidad de los pentagramas dentro de un contexto
3075 @code{PianoStaff} es limitada (de forma que la distancia entre
3076 los pentagramas de las manos izquierda y derecha nunca crezcan
3077 excesivamente), y el pentagrama de los pedales debería
3078 comportarse de una forma similar.
3080 @cindex sub-propiedades
3081 @cindex propiedades, sub-propiedades
3082 @cindex objetos gráficos
3083 @cindex gráficos, objetos
3086 El grado de ampliabilidad o separabilidad de los pentagramas se
3087 puede controlar con la propiedad @code{staff-staff-spacing} del
3088 @q{objeto gráfico} @code{VerticalAxisGroup} (los objetos gráficos
3089 reciben por lo general el nombre de @q{grob}s en la documentación
3090 de lilypond); no se preocupe por el momento de los detalles, pues
3091 esto se explica más tarde de forma exhaustiva. Los más curiosos
3092 pueden echar un vistazo a @ruser{Panorámica de la modificación de
3093 las propiedades}. En este caso, queremos modificar solamente la
3094 sub-propiedad @code{stretchability}. De nuevo, los curiosos
3095 encontrarán los valores predeterminados para la propiedad
3096 staff-staff-spacing en el archivo @file{scm/define-grobs.scm}
3097 examinando la definición del grob @code{VerticalAxisGroup} grob.
3098 El valor de @code{stretchability} se toma de la definición del
3099 contexto @code{PianoStaff} (en el archivo
3100 @file{ly/engraver-init.ly}) de forma que los valores sean
3105 << % el grupo PianoStaff y el pentagrama de Pedal son simultáneos
3107 \new Staff = "ManualUno" <<
3108 \keyTime % establecer compás y tonalidad
3112 \MusicaManualUnoVozUno
3116 \MusicaManualUnoVozDos
3118 >> % % fin del contexto de Staff ManualUno
3119 \new Staff = "ManualDos" \with @{
3120 \override VerticalAxisGroup.staff-staff-spacing.stretchability = 5
3127 >> % fin del contexto de Staff ManualDos
3128 >> % fin del contexto de PianoStaff
3129 \new Staff = "OrganoPedal" <<
3135 >> % fin del pentagrama de OrganoPedal
3137 @} % fin del contexto Score
3140 Con esto se completa la estructura. Toda música para órgano de
3141 tres pentagramas tendrá una estructura similar, aunque el número
3142 de voces puede variar. Todo lo que nos queda es añadir la
3143 música, y combinar todas las partes.
3145 @lilypond[quote,verbatim,ragged-right,addversion]
3147 title = "Jesu, meine Freude"
3148 composer = "J S Bach"
3150 keyTime = { \key c \minor \time 4/4 }
3151 ManualOneVoiceOneMusic = \relative {
3155 ManualOneVoiceTwoMusic = \relative {
3156 ees'16 d ees8~ 16 f ees d c8 d~ d c~ |
3157 8 c4 b8 c8. g16 c b c d |
3159 ManualTwoMusic = \relative {
3160 c'16 b c8~ 16 b c g a8 g~ 16 g aes ees |
3161 f16 ees f d g aes g f ees d ees8~ 16 f ees d |
3163 PedalOrganMusic = \relative {
3164 r8 c16 d ees d ees8~ 16 a, b g c b c8 |
3165 r16 g ees f g f g8 c,2 |
3169 << % PianoStaff and Pedal Staff must be simultaneous
3171 \new Staff = "ManualOne" <<
3172 \keyTime % set key and time signature
3176 \ManualOneVoiceOneMusic
3180 \ManualOneVoiceTwoMusic
3182 >> % end ManualOne Staff context
3183 \new Staff = "ManualTwo" \with {
3184 \override VerticalAxisGroup.staff-staff-spacing.stretchability = 5
3191 >> % end ManualTwo Staff context
3192 >> % end PianoStaff context
3193 \new Staff = "PedalOrgan" <<
3199 >> % end PedalOrgan Staff context
3201 } % end Score context
3208 @node Ahorrar tecleo mediante variables y funciones
3209 @subsection Ahorrar tecleo mediante variables y funciones
3210 @translationof Saving typing with variables and functions
3213 @cindex identificadores
3215 Llegado a este punto, usted ha visto cosas de este tipo:
3217 @lilypond[quote,verbatim,ragged-right]
3218 hornNotes = \relative { c''4 b dis c }
3227 Incluso se dará cuenta de que esto puede ser útil en música
3230 @lilypond[quote,verbatim,ragged-right]
3231 fragmentA = \relative { a'4 a8. b16 }
3232 fragmentB = \relative { a'8. gis16 ees4 }
3234 violin = \new Staff {
3235 \fragmentA \fragmentA |
3236 \fragmentB \fragmentA |
3246 Sin embargo también puede usar estos identificadores (que también
3247 se conocen como variables, macros o instrucciones definidas por
3248 el usuario) para hacer trucos:
3250 @lilypond[quote,verbatim,ragged-right]
3251 dolce = \markup { \italic \bold dolce }
3253 centreText = { \once \override TextScript.self-alignment-X = #CENTER }
3256 \dynamic f \italic \small { 2nd } \hspace #0.1 \dynamic p
3259 violin = \relative {
3261 c''4._\dolce b8 a8 g a b |
3263 c4.^"hi there!" d8 e f g d |
3264 c4.\fthenp b8 c4 c-. |
3275 Obviamente estos identificadores son útiles para ahorrar tecleo.
3276 Pero son dignos de tener en cuenta incluso si se van a utilizar
3277 una sola vez: reducen la complejidad. Examinemos el ejemplo
3278 anterior reescrito sin ningún identificador. Encontrará que es
3279 mucho más difícil de leer, sobre todo la última línea.
3282 violin = \relative @{
3284 c''4._\markup @{ \italic \bold dolce @} b8 a8 g a b |
3285 \once \override TextScript.self-alignment-X = #CENTER
3286 c4.^"hi there!" d8 e f g d |
3288 \dynamic f \italic \small @{ 2nd @} \hspace #0.1 \dynamic p
3295 Hasta ahora hemos contemplado la sustitución estática: cuando
3296 LilyPond se encuentra con @code{\centreText}, lo sustituye con
3297 aquello que hemos definido que sea (es decir, todo lo que está a
3298 la derecha de @code{centreText=}).
3300 LilyPond también puede manejar sustituciones no estáticas (piense
3301 en ellas como en funciones).
3303 @lilypond[quote,verbatim,ragged-right]
3305 #(define-music-function
3309 \once \override TextScript.padding = #padding
3313 c''4^"piu mosso" b a b
3315 c4^"piu mosso" b a b
3317 c4^"piu mosso" b a b
3321 La utilización de identificadores también es una buena forma de
3322 reducir el trabajo si la sintaxis de entrada de LilyPond cambia
3323 (véase @rprogram{Actualizar ficheros con convert-ly}). Si tiene
3324 una sola definición (como p.ej. @code{\dolce}) para todos sus
3325 archivos (ver @ref{Hojas de estilo}), y después la sintaxis se
3326 modifica, sólo tendrá que actualizar su definición @code{\dolce}
3327 única, en lugar de tener que hacer cambios en cada uno de los
3328 archivos @file{.ly}.
3331 @node Partituras y particellas
3332 @subsection Partituras y particellas
3333 @translationof Scores and parts
3335 En música orquestal, todas las notas se imprimen dos veces. Una
3336 vez en las particellas para los músicos, y otra para la partitura
3337 del director. Los identificadores se pueden usar para evitar la
3338 duplicación del trabajo. La música se escribe una vez y se
3339 almacena en una variable. El contenido de dicha variable se usa
3340 después para generar tanto la particella como la partitura del
3343 Es muy conveniente definir las notas en un archivo especial. Por
3344 ejemplo, supongamos que el archivo @file{trompa.ly} contiene la
3345 siguiente parte de un dúo para trompa y fagot:
3348 notasTrompa = \relative @{
3350 r4 f8 a | cis4 f | e4 d |
3355 Luego se hace una particella escribiendo en un archivo lo
3359 \include "trompa.ly"
3362 instrument = "Trompa en Fa"
3366 \transpose f c' \notasTrompa
3373 \include "trompa.ly"
3377 sustituye el contenido de @file{trompa.ly} en esta posición
3378 dentro del archivo, así que @code{notasTrompa} se define con
3379 posterioridad. La instrucción @code{\transpose f@tie{}c'} indica
3380 que el argumento constituido por @code{\notasTrompa} se debe
3381 transponer una quinta hacia arriba. Lo que suena como @code{f}
3382 se escribe como @code{c'}, lo que corresponde con el tono de
3383 afinación de una trompa normal en@tie{}Fa. La transposición se
3384 puede ver en la siguiente salida
3386 @lilypond[quote,ragged-right]
3387 \transpose f c' \relative {
3389 r4 f8 a | cis4 f | e4 d |
3393 En piezas para conjunto, con frecuencia una de las voces no suena
3394 durante muchos compases. Esto queda denotado por un silencio
3395 especial, el silencio multicompás. Se introduce con una @code{R}
3396 mayúscula seguida de una duración (@code{1}@tie{}en el caso de la
3397 redonda, @code{2}@tie{}en el caso de una blanca, etc.).
3398 Multiplicando la duración se pueden construir silencios más
3399 largos. Por ejemplo, este silencio ocupa 3@tie{}compases de 2/4
3405 Cuando se imprime la particella tienen que comprimirse los silencios
3406 multicompás. Existe una función musical para hacerlo:
3409 \compressMMRests @{ ... @}
3412 Applying this to @code{hornNotes} gives:
3414 @lilypond[quote,ragged-right]
3415 \compressMMRests \transpose f c' \relative {
3418 r4 f8 a | cis4 f | e4 d |
3422 Esta partitura se hace combinando toda la música junta.
3423 Suponiendo que la otra voz se encuentra dentro de
3424 @code{notasFagot} en el archivo @file{fagot.ly}, la partitura se
3429 \include "trompa.ly"
3432 \new Staff \notasTrompa
3433 \new Staff \notasFagot
3440 @lilypond[quote,ragged-right]
3446 r4 f8 a | cis4 f | e4 d |
3451 r4 d,8 f | gis4 c | b4 bes |
3452 a8 e f4 | g4 d | gis4 f |
3458 Manual de aprendizaje:
3459 @ref{Organizar las piezas mediante variables}.
3461 Referencia de la notación:
3462 @ruser{Transposición},
3463 @ruser{Escritura de las particellas},
3464 @ruser{Silencios de compás completo},
3465 @ruser{Inclusión de archivos de LilyPond}.