1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
2 @c This file is part of lilypond-learning.tely
4 Translation of GIT committish: 2990c6fb0d9c8db236c77de82c18479a0a9aa444
6 When revising a translation, copy the HEAD committish of the
7 version that you are working on. See TRANSLATION for details.
11 @node Fundamental concepts
12 @chapter Fundamental concepts
14 Ha podido ver en el tutorial cómo producir música bellamente impresa a
15 partir de un simple archivo de texto. Esta sección presenta los
16 conceptos y técnicas que se requieren para producir partituras
17 igualmente bellas pero más complejas.
20 * How LilyPond files work::
21 * Voices contain music::
22 * Contexts and engravers::
23 * Extending the templates::
27 @node How LilyPond files work
28 @section How LilyPond files work
30 El formato de entrada de LilyPond es bastante libre en su forma y
31 concede a los usuarios con experiencia mucha flexibilidad para
32 estructurar sus archivos de la forma que deseen. Sin embargo, toda
33 esta flexibilidad puede hacer que las cosas se vuelvan confusas para
34 los nuevos usuarios. Esta sección le va a explicar parte de esta
35 estructura, pero puede obviar ciertos detalles en aras de la
36 simplicidad. Para ver una descripción completa del formato de
37 entrada, consulte @ruser{File structure}.
41 * Introduction to the LilyPond file structure::
42 * Score is a (single) compound musical expression::
43 * Nesting music expressions::
44 * On the un-nestedness of brackets and ties::
47 @node Introduction to the LilyPond file structure
48 @subsection Introduction to the LilyPond file structure
50 Un ejemplo básico de archivo de entrada de lilypond es el siguiente:
53 \version @w{"@version{}"}
55 @var{...expresión musical compuesta...} % toda la música viene aquí
63 Existen muchas variaciones de este esquema básico, pero el ejemplo
64 constituye un útil punto de partida.
66 Hasta el momento, ninguno de los ejemplos que ha podido ver utiliza la
67 instrucción @code{\score@{@}}. Esto es así a causa de que LilyPond
68 añade automáticamente las órdenes adicionales que se requieren cuando
69 le proporcionamos una entrada sencilla. LilyPond trata una entrada
79 como una abreviatura de esta otra:
96 En tras palabras, si la entrada consta de una única expresión musical,
97 LilyPond interpreta el archivo como si la expresción musical estuviera
98 rodeada por un envoltorio hecho por las instrucciones que acabamos de
99 ver. De todas formas, vamos a volver al primer ejemplo para examinar
100 la instrucción @code{\score}, dejando las demás en su forma
103 Un bloque @code{\score} siempre debe contener una expresión musical
104 única, que debe aparecer inmediatamente después de la instrucción
105 @code{\score}. Recuerde que una expresión musical podía ser cualquier
106 cosa entre una sola nota hasta una enorme expresión compuesta como
111 @var{...inserte aquí la partitura completa de una ópera de Wagner...}
117 Puesto que todo se encuentra dentro de @code{@{ ... @}}, cuenta como
118 una expresión musical.
120 Como vimos anteriormente, el bloque @code{\score} puede contener otras
133 Hay personas que ponen algunos de estos comandos fuera del
134 bloque @code{\score} (por ejemplo, @code{\header} se
135 sitúa con frecuencia por encima del @code{\score}. Es tan sólo
136 otra abreviatura que LilyPond acepta.
138 Dos instrucciones más que no hemos visto aún son @code{\layout @{ @}}
139 y @code{\midi @{@}}. Si aparecen tal y como se muestran aquí, hacen
140 que LilyPond produzca una salida impresa y una salida MIDI,
141 respectivamente. Se describen con todo detalle en el manual de
142 Referencia de la notación, en @ruser{Score layout} y en
143 @ruser{Creating MIDI files}.
145 Podemos escribir varios bloques @code{\score}. Cada uno de ellos
146 recibirá el mismo tratamiento que una partitura independiente, pero se
147 combinarán todos juntos en un archivo de salida único. No se necesita
148 ninguna instrucción @code{\book}, se creará una implícitamente. Sin
149 embargo, si quiere archivos de salida separados a partir de un archivo
150 @code{.ly}, entonces es necesario utilizar la instrucción @code{\book}
151 para separar las distintas secciones: cada bloque @code{\book} produce
152 un archivo de salida distinto. Para ver más detalles, consulte
153 @ruser{Multiple scores in a book}.
157 Otro atajo genial es la posibilidad de definir variables.
158 Todas las plantillas emplean lo siguiente:
161 melodia = \relative c' @{
170 Cuando LilyPond examina este archivo, toma el valor de @code{melodia}
171 (todo lo que está después del signo igual) y lo inserta dondequiera
172 que ve @code{\melodia}. No se requiere un cuidado especial con los
173 nombres (puede ser @code{melodia}, @code{global},
174 @code{manoderechadelpiano} o @code{fulanomengano}). Para ver más
175 detalles, consulte @ref{Saving typing with variables and functions}.
176 Recuerde que puede usar casi cualquier nombre que se le ocurra, en la
177 medida en que contenga solamente caracteres alfabéticos y sea
178 diferente de cualquiera de los nombres de instrucción de LilyPond.
179 Las limitaciones exactas que afectan a los nombres de variable se
180 detallan en @ruser{File structure}.
185 Para ver una definición completa del formato del código de entrada,
186 consulte @ruser{File structure}.
188 @node Score is a (single) compound musical expression
189 @subsection Score is a (single) compound musical expression
191 @cindex expresión musical compuesta
192 @cindex música, expresión compuesta de
194 En la sección anterior, @ruser{How LilyPond files work} hemos podido
195 ver la organización general de los archivos de entrada de LilyPond.
196 Pero parece que nos saltamos la parte más importante: ¿cómo
197 averiguamos qué escribir después de @code{\score}?
199 No nos hemos saltado nada en absoluto. El gran misterio es, sencillamente,
200 que no hay @emph{ningún} misterio. La siguiente línea lo explica
204 @emph{Una @code{\score} debe comenzar con una única expresión musical.}
208 Quizá encuentre útil dar un repaso a @ruser{Music expressions
209 explained}. En esta sección, vimos cómo elaborar grandes expresiones
210 musicales a partir de pequeñas piezas (comenzábamos con notas, luego
211 acordes, etc.). Ahora partiremos de una gran expresión musical y
212 recorreremos el camino inverso hacia abajo.
216 @{ % esta llave da inicio a la expresión musical completa
218 @var{...introduzca aquí la partitura completa de una ópera de Wagner...}
220 @} % esta llave da por terminada la expresión musical completa
225 Una ópera de Wagner completa puede ser fácilmente el doble de larga
226 que este manual, por tanto vamos a hacer sólo un cantante y un piano.
227 No necesitamos un @code{GrandStaff} para este conjunto, así que lo
228 retiramos. Sin embargo, sí que @emph{necesitamos} un cantante y un
234 \new Staff = "cantante" <<
236 \new PianoStaff = piano <<
243 Recuerde que usamos @code{<<} y @code{>>} en vez de @code{@{ ... @}}
244 para presentar música simultánea. Y, por supuesto, queremos presentar
245 las partes vocal y del piano al mismo tiempo, ¡no una después de otra!
246 Sin embargo, la construcción @code{<< ... >>} no es realmente
247 necesaria para el pentagrama del cantante (pues contiene una sola
248 expresión musical), pero los pentagramas (Staff) a menudo necesitan
249 varias voces (Voice) en su interior, así es bueno adoptar el hábito de
250 usar @code{<< ... >>} en lugar de llaves. Escribiremos algo de música
251 real más tarde; por ahora limitémonos a poner algunas notas y letra de
254 @lilypond[verbatim,quote,ragged-right]
257 \new Staff = "singer" <<
258 \new Voice = "vocal" { c'1 }
261 \new PianoStaff = "piano" <<
262 \new Staff = "upper" { c'1 }
263 \new Staff = "lower" { c'1 }
270 Ahora tenemos muchos más detalles. Tenemos la pauta del cantante:
271 contiene una @code{Voice} o voz (en LilyPond, este término hace
272 referencia a un conjunto de notas, no necesariamente notas vocales --
273 por ejemplo, un violín generalmente toca una voz --) y el texto de la
274 canción. También tenemos una pauta de piano: contiene un pentagrama
275 superior (mano derecha) y un pentagrama inferior (mano izquierda).
277 En este momento podríamos comenzar a meter las notas. Dentro de las
278 llaves que siguen a @code{\new Voice = vocal}, podríamos empezar
287 Pero si lo hiciéramos, la sección @code{\score} se haría bastante
288 larga y sería más difícil comprender lo que ocurre. En lugar de esto
289 utilizaremos identificadores o variables. Recordará que las vimos por
290 primera vez en la sección anterior. Así pues, escribiendo algunas
291 notas, ahora tenemos un fragmento musical de verdad:
293 @lilypond[verbatim,quote,ragged-right]
294 melody = \relative c'' { r4 d8\noBeam g, c4 r }
295 text = \lyricmode { And God said, }
296 upper = \relative c'' { <g d g,>2~ <g d g,> }
297 lower = \relative c { b2 e2 }
301 \new Staff = "singer" <<
302 \new Voice = "vocal" { \melody }
305 \new PianoStaff = "piano" <<
306 \new Staff = "upper" { \upper }
307 \new Staff = "lower" {
317 Tenga cuidado con la diferencia entre las notas, que se introducen con
318 @code{\relative}, y la letra, que se introduce con @code{\lyricmode}.
319 Estas instrucciones son esenciales para decirle a LilyPond que
320 interprete el contenido que viene a continuación como música y texto,
323 Cuando escriba una sección @code{\score} o cuando la esté leyendo,
324 hágalo despacio y con cuidado. Comience por la capa exterior y luego
325 trabaje sobre cada una de las capas interiores. También ayuda ser
326 estricto con los márgenes (asegúrese de que en su editor de texto cada
327 elemento de la misma capa comienza en la misma posición horizontal).
330 @node Nesting music expressions
331 @subsection Nesting music expressions
333 No es esencial declarar todos los pentagramas al comienzo; se pueden
334 crear temporalmente en cualquier momento. Esto es de especial
335 utilidad para crear secciones de ossia (véase @rglos{ossia}). A
336 continuación presentamos un ejemplo sencillo que muestra cómo
337 introducir temporalmente un pentagrama nuevo mientras dura un
338 fragmento de tras notas:
340 @lilypond[verbatim,quote,ragged-right]
357 Advierta que el tamaño de la clave es igual al que se imprime en un
358 cambio de clave (ligemamente menor que la clave al principio de una
359 línea). Esto es normal para cualquier clave que se imprime en la
362 La sección ossia se puede colocar encima del pentagrama de la manera
365 @lilypond[verbatim,quote,ragged-right]
373 alignAboveContext = "main" }
381 Este ejemplo utiliza @code{\with}, que se explica en todo detalle más
382 adelante. Es un medio de modificar el comportamiento predeterminado
383 de un solo pentagrama. Aquí, dice que el pentagrama nuevo se debe
384 colocar por encima del pentagrama llamado @qq{main} en vez de la
385 posición predeterminada que seería por debajo.
387 Los fragmentos de ossia se escriben a menudo sin clave y sin
388 indicación de compás, y generalmente en un tipo más pequeño. Esto
389 necesitaría más instrucciones que aún no se han visto. Véase
390 @ref{Size of objects}
393 @node On the un-nestedness of brackets and ties
394 @subsection On the un-nestedness of brackets and ties
397 En la escritura del archivo de entrada de LilyPond, hemos podido ver
398 algunos tipos de paréntesis, llaves o ángulos de distintos tipos.
399 Éstos obedecen a distintas reglas que al principio pueden resultar
400 confusas. Antes de explicar estas reglas, demos un repaso a las
401 distintas clases de corchetes, llaves y paréntesis.
403 @c attempt to force this onto a new page
405 @multitable @columnfractions .3 .7
406 @headitem Tipo de paréntesis
408 @item @code{@{ .. @}}
409 @tab Encierra un fragmento secuencial de música
411 @tab Encierra las notas de un acorde
412 @item @code{<< .. >>}
413 @tab Encierra secciones concurrentes o simultáneas
415 @tab Marca el comienzo y el final de una ligadura de expresión
416 @item @code{\( .. \)}
417 @tab Marca el comienzo y el final de una ligadura de fraseo
419 @tab Marca el comienzo y el final de un barrado manual
422 A las anteriores, debemos añadir otras construcciones que generan
423 líneas entre o a través de las notas: las ligaduras de unión (marcadas
424 con una tilde curva, @code{~}), los grupos especiales que se escriben
425 como @code{\times x/y @{..@}}, y las notas de adorno, que se escriben
426 como @code{\grace@{..@}}.
428 Fuera de LilyPond, el uso convencional de los paréntesis y otros
429 corchetes requiere que los distintos tipos se encuentren anidados
430 correctamente, como en: @code{<< [ @{ ( .. ) @} ] >>}, de manera que
431 los paréntesis que se cierran deben encontrarse en el orden
432 exactamente opuesto al de los paréntesis que se abren. Esto
433 @strong{es} un requisito para los tres tipos de paréntesis que se
434 describen mediante la parabla @q{Encierra} en la tabla anterior: se
435 deben anidar correctamente. Sin embargo, el resto de las llaves y
436 corchetes, que se encuentran descritos por la palabra @q{Marca} en la
437 misma tabla anterior, @strong{no} tienen por qué anidarse
438 estrictamente con ninguno de los otros paréntesis. De hecho, éstos no
439 son paréntesis en el sentido de que encierran algo: simplemente son
440 marcadores que indican dónde empieza o finaliza algo.
442 Asíi pues, por ejemplo, una ligadura de fraseo puede dar comienzo
443 antes de una barra insertada manualmente, y acabar antes de que acabe
444 la barra (algo que quizá no sea muy musical, pero es posible):
446 @lilypond[quote,verbatim,fragment,ragged-right,relative=2]
447 { g8\( a b[ c b\) a] }
450 En general, los distintos tipos de corchete, y los implicados en
451 grupos especiiales, ligaduras de unión y notas de adorno, se pueden
452 mezclar con total libertad. Este ejemplo muestra una barra que se
453 extiende hacia el interior de un grupo de valoración especial (línea
454 1), una ligadura de expresión que se prolonga hasta el interior de un
455 grupo especial (línea 2), una barra y una ligadura de expresión que se
456 prolongan hasta el interior de un grupo especial, una ligadura de
457 unión que atraviesa dos grupos especiales, y una ligadura de fraseo
458 que sale del interior de un grupo especial (líneas 3 y 4).
460 @lilypond[quote,verbatim,fragment,ragged-right]
462 r16[ g16 \times 2/3 {r16 e'8] }
463 g16( a \times 2/3 {b d) e' }
464 g8[( a \times 2/3 {b d') e'~]}
465 \times 4/5 {e'32\( a b d' e'} a'4.\)
470 @node Voices contain music
471 @section Voices contain music
473 UNTRANSLATED NODE: IGNORE ME
476 * I'm hearing Voices::
477 * Explicitly instantiating voices::
478 * Voices and vocals::
481 @node I'm hearing Voices
482 @subsection I'm hearing Voices
484 UNTRANSLATED NODE: IGNORE ME
486 @node Explicitly instantiating voices
487 @subsection Explicitly instantiating voices
489 UNTRANSLATED NODE: IGNORE ME
491 @node Voices and vocals
492 @subsection Voices and vocals
494 UNTRANSLATED NODE: IGNORE ME
496 @node Contexts and engravers
497 @section Contexts and engravers
499 UNTRANSLATED NODE: IGNORE ME
502 * Contexts explained::
503 * Creating contexts::
504 * Engravers explained::
505 * Modifying context properties::
506 * Adding and removing engravers::
508 @node Contexts explained
509 @subsection Contexts explained
511 Cuando se imprime la música, se tienen que añadir a la salida una gran cantidad de elementos
512 notacionales. Por ejemplo, compare la entrada y la salida del siguiente ejemplo:
514 @lilypond[quote,verbatim,relative=2,fragment]
518 La entrada es bastante escueta, pero en la salida se añaden líneas divisorias, alteraciones accidentales,
519 la clave y la indicación de compás. LilyPond @emph{interpreta} la
520 entrada. En esta fase se inspecciona la información musical en orden temporal,
521 de forma parecida a la lectura de una partitura de izquierda a derecha. Mientras se lee
522 la entrada, el programa recuerda dónde se encuentran los límites de los compases, y qué notas
523 requieren alteraciones explícitas. Esta información se puede presentar sobre varios
524 niveles. Por ejemplo, el efecto de una alteración accidental se encuentra limitada
525 a un solo pentagrama, mientras que una barra divisoria debe estar sincronizada a través
526 de la partitura de arriba a abajo.
528 Dentro de LilyPond, estas reglas y pequeñas porciones de información se agrupan en
529 @emph{Contexts}. Algunos ejemplos de contextos son @code{Voice} (Voz),
530 @code{Staff} (Pauta o pentagrama) y @code{Score} (Partitura). Los contextos son jerárquicos, por
531 ejemplo: un @code{Staff} contener muchas @code{Voice}s, y una
532 @code{Score} puede contener muchos contextos de @code{Staff}.
535 @sourceimage{context-example,5cm,,}
538 Cada contexto asume la responsabilidad de imponer algunas reglas de notación,
539 creando ciertos objetos de notación y manteniendo las propiedades
540 asociadas. Por ejemplo, el contexto @code{Voice} puede introducir una alteración
541 accidental y entonces el contexto @code{Staff} mantiene la regla de mostrar o
542 suprimir la alteración para el resto del compás. La
543 sincronización de las líneas divisorias se gestiona dentro del contexto de la partitura, @code{Score}.
545 Sin embargo, en algunas músicas posiblemente no queramos que las líneas divisorias estén
546 sincronizada (pensemos en una partitura polimétrica en compases de 4/4 y de 3/4). En tales casos,
547 debemos modificar los ajustes por omisión de los contextos @code{Score}
550 Para partituras muy sencillas, los contextos se crean implícitamente y no debemos
551 preocuparnos por ellos. Para piezas mayores, como por ejemplo cualquiera que tenga más de un pentagrama,
552 los contextos se deben crear explícitamente para asegurarnos
553 de que tendremos la cantidad exacta de pentagramas que necesitamos,
554 y que están en el orden correcto. Para tipografiar piezas
555 con notación especializada, puede ser útil modificar contextos existentes
556 o definir unos nuevos.
559 En la referencia del programa se encuentra una descripción completa de todos los contextos que están disponibles,
562 @internalsref{Contexts}.
565 Traducción @expansion{} Contexto.
568 @c [TODO: describe propagation]
570 @node Creating contexts
571 @subsection Creating contexts
573 Para partituras que sólo tienen una voz y un pentagrama, los contextos se
574 crean automáticamente. Para partituras más complejas, es necesario crearlos
575 a mano. Existen tres instrucciones que hacen esto.
580 La instrucción más fácil es @code{\new}, y es también la más rápida de escribir.
581 Se antepone a una expresión musical, por ejemplo
584 @cindex nuevos, contextos
585 @cindex Contexto, creación de
588 \new @var{tipo} @var{expresión_musical}
592 donde @var{tipo} es el nombre de un contexto (como @code{Staff} o
593 @code{Voice}). Esta instrucción crea un contexto nuevo, y empieza a
594 interpretar la @var{expresión_musical} con él.
596 Una aplicación práctica de @code{\new} es una partitura con muchos pentagramas.
597 Cada parte que debe ir en su propio pentagrama, va precedida de
600 @lilypond[quote,verbatim,relative=2,ragged-right,fragment]
607 La instrucción @code{\new} puede también dar nombre al contexto,
610 \new @var{tipo} = @var{identificador} @var{música}
612 Sin embargo, este nombre especificado por el usuario sólo se utiliza si no hay ya otro contexto
613 anterior con el mismo nombre.
619 Como @code{\new}, la instrucción @code{\context} también dirige una expresión musical
620 a un objeto de contexto, pero da al contexto un nombre explícito. La sintaxis
624 \context @var{tipo} = @var{identificador} @var{música}
627 En esta forma, la instrucción buscará un contexto existente del @var{tipo} especificado
628 que tenga el nombre @var{identificador}. Si ese contexto aún no existe, se crea
629 un contexto nuevo con el nombre especificado. Esto es útil si nos vamos a referir
630 más tarde al contexto. Por ejemplo, cuando
631 se escribe la letra, la melodía está dentro de un contexto con nombre
634 \context Voice = "@b{tenor}" @var{música}
638 de forma que los textos se puedan alienar correctamente con sus notas,
641 \new Lyrics \lyricsto "@b{tenor}" @var{letra}
646 Otro uso posible de los contextos con nombre es la fusión de dos expresiones musicales
647 distintas en un solo contexto. En el siguiente ejemplo,
648 se introducen por separado las articulaciones y las notas,
652 decoracion = @{ s4-. s4-> @}
655 se combinan enviando los dos al mismo contexto @code{Voice},
659 \new Staff \context Voice = "A" \musica
660 \context Voice = "A" \decoracion
663 @lilypond[quote,ragged-right]
667 \new Staff \context Voice = "A" \music
668 \context Voice = "A" \arts
672 Con este mecanismo, es posible definir un Urtext (una edición
673 original), con la posibilidad de poner articulaciones distintas sobre las
676 @cindex crear contextos
679 La tercera instrucción para crear contextos es
681 \context @var{tipo} @var{música}
686 Esto es similar a @code{\context} con @code{= @var{identificador}}, pero se corresponde con
687 cualquier contexto del tipo @var{tipo}, sin importar qué nombre se le ha dado.
689 Esta variante se usa con expresiones musicales que se pueden interpretar en
690 varios niveles. Por ejemplo, la instrucción @code{\applyOutput} (véase
691 @ref{Running a function on all layout objects}). Sin una instrucción
692 @code{\context} explícita, normalmente se aplicaría a @code{Voice}
695 \applyOutput #'@var{contexto} #@var{función} % aplicar al contexto Voice
698 Para que se interprete dentro de los niveles de @code{Score} o @code{Staff}, utilice las siguientes
702 \applyOutput #'Score #@var{función}
703 \applyOutput #'Staff #@var{función}
708 @node Engravers explained
709 @subsection Engravers explained
711 UNTRANSLATED NODE: IGNORE ME
713 @node Modifying context properties
714 @subsection Modifying context properties
718 @cindex changing properties
720 Cada contexto puede tener diferentes @emph{propiedades} o variables contenidas
721 en dicho contexto. Se pueden cambiar mientras se desarrolla la fase de interpretación.
722 Esto se consigue insertando la instrucción @code{\set} en la música,
725 \set @var{contexto}.@var{propiedad} = #@var{valor}
729 @lilypond[quote,verbatim,relative=2,fragment]
731 \set Score.skipBars = ##t
735 Esta instrucción hace que se salten los compases que no tienen ninguna nota. El resultado es que
736 los silencios multicompás se comprimen. El valor asignado es un objeto del lenguaje Scheme. En
737 este caso, es @code{#t}, el valor booleano Verdadero.
739 Si el argumento @var{contexto} se deja en blanco, entonces se utiliza el contexto actual más bajo
740 (normalmente @code{ChordNames}, @code{Voice} o
741 @code{Lyrics}). En este ejemplo,
743 @lilypond[quote,verbatim,relative=2,fragment]
745 \set autoBeaming = ##f
750 el argumento @var{contexto} para la instrucción @code{\set} está omitido, por tanto
751 el barrado automático está desactivado en la @internalsref{Voice} (voz) actual. Fíjese en que
752 el contexto más bajo no siempre contiene la propiedad que quiere
753 cambiar. Por ejemplo, si intenta establecer la propiedad @code{skipBars}
754 (del contexto más bajo, en este caso @code{Voice}) no se producirá ningún
757 @lilypond[quote,verbatim,relative=2,fragment]
763 Los contextos son jerárquicos, de forma que si se especificó un contexto mayor, por
764 ejemplo @code{Staff}, entonces el cambio también se aplicaría a todos los
765 @code{Voice}s o contextos de voz en el pentagrama actual. El cambio se aplica
766 @q{al vuelo}, mientras transcurre la música, de manera que el ajuste sólo afecta al segundo
771 También existe una instrucción @code{\unset},
773 \unset @var{contexto}.@var{propiedad}
777 que quita la definición de la @var{propiedad}. Esta instrucción quita
778 la definición solamente si está establecida dentro del @var{contexto} especificado, por lo que
781 \set Staff.autoBeaming = ##f
785 introduce un ajuste de propiedad en el nivel del contexto @code{Staff}. El ajuste también se aplica
786 a la @code{Voice} actual. Sin embargo,
789 \unset Voice.autoBeaming
793 no tiene ningún efecto. Para cancelar este ajuste, el @code{\unset}
794 se debe especificar en el mismo nivel que el @code{\set} original. En
795 otras palabras, deshacer el efecto de @code{Staff.autoBeaming = ##f}
798 \unset Staff.autoBeaming
801 Igual que @code{\set}, el argumento @var{contexto} no tiene que especificarse para un contexto
802 que está en la parte más baja, por lo que las dos instrucciones
805 \set Voice.autoBeaming = ##t
806 \set autoBeaming = ##t
814 Los ajustes que se quieren aplicar a un paso de tiempo único se pueden escribir
815 con @code{\once}, por ejemplo en
817 @lilypond[quote,verbatim,relative=2,fragment]
819 \once \set fontSize = #4.7
824 la propiedad @code{fontSize} pierde su valor automáticamente después de la segunda
827 En la referencia del programa hay una descripción detallada de todas las propiedades de contexto disponibles,
830 @internalsref{Tunable context properties}.
833 Traducción @expansion{} propiedades de contexto ajustables.
836 @node Adding and removing engravers
837 @subsection Adding and removing engravers
839 UNTRANSLATED NODE: IGNORE ME
841 @subsubsection Changing a single context
843 @subsubsection Changing all contexts of the same type
844 @node Extending the templates
845 @section Extending the templates
847 Ha leído el tutorial y ahora sabe escribir música. Pero ¿cómo puede poner
848 los pentagramas que quiere? Las plantillas están muy bien, pero ¿qué ocurre
849 si quiere algo que no está en una de ellas?
851 Para empezar, tome la plantilla que le parezca más parecida a aquello que quiere
852 conseguir. Digamos que quiere escribir algo para soprano y cello.
853 En este caso comenzaríamos con la plantilla @q{Notas y letra} (para la parte
858 melodia = \relative c' @{
866 texto = \lyricmode @{
872 \new Voice = "uno" @{
876 \new Lyrics \lyricsto "uno" \text
883 Ahora queremos añadir una parte de violoncello. Veamos el ejemplo @q{Sólo notas}:
887 melodia = \relative c' @{
902 No necesitamos dos comandos @code{\version}. Vamos a necesitar la sección @code{melodia}.
903 No queremos dos secciones @code{\score} (si tuviésemos dos @code{\score}s, acabaríamos con las dos particellas por separado.
904 Queremos las dos juntas, como un dúo.
905 Dentro de la sección @code{\score}, no nos hacen falta dos
906 @code{\layout} ni dos @code{\midi}.
908 Si nos limitásemos a copiar y pegar la sección @code{melodia}, acabaríamos con dos
909 secciones @code{melodia} separadas, así que vamos a cambiarles el nombre. Llamaremos
910 @code{musicaSoprano} a la sección de la soprano y @code{musicaCello} a la sección del violoncello.
911 Al mismo tiempo cambiaremos el nombre de @code{texto}
912 a @code{letraSoprano}. Recuerde cambiar el nombre a las dos apariciones de todos estos
913 nombres -- tanto la definición inicial (la
914 parte @code{melodia = relative c' @{ }) --
915 como el uso de ese nombre (en la sección @code{\score}).
917 También aprovecharemos para cambiar el pentagrama de la parte del cello (los violoncellos
918 se escriben normalmente en clave de Fa). Asimismo, cambiaremos algunas
923 musicaSoprano = \relative c' @{
931 letraSoprano = \lyricmode @{
935 musicaCello = \relative c @{
945 \new Voice = "uno" @{
949 \new Lyrics \lyricsto "uno" \letraSoprano
956 Esto tiene una pinta prometedora, pero la parte del cello no sale en la partitura
957 (no la hemos puesto en la sección @code{\score}). Si queremos que la parte
958 del cello aparezca debajo de la de soprano, tenemos que añadir
961 \new Staff \musicaCello
965 justo debajo de todo lo de la soprano. También tenemos que poner @code{<<} y
966 @code{>>} antes y después de la música -- lo que indica a LilyPond que hay
967 más de una cosa (en este caso, @code{Staff}) sucediendo al mismo tiempo -- . La
968 @code{\score} se parecerá ahora a esto
974 \new Voice = "uno" @{
978 \new Lyrics \lyricsto "uno" \letraSoprano
980 \new Staff \musicaCello
988 Esto parece un poco enrevesado; los márgenes están descuadrados. Esto tiene
989 fácil solución. Presentamos aquí la plantilla completa para soprano y cello.
991 @lilypond[quote,verbatim,ragged-right]
993 sopranoMusic = \relative c' {
1001 sopranoLyrics = \lyricmode {
1005 celloMusic = \relative c {
1016 \new Voice = "one" {
1020 \new Lyrics \lyricsto "one" \sopranoLyrics
1022 \new Staff \celloMusic
1030 * Soprano and cello::
1031 * Four-part SATB vocal score::
1032 * Building a score from scratch::
1034 @node Soprano and cello
1035 @subsection Soprano and cello
1037 UNTRANSLATED NODE: IGNORE ME
1039 @node Four-part SATB vocal score
1040 @subsection Four-part SATB vocal score
1042 UNTRANSLATED NODE: IGNORE ME
1044 @node Building a score from scratch
1045 @subsection Building a score from scratch
1047 UNTRANSLATED NODE: IGNORE ME
1051 When you actually translate this file, please remove these lines as
1052 well as all `UNTRANSLATED NODE: IGNORE ME' lines.