1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
4 Translation of GIT committish: 8451fc41680f500fff56f826017b53dc3dcbf65d
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
274 @cindex contenido del bloque score
275 @cindex score, contenido del bloque
276 @cindex compuesta, expresión musical
277 @cindex musical, expresión, compuesta
278 @cindex expresión musical compuesta
281 En la sección anterior,
282 @ref{Introducción a la estructura de los archivos de LilyPond},
283 hemos podido ver la organización general de los archivos de
284 entrada de LilyPond. Pero parece que nos saltamos la parte más
285 importante: ¿cómo averiguamos qué escribir después de
288 No nos hemos saltado nada en absoluto. El gran misterio es,
289 sencillamente, que no hay @emph{ningún} misterio. La siguiente
290 línea lo explica todo:
293 @emph{Un bloque @code{\score} debe contener exactamente una expresión musical.}
297 Para comprender lo que se entiende por expresión musical, quizá
298 encuentre útil dar un repaso al tutorial,
299 @ref{Explicación de las expresiones musicales}. En esta sección
300 vimos cómo elaborar grandes expresiones musicales a partir de
301 pequeñas piezas (comenzábamos con notas, luego acordes, etc.).
302 Ahora partiremos de una gran expresión musical y recorreremos el
303 camino inverso hacia abajo. Por simplicidad, vamos a hacer sólo
304 un cantante y un piano. No necesitamos un @code{StaffGroup} (que
305 simplemente agrupa un cierto número de pautas con un corchete a
306 la izquierda) para este conjunto, así que lo retiramos. Sin
307 embargo, @emph{sí} necesitamos pentagramas para un cantante y un
313 \new Staff = "cantante" <<
315 \new PianoStaff = "piano" <<
322 Aquí hemos asignado nombres a los pentagramas: @qq{cantante} y
323 @qq{piano}. Esto no es esencial en este momento, pero es un
324 hábito que resulta útil cultivar de manera que podamos saber de
325 un vistazo para qué es cada pentagrama.
327 Recuerde que utilizamos @code{<< @dots{} >>} en lugar de @code{@{
328 @dots{} @}} para presentar la música simultánea. Esto hace que
329 las partes vocal y del piano aparezcan una sobre la otra en la
330 partitura. La construcción @code{<< @dots{} >>} no sería
331 necesaria para el pentagrama del cantante en el ejemplo de arriba
332 si contiene solamente una expresión musical secuencial, pero se
333 necesitarían los @code{<< @dots{} >>} en lugar de las llaves si
334 la música de ese pentagrama fuese a contener dos o más
335 expresiones simultáneas, p.ej. dos voces simultáneas, o una voz
336 con letra. Vamos a tener una voz con letra, por lo que se
337 requieren los ángulos dobles. Después añadiremos algo de música
338 real; por ahora limitémonos a poner unas cuantas notas y texto de
339 relleno. Si ha olvidado cómo añadir la letra, puede releer la
340 sección @code{\addlyrics} de @ref{Elaborar canciones sencillas}.
342 @lilypond[verbatim,quote,ragged-right]
345 \new Staff = "singer" <<
346 \new Voice = "vocal" { c'1 }
349 \new PianoStaff = "piano" <<
350 \new Staff = "upper" { c'1 }
351 \new Staff = "lower" { c'1 }
358 Ahora tenemos muchos más detalles. Tenemos la pauta del
359 cantante: contiene una @code{Voice} o voz (en LilyPond, este
360 término hace referencia a un conjunto de notas, no necesariamente
361 notas vocales -- por ejemplo, un violín generalmente toca una voz
362 --) y el texto de la canción. También tenemos una pauta de
363 piano: contiene un pentagrama superior (mano derecha) y un
364 pentagrama inferior (mano izquierda), aunque el pentagrama
365 inferior aún no tiene la clave de Fa.
367 En este momento podríamos comenzar a meter las notas. Dentro de
368 las llaves que siguen a @code{\new Voice = "vocal"}, podríamos
373 r4 d''8\noBeam g, c4 r
377 Pero si lo hiciéramos, la sección @code{\score} se haría bastante
378 larga y sería más difícil comprender lo que ocurre. En lugar de
379 esto utilizaremos identificadores o variables. Recordará que las
380 vimos por primera vez en la sección anterior.
382 Para asegurarnos de que el contenido de la variable @code{text}
383 se interpreta como letra, lo precedemos por @code{\lyricmode}.
384 Como @code{\addlyrics}, esto activa el modo de entrada de letra.
385 Sin ello, LilyPond trataría de interpretar el contenido como
386 notas, lo que generaría errores (Existen algunos otros modos,
387 véase @ruser{Modos de entrada}).
389 Así pues, escribiendo algunas notas, y una clave de Fa para la
390 mano izquierda, ahora tenemos un fragmento musical de verdad:
392 @lilypond[verbatim,quote,ragged-right]
393 melody = \relative { r4 d''8\noBeam g, c4 r }
394 text = \lyricmode { And God said, }
395 upper = \relative { <g' d g,>2~ <g d g,> }
396 lower = \relative { b,2 e }
400 \new Staff = "singer" <<
401 \new Voice = "vocal" { \melody }
404 \new PianoStaff = "piano" <<
405 \new Staff = "upper" { \upper }
406 \new Staff = "lower" {
416 Cuando escriba una sección @code{\score} o cuando la esté
417 leyendo, hágalo despacio y con cuidado. Comience por el nivel
418 exterior y luego trabaje sobre cada uno de los niveles
419 interiores. También es de gran ayuda ser muy estricto con los
420 márgenes (asegúrese de que en su editor de texto cada elemento
421 del mismo nivel comienza en la misma posición horizontal).
425 Referencia de la notación:
426 @ruser{Estructura de una partitura}.
429 @node Anidado de expresiones musicales
430 @subsection Anidado de expresiones musicales
431 @translationof Nesting music expressions
433 @cindex pentagramas temporales
434 @cindex temporales, pentagramas
437 No es esencial declarar todos los pentagramas al comienzo; se
438 pueden crear temporalmente en cualquier momento. Esto es de
439 especial utilidad para crear secciones de ossia (véase
440 @rglos{ossia}). A continuación presentamos un ejemplo sencillo
441 que muestra cómo introducir temporalmente un pentagrama nuevo
442 mientras dura un fragmento de tres notas:
444 @lilypond[verbatim,quote,ragged-right]
461 Advierta que el tamaño de la clave es igual al que se imprime en
462 un cambio de clave (ligeramente menor que la clave al principio
463 de una línea). Esto es normal para cualquier clave que se
464 imprime en la mitad de una línea.
466 @cindex pentagrama, posicionado del
468 La sección ossia se puede colocar encima del pentagrama de la
471 @lilypond[verbatim,quote,ragged-right]
472 \new Staff = "main" {
479 alignAboveContext = #"main"
487 Este ejemplo utiliza @code{\with}, que se explica en todo detalle
488 más adelante. Es un medio de modificar el comportamiento
489 predeterminado de un solo pentagrama. Aquí, dice que el
490 pentagrama nuevo se debe colocar por encima del pentagrama
491 llamado @qq{main} en vez de la posición predeterminada que sería
496 Los fragmentos de ossia se escriben a menudo sin clave y sin
497 indicación de compás, y generalmente en un tipo más pequeño.
498 Esto necesitaría más instrucciones que aún no se han visto.
499 Véase @ref{Tamaño de los objetos} y @ruser{Pentagramas de Ossia}.
502 @node Acerca de la no anidabilidad de llaves y ligaduras
503 @subsection Acerca de la no anidabilidad de llaves y ligaduras
504 @translationof On the un-nestedness of brackets and ties
506 @cindex corchetes y paréntesis, anidado de
507 @cindex corchetes y paréntesis, tipos de
508 @cindex corchetes y paréntesis, encerrar frente a marcar
509 @cindex paréntesis y corchetes, anidado de
510 @cindex paréntesis y corchetes, tipos de
511 @cindex paréntesis y corchetes, encerrar frente a marcar
513 En la escritura del archivo de entrada de LilyPond, hemos podido
514 ver algunos tipos de paréntesis, llaves o ángulos de distintos
515 tipos. Éstos obedecen a distintas reglas que al principio pueden
516 resultar confusas. Antes de explicar estas reglas, demos un
517 repaso a las distintas clases de corchetes, llaves y paréntesis.
519 @c attempt to force this onto a new page
521 @multitable @columnfractions .3 .7
522 @headitem Tipo de paréntesis
524 @item @code{@{ @dots{} @}}
525 @tab Encierra un fragmento secuencial de música
526 @item @code{< @dots{} >}
527 @tab Encierra las notas de un acorde
528 @item @code{<< @dots{} >>}
529 @tab Encierra expresiones musicales simultáneas
530 @item @code{( @dots{} )}
531 @tab Marca el comienzo y el final de una ligadura de expresión
532 @item @code{\( @dots{} \)}
533 @tab Marca el comienzo y el final de una ligadura de fraseo
534 @item @code{[ @dots{} ]}
535 @tab Marca el comienzo y el final de un barrado manual
538 A las anteriores, debemos añadir otras construcciones que generan
539 líneas entre o a través de las notas: las ligaduras de unión
540 (marcadas con una tilde curva, @code{~}), los grupos especiales
541 que se escriben como @code{\tuplet x/y @{ @dots{} @}}, y las
542 notas de adorno, que se escriben como @code{\grace @{ @dots{}
545 Fuera de LilyPond, el uso convencional de los paréntesis y otros
546 corchetes requiere que los distintos tipos se encuentren anidados
547 correctamente, como en: @code{<< [ @{ ( @dots{} ) @} ] >>}, de
548 manera que los paréntesis que se cierran deben encontrarse en el
549 orden exactamente opuesto al de los paréntesis que se abren.
550 Esto @strong{es} un requisito para los tres tipos de paréntesis
551 que se describen mediante la palabra @q{Encierra} en la tabla
552 anterior: se deben anidar correctamente. Sin embargo, el resto
553 de las llaves y corchetes, que se encuentran descritos por la
554 palabra @q{Marca} en la misma tabla anterior, @strong{no} tienen
555 por qué anidarse estrictamente con ninguno de los otros
556 paréntesis. De hecho, éstos no son paréntesis en el sentido de
557 que encierran algo: simplemente son marcadores que indican dónde
558 empieza o finaliza algo.
560 Así pues, por ejemplo, una ligadura de fraseo puede dar comienzo
561 antes de una barra insertada manualmente, y acabar antes de que
562 acabe la barra (algo que quizá no sea muy musical, pero es
565 @lilypond[quote,verbatim,ragged-right]
566 \relative { g'8\( a b[ c b\) a] g4 }
569 En general, los distintos tipos de corchete, y los implicados en
570 grupos especiales, ligaduras de unión y notas de adorno, se
571 pueden mezclar con total libertad. Este ejemplo muestra una
572 barra que se extiende hacia el interior de un grupo de valoración
573 especial (línea 1), una ligadura de expresión que se prolonga
574 hasta el interior de un grupo especial (línea 2), una barra y una
575 ligadura de expresión que se prolongan hasta el interior de un
576 grupo especial, una ligadura de unión que atraviesa dos grupos
577 especiales, y una ligadura de fraseo que sale del interior de un
578 grupo especial (líneas 3 y 4).
580 @lilypond[quote,verbatim,ragged-right]
582 r16[ g' \tuplet 3/2 { r16 e'8] }
583 g,16( a \tuplet 3/2 { b16 d) e }
584 g,8[( a \tuplet 3/2 { b8 d) e~] } |
585 \tuplet 5/4 { e32\( a, b d e } a4.\)
590 @node Las voces contienen música
591 @section Las voces contienen música
592 @translationof Voices contain music
594 Igual que los cantantes, LilyPond necesita voces para cantar. En
595 realidad, la música para cualquier instrumento de una partitura
596 está siempre contenida dentro de una voz --el concepto de
597 LilyPond más fundamental de todos--.
602 * Voces y música vocal::
606 @subsection Oigo voces
607 @translationof I'm hearing Voices
612 @cindex voces, varias
613 @cindex Voice (voz), contexto de
614 @cindex contexto Voice (de voz)
615 @cindex simultánea, música
616 @cindex concurrente, música
617 @cindex voces frente a acordes
618 @cindex acordes frente a voces
620 De las capas más profundas de una partitura de LilyPond, las más
621 bajas y más fundamentales reciben el nombre de @q{Voice contexts}
622 («contextos de voz») o, abreviadamente, @q{Voices} («voces»).
623 Las voces reciben a veces el nombre de @q{layers} («capas») en
624 otros programas de edición de partituras.
626 De hecho, una capa o contexto de voz es la única que puede
627 contener música. Si un contexto de voz no se declara
628 explícitamente, se crea uno de forma automática, como vimos al
629 comienzo de este capítulo. Ciertos instrumentos como el oboe
630 solamente pueden tocar una nota cada vez. La música escrita para
631 estos instrumentos solamente requiere una voz. Los instrumentos
632 que pueden tocar más de una nota a la vez, como el piano, con
633 frecuencia necesitarán varias voces para codificar las distintas
634 notas y ritmos concurrentes que son capaces de tocar.
636 Una sola voz puede contener muchas notas dentro de un acorde, por
637 supuesto; entonces ¿cuándo, exactamente, se necesitan varias
638 voces? En primer lugar observe este ejemplo de cuatro acordes:
640 @lilypond[quote,verbatim,ragged-right]
643 <d' g>4 <d fis> <d a'> <d g>
647 Esto se puede expresar utilizando sólo símbolos de acorde con
648 ángulos simples, @code{< @dots{} >}, y para este propósito tan
649 sólo se necesita una voz. Pero suponga que el Fa sostenido fuese
650 realmente una corchea seguida de un Sol corchea, una nota de paso
651 que conduce al La. Ahora tenemos dos notas que empiezan en el
652 mismo momento pero tienen distintas duraciones: la negra Re, y la
653 corchea Fa sostenido. ¿Cómo se codifica esto? No se pueden
654 escribir como un acorde porque todas las notas de un acorde deben
655 tener la misma duración. Y no se pueden escribir como dos notas
656 en secuencia porque tienen que empezar en el mismo momento. Aquí
657 es donde se necesitan dos voces.
659 Veamos cómo se hace esto dentro de la sintaxis de entrada de
665 La forma más fácil de introducir fragmentos con más de una voz en
666 un solo pentagrama es escribir cada voz como una secuencia (con
667 @code{@{ @dots{} @}}), y combinarlas simultáneamente con ángulos
668 dobles, @code{<< @dots{} >>}. Los fragmentos también se deben
669 separar mediante una doble barra invertida, @code{\\}, para
670 situarlos en voces separadas. Sin esto, las notas irían a una
671 sola voz, lo que normalmente produce errores. Esta técnica se
672 adapta especialmente bien a piezas de música que son mayormente
673 homofónicas pero ocasionalmente tienen cortas secciones de
676 He aquí cómo dividimos los acordes anteriores en dos voces y
677 añadimos la nota de paso y la ligadura:
679 @lilypond[quote,verbatim,ragged-right]
682 % Voice = "1" Voice = "2"
683 << { g'4 fis8( g) a4 g } \\ { d4 d d d } >>
687 Observe cómo las plicas de la segunda voz ahora se dirigen hacia
690 A continuación veamos otro ejemplo sencillo:
692 @lilypond[quote,verbatim,ragged-right]
695 % Voice = "1" Voice = "2"
696 << { r4 g' g4. a8 } \\ { d,2 d4 g } >> |
697 << { bes4 bes c bes } \\ { g4 g g8( a) g4 } >> |
698 << { a2. r4 } \\ { fis2. s4 } >> |
702 No es necesario usar una construcción @code{<< \\ >>} distinta
703 para cada compás. Para música que tenga unas pocas notas en cada
704 compás, esta disposición podría facilitar la legibilidad del
705 código, pero si hay muchas notas en cada compás podría ser mejor
706 dividirlo en dos voces separadas, de la siguiente manera:
708 @lilypond[quote,verbatim,ragged-right]
711 \relative { % Voice = "1"
716 \relative { % Voice = "2"
724 @cindex voces, nombrado de
725 @cindex voces que cruzan corchetes
726 @cindex ligaduras que cruzan corchetes
728 Este ejemplo tiene sólo dos voces, pero la misma construcción se
729 puede usar para codificar tres o más voces mediante la adición de
730 más separadores de barra invertida.
732 Los contextos de voz llevan los nombres de @code{"1"},
733 @code{"2"}, etc. Los primeros contextos establecen las voces
734 @emph{externas}, la voz aguda del contexto @code{"1"} y la voz
735 grave del contexto @code{"2"}. Las voces interiores van en los
736 contextos @code{"3"} y @code{"4"}. En cada uno de estos
737 contextos, la dirección vertical de las ligaduras, plicas,
738 matices dinámicos, etc., se ajusta de forma correcta.
740 @lilypond[quote,verbatim]
741 \new Staff \relative {
744 % Voice = "1" Voice = "2" Voice = "3"
745 << { g4 f e } \\ { r8 e4 d c8~ } >> |
746 << { d2 e } \\ { c8 b16 a b8 g~ 2 } \\ { s4 b c2 } >> |
750 Todas estas voces están separadas de la voz principal que
751 contiene las notas justo por fuera de la construcción @code{<<
752 @dots{} >>}. Le llamaremos a esto la @emph{construcción
753 simultánea}. Las ligaduras (de prolongación y de expresión)
754 solamente pueden conectar notas que estén dentro de la misma voz,
755 luego las ligaduras no pueden entrar o salir de una construcción
756 simultánea. A la inversa, las voces paralelas de construcciones
757 simultáneas distintas sobre el mismo pentagrama, son la misma
758 voz. Otras propiedades relativas a las voces también conllevan
759 construcciones simultáneas. A continuación vemos el mismo
760 ejemplo, con colores y cabezas distintos para cada voz. Observe
761 que los cambios en una voz no afectan a otras voces, pero
762 persisten más tarde dentro de la misma voz. Observe también que
763 las notas ligadas se pueden dividir entre las mismas voces de dos
764 construcciones, como se indica aquí en la voz de triángulos
767 @lilypond[quote,verbatim]
768 \new Staff \relative {
797 @funindex \voiceOneStyle
798 @funindex \voiceTwoStyle
799 @funindex \voiceThreeStyle
800 @funindex \voiceFourStyle
801 @funindex \voiceNeutralStyle
803 Las instrucciones @code{\voiceXXXStyle} están pensadas
804 principalmente para usarlas en documentos educativos como este
805 mismo. Modifican el color de la cabeza, la plica y las barras, y
806 el estilo de la cabeza, de forma que las voces se puedan
807 distinguir fácilmente. La voz uno está establecida a rombos
808 rojos, la voz dos a triángulos azules, la voz tres a círculos
809 verdes con aspas, y la voz cuatro (que no se utiliza aquí) a
810 aspas color magenta. @code{\voiceNeutralStyle} (que tampoco se
811 usa aquí) devuelve todo al estilo predeterminado. Veremos más
812 adelante cómo el usuario puede crear instrucciones como éstas.
813 Véase @ref{Visibilidad y color de los objetos} y @ref{Uso de
814 variables para los ajustes de disposición}.
816 @cindex polifonía y modo relativo
817 @cindex relativo, modo, polifonía y
819 La polifonía no cambia la relación de las notas dentro de un
820 bloque @code{\relative}. La altura de cada nota aún se calcula
821 con relación a la nota que le precede inmediatamente, o a la
822 primera nota del acorde precedente. Así, en
825 \relative c' @{ notaA << < notaB notaC > \\ notaD >> notaE @}
829 @code{notaB} es relativa a @code{notaA} @*
830 @code{notaC} es relativa a @code{notaB}, no a @code{notaA}; @*
831 @code{notaD} es relativa a @code{notaB}, no a @code{notaA} ni a
833 @code{notaE} es relativa a @code{notaD}, no a @code{notaA}.
835 Una forma alternativa, que podría ser más clara si las notas en las
836 voces están muy separadas, es colocar una instrucción @code{\relative}
837 al principio de cada voz:
840 \relative @{ notaA @dots{} @}
842 \relative @{ < notaB notaC > @dots{} @}
844 \relative @{ notaD @dots{} @}
846 \relative @{ notaE @dots{} @}
849 Finalmente, analicemos las voces en una pieza de música más
850 compleja. He aquí las notas de los dos primeros compases del
851 segundo de los Dos Nocturnos de Chopin, Op 32. Este ejemplo se
852 utilizará en fases posteriores dentro del presente capítulo y el
853 siguiente, para ilustrar varias técnicas para producir notación,
854 y por tanto le pedimos que ignore por ahora cualquier cosa en el
855 código subyacente que le parezca misterioso y tan sólo se
856 concentre en la música y las voces (todas las complicaciones se
857 explicarán en secciones posteriores).
859 @c The following should appear as music without code
860 @lilypond[quote,ragged-right]
861 \new Staff \relative {
867 % Ignore these for now - they are explained in Ch 4
868 \once \override NoteColumn.force-hshift = #0
870 \once \override NoteColumn.force-hshift = #0.5
876 \override NoteColumn.force-hshift = #0
884 Con frecuencia, la dirección de las plicas se utiliza para
885 indicar la continuidad de dos líneas melódicas simultáneas.
886 Aquí, todas las plicas de las notas agudas se dirigen hacia
887 arriba y las de las notas graves hacia abajo. Ésta es la primera
888 indicación de que se requiere más de una voz.
890 Pero la necesidad real de varias voces aflora cuando hay notas
891 que comienzan en el mismo tiempo pero tienen distintas
892 duraciones. Observe las notas que comienzan en la tercera parte
893 del primer compás. El La bemol es una negra con puntillo, el Fa
894 es una negra y el Re bemol es una blanca. Estas notas no se
895 pueden escribir como un acorde porque todas las notas de un
896 acorde deben tener la misma duración. Tampoco se pueden escribir
897 como notas secuenciales, pues deben comenzar al mismo tiempo.
898 Esta sección del compás requiere tres voces, y la práctica común
899 sería escribir todo el compás como tres voces como se muestra
900 abajo, donde hemos usado distintas cabezas y colores para las
901 tres voces. Una vez más, el código que subyace a este ejemplo se
902 explicará más tarde, así pues ignore todo lo que no entienda.
904 @c The following should appear as music without code
905 @c The three voice styles should be defined in -init
906 @lilypond[quote,ragged-right]
907 \new Staff \relative {
916 % Ignore these for now - they are explained in Ch 4
917 \once \override NoteColumn.force-hshift = #0
919 \once \override NoteColumn.force-hshift = #0.5
922 \\ % No Voice three (we want stems down)
925 \override NoteColumn.force-hshift = #0
934 Vamos a intentar codificar esta música partiendo de cero. Como
935 veremos, esto se topa con ciertas dificultades. Comenzamos tal y
936 como hemos aprendido, usando la construcción @code{<< \\ >>} para
937 introducir la música del primer compás en tres voces:
939 @lilypond[quote,verbatim,ragged-right]
940 \new Staff \relative {
943 { c''2 aes4. bes8 } \\ { <ees, c>2 des } \\ { aes'2 f4 fes }
950 @cindex voces y dirección de las plicas
951 @cindex plicas, voces y dirección de las
954 Las direcciones de las plicas se asignan automáticamente de forma
955 que las voces de numeración impar reciben las plicas hacia arriba
956 y las de numeración par hacia abajo. Las plicas de las voces 1 y
957 2 están correctas, pero las plicas de la voz 3 debería ir hacia
958 abajo en este fragmento en particular. Podemos corregir esto
959 simplemente olvidándonos de la voz tres y situando la música en
960 la voz cuatro. Esto se hace escribiendo otro par de barras
961 invertidas (@code{\\}).
963 @lilypond[quote,verbatim,ragged-right]
964 \new Staff \relative {
970 \\ % Omit Voice three
979 Vemos que esto arregla la dirección de la plica, pero la
980 colocación horizontal de las notas no es la deseada. LilyPond
981 desplaza las notas interiores cuando ellas o sus plicas de otro
982 modo colisionarían con las voces exteriores, pero esto no es lo
983 más adecuado para música de piano. En otras situaciones, los
984 desplazamientos que LilyPond aplica pueden no eliminar las
985 colisiones. LilyPond aporta varias formas de ajustar la
986 colocación horizontal de las notas. Aún no estamos preparados
987 para ver cómo se corrige esto, por lo que dejaremos el problema
988 para una sección posterior (véase la propiedad
989 @code{force-hshift} en @ref{Arreglar notación con
992 @warning{No se pueden crear letras ni objetos de extensión (como
993 ligaduras, reguladores, etc.) @q{entre} voces distintas.}
996 Referencia de la notación:
997 @ruser{Varias voces}.
1000 @node Voces explícitas
1001 @subsection Voces explícitas
1002 @translationof Explicitly instantiating voices
1007 @funindex \voiceThree
1008 @funindex \voiceFour
1010 @funindex \new Voice
1011 @cindex contextos de voz, creación de
1013 Los contextos de voz también se pueden crear manualmente dentro
1014 de un bloque @code{<< >>} para crear música polifónica,
1015 utilizando @code{\voiceOne} @dots{} @code{\voiceFour} para
1016 indicar las direcciones requeridas de plicas, ligaduras, etc. En
1017 partituras más largas, este método es más claro porque permite
1018 que las voces estén separadas y reciban nombres más descriptivos.
1020 Concretamente, la construcción @code{<< \\ >>} que usamos en la
1026 << @{ e'4 f g a @} \\ @{ c,4 d e f @} >>
1036 \new Voice = "1" @{ \voiceOne \relative @{ e'4 f g a @} @}
1037 \new Voice = "2" @{ \voiceTwo \relative @{ c'4 d e f @} @}
1041 Los dos ejemplos anteriores producen:
1043 @c The following example should not display the code
1044 @lilypond[ragged-right,quote]
1046 \new Voice = "1" { \voiceOne \relative { e'4 f g a } }
1047 \new Voice = "2" { \voiceTwo \relative { c'4 d e f } }
1051 @cindex voces, retorno a única
1052 @cindex retorno a voz única
1054 Las instrucciones @code{\voiceXXX} establecen la dirección de las
1055 plicas, ligaduras de expresión, ligaduras de prolongación,
1056 articulaciones, anotaciones de texto, puntillos y digitaciones.
1057 @code{\voiceOne} y @code{\voiceThree} hacen que estos objetos
1058 apunten hacia arriba, mientras que @code{\voiceTwo} y
1059 @code{\voiceFour} los hacen apuntar hacia abajo. Estas
1060 instrucciones también producen un desplazamiento horizontal para
1061 cada voz cuando es necesario para evitar choques entre las
1062 cabezas. La instrucción @code{\oneVoice} devuelve los ajustes de
1063 nuevo a los valores normales para una sola voz.
1065 Veamos en algunos ejemplos sencillos exactamente qué efecto
1066 tienen @code{\oneVoice}, @code{\voiceOne} y @code{voiceTwo} sobre
1067 el marcado, las ligaduras de unión y de expresión y las
1068 indicaciones de dinámica:
1070 @lilypond[quote,ragged-right,verbatim]
1072 % Default behavior or behavior after \oneVoice
1073 c'4 d8~ 8 e4( f | g4 a) b-> c |
1077 @lilypond[quote,ragged-right,verbatim]
1080 c'4 d8~ 8 e4( f | g4 a) b-> c |
1082 c,4 d8~ 8 e4( f | g4 a) b-> c |
1086 @lilypond[quote,ragged-right,verbatim]
1089 c'4 d8~ 8 e4( f | g4 a) b-> c |
1091 c,4 d8~ 8 e4( f | g4 a) b-> c |
1095 A continuación veremos tres formas distintas de componer la
1096 notación del mismo pasaje polifónico, cada una de las cuales
1097 tiene sus ventajas según la circunstancia, utilizando el ejemplo
1098 de la sección anterior.
1100 Una expresión que aparece directamente dentro de @code{<< >>}
1101 pertenece a la voz principal (pero, observe, @strong{no} dentro
1102 de una construcción @code{<< \\ >>}). Esto es útil cuando
1103 aparecen voces nuevas mientras la voz principal está sonando. A
1104 continuación podemos ver una realización más correcta del ejemplo
1105 de la sección anterior. Las notas rojas en forma de rombo
1106 muestran que la melodía principal está ahora dentro de un
1107 contexto de una sola voz, haciendo que se pueda trazar una
1108 ligadura por encima de ellas.
1110 @lilypond[quote,ragged-right,verbatim]
1111 \new Staff \relative {
1113 % This section is homophonic
1115 % Start simultaneous section of three voices
1117 % Continue the main voice in parallel
1118 { g4 f e | d2 e) | }
1119 % Initiate second voice
1121 % Set stems, etc., down
1123 r8 e4 d c8~ | 8 b16 a b8 g~ 2 |
1125 % Initiate third voice
1127 % Set stems, etc, up
1135 @cindex anidado de expresiones musicales
1136 @cindex anidado de construcciones simultáneas
1137 @cindex anidado de voces
1138 @cindex voces temporales
1139 @cindex voces, anidado de
1141 Son posibles construcciones polifónicas anidadas más
1142 profundamente, y si una voz aparece sólo brevemente podría haber
1143 una forma más natural de tipografiar la música.
1145 @lilypond[quote,ragged-right,verbatim]
1146 \new Staff \relative {
1149 { g4 f e | d2 e) | }
1154 { c8 b16 a b8 g~ 2 | }
1165 @cindex espaciadoras, notas
1167 Este método de anidar voces nuevas brevemente es útil cuando sólo
1168 hay secciones polifónicas pequeñas, pero cuando todo el
1169 pentagrama es muy polifónico podría ser más claro usar varias
1170 voces todo el tiempo, usando notas espaciadoras para pasar por
1171 encima de las secciones en que una voz está en silencio, como
1174 @lilypond[quote,ragged-right,verbatim]
1175 \new Staff \relative <<
1176 % Initiate first voice
1179 c'16^( d e f g4 f e | d2 e) |
1181 % Initiate second voice
1183 % Set stems, etc, down
1185 s4 r8 e4 d c8~ | 8 b16 a b8 g~ 2 |
1187 % Initiate third voice
1189 % Set stems, etc, up
1196 @subsubheading Columnas de notas
1198 @cindex columna de notas
1199 @cindex colisiones de notas
1200 @cindex notas, colisiones de
1201 @cindex desplazamiento, instrucciones de
1205 @funindex \shiftOnnn
1207 Las notas cercanas de un acorde, o las notas que se producen al
1208 mismo tiempo en distintas voces, se disponen en dos (y
1209 ocasionalmente más) columnas para evitar el solapamiento de las
1210 cabezas. Reciben el nombre de columnas de notas. Hay columnas
1211 distintas para cada voz, y el desplazamiento especificado en
1212 curso dependiente de la voz se aplica a la columna de la nota si
1213 en caso contrario se produjese una colisión. Esto se puede ver
1214 en el ejemplo anterior. En el compás 2 el Do en la voz dos está
1215 desplazado a la derecha respecto del Re de la voz uno, y en el
1216 último acorde el Do de la voz tres también está desplazado a la
1217 derecha respecto de las otras notas.
1219 Las instrucciones @code{\shiftOn}, @code{\shiftOnn},
1220 @code{\shiftOnnn} y @code{\shiftOff} especifican el grado en que
1221 se deben desplazar las notas y acordes de la voz si en caso
1222 contrario ocurriese una colisión. De forma predeterminada, las
1223 voces exteriores (normalmente las voces uno y dos) llevan
1224 especificado @code{\shiftOff}, mientras que las voces interiores
1225 (tres y cuatro) tienen @code{\shiftOn} especificado. Cuando se
1226 aplica un desplazamiento, las voces uno y tres se desplazan hacia
1227 la derecha y las voces dos y cuatro se desplazan hacia la
1230 @code{\shiftOnn} y @code{\shiftOnnn} definen niveles adicionales
1231 de desplazamiento que se pueden especificar temporalmente para
1232 resolver colisiones en situaciones complejas (véase
1233 @ref{Ejemplos reales de música}).
1235 Una columna de notas puede contener sólo una nota (o acorde) de
1236 una voz con las plicas hacia arriba y una not (o acorde) de una
1237 voz con las plicas hacia abajo. Si las notas de dos voces que
1238 tienen las plicas en la misma dirección se sitúan en la misma
1239 posición y las dos voces no tienen ningún desplazamiento o llevan
1240 especificado el mismo desplazamiento, se producirá el mensaje de
1241 error @qq{Esta voz requiere un ajuste de @code{@bs{}voiceXx} o
1242 @code{@bs{}shiftXx}}.
1246 Manual de aprendizaje:
1247 @ref{Mover objetos}.
1249 Referencia de la notación:
1250 @ruser{Varias voces}.
1253 @node Voces y música vocal
1254 @subsection Voces y música vocal
1255 @translationof Voices and vocals
1258 La música vocal presenta una dificultad especial: tenemos que
1259 combinar dos expresiones, a saber, las notas y la letra.
1261 @funindex \new Lyrics
1264 @cindex Lyrics, creación de un contexto
1265 @cindex letra, creación de un contexto de
1266 @cindex letra, enlazar con una voz
1268 Ya ha visto la instrucción @code{\addlyrics@{@}}, que maneja bien
1269 partituras sencillas. Sin embargo esta técnica es algo limitada.
1270 Para música de mayor complejidad, tenemos que introducir la letra
1271 en un contexto @code{Lyrics} utilizando @code{\new Lyrics} y
1272 enlazar explícitamente la letra y las notas mediante
1273 @code{\lyricsto@{@}}, usando el nombre asignado a la voz.
1275 @lilypond[quote,verbatim]
1277 \new Voice = "one" {
1281 c''4 b8. a16 | g4. f8 | e4 d | c2 |
1284 \new Lyrics \lyricsto "one" {
1285 No more let | sins and | sor -- rows | grow. |
1290 Observe que la letra se debe enlazar a un contexto de
1291 @code{Voice}, @emph{no} a un contexto de @code{Staff}. Este es
1292 un caso en que es necesario crear contextos de @code{Staff} y de
1293 @code{Voice} explícitamente.
1295 @cindex letra y barrado
1296 @cindex barrado y letra
1297 @funindex \autoBeamOff
1299 El barrado automático que LilyPond usa de forma predeterminada
1300 funciona bien para la música instrumental, pero no tan bien para
1301 música con letra, donde o bien el barrado no se necesita en
1302 absoluto, o bien se utiliza para indicar los melismas de la
1303 letra. En el ejemplo anterior hemos utilizado la instrucción
1304 @code{\autoBeamOff} para desactivar el barrado automático.
1306 @funindex \new ChoirStaff
1307 @funindex ChoirStaff
1308 @funindex \lyricmode
1309 @cindex vocal, estructura de una partitura
1310 @cindex coro, sistema de
1312 Ahora vamos a reutilizar el ejemplo anterior de «Judas Macabeo»
1313 para ilustrar esta técnica más flexible. Primero la
1314 reescribiremos para que use variables, de manera que la música y
1315 la letra se puedan separar de la estructura de pentagramas.
1316 También introduciremos una llave de grupo de ChoirStaff. La
1317 letra en sí se debe introducir con @code{\lyricmode} para estar
1318 seguros de que se interpreta como letra y no como música.
1320 @lilypond[quote,verbatim]
1321 global = { \key f \major \time 6/8 \partial 8 }
1323 SopOneMusic = \relative {
1324 c''8 | c8([ bes)] a a([ g)] f | f'4. b, | c4.~ 4
1326 SopOneLyrics = \lyricmode {
1327 Let | flee -- cy flocks the | hills a -- dorn, __
1329 SopTwoMusic = \relative {
1330 r8 | r4. r4 c'8 | a'8([ g)] f f([ e)] d | e8([ d)] c bes'
1332 SopTwoLyrics = \lyricmode {
1333 Let | flee -- cy flocks the | hills a -- dorn,
1339 \new Voice = "SopOne" {
1343 \new Lyrics \lyricsto "SopOne" {
1348 \new Voice = "SopTwo" {
1352 \new Lyrics \lyricsto "SopTwo" {
1360 Ésta es la estructura básica de todas las partituras vocales. Se
1361 pueden añadir más pentagramas según se necesite, se pueden añadir
1362 más voces a los pentagramas y más estrofas a la letra, y las
1363 variables que contienen la música se pueden colocar fácilmente en
1364 archivos separados cuando se hagan demasiado largos.
1366 @cindex himno, estructura de
1367 @cindex SATB, estructura de
1368 @cindex vocal, partitura, varias estrofas
1369 @cindex varias estrofas vocales
1370 @cindex estrofas, varias, vocales
1372 A continuación podemos ver un ejemplo final de la primera línea
1373 de un himno con cuatro estrofas, para coro SATB. En este caso la
1374 letra de las cuatro partes es la misma. Observe cómo utilizamos
1375 variables para separar la notación musical de la estructura de
1376 pentagramas. Observe también cómo se utiliza una variable, para
1377 la que hemos elegido el nombre @q{TimeKey} («compás y
1378 tonalidad»), para que contenga varias instrucciones que se usarán
1379 dentro de los dos pentagramas. En otros ejemplos se le suele dar
1380 el nombre de @q{global}.
1384 @lilypond[quote,verbatim]
1385 keyTime = { \key c \major \time 4/4 \partial 4 }
1387 SopMusic = \relative { c'4 | e4. e8 g4 g | a4 a g }
1388 AltoMusic = \relative { c'4 | c4. c8 e4 e | f4 f e }
1389 TenorMusic = \relative { e4 | g4. g8 c4. b8 | a8 b c d e4 }
1390 BassMusic = \relative { c4 | c4. c8 c4 c | f8 g a b c4 }
1393 \lyricmode { E -- | ter -- nal fa -- ther, | strong to save, }
1395 \lyricmode { O | Christ, whose voice the | wa -- ters heard, }
1397 \lyricmode { O | Ho -- ly Spi -- rit, | who didst brood }
1399 \lyricmode { O | Tri -- ni -- ty of | love and pow'r }
1405 \new Voice = "Sop" { \voiceOne \keyTime \SopMusic }
1406 \new Voice = "Alto" { \voiceTwo \AltoMusic }
1407 \new Lyrics \lyricsto "Sop" { \VerseOne }
1408 \new Lyrics \lyricsto "Sop" { \VerseTwo }
1409 \new Lyrics \lyricsto "Sop" { \VerseThree }
1410 \new Lyrics \lyricsto "Sop" { \VerseFour }
1414 \new Voice = "Tenor" { \voiceOne \keyTime \TenorMusic }
1415 \new Voice = "Bass" { \voiceTwo \BassMusic }
1423 Referencia de la notación:
1424 @ruser{Música vocal}.
1427 @node Contextos y grabadores
1428 @section Contextos y grabadores
1429 @translationof Contexts and engravers
1431 Los contextos y grabadores se han mencionado de manera informal
1432 en secciones anteriores; ahora tan sólo vamos a ver estos
1433 conceptos con más detalle, pues son importantes en el ajuste fino
1434 de la salida de LilyPond.
1437 * Explicación de los contextos::
1439 * Explicación de los grabadores::
1440 * Modificar las propiedades de los contextos::
1441 * Añadir y eliminar grabadores::
1444 @node Explicación de los contextos
1445 @subsection Explicación de los contextos
1446 @translationof Contexts explained
1448 @cindex contextos, explicación de los
1450 Cuando se imprime la música, se tienen que añadir a la salida una
1451 gran cantidad de elementos notacionales que no aparecen
1452 explícitamente en el archivo de entrada. Por ejemplo, compare la
1453 entrada y la salida del siguiente ejemplo:
1455 @lilypond[quote,verbatim]
1456 \relative { cis''4 cis2. | a4 a2. | }
1459 La entrada es bastante escueta, pero en la salida se han añadido
1460 las líneas divisorias, las alteraciones, la clave y la armadura
1461 de la tonalidad. Cuando LilyPond @emph{interpreta} la entrada,
1462 la información musical se analiza de izquierda a derecha de igual
1463 forma que un intérprete lee la partitura. Mientras se lee el
1464 código de entrada, el programa recuerda dónde están los límites
1465 de los compases, y qué alturas requieren alteraciones
1466 accidentales explícitas. Esta información se debe conservar a
1467 varios niveles. Por ejemplo, una alteración accidental afecta
1468 solamente a un pentagrama, mientras que una línea divisoria debe
1469 estar sincronizada a lo largo de todo el sistema.
1471 Dentro de LilyPond, estas reglas y pequeñas porciones de
1472 información se agrupan en @emph{Contexts}. Ya hemos visto el
1473 contexto de voz, @code{Voice}. Otros ejemplos de contextos son
1474 @code{Staff} (Pauta o pentagrama) y @code{Score} (Partitura).
1475 Los contextos son jerárquicos, de forma que reflejan la
1476 naturaleza jerárquica de una partitura musical. Por ejemplo: un
1477 contexto de @code{Staff} contener muchos contextos de
1478 @code{Voice}, y un contexto de @code{Score} puede contener muchos
1479 contextos de @code{Staff}.
1482 @sourceimage{context-example,5cm,,}
1485 Cada contexto asume la responsabilidad de imponer algunas reglas
1486 de notación, creando ciertos objetos de notación y manteniendo
1487 las propiedades asociadas. Por ejemplo, el contexto @code{Voice}
1488 puede introducir una alteración accidental y entonces el contexto
1489 @code{Staff} mantiene la regla de mostrar o suprimir la
1490 alteración para el resto del compás.
1492 Otro ejemplo lo constituye el hecho de que la sincronización de
1493 las líneas divisorias se gestiona dentro del contexto de la
1494 partitura, @code{Score}, de forma predeterminada. Sin embargo,
1495 en algunas músicas posiblemente no queramos que las líneas
1496 divisorias estén sincronizadas (pensemos en una partitura
1497 polimétrica en compases de 4/4 y de 3/4). En tales casos,
1498 debemos modificar los ajustes por omisión de los contextos
1499 @code{Score} y @code{Staff}.
1501 Para partituras muy sencillas, los contextos se crean
1502 implícitamente y no debemos preocuparnos por ellos. Para piezas
1503 mayores, como por ejemplo cualquiera que tenga más de un
1504 pentagrama, los contextos se deben crear explícitamente para
1505 asegurarnos de que tendremos la cantidad exacta de pentagramas
1506 que necesitamos, y que están en el orden correcto. Para
1507 tipografiar piezas con notación especializada, es frecuente la
1508 modificación de contextos existentes o incluso definir unos
1509 completamente nuevos.
1511 Además de los contextos @code{Score,} @code{Staff} y
1512 @code{Voice}, hay contextos que se sitúan entre los niveles de
1513 partitura y de pentagrama para controlar los grupos de
1514 pentagramas, como los contextos @code{PianoStaff} y
1515 @code{ChoirStaff}. También existen contextos alternativos de
1516 pentagrama y de voz, y contextos para la letra, la percusión,
1517 diagramas de trastes, bajo cifrado, etc.
1519 Los nombres de todos los tipos de contextos se componen de una o
1520 más palabras que comienzan con mayúscula y que están unidas unas
1521 a otras sin guión ni barra baja, por ejemplo:
1522 @code{GregorianTranscriptionStaff}.
1526 Referencia de la notación:
1527 @ruser{Explicación de los contextos}.
1530 @node Crear contextos
1531 @subsection Crear contextos
1532 @translationof Creating contexts
1535 @cindex nuevos contextos
1536 @cindex creación de contextos
1537 @cindex contextos, creación de
1539 En un archivo de entrada, el bloque de partitura, que se presenta
1540 precedido por la instrucción @code{\score}, contiene una sola
1541 expresión musical y una definición de salida asociada (bien un
1542 bloque @code{\layout} o bien un bloque @code{\midi}). El
1543 contexto @code{Score} se suele dejar que se cree automáticamente
1544 cuando comienza la interpretación de esa expresión musical.
1546 Para partituras que solamente tienen una voz y un pentagrama,
1547 podemos también dejar que los contextos @code{Voice} y
1548 @code{Staff} se creen automáticamente, pero para partituras más
1549 complejas es necesario crearlos a mano. La instrucción más
1550 simple que hace esto es @code{\new}. Se antepone a una expresión
1551 musical, por ejemplo
1554 \new @var{tipo} @var{expresión_musical}
1558 donde @var{tipo} es el nombre de un contexto (como @code{Staff} o
1559 @code{Voice}). Esta instrucción crea un contexto nuevo, y
1560 comienza a interpretar la @var{expresión_musical} que está dentro
1563 @warning{No se debe usar @bs{}@code{new Score} porque el contexto
1564 @code{Score} esencial del nivel superior ya se crea
1565 automáticamente al interpretarse la expresión musical que está
1566 dentro del bloque @bs{}@code{score}. Los valores predeterminados
1567 de propiedades de contexto válidos para toda la partitura se
1568 pueden cambiar dentro del bloque @bs{}@code{layout}. Véase
1569 @ref{Modificar las propiedades de los contextos}.}
1571 En las secciones anteriores ha podido ver muchos ejemplos
1572 prácticos que creaban nuevos contextos de @code{Staff} y de
1573 @code{Voice}, pero para recordarle cómo se emplean estas
1574 instrucciones en la práctica, he aquí un ejemplo anotado de
1577 @lilypond[quote,verbatim,ragged-right]
1578 \score { % start of single compound music expression
1579 << % start of simultaneous staves section
1581 \new Staff { % create RH staff
1584 \new Voice { % create voice for RH notes
1585 \relative { % start of RH notes
1591 \new Staff << % create LH staff; needs two simultaneous voices
1594 \new Voice { % create LH voice one
1596 \relative { % start of LH voice one notes
1597 g8 <bes d> ees, <g c> |
1598 g8 <bes d> ees, <g c> |
1599 } % end of LH voice one notes
1600 } % end of LH voice one
1601 \new Voice { % create LH voice two
1603 \relative { % start of LH voice two notes
1606 } % end of LH voice two notes
1607 } % end of LH voice two
1608 >> % end of LH staff
1609 >> % end of simultaneous staves section
1610 } % end of single compound music expression
1613 (Observe cómo todas las instrucciones que abren un bloque con una
1614 llave curva, @code{@{}, o con ángulos dobles, @code{<<}, están
1615 sangrados (tienen un margen adicional) con dos espacios
1616 adicionales, y la llave de cierre correspondiente tiene un margen
1617 exactamente igual. Aunque no es necesario, la observancia de
1618 esta práctica reducirá considerablemente el número de errores de
1619 @q{paréntesis descompensados}, y se recomienda vivamente.
1620 Permite apreciar de un solo vistazo la estructura de la música, y
1621 cualquier paréntesis descompensado aparecerá con obviedad.
1622 Observe también cómo el pentagrama de la MI se crea usando dobles
1623 ángulos porque requiere dos voces, mientras que el pentagrama de
1624 la MD se crea con una expresión musical única encerrada entre
1625 llaves porque sólo requiere una voz.)
1628 @cindex contextos, nombrado
1629 @cindex nombrar contextos
1631 La instrucción @code{\new} también puede otorgar un nombre
1632 identificativo al contexto para distinguirlo de otros contextos
1636 \new @var{tipo} = @var{identificador} @var{expresión_musical}
1639 Observe la distinción entre el nombre del tipo de contexto,
1640 @code{Staff}, @code{Voice}, etc., y el nombre identificativo de
1641 una instancia en particular de ese tipo, que puede ser cualquier
1642 secuencia de letras inventada por el usuario. En el nombre
1643 identificativo también se pueden utilizar dígitos y espacios,
1644 pero en este caso aquél debe ir entre comillas p.ej. @code{\new
1645 Staff = "MiPentagrama 1" @var{expresión_musical}}. El nombre
1646 identificativo se utiliza para referirnos más tarde a esa
1647 instancia en particular de un contexto. Hemos visto esto en la
1648 sección acerca de la letra, en @ref{Voces y música vocal}.
1652 Referencia de la notación:
1653 @ruser{Crear y referenciar contextos}.
1656 @node Explicación de los grabadores
1657 @subsection Explicación de los grabadores
1658 @translationof Engravers explained
1662 Todas y cada una de las marcas de la salida impresa de una
1663 partitura hecha con LilyPond está producida por un
1664 @code{Engraver} (grabador). Así, tenemos un grabador para
1665 imprimir pentagramas, otro para imprimir las cabezas de las
1666 notas, otro para las plicas, otro para las barras, etc, etc. ¡En
1667 total hay más de 120 grabadores! Afortunadamente, para la mayor
1668 parte de las partituras no es necesario conocer más que algunos,
1669 y para partituras sencillas no tenemos que saber nada de ninguno
1672 Los grabadores residen y operan dentro de Contextos. Los
1673 grabadores como el grabador de la indicación metronómica,
1674 @code{Metronome_mark_engraver}, cuya acción y resultado se
1675 aplican a la partitura como un todo, operan en el contexto del
1676 nivel más alto: el contexto de partitura @code{Score}.
1678 El grabador de la clave @code{Clef_engraver} y el de la armadura
1679 @code{Key_engraver} se encuentran probablemente en todos los
1680 contextos de pentagrama (@code{Staff}), pues los distintos
1681 pentagramas podrían requerir diferentes claves y armaduras.
1683 El grabador de las cabezas de nota @code{Note_heads_engraver} y
1684 el de las plicas @code{Stem_engraver} viven en cada uno de los
1685 contextos de voz @code{Voice}, el contexto de nivel más bajo de
1688 Cada grabador procesa los objetos particulares asociados con su
1689 función, y mantiene las propiedades que están relacionadas con
1690 dicha función. Estas propiedades, como las que están asociadas
1691 con los contextos, se pueden modificar para cambiar el
1692 funcionamiento del grabador o el aspecto de esos elementos en la
1695 Todos los grabadores tienen nombres compuestos de varias palabras
1696 que describen su función. Sólo está en mayúsculas la inicial de
1697 la primera palabra, y el resto se le une mediante guiones bajos.
1698 Así, el grabador @code{Staff_symbol_engraver} es responsable de
1699 la creación de las líneas del pentagrama, y el
1700 @code{Clef_engraver} determina y establece la altura o el punto
1701 de referencia sobre el pentagrama dibujando un símbolo de clave.
1703 A continuación presentamos algunos de los grabadores más comunes,
1704 junto a su función. Podrá comprobar que es fácil adivinar la
1705 función a partir del nombre (en inglés), y viceversa.
1707 @multitable @columnfractions .3 .7
1710 @item Accidental_engraver
1711 @tab Hace las alteraciones accidentales, de precaución y de sugerencia.
1713 @tab Graba las barras
1715 @tab Graba las claves
1716 @item Completion_heads_engraver
1717 @tab Divide las notas que atraviesan una línea divisoria
1718 @item Dynamic_engraver
1719 @tab Crea reguladores e indicaciones dinámicas textuales
1720 @item Forbid_line_break_engraver
1721 @tab Evita los saltos de línea si queda algún elemento musical activo
1723 @tab Crea la armadura de la tonalidad
1724 @item Metronome_mark_engraver
1725 @tab Graba la indicación metronómica
1726 @item Note_heads_engraver
1727 @tab Graba la cabeza de las notas
1729 @tab Graba los silencios
1730 @item Staff_symbol_engraver
1731 @tab Graba las cinco líneas (de forma predeterminada) del pentagrama
1733 @tab Crea las plicas y los trémolos de una sola plica
1734 @item Time_signature_engraver
1735 @tab Crea las indicaciones de compás
1740 Más adelante veremos cómo la salida de LilyPond se puede cambiar
1741 mediante la modificación del funcionamiento de los Grabadores.
1745 Referencia de funcionamiento interno:
1746 @rinternals{Engravers and Performers}.
1749 @node Modificar las propiedades de los contextos
1750 @subsection Modificar las propiedades de los contextos
1751 @translationof Modifying context properties
1753 @cindex contexto, propiedades de
1754 @cindex contexto, propiedades de, modificación
1755 @cindex modificar las propiedades de contexto
1759 Los contextos se responsabilizan de mantener los valores de un
1760 cierto número de @emph{properties} de contexto. Muchas de ellas
1761 se pueden cambiar para influir en la interpretación del código de
1762 entrada y cambiar así la apariencia de la salida impresa. Se
1763 modifican mediante la instrucción @code{\set}. Esta instrucción
1764 toma la forma siguiente:
1767 \set @emph{NombreDelContexto}.@emph{nombreDeLaPropiedad} = #@emph{valor}
1770 Donde el @emph{NombreDelContexto} es normalmente @code{Score},
1771 @code{Staff} o @code{Voice}. Se puede omitir, en cuyo caso se
1772 supone que es el contexto en curso (normalmente @code{Voice}).
1774 Los nombres de las propiedades de contexto consisten en palabras
1775 unidas sin ningún guión o barra baja, y donde todas las palabras
1776 excepto la primera empiezan en mayúscula. A continuación podemos
1777 ver algunos ejemplos de nombres de propiedades utilizadas con
1778 frecuencia. Hay muchas más que las que se muestran aquí.
1780 @c attempt to force this onto a new page
1782 @multitable @columnfractions .25 .15 .45 .15
1783 @headitem nombreDeLaPropiedad
1786 @tab Valor de ejemplo
1789 @tab Si es verdadero, poner becuadros adicionales antes de las alteraciones
1790 @tab @code{#t}, @code{#f}
1791 @item currentBarNumber
1793 @tab Ajustar el número del compás actual
1797 @tab Si es verdadero, imprimir ligaduras de expresión por encima y por debajo de las notas
1798 @tab @code{#t}, @code{#f}
1799 @item instrumentName
1801 @tab Establecer el nombre del pentagrama, situado a la izquierda
1802 @tab @code{"Cello I"}
1805 @tab Aumentar o disminuir el tamaño de la fuente tipográfica
1809 @tab Establecer el texto que se imprime antes del comienzo de una estrofa
1814 donde un valor Booleano es verdadero (@code{#t}, True) o falso
1815 (@code{#f}, False), un Entero es un número entero positivo, un
1816 número Real es un número decimal positivo o negativo, y el texto
1817 se encierra entre comillas dobles. Observe la aparición de
1818 signos de cuadradillo, (@code{#}), en dos lugares diferentes:
1819 como parte del valor Booleano antes de la @code{t} o la @code{f},
1820 y antes del @emph{valor} dentro de la sentencia @code{\set}. Así
1821 pues, cuando se está escribiendo un valor Booleano, hay que
1822 escribir dos signos de cuadradillo, por ejemplo: @code{##t}.
1824 @cindex propiedades que funcionan en contextos
1825 @cindex establecer propiedades en contextos
1827 Antes de poder establecer cualquiera de estas propiedades,
1828 tenemos que saber en qué contexto operan. A veces es algo obvio,
1829 pero en ocasiones puede ser algo enrevesado. Si especificamos un
1830 contexto equivocado, no se produce ningún mensaje de error, pero
1831 el funcionamiento esperado no tendrá lugar. Por ejemplo, la
1832 propiedad @code{instrumentName} (nombre del instrumento) vive
1833 claramente dentro del contexto de @code{Staff}, puesto que es el
1834 pentagrama el que debe ser nombrado. En este ejemplo, el primer
1835 pentagrama resulta etiquetado, pero no el segundo, porque hemos
1836 omitido el nombre del contexto.
1838 @lilypond[quote,verbatim,ragged-right]
1840 \new Staff \relative {
1841 \set Staff.instrumentName = #"Soprano"
1844 \new Staff \relative {
1845 \set instrumentName = #"Alto" % Wrong!
1851 Recuerde que el nombre del contexto predeterminado es
1852 @code{Voice}, así que la segunda instrucción @code{\set}
1853 establece la propiedad @code{instrumentName} del contexto
1854 @code{Voice} a @qq{Alto}, pero como LilyPond no busca esta
1855 propiedad en el contexto @code{Voice}, no se realiza ninguna
1856 acción. Esto no es un error, y no se registra ningún mensaje en
1857 el archivo Log de registro de errores.
1859 De forma parecida, si el nombre de la propiedad se escribe con
1860 alguna falta, no se produce ningún mensaje de error, y claramente
1861 la acción esperada no puede tener lugar. De hecho, se puede
1862 establecer cualquier @q{property} (ficticia) usando cualquier
1863 nombre que queramos en cualquier contexto que exista, mediante el
1864 uso de la instrucción @code{\set}. Pero si el nombre no es
1865 conocido para LilyPond, no producirá ninguna acción. Algunos
1866 editores de texto que apoyan a los archivos de entrada de
1867 LilyPond de manera especial, documentan los nombres de
1868 propiedades con viñetas cuando pasamos sobre ellos con el puntero
1869 del ratón, como JEdit con la extensión LilyPondTool, o resaltan
1870 los nombres de propiedades desconocidas de manera diferente, como
1871 ConTEXT. Si no se utiliza un editor con tales posibilidades, se
1872 recomienda comprobar la corrección del nombre de la propiedad en
1873 el manual de Referencia de funcionamiento interno: véase
1874 @rinternals{Tunable context properties} o @rinternals{Contexts}.
1876 La propiedad @code{instrumentName} tendrá efecto solamente si se
1877 establece dentro del contexto @code{Staff}, pero algunas
1878 propiedades se pueden establecer en más de un contexto. Por
1879 ejemplo, la propiedad @code{extraNatural} está establecida por
1880 defecto al valor @code{##t} (verdadero) para todos los
1881 pentagramas. Si se establece a @code{##f} (falso) en un contexto
1882 de @code{Staff} determinado, se aplicará solamente a las
1883 alteraciones de ese pentagrama. Si se establece a falso en el
1884 contexto de la partitura, @code{Score}, se aplicará a todos los
1887 Así, esto desactivará los becuadros adicionales en un pentagrama:
1889 @lilypond[quote,verbatim,ragged-right]
1891 \new Staff \relative {
1894 \new Staff \relative {
1895 \set Staff.extraNatural = ##f
1902 y esto los desactivará en todos los pentagramas:
1904 @lilypond[quote,verbatim,ragged-right]
1906 \new Staff \relative {
1909 \new Staff \relative {
1910 \set Score.extraNatural = ##f
1916 Como un ejemplo más, si se establece @code{clefTransposition}
1917 dentro del contexto de @code{Score}, éste cambia inmediatamente
1918 el valor de la transposición en todos los pentagramas en curso y
1919 establece un nuevo valor predeterminado que se aplicará a todos
1922 La instrucción opuesta, @code{\unset}, tiene el efecto de
1923 suprimir la propiedad del contexto, lo que ocasiona que la
1924 mayoría de las propiedades vuelvan a su valor predeterminado.
1925 Normalmente no es necesario el uso de @code{\unset}, pues una
1926 nueva instrucción @code{\set} hará el ajuste deseado.
1928 Las instrucciones @code{\set} y @code{\unset} pueden aparecer en
1929 cualquier lugar del archivo de entrada y tendrán efecto a partir
1930 del tiempo en que se encuentran y hasta el final de la partitura
1931 o hasta que la propiedad se establezca de nuevo mediante
1932 @code{\set} o @code{\unset}. Probemos a modificar el tamaño de
1933 la fuente tipográfica, lo que afecta al tamaño de las cabezas de
1934 las notas (entre otras cosas) varias veces. El cambio se toma a
1935 partir del valor predeterminado, no el valor en curso.
1937 @lilypond[quote,verbatim,ragged-right]
1940 % make note heads smaller
1943 % make note heads larger
1944 \set fontSize = #2.5
1946 % return to default size
1952 Hemos podido ver cómo establecer los valores de diversos tipos de
1953 propiedad diferentes. Observe que los números enteros y reales
1954 van siempre precedidos de un símbolo de cuadradillo, @code{#},
1955 mientras que un valor booleano verdadero o falso se especifica
1956 mediante @code{##t} y @code{##f}, con dos cuadradillos. Una
1957 propiedad de texto se debe encerrar entre comillas dobles, como
1958 antes, aunque veremos más adelante que el texto realmente se
1959 puede especificar de una forma mucho más general utilizando la
1960 potentísima instrucción @code{markup}.
1962 @subsubheading Cambiar las propiedades de un contexto con @code{\with}
1965 @cindex contexto, propiedades de, establecimiento con \with
1967 El valor predeterminado de las propiedades de contexto se puede
1968 establecer en el momento en que se crea el contexto. A veces
1969 esta forma de establecer el valor de una propiedad es mucho más
1970 clara, si ha de quedar fijo durante todo el tiempo que dure el
1971 contexto. Cuando se crea un contexto con una instrucción
1972 @code{\new} puede ir inmediatamente seguido de un bloque
1973 @code{\with @{ @dots{} @}} en el que se establecen los valores
1974 predeterminados de las propiedades. Por ejemplo, si queremos
1975 suprimir la impresión de becuadros adicionales para toda la
1976 duración de un pentagrama, podemos escribir:
1979 \new Staff \with @{ extraNatural = ##f @}
1983 de la siguiente forma:
1985 @lilypond[quote,verbatim,ragged-right]
1989 gisis'4 gis aeses aes
1992 \new Staff \with { extraNatural = ##f } {
1994 gisis'4 gis aeses aes
2000 Las propiedades ajustadas de esta manera aún pueden cambiarse
2001 dinámicamente utilizando @code{\set} y ser devueltas al valor
2002 predeterminados que se estableció en el bloque @code{\with}
2003 mediante @code{\unset}.
2005 @cindex fontSize (tamaño de la tipografía)
2006 @cindex fuente, tamaño de la
2007 @cindex tamaño de la fuente
2009 Así pues, si la propiedad @code{fontSize} se ajusta dentro de una
2010 cláusula @code{\with}, tiene el efecto de reiniciar el valor
2011 predeterminado del tamaño de la fuente tipográfica. Si más tarde
2012 se modifica con @code{\set}, este nuevo valor predeterminado
2013 puede restablecerse con la instrucción @code{\unset fontSize}.
2015 @subsubheading Cambiar las propiedades de un contexto con @code{\context}
2017 @cindex contextos, establecer propiedades de, con \context
2020 Los valores de propiedad de los contextos se pueden establecer
2021 para @emph{todos} los contextos de un tipo determinado, como por
2022 ejemplo todos los contextos de @code{Staff}, con una única
2023 instrucción. El tipo de contexto se identifica mediante la
2024 utilización del nombre de su tipo, como @code{Staff}, precedido
2025 de una barra invertida: @code{\Staff}. El enunciado que
2026 establece el valor de la propiedad es el mismo que el que está en
2027 un bloque @code{\with}, presentado anteriormente. Se coloca en
2028 un bloque @code{\context} dentro de un bloque @code{\layout}.
2029 Cada bloque @code{\context} afecta a todos los contextos del tipo
2030 especificado a lo largo del bloque @code{\score} o @code{\book}
2031 en el que aparece el bloque @code{\layout}. A continuación
2032 presentamos un ejemplo que muestra el formato:
2034 @lilypond[verbatim,quote]
2050 Si se quiere aplicar la sobreescritura de propiedades a todos los
2051 pentagramas de la partitura:
2053 @lilypond[quote,verbatim]
2058 gisis'4 gis aeses aes
2063 gisis'4 gis aeses aes
2069 \Score extraNatural = ##f
2076 Las propiedades de contexto establecidas de esta forma se pueden
2077 sobreescribir para ejemplares concretos de contextos mediante
2078 enunciados dentro de un bloque @code{\with}, y mediante
2079 instrucciones @code{\set} intercaladas dentro de enunciados
2084 Referencia de la notación:
2085 @ruser{Cambiar los valores por omisión de los contextos},
2087 @c uncomment when backslash-node-name issue is resolved -pm
2088 @ruser{La instrucción set}.
2090 Referencia de funcionamiento interno:
2091 @rinternals{Contexts},
2092 @rinternals{Tunable context properties}.
2095 @node Añadir y eliminar grabadores
2096 @subsection Añadir y eliminar grabadores
2097 @translationof Adding and removing engravers
2099 @cindex grabadores, adición
2100 @cindex grabadores, eliminación
2101 @cindex adición de grabadores
2102 @cindex eliminación de grabadores
2107 Hemos visto que cada uno de los contextos contiene varios
2108 grabadores, cada uno de los cuales a su vez es responsable de la
2109 producción de una fracción particular del resultado impreso, como
2110 líneas divisorias, pentagramas, cabezas, plicas, etc. Si un
2111 grabador es eliminado de un contexto, ya no podrá producir su
2112 salida impresa. Es una forma algo radical de modificar la
2113 salida, pero a veces puede ser útil.
2115 @subsubheading Cambiar un solo contexto
2117 Para eliminar un grabador de un contexto único, usamos la
2118 instrucción @code{\with} situada inmediatamente después de la
2119 instrucción que crea el contexto, como en la sección anterior.
2121 Como ilustración, repitamos un ejemplo extraído de la sección
2122 anterior con las líneas del pentagrama eliminadas. Recuerde que
2123 las líneas del pentagrama están dibujadas por el grabador
2124 @code{Staff_symbol_engraver}.
2126 @lilypond[quote,verbatim,ragged-right]
2128 \remove "Staff_symbol_engraver"
2132 \set fontSize = #-4 % make note heads smaller
2134 \set fontSize = #2.5 % make note heads larger
2136 \unset fontSize % return to default size
2141 @cindex ámbito, grabador del
2143 Los grabadores también se pueden añadir a los contextos
2144 individuales La instrucción que lo hace es
2146 @code{\consists @var{Nombre_del_grabador}},
2148 situada dentro de un bloque @code{\with}. Ciertas partituras
2149 vocales tienen una indicación de ámbito o tesitura situada al
2150 principio del pentagrama para indicar el ámbito de notas en dicho
2151 pentagrama, véase @rglos{ambitus}. El ambitus se produce por
2152 parte del grabador @code{Ambitus_engraver}, que normalmente no
2153 está incluido en ningún contexto. Si lo añadimos al contexto
2154 @code{Voice}, calcula el rango a partir de esa única voz:
2156 @lilypond[quote,verbatim,ragged-right]
2159 \consists "Ambitus_engraver"
2176 pero si añadimos el grabador de ámbito al contexto de
2177 @code{Staff}, calcula el rango de todas las notas en todas las
2178 voces de ese pentagrama:
2180 @lilypond[quote,verbatim,ragged-right]
2182 \consists "Ambitus_engraver"
2200 @subsubheading Cambiar todos los contextos del mismo tipo
2204 Los ejemplos anteriores muestran la manera de eliminar o añadir
2205 grabadores a los contextos individuales. También es posible
2206 eliminar o añadir grabadores a todos los contextos de un tipo
2207 específico, situando las instrucciones en el contexto
2208 correspondiente dentro de un bloque @code{\layout}. Por ejemplo,
2209 si queremos mostrar los rangos de tesitura para todos los
2210 pentagramas de una partitura de cuatro pautas, podemos escribir
2212 @lilypond[quote,verbatim,ragged-right]
2241 \consists "Ambitus_engraver"
2248 Los valores predeterminados de las propiedades de los contextos
2249 también se pueden establecer para todos los contextos de un tipo
2250 en particular incluyendo la instrucción @code{\set} dentro de un
2251 bloque @code{\context} de la misma forma.
2255 Referencia de la notación:
2256 @ruser{Modificar los complementos (plug-ins) de contexto},
2257 @ruser{Cambiar los valores por omisión de los contextos}.
2260 Los grabadores @code{Stem_engraver} y @code{Beam_engraver} (de
2261 plica y de barra) adjuntan a la cabeza de las notas los objetos
2262 que crean. Si se suprime el grabador de cabezas de nota
2263 @code{Note_heads_engraver}, no se produce ninguna cabeza y por
2264 tanto no se crean tampoco plicas ni barras.
2267 @node Extender las plantillas
2268 @section Extender las plantillas
2269 @translationof Extending the templates
2271 Ha leído el tutorial y ahora sabe escribir música. Pero ¿cómo
2272 puede poner los pentagramas que quiere? Las plantillas están muy
2273 bien, pero ¿qué ocurre si quiere algo que no está en una de
2274 ellas? Bien, puede encontrar montañas de plantillas (véase
2275 @ref{Plantillas}) que le pueden servir como punto de partida.
2276 Pero ¿y si quiere algo que no está contemplado aquí? Continúe
2281 * Soprano y violoncello::
2282 * Partitura vocal a cuatro voces SATB::
2283 * Crear una partitura partiendo de cero::
2284 * Ahorrar tecleo mediante variables y funciones::
2285 * Partituras y particellas::
2288 @node Soprano y violoncello
2289 @subsection Soprano y violoncello
2290 @translationof Soprano and cello
2292 @cindex plantilla, modificar
2293 @cindex modificar plantillas
2295 Para empezar, tome la plantilla que le parezca más parecida a
2296 aquello que quiere conseguir. Digamos que quiere escribir algo
2297 para soprano y cello. En este caso comenzaríamos con la
2298 plantilla @q{Notas y letra} (para la parte de soprano).
2301 \version @w{"@version{}"}
2302 melodia = \relative @{
2309 texto = \lyricmode @{
2315 \new Voice = "uno" @{
2319 \new Lyrics \lyricsto "uno" \texto
2326 Ahora queremos añadir una parte de violoncello. Veamos el
2327 ejemplo @q{Sólo notas}:
2330 \version @w{"@version{}"}
2331 melodia = \relative @{
2345 No necesitamos dos instrucciones @code{\version}. Vamos a
2346 necesitar la sección @code{melodia}. No queremos dos secciones
2347 @code{\score} (si tuviésemos dos @code{\score}s, acabaríamos con
2348 las dos particellas por separado. Queremos las dos juntas, como
2349 un dúo. Dentro de la sección @code{\score}, no nos hacen falta
2350 dos @code{\layout} ni dos @code{\midi}.
2352 Si nos limitásemos a copiar y pegar la sección @code{melodia},
2353 acabaríamos con dos secciones @code{melodia} separadas, así que
2354 vamos a cambiarles el nombre. Llamaremos @code{musicaSoprano} a
2355 la sección de la soprano y @code{musicaCello} a la sección del
2356 violoncello. Al mismo tiempo cambiaremos el nombre de
2357 @code{texto} a @code{letraSoprano}. Recuerde cambiar el nombre a
2358 las dos apariciones de todos estos nombres -- tanto la definición
2359 inicial (la parte @code{melodia = \relative @{ }) -- como el uso
2360 de ese nombre (en la sección @code{\score}).
2362 También aprovecharemos para cambiar el pentagrama de la parte del
2363 cello (los violoncellos se escriben normalmente en clave de Fa).
2364 Asimismo, cambiaremos algunas notas del cello.
2367 \version @w{"@version{}"}
2368 musicaSoprano = \relative @{
2375 letraSoprano = \lyricmode @{
2379 musicaCello = \relative @{
2388 \new Voice = "uno" @{
2392 \new Lyrics \lyricsto "uno" \letraSoprano
2399 Esto tiene una apariencia prometedora, pero la parte del cello no
2400 sale en la partitura (no la hemos puesto en la sección
2401 @code{\score}). Si queremos que la parte del cello aparezca
2402 debajo de la de soprano, tenemos que añadir
2405 \new Staff \musicaCello
2409 justo debajo de todo lo de la soprano. También tenemos que poner
2410 @code{<<} y @code{>>} antes y después de la música -- lo que
2411 indica a LilyPond que hay más de una cosa (en este caso,
2412 @code{Staff}) sucediendo al mismo tiempo --. La @code{\score} se
2413 parecerá ahora a esto:
2415 @c Indentation in this example is deliberately poor
2420 \new Voice = "uno" @{
2424 \new Lyrics \lyricsto "uno" \letraSoprano
2426 \new Staff \musicaCello
2434 Lo anterior parece un poco enrevesado; los márgenes están
2435 descuadrados. Esto tiene fácil solución. Presentamos aquí la
2436 plantilla completa para soprano y cello.
2438 @lilypond[quote,verbatim,ragged-right,addversion]
2439 sopranoMusic = \relative {
2446 sopranoLyrics = \lyricmode {
2450 celloMusic = \relative {
2460 \new Voice = "one" {
2464 \new Lyrics \lyricsto "one" \sopranoLyrics
2466 \new Staff \celloMusic
2475 Las plantillas de inicio se pueden encontrar en el apéndice
2476 @q{Plantillas}, véase @ref{Plantillas de pentagrama único}.
2479 @node Partitura vocal a cuatro voces SATB
2480 @subsection Partitura vocal a cuatro voces SATB
2481 @translationof Four-part SATB vocal score
2483 La mayor parte de las partituras vocales escritas para coro mixto
2484 a cuatro voces con acompañamiento orquestal, como el «Elías» de
2485 Mendelssohn o el «Mesías» de Haendel, tienen la música coral y la
2486 letra en cuatro pentagramas para S, A, T y B, respectivamente,
2487 con una reducción de piano del acompañamiento de orquesta, por
2488 debajo. He aquí un ejemplo del «Mesías» de Haendel:
2490 @c The following should appear as music without code
2491 @lilypond[quote,ragged-right]
2492 global = { \key d \major \time 4/4 }
2494 sopranoMusic = \relative {
2496 r4 d''2 a4 | d4. d8 a2 | cis4 d cis2 |
2498 sopranoWords = \lyricmode {
2499 Wor -- thy | is the lamb | that was slain |
2502 altoMusic = \relative {
2504 r4 a'2 a4 | fis4. fis8 a2 | g4 fis e2 |
2506 altoWords = \sopranoWords
2508 tenorMusic = \relative {
2510 r4 fis'2 e4 | d4. d8 d2 | e4 a, cis2 |
2512 tenorWords = \sopranoWords
2514 bassMusic = \relative {
2516 r4 d'2 cis4 | b4. b8 fis2 | e4 d a'2 |
2518 bassWords = \sopranoWords
2523 r4 <a' d fis>2 <a e' a>4 |
2524 <d fis d'>4. <d fis d'>8 <a d a'>2 |
2525 <g cis g'>4 <a d fis> <a cis e>2 |
2531 <d, d'>4 <d d'>2 <cis cis'>4 |
2532 <b b'>4. <b' b'>8 <fis fis'>2 |
2533 <e e'>4 <d d'> <a' a'>2 |
2537 << % combine ChoirStaff and PianoStaff in parallel
2539 \new Staff = "sopranos" <<
2540 \set Staff.instrumentName = #"Soprano"
2541 \new Voice = "sopranos" {
2546 \new Lyrics \lyricsto "sopranos" {
2549 \new Staff = "altos" <<
2550 \set Staff.instrumentName = #"Alto"
2551 \new Voice = "altos" {
2556 \new Lyrics \lyricsto "altos" { \altoWords }
2557 \new Staff = "tenors" <<
2558 \set Staff.instrumentName = #"Tenor"
2559 \new Voice = "tenors" {
2564 \new Lyrics \lyricsto "tenors" { \tenorWords }
2565 \new Staff = "basses" <<
2566 \set Staff.instrumentName = #"Bass"
2567 \new Voice = "basses" {
2572 \new Lyrics \lyricsto "basses" {
2577 \set PianoStaff.instrumentName = #"Piano"
2578 \new Staff = "upper" \upper
2579 \new Staff = "lower" \lower
2585 @warning{Esta disposición se puede conseguir muy fácilmente
2586 usando la plantilla incorporada: @code{satb.ly}, véase
2587 @ref{Plantillas incorporadas}. Pero para mayor facilidad de uso,
2588 esta plantilla oculta deliberadamente la necesaria estructura de
2589 contexto, proporcionándola automáticamente en vez de ello. Así
2590 pues, para nuestro objetivo de aprendizaje, veamos cómo construir
2591 la estructura partiendo de cero. Quizá necesite hacerlo cada vez
2592 que la plantilla incorporada no cumpla sus necesidades
2595 La plantilla (no incorporada: de copiar y editar) más parecida a
2597 @ref{Partitura vocal SATB y reducción para piano automática},
2598 pero necesitamos cambiar la disposición y añadir un
2599 acompañamiento de piano que no esté derivado automáticamente de
2600 las partes vocales. Las variables que contienen la música y la
2601 letra de las partes vocales es adecuada, pero tendremos que
2602 añadir variables para la reducción de piano.
2604 El orden en que aparecen los contextos en el ChoirStaff de la
2605 plantilla no se corresponde con el orden de la partitura vocal
2606 que hemos mostrado más arriba. Tenemos que reordenarlas para que
2607 haya cuatro pentagramas con la letra escrita directamente bajo
2608 las notas de cada parte. Todas las voces deben ser
2609 @code{\voiceOne}, que es la predeterminada, para que las
2610 instrucciones @code{\voiceXXX} se puedan eliminar. También
2611 tenemos que especificar la clave de tenor (clave de sol octava
2612 baja) en las partes de tenor. Aún no hemos encontrado la forma
2613 en que la letra se especifica en la plantilla, así que tenemos
2614 que utilizar el método que nos resulta familiar. También tenemos
2615 que escribir los nombres de cada pentagrama.
2617 Al hacerlo así obtenemos el ChoirStaff siguiente:
2621 \new Staff = "sopranos" <<
2622 \set Staff.instrumentName = #"Soprano"
2623 \new Voice = "sopranos" @{
2628 \new Lyrics \lyricsto "sopranos" @{
2631 \new Staff = "altos" <<
2632 \set Staff.instrumentName = #"Alto"
2633 \new Voice = "altos" @{
2638 \new Lyrics \lyricsto "altos" @{
2641 \new Staff = "tenors" <<
2642 \set Staff.instrumentName = #"Tenor"
2643 \new Voice = "tenors" @{
2648 \new Lyrics \lyricsto "tenors" @{
2651 \new Staff = "bajos" <<
2652 \set Staff.instrumentName = #"Bajo"
2653 \new Voice = "bajos" @{
2658 \new Lyrics \lyricsto "bajos" @{
2661 >> % fin del ChoirStaff
2664 A continuación debemos trabajar sobre la parte de piano. Es
2665 fácil: tan sólo hay que sacar la parte de piano de la plantilla
2666 de @q{Piano solista}:
2670 \set PianoStaff.instrumentName = #"Piano"
2671 \new Staff = "superior" \superior
2672 \new Staff = "inferior" \inferior
2676 y escribir las definiciones de variable para @code{superior} e
2679 Los grupos ChoirStaff y PianoStaff se deben combinar utilizando
2680 ángulos dobles, ya queremos apilarlos unos sobre otros:
2683 << % combinar los grupos ChoirStaff y PianoStaff uno sobre el otro
2685 \new Staff = "sopranos" <<
2686 \new Voice = "sopranos" @{
2691 \new Lyrics \lyricsto "sopranos" @{
2694 \new Staff = "altos" <<
2695 \new Voice = "altos" @{
2700 \new Lyrics \lyricsto "altos" @{
2703 \new Staff = "tenores" <<
2704 \clef "G_8" % clave de tenor
2705 \new Voice = "tenores" @{
2710 \new Lyrics \lyricsto "tenores" @{
2713 \new Staff = "bajos" <<
2715 \new Voice = "bajos" @{
2720 \new Lyrics \lyricsto "bajos" @{
2723 >> % fin del ChoirStaff
2726 \set PianoStaff.instrumentName = #"Piano"
2727 \new Staff = "upper" \upper
2728 \new Staff = "lower" \lower
2733 Al combinar todo esto junto y escribir la música de los tres
2734 compases del ejemplo anterior, obtenemos:
2736 @lilypond[quote,verbatim,ragged-right,addversion]
2737 global = { \key d \major \time 4/4 }
2738 sopranoMusic = \relative {
2740 r4 d''2 a4 | d4. d8 a2 | cis4 d cis2 |
2742 sopranoWords = \lyricmode {
2743 Wor -- thy | is the lamb | that was slain |
2745 altoMusic = \relative {
2747 r4 a'2 a4 | fis4. fis8 a2 | g4 fis fis2 |
2749 altoWords = \sopranoWords
2750 tenorMusic = \relative {
2752 r4 fis'2 e4 | d4. d8 d2 | e4 a, cis2 |
2754 tenorWords = \sopranoWords
2755 bassMusic = \relative {
2757 r4 d'2 cis4 | b4. b8 fis2 | e4 d a'2 |
2759 bassWords = \sopranoWords
2763 r4 <a' d fis>2 <a e' a>4 |
2764 <d fis d'>4. <d fis d'>8 <a d a'>2 |
2765 <g cis g'>4 <a d fis> <a cis e>2 |
2770 <d, d'>4 <d d'>2 <cis cis'>4 |
2771 <b b'>4. <b' b'>8 <fis fis'>2 |
2772 <e e'>4 <d d'> <a' a'>2 |
2776 << % combine ChoirStaff and PianoStaff in parallel
2778 \new Staff = "sopranos" <<
2779 \set Staff.instrumentName = #"Soprano"
2780 \new Voice = "sopranos" {
2785 \new Lyrics \lyricsto "sopranos" {
2788 \new Staff = "altos" <<
2789 \set Staff.instrumentName = #"Alto"
2790 \new Voice = "altos" {
2795 \new Lyrics \lyricsto "altos" {
2798 \new Staff = "tenors" <<
2799 \set Staff.instrumentName = #"Tenor"
2800 \new Voice = "tenors" {
2805 \new Lyrics \lyricsto "tenors" {
2808 \new Staff = "basses" <<
2809 \set Staff.instrumentName = #"Bass"
2810 \new Voice = "basses" {
2815 \new Lyrics \lyricsto "basses" {
2821 \set PianoStaff.instrumentName = #"Piano "
2822 \new Staff = "upper" \upper
2823 \new Staff = "lower" \lower
2830 @node Crear una partitura partiendo de cero
2831 @subsection Crear una partitura partiendo de cero
2832 @translationof Building a score from scratch
2834 @cindex plantilla, escribir su propia
2835 @cindex ejemplo de escritura de una partitura
2836 @cindex escribir una partitura, ejemplo
2837 @cindex partitura, ejemplo de escritura
2839 Después de adquirir algo de soltura en la escritura del código de
2840 LilyPond, se dará cuenta de que es más fácil construir
2841 completamente una partitura partiendo de cero, que modificar una
2842 plantilla. También puede desarrollar su propio estilo de forma
2843 que se adapte al tipo de música que le apetezca. Veamos a
2844 continuación cómo confeccionar una partitura para un preludio de
2845 órgano, como ejemplo.
2847 Comenzamos con una sección para el encabezamiento. Aquí es donde
2848 van el título, nombre del compositor, etc., después van las
2849 definiciones de las variables, y finalmente el bloque de
2850 partitura. Comencemos a verlas por encima y más tarde
2851 completaremos los detalles.
2853 Utilizaremos los dos primeros compases del preludio de Bach
2854 basado en @emph{Jesu, meine Freude}, que está escrito para órgano
2855 con dos manuales y pedal. Tiene estos dos compases de música al
2856 final de la sección. La parte del manual superior tiene dos
2857 voces, y el inferior y el pedal, una voz cada uno. Así pues,
2858 necesitamos cuatro definiciones para la música y una más para
2859 definir el compás y la tonalidad:
2862 \version @w{"@version{}"}
2864 title = "Jesu, meine Freude"
2865 composer = "J S Bach"
2867 keyTime = @{ \key c \minor \time 4/4 @}
2868 MusicaManualUnoVozUno = @{ s1 @}
2869 MusicaManualUnoVozDos = @{ s1 @}
2870 MusicaManualDos = @{ s1 @}
2871 MusicaPedal = @{ s1 @}
2877 Por el momento hemos escrito tan sólo una nota espaciadora,
2878 @code{s1}, en lugar de la música de verdad. La añadiremos más
2881 A continuación veamos qué va en el bloque de partitura.
2882 Sencillamente, reflejaremos la estructura de pentagramas que
2883 deseemos. La música de órgano se escribe por lo general en tres
2884 pentagramas, uno para cada uno de los manuales y otro para el
2885 pedal. Los pentagramas de los manuales se abarcan con una llave,
2886 así que los incluiremos en un grupo PianoStaff. La primera parte
2887 de manual tiene dos voces, y la segunda sólo una.
2891 \new Staff = "ManualUno" <<
2893 \MusicaManualUnoVozUno
2896 \MusicaManualUnoVozDos
2898 >> % fin del contexto de Staff ManualUno
2899 \new Staff = "ManualDos" <<
2903 >> % fin del contexto de Staff ManualDos
2904 >> % fin del contexto de PianoStaff
2907 Después, tenemos que añadir un pentagrama para el órgano de
2908 pedal. Esto va por debajo del PianoStaff, pero debe ser
2909 simultáneo con él, por lo que escribimos dobles ángulos rodeando
2910 a los dos. Si esto se nos olvida, se producirá un error en el
2911 archivo log de registro. ¡Es un error muy común que cometerá
2912 antes o después! Intente copiar el ejemplo final que aparece al
2913 final de la sección, borre los dobles ángulos y procese el
2914 archivo para ver qué error produce.
2917 << % el grupo PianoStaff y el pentagrama de Pedal son simultáneos
2919 \new Staff = "ManualUno" <<
2921 \MusicaManualUnoVozUno
2924 \MusicaManualUnoVozDos
2926 >> % fin del contexto de Staff ManualUno
2927 \new Staff = "ManualDos" <<
2931 >> % fin del contexto de Staff ManualDos
2932 >> % fin del contexto de PianoStaff
2933 \new Staff = "OrganoPedal" <<
2941 No es necesario utilizar la construcción simultánea @code{<<
2942 @dots{} >>} para el pentagrama del manual dos y el pentagrama del
2943 órgano de pedal, ya que contienen una única expresión, pero no
2944 hace daño, y es una buena costumbre utilizar siempre dobles
2945 ángulos después de @code{\new Staff} cuando hay varias voces. Lo
2946 opuesto es cierto para las voces: normalmente deben ir seguidas
2947 de llaves @code{@{ @dots{} @}} en caso de que tengamos música
2948 codificada como distintas variables que se deben situar
2951 Añadamos esta estructura al bloque de partitura, y ajustemos el
2952 sangrado de los márgenes. También escribimos las claves
2953 correspondientes, nos aseguramos de que las plicas y ligaduras de
2954 unión y de expresión en cada una de las voces del pentagrama
2955 superior apuntan en la dirección adecuada con @code{\voiceOne} y
2956 @code{\voiceTwo} y escribimos el compás y la tonalidad en cada
2957 uno de los pentagramas usando nuestra variable previamente
2958 definida @code{\TimeKey}.
2962 << % el grupo PianoStaff y el pentagrama de Pedal son simultáneos
2964 \new Staff = "ManualUno" <<
2965 \keyTime % establecer compás y tonalidad
2969 \MusicaManualUnoVozUno
2973 \MusicaManualUnoVozDos
2975 >> % fin del contexto de Staff ManualUno
2976 \new Staff = "ManualDos" <<
2982 >> % fin del contexto de Staff ManualDos
2983 >> % fin del contexto de PianoStaff
2984 \new Staff = "OrganoPedal" <<
2990 >> % fin del pentagrama de OrganoPedal
2992 @} % fin del contexto Score
2995 @cindex ampliabilidad de las pautas
2996 @cindex pautas, ampliabilidad
2998 La disposición anterior de los pentagramas de órgano es casi
2999 perfecta; sin embargo, existe un ligero defecto que no es visible
3000 cuando se observa un solo sistema: la distancia entre el
3001 pentagrama de pedal y el de la mano izquierda debiera ser
3002 aproximadamente la misma que la que existe entre los pentagramas
3003 de las manos izquierda y derecha. Concretamente, la
3004 ampliabilidad de los pentagramas dentro de un contexto
3005 @code{PianoStaff} es limitada (de forma que la distancia entre
3006 los pentagramas de las manos izquierda y derecha nunca crezcan
3007 excesivamente), y el pentagrama de los pedales debería
3008 comportarse de una forma similar.
3010 @cindex sub-propiedades
3011 @cindex propiedades, sub-propiedades
3012 @cindex objetos gráficos
3013 @cindex gráficos, objetos
3016 El grado de ampliabilidad o separabilidad de los pentagramas se
3017 puede controlar con la propiedad @code{staff-staff-spacing} del
3018 @q{objeto gráfico} @code{VerticalAxisGroup} (los objetos gráficos
3019 reciben por lo general el nombre de @q{grob}s en la documentación
3020 de lilypond); no se preocupe por el momento de los detalles, pues
3021 esto se explica más tarde de forma exhaustiva. Los más curiosos
3022 pueden echar un vistazo a @ruser{Panorámica de la modificación de
3023 las propiedades}. En este caso, queremos modificar solamente la
3024 sub-propiedad @code{stretchability}. De nuevo, los curiosos
3025 encontrarán los valores predeterminados para la propiedad
3026 staff-staff-spacing en el archivo @file{scm/define-grobs.scm}
3027 examinando la definición del grob @code{VerticalAxisGroup} grob.
3028 El valor de @code{stretchability} se toma de la definición del
3029 contexto @code{PianoStaff} (en el archivo
3030 @file{ly/engraver-init.ly}) de forma que los valores sean
3035 << % el grupo PianoStaff y el pentagrama de Pedal son simultáneos
3037 \new Staff = "ManualUno" <<
3038 \keyTime % establecer compás y tonalidad
3042 \MusicaManualUnoVozUno
3046 \MusicaManualUnoVozDos
3048 >> % % fin del contexto de Staff ManualUno
3049 \new Staff = "ManualDos" \with @{
3050 \override VerticalAxisGroup.staff-staff-spacing.stretchability = 5
3057 >> % fin del contexto de Staff ManualDos
3058 >> % fin del contexto de PianoStaff
3059 \new Staff = "OrganoPedal" <<
3065 >> % fin del pentagrama de OrganoPedal
3067 @} % fin del contexto Score
3070 Con esto se completa la estructura. Toda música para órgano de
3071 tres pentagramas tendrá una estructura similar, aunque el número
3072 de voces puede variar. Todo lo que nos queda es añadir la
3073 música, y combinar todas las partes.
3075 @lilypond[quote,verbatim,ragged-right,addversion]
3077 title = "Jesu, meine Freude"
3078 composer = "J S Bach"
3080 keyTime = { \key c \minor \time 4/4 }
3081 ManualOneVoiceOneMusic = \relative {
3085 ManualOneVoiceTwoMusic = \relative {
3086 ees'16 d ees8~ 16 f ees d c8 d~ d c~ |
3087 8 c4 b8 c8. g16 c b c d |
3089 ManualTwoMusic = \relative {
3090 c'16 b c8~ 16 b c g a8 g~ 16 g aes ees |
3091 f16 ees f d g aes g f ees d ees8~ 16 f ees d |
3093 PedalOrganMusic = \relative {
3094 r8 c16 d ees d ees8~ 16 a, b g c b c8 |
3095 r16 g ees f g f g8 c,2 |
3099 << % PianoStaff and Pedal Staff must be simultaneous
3101 \new Staff = "ManualOne" <<
3102 \keyTime % set key and time signature
3106 \ManualOneVoiceOneMusic
3110 \ManualOneVoiceTwoMusic
3112 >> % end ManualOne Staff context
3113 \new Staff = "ManualTwo" \with {
3114 \override VerticalAxisGroup.staff-staff-spacing.stretchability = 5
3121 >> % end ManualTwo Staff context
3122 >> % end PianoStaff context
3123 \new Staff = "PedalOrgan" <<
3129 >> % end PedalOrgan Staff context
3131 } % end Score context
3138 @node Ahorrar tecleo mediante variables y funciones
3139 @subsection Ahorrar tecleo mediante variables y funciones
3140 @translationof Saving typing with variables and functions
3143 @cindex identificadores
3145 Llegado a este punto, usted ha visto cosas de este tipo:
3147 @lilypond[quote,verbatim,ragged-right]
3148 hornNotes = \relative { c''4 b dis c }
3157 Incluso se dará cuenta de que esto puede ser útil en música
3160 @lilypond[quote,verbatim,ragged-right]
3161 fragmentA = \relative { a'4 a8. b16 }
3162 fragmentB = \relative { a'8. gis16 ees4 }
3164 violin = \new Staff {
3165 \fragmentA \fragmentA |
3166 \fragmentB \fragmentA |
3176 Sin embargo también puede usar estos identificadores (que también
3177 se conocen como variables, macros o instrucciones definidas por
3178 el usuario) para hacer trucos:
3180 @lilypond[quote,verbatim,ragged-right]
3181 dolce = \markup { \italic \bold dolce }
3183 centreText = { \once \override TextScript.self-alignment-X = #CENTER }
3186 \dynamic f \italic \small { 2nd } \hspace #0.1 \dynamic p
3189 violin = \relative {
3191 c''4._\dolce b8 a8 g a b |
3193 c4.^"hi there!" d8 e f g d |
3194 c4.\fthenp b8 c4 c-. |
3205 Obviamente estos identificadores son útiles para ahorrar tecleo.
3206 Pero son dignos de tener en cuenta incluso si se van a utilizar
3207 una sola vez: reducen la complejidad. Examinemos el ejemplo
3208 anterior reescrito sin ningún identificador. Encontrará que es
3209 mucho más difícil de leer, sobre todo la última línea.
3212 violin = \relative @{
3214 c''4._\markup @{ \italic \bold dolce @} b8 a8 g a b |
3215 \once \override TextScript.self-alignment-X = #CENTER
3216 c4.^"hi there!" d8 e f g d |
3218 \dynamic f \italic \small @{ 2nd @} \hspace #0.1 \dynamic p
3225 Hasta ahora hemos contemplado la sustitución estática: cuando
3226 LilyPond se encuentra con @code{\centreText}, lo sustituye con
3227 aquello que hemos definido que sea (es decir, todo lo que está a
3228 la derecha de @code{centreText=}).
3230 LilyPond también puede manejar sustituciones no estáticas (piense
3231 en ellas como en funciones).
3233 @lilypond[quote,verbatim,ragged-right]
3235 #(define-music-function
3239 \once \override TextScript.padding = #padding
3243 c''4^"piu mosso" b a b
3245 c4^"piu mosso" b a b
3247 c4^"piu mosso" b a b
3251 La utilización de identificadores también es una buena forma de
3252 reducir el trabajo si la sintaxis de entrada de LilyPond cambia
3253 (véase @rprogram{Actualizar ficheros con convert-ly}). Si tiene
3254 una sola definición (como p.ej. @code{\dolce}) para todos sus
3255 archivos (ver @ref{Hojas de estilo}), y después la sintaxis se
3256 modifica, sólo tendrá que actualizar su definición @code{\dolce}
3257 única, en lugar de tener que hacer cambios en cada uno de los
3258 archivos @file{.ly}.
3261 @node Partituras y particellas
3262 @subsection Partituras y particellas
3263 @translationof Scores and parts
3265 En música orquestal, todas las notas se imprimen dos veces. Una
3266 vez en las particellas para los músicos, y otra para la partitura
3267 del director. Los identificadores se pueden usar para evitar la
3268 duplicación del trabajo. La música se escribe una vez y se
3269 almacena en una variable. El contenido de dicha variable se usa
3270 después para generar tanto la particella como la partitura del
3273 Es muy conveniente definir las notas en un archivo especial. Por
3274 ejemplo, supongamos que el archivo @file{trompa.ly} contiene la
3275 siguiente parte de un dúo para trompa y fagot:
3278 notasTrompa = \relative @{
3280 r4 f8 a | cis4 f | e4 d |
3285 Luego se hace una particella escribiendo en un archivo lo
3289 \include "trompa.ly"
3292 instrument = "Trompa en Fa"
3296 \transpose f c' \notasTrompa
3303 \include "trompa.ly"
3307 sustituye el contenido de @file{trompa.ly} en esta posición
3308 dentro del archivo, así que @code{notasTrompa} se define con
3309 posterioridad. La instrucción @code{\transpose f@tie{}c'} indica
3310 que el argumento constituido por @code{\notasTrompa} se debe
3311 transponer una quinta hacia arriba. Lo que suena como @code{f}
3312 se escribe como @code{c'}, lo que corresponde con el tono de
3313 afinación de una trompa normal en@tie{}Fa. La transposición se
3314 puede ver en la siguiente salida
3316 @lilypond[quote,ragged-right]
3317 \transpose f c' \relative {
3319 r4 f8 a | cis4 f | e4 d |
3323 En piezas para conjunto, con frecuencia una de las voces no suena
3324 durante muchos compases. Esto queda denotado por un silencio
3325 especial, el silencio multicompás. Se introduce con una @code{R}
3326 mayúscula seguida de una duración (@code{1}@tie{}en el caso de la
3327 redonda, @code{2}@tie{}en el caso de una blanca, etc.).
3328 Multiplicando la duración se pueden construir silencios más
3329 largos. Por ejemplo, este silencio ocupa 3@tie{}compases de 2/4
3335 Cuando se imprime la particella tienen que comprimirse los silencios
3336 multicompás. Existe una función musical para hacerlo:
3339 \compressMMRests @{ ... @}
3342 Applying this to @code{hornNotes} gives:
3344 @lilypond[quote,ragged-right]
3345 \compressMMRests \transpose f c' \relative {
3348 r4 f8 a | cis4 f | e4 d |
3352 Esta partitura se hace combinando toda la música junta.
3353 Suponiendo que la otra voz se encuentra dentro de
3354 @code{notasFagot} en el archivo @file{fagot.ly}, la partitura se
3359 \include "trompa.ly"
3362 \new Staff \notasTrompa
3363 \new Staff \notasFagot
3370 @lilypond[quote,ragged-right]
3376 r4 f8 a | cis4 f | e4 d |
3381 r4 d,8 f | gis4 c | b4 bes |
3382 a8 e f4 | g4 d | gis4 f |
3388 Manual de aprendizaje:
3389 @ref{Organizar las piezas mediante variables}.
3391 Referencia de la notación:
3392 @ruser{Transposición},
3393 @ruser{Escritura de las particellas},
3394 @ruser{Silencios de compás completo},
3395 @ruser{Inclusión de archivos de LilyPond}.