@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@c This file is part of lilypond-learning.tely
@ignore
- Translation of GIT committish: bea70d053e3e279c3fbb18cbce52d995ce04fec7
+ Translation of GIT committish: b0a1d7fa5e1b8371a0d1f1ed1dfd3fc9bc4881d2
When revising a translation, copy the HEAD committish of the
version that you are working on. See TRANSLATION for details.
@node Voices contain music
@section Voices contain music
-UNTRANSLATED NODE: IGNORE ME
+Igual que los cantantes, LilyPond necesita voces para cantar. En
+realidad, la música para cualquier instrumento de una partitura está
+siempre contenida dentro de una voz --el concepto de LilyPond más
+fundamental de todos--.
@menu
* I'm hearing Voices::
@node I'm hearing Voices
@subsection I'm hearing Voices
-UNTRANSLATED NODE: IGNORE ME
+@cindex polifonía
+@cindex capas
+@cindex Voice (voz), contexto de
+
+De las capas más profundas de una partitura de LilyPond, las más bajas
+y más fundamentales reciben el nombre de @q{Voice contexts}
+(«contextos de voz») o, abreviadamente, @q{Voices} («voces»). Las
+voces reciben a veces el nombre de @q{layers} («capas») en otros
+programas de edición de partituras.
+
+De hechho, una capa o contexto de voz es la única que puede contener
+música. Si un contexto de voz no se declara explícitamente, se crea
+uno de forma automática, como vimos al comienzo de este capítulo.
+Ciertos instrumentos como el oboe solamente pueden tocar una nota cada
+vez. La música escrita para estos instrumentos es monofónica y
+solamente requiere una voz única. Los instrumentos que pueden tocar
+más de una nota a la vez, como el piano, con frecuencia necesitarán
+varias voces para codificar las distintas notas y ritmos concurrentes
+que son capaces de tocar.
+
+Una sola voz puede contener muchas notas dentro de un acorde, por
+supuesto; entonces ¿cuándo, exactamente, se necesitan varias voces?
+En primer lugar observe este ejemplo de cuatro acordes:
+
+@lilypond[quote,verbatim,fragment,ragged-right,relative=1]
+\key g \major
+<d g>4 <d fis> <d a'> <d g>
+@end lilypond
+
+Esto se puede expresar utilizand sólo símbolos de acorde con ángulos
+simples, @code{< ... >}, y para este propósito tan sólo se necesita
+una voz. Pero suponga que el Fa sostenido fuese realmente una corchea
+seguida de un Sol corchea, una nota de paso que conduce al La. Ahora
+tenemos dos notas que empiezan en el mismo momento pero tienen
+distintas duraciones: la negra Re, y la corchea Fa sostenido. ¿Cómo se
+codifica esto? No se pueden escribir como un acorde porque todas las
+notas de un acorde deben tener la misma duración. Y no se pueden
+escribir como dos notas separadas porque tienen que empezar en el
+mismo momento. Aquí es donde se necesitan dos voces.
+
+Veamos cómo se hace esto dentro de la sintaxis de entrada de LilyPond.
+
+@funindex << \\ >>
+@funindex \\
+
+La forma más fácil de introducir fragmentos con maś de una voz en un
+solo pentagrama es escribir cada voz como una secuencia (con
+@code{@{...@}}), y combinarlas simultáneamente con ángulos dobles,
+@code{<<...>>}. Los fragmentos también se deben separar mediante una
+doble barra invertida, @code{\\}, para situarlos en voces separadas.
+Sin esto, las notas irían a una sola voz, lo que normalmente producirá
+errores. Esta técnica se adapta especialmente bien a piezas de música
+que son mayormente monofónicas pero ocasionalmente tienen cortas
+secciones de polifonía.
+
+He aquí cómo dividimos los acordes anteriore en dos voces y añadimos
+la nota de paso y la ligadura:
+
+@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
+\key g \major
+% Voice "1" Voice "2"
+<< { g4 fis8( g) a4 g } \\ { d4 d d d } >> |
+@end lilypond
+
+Observe cómo las plicas de la segunda voz ahora se dirigen hacia
+abajo.
+
+A continuación veamos otro ejemplo sencillo:
+
+@lilypond[quote,verbatim,fragment,ragged-right,relative=2]
+\key d \minor
+% Voice "1" Voice "2"
+<< { r4 g g4. a8 } \\ { d,2 d4 g } >> |
+<< { bes4 bes c bes } \\ { g4 g g8( a) g4 } >> |
+<< { a2. r4 } \\ { fis2. s4 } >> |
+@end lilypond
+
+No es necesario usar una construcción @code{<< \\ >>} distinta para
+cada compás. Para música que tenga unas pocas notas en cada compás,
+esta disposición podría facilitar la legibilidad del código, pero si
+hay muchas notas en cada compás podría ser mejor dividirlo en dos
+voces separadas, de la siguiente manera:
+
+@lilypond[quote,verbatim,fragment,ragged-right,relative=2] \key d
+\minor << { % Voice "1" r4 g g4. a8 | bes4 bes c bes | a2. r4 | } \\ {
+% Voice "2" d,2 d4 g | g4 g g8( a) g4 | fis2. s4 | } >>
+@end lilypond
+
+
+Este ejemplo tiene sólo dos voces, pero la misma construcción se puede
+usar para codificar tres o más voces mediante la adición de maś
+separadores de barra invertida.
+
+Los contextos de voz llevan los nombres de @code{"1"}, @code{"2"},
+etc. En cada uno de estos contextos, la dirección vertical de las
+ligaduras, plicas, matices dinámicos, etc., se ajusta de la forma
+correcta.
+
+@lilypond[quote,verbatim,fragment]
+\new Staff \relative c' {
+ % Main voice
+ c16 d e f
+ % Voice "1" Voice "2" Voice "3"
+ << { g4 f e } \\ { r8 e4 d c8 ~ } >> |
+ << { d2 e2 } \\ { c8 b16 a b8 g ~ g2 } \\ { s4 b4 c2 } >> |
+}
+@end lilypond
+
+Todas estas voces están separadas de la voz principal que contiene las
+notas justo por fuera de la construcción @code{<< .. >>}. Le
+llamaremos a esto la @emph{construcción simultánea}. Las ligaduras
+(de prolongación y de expresión) solamente pueden conectar notas que
+estén dentro de la misma voz, luego las ligaduras no pueden entrar o
+salir de una construcción simultánea. A la inversa, las voces
+paraleleas de construcciones simultáneas distintas sobre el mismo
+pentagrama, son la misma voz. Otras propiedades relativas a las voces
+también conllevan construcciones simultáneas. A continuación vemos el
+mismo ejemplo, con colores y cabezas distintos para cada voz. Observe
+que los cambios en una voz no afectan a otras voces, pero persisten
+más tarde dentro de la misma voz. Observe tambiénn que las notas
+ligadas se pueden dividir entre las mismas voces de dos
+construcciones, como se indica aquí en la voz de triángulos azules.
+
+@lilypond[quote,verbatim]
+\new Staff \relative c' {
+ % Main voice
+ c16 d e f
+ << % Bar 1
+ {
+ \voiceOneStyle
+ g4 f e
+ }
+ \\
+ {
+ \voiceTwoStyle
+ r8 e4 d c8 ~
+ }
+ >>
+ << % Bar 2
+ % Voice 1 continues
+ { d2 e2 }
+ \\
+ % Voice 2 continues
+ { c8 b16 a b8 g ~ g2 }
+ \\
+ {
+ \voiceThreeStyle
+ s4 b4 c2
+ }
+ >>
+}
+@end lilypond
+
+Las instrucciones @code{\voiceXXXStyle} están pensadas principalmente
+para usarlas en documentos educativos como este mismo. Modifican el
+color de la cabeza, la plica y las barras, y el estilo de la cabeza,
+de forma que las voces se puedan distinguir fácilmente. La voz uno
+está establecida a rombos rojos, la voz dos a triángulos azules, la
+voz tres a círculos verdes con aspas, y la voz cuatro (que no se
+utiliza aquí) a aspas color magenta. Veremos más adelante cómo el
+usuario puede crear instrucciones como éstas. Véase @ref{Visibility
+and color of objects}.
+
+La polifonía no cambia la relación de las notas dentro de un bloque
+@code{\relative @{ @}}. La altura de cada nota aún se calcula con
+relación a la nota que le precede inmediatamente, o a la primera nota
+del acrode precedente. Así, en
+
+@example
+\relative c' @{ notaA << < notaB notaC > \\ notaD >> notaE @}
+@end example
+
+@noindent
+@code{notaB} es relativa a @code{notaA} @*
+@code{notaC} es relativa a @code{notaB}, no a @code{notaA}; @*
+@code{notaD} es relativa a @code{notaB}, no a @code{notaA} ni a
+@code{notaC}. @*
+@code{notaE} es relativa a @code{notaD}, no a @code{notaA}
+
+Una forma alternativa, que podría ser más clara si las notas en las
+voces están muy separadas, es colocar una instrucción @code{\relative}
+al principio de cada voz:
+
+@example
+\relative c' @{ notaA ... @}
+<<
+ \relative c'' @{ < notaB notaC > ... @}
+\\
+ \relative g' @{ notaD ... @}
+>>
+\relative c' @{ notaE ... @}
+@end example
+
+Finalmente, analicemos las voces en una pieza de música más compleja.
+He aquí las notas de los dos primeros compases del segundo de los Dos
+Nocturnos de Chopin, Op 32. Este ejemplo se utilizará en fases
+posteriores dentro del presente capítulo y el siguiente, para ilustrar
+varias técnicas para producir notación, y por tanto le pedimos que
+ignore por ahora cualquier cosa en el código subyacente que le parezca
+misteriorso y tan sólo se concentre en la música y las voces (todas
+las complicaciones se explicarán en secciones posteriores).
+
+@c The following should appear as music without code
+@lilypond[quote,ragged-right]
+\new Staff \relative c'' {
+ \key aes \major
+ << % Voice one
+ { c2 aes4. bes8 }
+ \\ % Voice two
+ { aes2 f4 fes }
+ \\ % No voice three
+ \\ % Voice four
+ {
+ % Ignore these for now - they are explained in Ch 4
+ \once \override NoteColumn #'force-hshift = #0
+ <ees c>2
+ \once \override NoteColumn #'force-hshift = #0.5
+ des2
+ }
+ >> |
+ <c ees aes c>1 |
+}
+@end lilypond
+
+Con frecuencia, la dirección de las plicas se utiiliza para indicar la
+continuidad de dos líneas melódicas simultáneas. Aquí, todas las
+plicas de las notas agudas se dirigen hacia arriba y las de las notas
+graves hacia abajo. Ésta es la primera indicación de que se requiere
+más de una voz.
+
+Pero la necesidad real de varias voces aflora cuando hay notas que
+comienzan en el mismo tiempo pero tienen distintas duraciones.
+Observe las notas que comienzan en la tercera parte del primer compás.
+El La bemol es una negra con puntillo, el Fa es una negra y el Re
+bemol es una blanca. Estas notas nos e pueden escribir como un acorde
+porque todas las ntoas de un acorde deben tener la misma duración.
+Tampoco se pueden escribir como notas secuenciales, pues deben
+comenzar al mismo tiempo. Esta sección del compás requiere tres
+voces, y la práctica común sería escribir todo el compás como tres
+voces como se muestra abajo, donde hemos usado distintas cabezas y
+colores para las tres voces. Una vez más, el código que subyace a
+este ejemplo se explicará más tarde, así pues ignore todo lo que no
+entienda.
+
+@c The following should appear as music without code
+@c The three voice styles should be defined in -init
+@lilypond[quote,ragged-right]
+\new Staff \relative c'' {
+ \key aes \major
+ <<
+ { % Voice one
+ \voiceOneStyle
+ c2 aes4. bes8
+ }
+ \\ % Voice two
+ { \voiceTwoStyle
+ aes2 f4 fes
+ }
+ \\ % No Voice three (we want stems down)
+ \\ % Voice four
+ { \voiceThreeStyle
+ % Ignore these for now - they are explained in Ch 4
+ \once \override NoteColumn #'force-hshift = #0
+ <ees c>2
+ \once \override NoteColumn #'force-hshift = #0.5
+ des2
+ }
+ >> |
+ <c ees aes c>1 |
+}
+@end lilypond
+
+
+Vamos a intentar codificar esta música partiendo de cero. Como
+veremos, esto se topa con ciertas dificultades. Comenzamos tal y como
+hemos aprendido, usando la construcción @code{<< \\ >>} para
+introducir la música del primer compás en tres voces:
+
+@lilypond[quote,verbatim,fragment,ragged-right]
+\new Staff \relative c'' {
+ \key aes \major
+ <<
+ { c2 aes4. bes8 } \\ { aes2 f4 fes } \\ { <ees c>2 des2 }
+ >>
+ <c ees aes c>1
+}
+@end lilypond
+
+@cindex plica abajo
+@cindex plica arriba
+
+Las direcciones de las plicas se asignan automáticamente de forma que
+las voces de numeración impar reciben las plicas hacia arriba y las de
+numeración par hacia abajo. Las plicas de las voces 1 y 2 están
+correctas, pero las plicas de la voz 3 debería ir hacia abajo en este
+fragmentoo en particular. Podemos corregir esto simplemente
+olvidándonos de la voz tres y situando la música en la voz cuatro:
+
+@lilypond[quote,verbatim,fragment,ragged-right]
+\new Staff \relative c'' {
+ \key aes \major
+ << % Voice one
+ { c2 aes4. bes8 }
+ \\ % Voice two
+ { aes2 f4 fes }
+ \\ % Omit Voice three
+ \\ % Voice four
+ { <ees c>2 des2 }
+ >> |
+ <c ees aes c>1 |
+}
+@end lilypond
+
+@noindent
+Vemos que esto arregla la dirección de la plica, pero presenta un
+problema que se encuentra a veces con varias voces: las plicas de las
+notas en una voz pueden colisionar con las cabezas de otras voces. Al
+disponer las notas, LilyPond permite que las notas o acordes de dos
+voces ocupen la misma columna vertical de notas teniendo en cuenta que
+las plicas están en direcciones opuestas, pero las notas de la tercera
+y cuarta voces se desplazan si es necesario para evitar la colisión
+entre las cabezas. Esto funciona bien por lo general, pero en este
+ejemplo claramente las notas de la voz inferior no están bien
+colocadas de forma predeterminada. LilyPond proporciona diversas
+maneras de ajustar la colocación horizontal de las notas. Aún no
+estamos preparados para ver cómo corregir esto, así que dejaremos este
+problema aparcado hasta una sección posterior (véase la propiedad
+force-hshift en @ref{Fixing overlapping notation} )
@node Explicitly instantiating voices
@subsection Explicitly instantiating voices
-UNTRANSLATED NODE: IGNORE ME
+
+@funindex \voiceOne
+@funindex \voiceTwo
+@funindex \voiceThree
+@funindex \voiceFour
+
+Los contextos de voz también se pueden crear manualmente dentro de un
+bloque @code{<< >>} para crear música polifónica, utilizando
+@code{\voiceOne} ... @code{\voiceFour} para indicar las direcciones
+requeridas de plicas, ligaduras, etc. En partituras más largas, este
+método es más claro porque permite que las voces estén separadas y
+reciban nombres más descriptivos.
+
+Concretamente, la construcción @code{<< \\ >>} que usamos en la
+sección previa:
+
+@example
+\new Staff @{
+ \relative c' @{
+ << @{ e4 f g a @} \\ @{ c,4 d e f @} >>
+ @}
+@}
+@end example
+
+@noindent
+equivale a
+
+@example
+\new Staff <<
+ \new Voice = "1" @{ \voiceOne \relative c' @{ e4 f g a @} @}
+ \new Voice = "2" @{ \voiceTwo \relative c' @{ c4 d e f @} @}
+>>
+@end example
+
+Los dos ejemplos anteriores producirán:
+
+@c The following example should not display the code
+@lilypond[ragged-right,quote]
+\new Staff <<
+ \new Voice = "1" { \voiceOne \relative c' { e4 f g a } }
+ \new Voice = "2" { \voiceTwo \relative c' { c4 d e f } }
+>>
+@end lilypond
+
+Las instrucciones @code{\voiceXXX} establecen la dirección de las
+plicas, ligaduras de expresión, ligaduras de prolongación,
+articulaciones, anotaciones de texto, puntillos y digitaciones.
+@code{\voiceOne} y @code{\voiceThree} hacen que estos objetos apunten
+hacia arriba, mientras que @code{\voiceTwo} y @code{\voiceFour} los
+hacen apuntar hacia abajo. Estas instrucciones también producen un
+desplazamientoo horizontal para cada voz cuando es necesario para
+evitar choques entre las cabezas. La instrucción @code{\oneVoice}
+devuelve los ajustes de nuevo a los valores normales para una sola
+voz.
+
+Veamos en algunos ejemplos sencillos exactamente qué efecto tienen
+@code{\oneVoice}, @code{\voiceOne} y @code{voiceTwo} sobre el marcado,
+las ligaduras de unión y de expresión y las indicaciones de dinámica:
+
+@lilypond[quote,ragged-right,verbatim]
+\relative c'{
+ % Default behaviour or behaviour after \oneVoice
+ c d8 ~ d e4 ( f g a ) b-> c
+}
+@end lilypond
+
+@lilypond[quote,ragged-right,verbatim]
+\relative c'{
+ \voiceOne
+ c d8 ~ d e4 ( f g a ) b-> c
+ \oneVoice
+ c, d8 ~ d e4 ( f g a ) b-> c
+}
+@end lilypond
+
+@lilypond[quote,ragged-right,verbatim]
+\relative c'{
+ \voiceTwo
+ c d8 ~ d e4 ( f g a ) b-> c
+ \oneVoice
+ c, d8 ~ d e4 ( f g a ) b-> c
+}
+@end lilypond
+
+Una expresión que aparece directamente dentro de @code{<< >>}
+pertenece a la voz principal (pero, observe, @strong{no} dentro de una
+construcción @code{<< \\ >>}). Esto es útilo cuando aparecen voces
+nuevas mientras la voz principal está sonando. A continuación podemos
+ver una realización más correcta del ejemplo de la sección anterior.
+Las notas rojas en forma de rombo muestran que la melodía principal
+está ahora dentro de un contexto de una sola voz, haciendo que se
+pueda trazar una ligadura por encima de ellas.
+
+@lilypond[quote,ragged-right,verbatim]
+\new Staff \relative c' {
+ \voiceOneStyle
+ % The following notes are monophonic
+ c16^( d e f
+ % Start simultaneous section of three voices
+ <<
+ % Continue the main voice in parallel
+ { g4 f e | d2 e2) }
+ % Initiate second voice
+ \new Voice {
+ % Set stems, etc, down
+ \voiceTwo
+ r8 e4 d c8 ~ | c8 b16 a b8 g ~ g2
+ }
+ % Initiate third voice
+ \new Voice {
+ % Set stems, etc, up
+ \voiceThree
+ s2. | s4 b4 c2
+ }
+ >>
+}
+@end lilypond
+
+@cindex anidado de expresiones musicales
+@cindex anidado de construcciones simultáneas
+
+Seon posibles construcciones polifónicas anidadas más profundamente, y
+si una voz aparece sólo brevemente podría haber una forma más natural
+de tipografiar la música.
+
+@lilypond[quote,ragged-right,verbatim]
+\new Staff \relative c' {
+ c16^( d e f
+ <<
+ { g4 f e | d2 e2) }
+ \new Voice {
+ \voiceTwo
+ r8 e4 d c8 ~ |
+ <<
+ {c8 b16 a b8 g ~ g2}
+ \new Voice {
+ \voiceThree
+ s4 b4 c2
+ }
+ >>
+ }
+ >>
+}
+@end lilypond
+
+
+Este método de anida voces nuevas brevemente es útil cuando sólo hay
+secciones polifónicas pequeñas, pero cuando todo el pentagrama es muy
+plifónico podría ser más claro usar varias voces todo el tiempo,
+usando notas espaciadoras para pasar por encima de las secciones en
+que una voz está en silencio, como aquí:
+
+@lilypond[quote,ragged-right,verbatim]
+\new Staff \relative c' <<
+ % Initiate first voice
+ \new Voice {
+ \voiceOne
+ c16^( d e f g4 f e | d2 e2) |
+ }
+ % Initiate second voice
+ \new Voice {
+ % set stems, etc down
+ \voiceTwo
+ s4 r8 e4 d c8 ~ | c8 b16 a b8 g ~ g2 |
+ }
+ % Initiate third voice
+ \new Voice {
+ % set stems, etc up
+ \voiceThree
+ s1 | s4 b4 c2 |
+ }
+>>
+@end lilypond
+
+@cindex columna de notas
+@cindex desplazamiento, instrucciones de
+@funindex \shiftOff
+@funindex \shiftOn
+@funindex \shiftOnn
+@funindex \shiftOnnn
+
+Las notas cercanas de un acorde, o las notas que se producen al mismo
+tiempo en distintas voces, se disponen en dos (y ocasionalmente más)
+columnas para evitar el solapamiento de las cabezas. Reciben el
+nombre de columnas de notas. Hay columnas distintas para cada voz, y
+el desplazamiento especificado en curso dependiente de la voz se
+applica a la columna de la nota si en caso contgrario se produjese una
+colisión. Esto se puede ver en el ejemplo anterior. En el compás 2 el
+Do en la voz dos está desplazado a la derecha respecto del Re de la
+voz uno, y en el último acorde el Do de la voz tres también está
+desplazado a la derecha respecto de las otras notas.
+
+Las instrucciones @code{\shiftOn}, @code{\shiftOnn}, @code{\shiftOnnn}
+y @code{\shiftOff} especifican el grado en que se deben desplazar las
+ntoas y acordes de la voz si en caso contrariio ocurriese una
+colisión. De forma predeterminada, las voces exteriores (normalmente
+las voces uno y dos) llecan especificado @code{\shiftOff}, mientras
+que las voces interiores (tres y cuatro) tienen @code{\shiftOn}
+especificado. Cuando se aplica un desplazamiento, las voces uno y
+tres se desplazan hacia la derecha y las voces dos y cuatro se
+desplazan hacia la izquierda.
+
+@code{\shiftOnn} y @code{\shiftOnnn} definen niveles adicionales de
+desplazamiento que se peuden especificar temporalmente para resolver
+colisiones en situaciones complejas (véase @ref{Real music example}).
+
+Una columna de notas puede contener s´olo una nota (o acorde) de una
+voz con las plicas hacia arriba y una not (o acorde) de una voz con
+las plicas hacia abajo. Si las notas de dos voces que tienen las
+plicas en la misma dirección se sitúan en la misma posición y las dos
+voces no tienen ningún desplazamiento o llevan especificado el mismo
+desplazamiento, se producirá el mensaje de error @qq{Chocan demasiadas
+columnas de notas}.
@node Voices and vocals
@subsection Voices and vocals
-UNTRANSLATED NODE: IGNORE ME
+
+La música vocal presenta una dificultad especial: tenemos que combinar
+dos expresiones, a saber, las notas y la letra.
+
+Ya ha visto la instrucción @code{\addlyrics@{@}}, que maneja bien
+partituras sencillas. Sin embargo esta técnica es algo limitada.
+Para música de mayor complejidad, tenemos que introducir la letra en
+un contexto @code{Lyrics} utilizando @code{\new Lyrics} y enlazar
+explícitamente la letra y las notas mediante @code{\lyricsto@{@}},
+usando el nombre asignado a la voz.
+
+@lilypond[quote,verbatim,fragment]
+<<
+ \new Voice = "one" \relative c'' {
+ \autoBeamOff
+ \time 2/4
+ c4 b8. a16 g4. f8 e4 d c2
+ }
+ \new Lyrics \lyricsto "one" {
+ No more let sins and sor -- rows grow.
+ }
+>>
+@end lilypond
+
+El barrado automático que LilyPond usa de forma predeterminada
+funciona bien para la música instrumental, pero no ten bien para
+música con letra, donde o bien el barrado no se necesita en absoluto,
+o bien se utiliza para indicar los melismaas de la letra. En el
+ejemplo anterior hemos utilizado la instrucción @code{\autoBeamOff}
+para desactivar el barrado automático.
+
+Ahora vamos a reutilizar el ejemplo anterior de «Judas Macabeo» para
+ilustrar esta técnica más flexible. Primero la reescribiremos para
+que use variables de manera que la música y la letra se pueda separar
+de la estructura de pentagramas. También introduciremos una llave de
+grupo de ChoirStaff. La letra en sí se debe introducir con
+@code{\lyricmode} para estar seguros de que se interpreta como letra y
+no como música.
+
+@lilypond[quote,verbatim]
+global = { \time 6/8 \partial 8 \key f \major}
+SopOneMusic = \relative c'' {
+ c8 | c([ bes)] a a([ g)] f | f'4. b, | c4.~ c4 }
+SopTwoMusic = \relative c' {
+ r8 | r4. r4 c8 | a'([ g)] f f([ e)] d | e([ d)] c bes' }
+SopOneLyrics = \lyricmode {
+ Let | flee -- cy flocks the | hills a -- dorn, __ }
+SopTwoLyrics = \lyricmode {
+ Let | flee -- cy flocks the | hills a -- dorn, }
+
+\score {
+ \new ChoirStaff <<
+ \new Staff <<
+ \new Voice = "SopOne" {
+ \global
+ \SopOneMusic
+ }
+ \new Lyrics \lyricsto "SopOne" {
+ \SopOneLyrics
+ }
+ >>
+ \new Staff <<
+ \new Voice = "SopTwo" {
+ \global
+ \SopTwoMusic
+ }
+ \new Lyrics \lyricsto "SopTwo" {
+ \SopTwoLyrics
+ }
+ >>
+ >>
+}
+@end lilypond
+
+Ésta es la estructura básica de todas las partituras vocales. Se
+pueden añadir más pentagramas según se necesite, se pueden añadir más
+voces a los pentagramas y más estrofas a la letra, y las variables que
+contienen la música se pueden colocar fácilmente en archivos separados
+cuando se hagan demasiado largos.
+
+A continuación podemos ver un ejemplo final de la primera línea de un
+himno con cuatro estrofas, para coro SATB. En este caso la letra de
+las cuatro partes es la misma.
+
+@lilypond[quote,verbatim]
+TimeKey = { \time 4/4 \partial 4 \key c \major}
+SopMusic = \relative c' { c4 | e4. e8 g4 g | a a g }
+AltoMusic = \relative c' { c4 | c4. c8 e4 e | f f e }
+TenorMusic = \relative c { e4 | g4. g8 c4. b8 | a8 b c d e4 }
+BassMusic = \relative c { c4 | c4. c8 c4 c | f8 g a b c4 }
+VerseOne = \lyricmode {
+ E -- | ter -- nal fa -- ther, | strong to save, }
+VerseTwo = \lyricmode {
+ O | Christ, whose voice the | wa -- ters heard, }
+VerseThree = \lyricmode {
+ O | Ho -- ly Spi -- rit, | who didst brood }
+VerseFour = \lyricmode {
+ O | Tri -- ni -- ty of | love and pow'r }
+
+\score {
+ \new ChoirStaff <<
+ \new Staff <<
+ \clef "treble"
+ \new Voice = "Sop" { \voiceOne \TimeKey \SopMusic }
+ \new Voice = "Alto" { \voiceTwo \AltoMusic }
+ \new Lyrics \lyricsto "Sop" { \VerseOne }
+ \new Lyrics \lyricsto "Sop" { \VerseTwo }
+ \new Lyrics \lyricsto "Sop" { \VerseThree }
+ \new Lyrics \lyricsto "Sop" { \VerseFour }
+ >>
+ \new Staff <<
+ \clef "bass"
+ \new Voice = "Tenor" { \voiceOne \TimeKey \TenorMusic }
+ \new Voice = "Bass" { \voiceTwo \BassMusic }
+ >>
+ >>
+}
+@end lilypond
@node Contexts and engravers
@section Contexts and engravers
-UNTRANSLATED NODE: IGNORE ME
+Los contextos y grabadores se han mencionado de manera informal en
+secciones anteriore; ahora tan sólo vamos a ver estos conceptos con
+más detalle, pues son importantes en el ajuste fino de la salida de
+LilyPond.
@menu
* Contexts explained::
@node Modifying context properties
@subsection Modifying context properties
-@cindex properties
+@cindex contexto, propiedades de
@funindex \set
-@cindex changing properties
+@funindex \unset
-Cada contexto puede tener diferentes @emph{propiedades} o variables contenidas
-en dicho contexto. Se pueden cambiar mientras se desarrolla la fase de interpretación.
-Esto se consigue insertando la instrucción @code{\set} en la música,
+Los contextos se responsabilizan de mantener los valores de un cierto
+número de @emph{properties} de contexto. Muchas de ellas se pueden
+cambiar para influir en la interpretación del código de entrada y
+cambiar así la apariencia de la salida impresa. Se modifican mediante
+la instrucción @code{\set}. Esta instrucción toma la forma siguiente:
@example
-\set @var{contexto}.@var{propiedad} = #@var{valor}
+\set @emph{NombreDelContexto}.@emph{nombreDeLaPropiedad} = #@emph{valor}
@end example
-Por ejemplo,
-@lilypond[quote,verbatim,relative=2,fragment]
-R1*2
-\set Score.skipBars = ##t
-R1*2
-@end lilypond
-
-Esta instrucción hace que se salten los compases que no tienen ninguna nota. El resultado es que
-los silencios multicompás se comprimen. El valor asignado es un objeto del lenguaje Scheme. En
-este caso, es @code{#t}, el valor booleano Verdadero.
+Donde el @emph{NombreDelContexto} es normalmente @code{Score},
+@code{Staff} o @code{Voice}. Se puede omitir, en cuyo caso se supone
+que es @code{Voice}.
-Si el argumento @var{contexto} se deja en blanco, entonces se utiliza el contexto actual más bajo
-(normalmente @code{ChordNames}, @code{Voice} o
-@code{Lyrics}). En este ejemplo,
+Los nombres de las propiedades de contexto consisten en palabras
+unidas sin ningún guión o barra baja, y donde todas las palabras
+excepto la primera empiezan en mayúscula. A continuación podemos ver
+algunos ejemplos de nombres de propiedades utilizadas con frecuencia.
+Hay muchas más que las que se muestran aquí.
-@lilypond[quote,verbatim,relative=2,fragment]
-c8 c c c
-\set autoBeaming = ##f
-c8 c c c
-@end lilypond
+@c attempt to force this onto a new page
+@need 50
+@multitable @columnfractions .25 .15 .45 .15
+@headitem nombreDeLaPropiedad
+ @tab Tipo
+ @tab Función
+ @tab Valor de ejemplo
+@item extraNatural
+ @tab Booleano
+ @tab Se es verdadero, poner becuadros adicionales antes de las alteraciones
+ @tab @code{#t}, @code{#f}
+@item currentBarNumber
+ @tab Entero
+ @tab Ajustar el número del compás actual
+ @tab @code{50}
+@item doubleSlurs
+ @tab Booleano
+ @tab Si es verdadero, imprimir ligaduras de expresión por encima y por debajo de las notas
+ @tab @code{#t}, @code{#f}
+@item instrumentName
+ @tab Texto
+ @tab Establecer el nombre del pentagrama, situado a la izquierda
+ @tab @code{"Cello I"}
+@item fontSize
+ @tab Real
+ @tab Aumentar o disminuir el tamaño de la fuente tipográfica
+ @tab @code{2.4}
+@item stanza
+ @tab Texto
+ @tab Establecer el texto que se imprime antes del comienzo de una estrofa
+ @tab @code{"2"}
+@end multitable
@noindent
-el argumento @var{contexto} para la instrucción @code{\set} está omitido, por tanto
-el barrado automático está desactivado en la @internalsref{Voice} (voz) actual. Fíjese en que
-el contexto más bajo no siempre contiene la propiedad que quiere
-cambiar. Por ejemplo, si intenta establecer la propiedad @code{skipBars}
-(del contexto más bajo, en este caso @code{Voice}) no se producirá ningún
-efecto.
+donde un valor Booleano es verdadero (@code{#t}, True) o falso
+(@code{#f}, False), un Entero es un número entero positivo, un número
+Real es un número decimal positivo o negativo, y el texto se encierra
+entre comillas dobles. Observe la aparición de signos de cuadradillo,
+(@code{#}), en dos lugares diferentes: como parte del valor Booleano
+antes de la @code{t} o la @code{f}, y antes del @emph{valor} dentro de
+la sentencia @code{\set}. Así pues, cuando se está escribiendo un
+valor Booleano, hay que escribir dos signos de cuadradillo, por
+ejemplo: @code{##t}.
+
+Antes de poder establecer cualquiera de estas propiedades, tenemos que
+saber en qué contexto operan. A veces es algo obvio, pero en
+ocasiones puede ser algo enrevesado. Si especificamos un contexto
+equivocado, no se produce ningún mensaje de error, pero el
+funcionamiento esperado no tendrá lugar. Por ejemplo, la propiedad
+@code{instrumentName} (nombre del instrumento) vive claramente dentro
+del contexto de Staff, puesto que es el pentagrama el que debe ser
+nombrado. En este ejemplo, el primer pentagrama resulta etiquetado,
+pero no el segundo, porque hemos omitido el nombre del contexto.
-@lilypond[quote,verbatim,relative=2,fragment]
-R1*2
-\set skipBars = ##t
-R1*2
+@lilypond[quote,verbatim,ragged-right]
+<<
+ \new Staff \relative c'' {
+ \set Staff.instrumentName = #"Soprano"
+ c4 c
+ }
+ \new Staff \relative c' {
+ \set instrumentName = #"Alto" % Wrong!
+ d4 d
+ }
+>>
@end lilypond
-Los contextos son jerárquicos, de forma que si se especificó un contexto mayor, por
-ejemplo @code{Staff}, entonces el cambio también se aplicaría a todos los
-@code{Voice}s o contextos de voz en el pentagrama actual. El cambio se aplica
-@q{al vuelo}, mientras transcurre la música, de manera que el ajuste sólo afecta al segundo
-grupo de corcheas.
-
-@funindex \unset
+Recuerde que el nombre del contexto predeterminado es Voice, así que
+la segunda instrucción @code{\set} establece la propiedad
+@code{instrumentName} del contexto Voice a @qq{Alto}, pero como
+LilyPond no busca esta propiedad en el contexto @code{Voice}, no se
+realiza ninguna acción. Esto no es un error, y no se registra ningún
+mensaje en el archivo de errores Log.
+
+De forma parecida, si el nombre de la propiedad se escribe con alguna
+falta, no se produce ningún mensaje de error, y claramente la acción
+esperada no puede tener lugar. De hecho, se puede establecer
+cualquier @q{property} (ficticia) usando cualquier nombre que queramos
+en cualquier contexto que exista, mediante el uso de la instrucción
+@code{\set}. Pero si el nombre no es conocido para LilyPond, no
+producirá ninguna acción. Esta es una de las razones por las que es
+muy recomendable ussar un editor que sea sensible al contexto y con
+resaltado de la sintaxis para la edición de archivos de LilyPond, como
+por ejemplo Vim, Jedit, ConTEXT o Emacs, ya que los nombres de
+propiedades desconocidas se resaltarán de forma distinta.
+
+La propiedad @code{instrumentName} tendrá efecto solamente si se
+establece dentro del contexto @code{Staff}, pero algunas propiedades
+se pueden establecer en más de un contexto. Por ejemplo, la propiedad
+@code{extraNatural} está establecida por defecto al valor ##t
+(verdadero) para todos los pentagramas. Si se establece a ##f (falso)
+en un contexto de @code{Staff} determinado, se aplicará solamente a
+las alteraciones de ese pentagrama. Si se establece a falso en el
+contexto de la partitura, @code{Score}, se aplicará a todos los
+pentagramas.
+
+Así, esto desactivará los becuadros adicionales en un pentagrama:
-También existe una instrucción @code{\unset},
-@example
-\unset @var{contexto}.@var{propiedad}
-@end example
+@lilypond[quote,verbatim,ragged-right]
+<<
+ \new Staff \relative c'' {
+ ais4 aes
+ }
+ \new Staff \relative c'' {
+ \set Staff.extraNatural = ##f
+ ais4 aes
+ }
+>>
+@end lilypond
@noindent
-que quita la definición de la @var{propiedad}. Esta instrucción quita
-la definición solamente si está establecida dentro del @var{contexto} especificado, por lo que
+y esto los desactivará en todos los pentagramas:
-@example
-\set Staff.autoBeaming = ##f
-@end example
+@lilypond[quote,verbatim,ragged-right]
+<<
+ \new Staff \relative c'' {
+ ais4 aes
+ }
+ \new Staff \relative c'' {
+ \set Score.extraNatural = ##f
+ ais4 aes
+ }
+>>
+@end lilypond
-@noindent
-introduce un ajuste de propiedad en el nivel del contexto @code{Staff}. El ajuste también se aplica
-a la @code{Voice} actual. Sin embargo,
+El valor de cada propiedad establecido de esta forma se puede devolver
+a su valor original con la instrucción @code{\unset}.
+
+Las instrucciones @code{\set} y @code{\unset} pueden aparecer en
+cualquier lugar del archivo de entrada y tendrán efecto a partir del
+tiempo en que se encuentran y hasta el final de la partitura o hasta
+que la propiedad se establezca de nuevo mediante @code{\set} o
+@code{\unset}. Probemos a modificar el tamaño de la fuente
+tipográfica, lo que afecta al tamaño de las cabezas de las notas
+(entre otras cosas) varias veces. El cambio se toma a partir del
+valor predeterminado, no el valor en curso.
+
+@lilypond[quote,verbatim,ragged-right,relative=1,fragment]
+c4
+% make note heads smaller
+\set fontSize = #-4
+d e
+% make note heads larger
+\set fontSize = #2.5
+f g
+% return to original size
+\unset fontSize
+a b
+@end lilypond
-@example
-\unset Voice.autoBeaming
-@end example
+Hemos podido ver cómo establecer los valores de diversos tipos de
+propiedad diferentes. Observe que los números enteros y reales van
+siempre precedidos de un símbolo de cuadradillo, @code{#}, mientras
+que un valor booleano verdadero o falso se especifica mediante ##t y
+##f, con dos cuadradillos. Una propiedad de texto se debe encerrar
+entre comillas dobles, como antes, aunque veremos más adelante que el
+texto realmente se peude especificar de una dorma mucho más general
+utilizando la potentísima instrucción @code{markup}.
-@noindent
-no tiene ningún efecto. Para cancelar este ajuste, el @code{\unset}
-se debe especificar en el mismo nivel que el @code{\set} original. En
-otras palabras, deshacer el efecto de @code{Staff.autoBeaming = ##f}
-requiere
-@example
-\unset Staff.autoBeaming
-@end example
-Igual que @code{\set}, el argumento @var{contexto} no tiene que especificarse para un contexto
-que está en la parte más baja, por lo que las dos instrucciones
+@funindex \with
+
+Las propiedades de contexto también se pueden establecer en el momento
+en que se crea el contexto. A veces esta forma de establecer el valor
+de una propiedad es mucho más clara, si ha de quedar fijo durante todo
+el tiempo que dure el contexto. Cuando se crea un contexto con una
+instrucción @code{\new} puede ir inmediatamente seguido de un bloque
+@code{\with @{ .. @}} en el que se establecen los valores de las
+propiedades. Por ejemplo, si queremos suprimir la impresión de
+becuadros adicionales para toda la duración de un pentagrama, podemos
+escribir:
@example
-\set Voice.autoBeaming = ##t
-\set autoBeaming = ##t
+\new Staff \with @{ extraNatural = ##f @}
@end example
@noindent
-son equivalentes.
-
+de la siguiente forma:
-@cindex \once
-Los ajustes que se quieren aplicar a un paso de tiempo único se pueden escribir
-con @code{\once}, por ejemplo en
-
-@lilypond[quote,verbatim,relative=2,fragment]
-c4
-\once \set fontSize = #4.7
-c4
-c4
+@lilypond[quote,verbatim,ragged-right]
+<<
+ \new Staff
+ \relative c'' {
+ gis ges aes ais
+ }
+ \new Staff \with { extraNatural = ##f }
+ \relative c'' {
+ gis ges aes ais
+ }
+>>
@end lilypond
-la propiedad @code{fontSize} pierde su valor automáticamente después de la segunda
-nota.
-
-En la referencia del programa hay una descripción detallada de todas las propiedades de contexto disponibles,
-véase
-@ifhtml
-@internalsref{Tunable context properties}.
-@end ifhtml
-@ifnothtml
-Traducción @expansion{} propiedades de contexto ajustables.
-@end ifnothtml
+Efectivamente, esto sobreescribe el valor predeterminado de la
+propiedad. Aún se puede modificar dinámicamente utilizando
+@code{\set} y devolverlo a su (nuevo) valor predeterminado con
+@code{\unset}.
@node Adding and removing engravers
@subsection Adding and removing engravers
@node Extending the templates
@section Extending the templates
-Ha leído el tutorial y ahora sabe escribir música. Pero ¿cómo puede poner
-los pentagramas que quiere? Las plantillas están muy bien, pero ¿qué ocurre
-si quiere algo que no está en una de ellas?
+Ha leído el tutorial y ahora sabe escribir música. Pero ¿cómo puede
+poner los pentagramas que quiere? Las plantillas están muy bien, pero
+¿qué ocurre si quiere algo que no está en una de ellas? Bien, puede
+encontrar montañas de plantillas (véase @ref{Templates}) que le pueden
+servir como punto de partida. Pero ¿y si quiere algo que no está
+contemplado aquí? Continúe leyendo.
+
-Para empezar, tome la plantilla que le parezca más parecida a aquello que quiere
-conseguir. Digamos que quiere escribir algo para soprano y cello.
-En este caso comenzaríamos con la plantilla @q{Notas y letra} (para la parte
-de soprano).
+@menu
+* Soprano and cello::
+* Four-part SATB vocal score::
+* Building a score from scratch::
+@end menu
+
+@node Soprano and cello
+@subsection Soprano and cello
+
+
+Para empezar, tome la plantilla que le parezca más parecida a aquello
+que quiere conseguir. Digamos que quiere escribir algo para soprano y
+cello. En este caso comenzaríamos con la plantilla @q{Notas y letra}
+(para la parte de soprano).
@example
-\version "2.11.38"
+\version @w{"@version{}"}
melodia = \relative c' @{
\clef treble
\key c \major
\time 4/4
-
a4 b c d
@}
Aaa Bee Cee Dee
@}
-\score@{
+\score @{
<<
\new Voice = "uno" @{
\autoBeamOff
\melodia
@}
- \new Lyrics \lyricsto "uno" \text
+ \new Lyrics \lyricsto "uno" \texto
>>
\layout @{ @}
\midi @{ @}
@}
@end example
-Ahora queremos añadir una parte de violoncello. Veamos el ejemplo @q{Sólo notas}:
+Ahora queremos añadir una parte de violoncello. Veamos el ejemplo
+@q{Sólo notas}:
@example
-\version "2.11.38"
+\version @w{"@version{}"}
melodia = \relative c' @{
\clef treble
\key c \major
\time 4/4
-
a4 b c d
@}
\score @{
-\new Staff \melody
-\layout @{ @}
-\midi @{ @}
+ \new Staff \melodia
+ \layout @{ @}
+ \midi @{ @}
@}
@end example
-No necesitamos dos comandos @code{\version}. Vamos a necesitar la sección @code{melodia}.
-No queremos dos secciones @code{\score} (si tuviésemos dos @code{\score}s, acabaríamos con las dos particellas por separado.
-Queremos las dos juntas, como un dúo.
-Dentro de la sección @code{\score}, no nos hacen falta dos
-@code{\layout} ni dos @code{\midi}.
-
-Si nos limitásemos a copiar y pegar la sección @code{melodia}, acabaríamos con dos
-secciones @code{melodia} separadas, así que vamos a cambiarles el nombre. Llamaremos
-@code{musicaSoprano} a la sección de la soprano y @code{musicaCello} a la sección del violoncello.
-Al mismo tiempo cambiaremos el nombre de @code{texto}
-a @code{letraSoprano}. Recuerde cambiar el nombre a las dos apariciones de todos estos
-nombres -- tanto la definición inicial (la
-parte @code{melodia = relative c' @{ }) --
-como el uso de ese nombre (en la sección @code{\score}).
-
-También aprovecharemos para cambiar el pentagrama de la parte del cello (los violoncellos
-se escriben normalmente en clave de Fa). Asimismo, cambiaremos algunas
-notas del cello.
+No necesitamos dos comandos @code{\version}. Vamos a necesitar la
+sección @code{melodia}. No queremos dos secciones @code{\score} (si
+tuviésemos dos @code{\score}s, acabaríamos con las dos particellas por
+separado. Queremos las dos juntas, como un dúo. Dentro de la sección
+@code{\score}, no nos hacen falta dos @code{\layout} ni dos
+@code{\midi}.
+
+Si nos limitásemos a copiar y pegar la sección @code{melodia},
+acabaríamos con dos secciones @code{melodia} separadas, así que vamos
+a cambiarles el nombre. Llamaremos @code{musicaSoprano} a la sección
+de la soprano y @code{musicaCello} a la sección del violoncello. Al
+mismo tiempo cambiaremos el nombre de @code{texto} a
+@code{letraSoprano}. Recuerde cambiar el nombre a las dos apariciones
+de todos estos nombres -- tanto la definición inicial (la parte
+@code{melodia = relative c' @{ }) -- como el uso de ese nombre (en la
+sección @code{\score}).
+
+También aprovecharemos para cambiar el pentagrama de la parte del
+cello (los violoncellos se escriben normalmente en clave de Fa).
+Asimismo, cambiaremos algunas notas del cello.
@example
-\version "2.11.38"
+\version @w{"@version{}"}
musicaSoprano = \relative c' @{
\clef treble
\key c \major
\time 4/4
-
a4 b c d
@}
@}
@end example
-Esto tiene una pinta prometedora, pero la parte del cello no sale en la partitura
-(no la hemos puesto en la sección @code{\score}). Si queremos que la parte
-del cello aparezca debajo de la de soprano, tenemos que añadir
+Esto tiene una apariencia prometedora, pero la parte del cello no sale
+en la partitura (no la hemos puesto en la sección @code{\score}). Si
+queremos que la parte del cello aparezca debajo de la de soprano,
+tenemos que añadir
@example
\new Staff \musicaCello
@end example
@noindent
-justo debajo de todo lo de la soprano. También tenemos que poner @code{<<} y
-@code{>>} antes y después de la música -- lo que indica a LilyPond que hay
-más de una cosa (en este caso, @code{Staff}) sucediendo al mismo tiempo -- . La
-@code{\score} se parecerá ahora a esto
+justo debajo de todo lo de la soprano. También tenemos que poner
+@code{<<} y @code{>>} antes y después de la música -- lo que indica a
+LilyPond que hay más de una cosa (en este caso, @code{Staff})
+sucediendo al mismo tiempo -- . La @code{\score} se parecerá ahora a
+esto
@example
\score@{
@end example
@noindent
-Esto parece un poco enrevesado; los márgenes están descuadrados. Esto tiene
-fácil solución. Presentamos aquí la plantilla completa para soprano y cello.
+Esto parece un poco enrevesado; los márgenes están descuadrados. Esto
+tiene fácil solución. Presentamos aquí la plantilla completa para
+soprano y cello.
@lilypond[quote,verbatim,ragged-right]
\version "2.11.38"
}
@end lilypond
-@menu
-* Soprano and cello::
-* Four-part SATB vocal score::
-* Building a score from scratch::
-@end menu
-@node Soprano and cello
-@subsection Soprano and cello
-
-UNTRANSLATED NODE: IGNORE ME
-
@node Four-part SATB vocal score
@subsection Four-part SATB vocal score
-UNTRANSLATED NODE: IGNORE ME
+La mayor parte de las partituras vocales escritas para coro mixto a
+cuatro voces con acompañamiento orquestal, como el «Elías» de
+Mendelssohn o el «Mesías» de Haendel, tienen la música coral y la
+letra en cuatro pentagramas para S, A, T y B, respectivamente, con una
+reducción de piano del acompañamiento de orquesta, por debajo. He aquí
+un ejemplo del «Mesías» de Haendel:
+
+@c The following should appear as music without code
+@lilypond[quote,ragged-right]
+global = { \key d \major \time 4/4 }
+sopMusic = \relative c'' {
+ \clef "treble"
+ r4 d2 a4 | d4. d8 a2 | cis4 d cis2 |
+}
+sopWords = \lyricmode {
+ Wor -- thy is the lamb that was slain
+}
+altoMusic = \relative a' {
+ \clef "treble"
+ r4 a2 a4 | fis4. fis8 a2 | g4 fis e2 |
+}
+altoWords = \sopWords
+tenorMusic = \relative c' {
+ \clef "G_8"
+ r4 fis2 e4 | d4. d8 d2 | e4 a, cis2 |
+}
+tenorWords = \sopWords
+bassMusic = \relative c' {
+ \clef "bass"
+ r4 d2 cis4 | b4. b8 fis2 | e4 d a'2 |
+}
+bassWords = \sopWords
+upper = \relative a' {
+ \clef "treble"
+ \global
+ r4 <a d fis>2 <a e' a>4 |
+ <d fis d'>4. <d fis d'>8 <a d a'>2 |
+ <g cis g'>4 <a d fis> <a cis e>2 |
+}
+lower = \relative c, {
+ \clef "bass"
+ \global
+ <d d'>4 <d d'>2 <cis cis'>4 |
+ <b b'>4. <b' b'>8 <fis fis'>2 |
+ <e e'>4 <d d'> <a' a'>2 |
+}
+
+\score {
+ << % combine ChoirStaff and PianoStaff in parallel
+ \new ChoirStaff <<
+ \new Staff = "sopranos" <<
+ \set Staff.instrumentName = "Soprano"
+ \new Voice = "sopranos" { \global \sopMusic }
+ >>
+ \new Lyrics \lyricsto "sopranos" { \sopWords }
+ \new Staff = "altos" <<
+ \set Staff.instrumentName = "Alto"
+ \new Voice = "altos" { \global \altoMusic }
+ >>
+ \new Lyrics \lyricsto "altos" { \altoWords }
+ \new Staff = "tenors" <<
+ \set Staff.instrumentName = "Tenor"
+ \new Voice = "tenors" { \global \tenorMusic }
+ >>
+ \new Lyrics \lyricsto "tenors" { \tenorWords }
+ \new Staff = "basses" <<
+ \set Staff.instrumentName = "Bass"
+ \new Voice = "basses" { \global \bassMusic }
+ >>
+ \new Lyrics \lyricsto "basses" { \bassWords }
+ >> % end ChoirStaff
+
+ \new PianoStaff <<
+ \set PianoStaff.instrumentName = "Piano "
+ \new Staff = "upper" \upper
+ \new Staff = "lower" \lower
+ >>
+ >>
+}
+@end lilypond
+
+Ninguna de las plantillas proporciona esta disposición con exactitud.
+La más parecida es @q{partitura vocal SATB y reducción de piano
+automática}, pero necesitamos cambiar la disposición y añadir un
+acompañamiento de piano que no esté derviado automáticamente de las
+partes vocales. Las variables que contienen la música y la letra de
+las partes vocales es adecuada, pero tendremos que añadir variables
+para la reducción de piano.
+
+El orden en que aparecen los contextos en el ChoirStaff de la
+plantilla no se corresponde con el orden de la partitura vocal que
+hemos mostrado más arriba. Tenemos que reordenarlas para que haya
+cuatro pentagramas con la letra escrita directamente bajo las notas de
+cada parte. Todas las voces deben ser @code{\voiceOne}, que es la
+predeterminada, para que las instrucciones @code{\voiceXXX} se puedan
+eliminar. También tenemos que especificar la clave de tenor (clave de
+sol octava baja) en las partes de tenor. Aún no hemos encontrado la
+forma en que la letra se especifica en la plantilla, así que tenemos
+que utilizar el método que nos resulta familiar. También tenemos que
+escribir los nombres de cada pentagrama.
+
+Al hacerlo así obtenemos el ChoirStaff siguiente:
+
+@example
+ \new ChoirStaff <<
+ \new Staff = "sopranos" <<
+ \set Staff.instrumentName = "Soprano"
+ \new Voice = "sopranos" @{ \global \musicaSoprano @}
+ >>
+ \new Lyrics \lyricsto "sopranos" @{ \latraSoprano @}
+ \new Staff = "altos" <<
+ \set Staff.instrumentName = "Alto"
+ \new Voice = "altos" @{ \global \musicaAlto @}
+ >>
+ \new Lyrics \lyricsto "altos" @{ \letraAlto @}
+ \new Staff = "tenores" <<
+ \set Staff.instrumentName = "Tenor"
+ \new Voice = "tenores" @{ \global \musicaTenor @}
+ >>
+ \new Lyrics \lyricsto "tenors" @{ \letraTenor @}
+ \new Staff = "bajos" <<
+ \set Staff.instrumentName = "Bass"
+ \new Voice = "bajos" @{ \global \musicaBajo @}
+ >>
+ \new Lyrics \lyricsto "basses" @{ \letraBajo @}
+ >> % fin del ChoirStaff
+@end example
+
+A continuación debemos trabajar sobre la parte de piano. Es fácil:
+tan sólo hay que sacar la parte de piano de la plantilla de @q{Piano
+solista}:
+
+@example
+\new PianoStaff <<
+ \set PianoStaff.instrumentName = "Piano "
+ \new Staff = "superior" \superior
+ \new Staff = "inferior" \inferior
+>>
+@end example
+
+y escribir las definiciones de variable para @code{superior} e
+@code{inferior}.
+
+Los grupos ChoirStaff y PianoStaff se deben combinar utilizando
+ángulos dobles, ya queremos apilarlos unos sobre otros:
+
+@example
+<< % combinar los grupos ChoirStaff y PianoStaff uno sobre el otro
+ \new ChoirStaff <<
+ \new Staff = "sopranos" <<
+ \new Voice = "sopranos" @{ \global \musicaSoprano @}
+ >>
+ \new Lyrics \lyricsto "sopranos" @{ \letraSoprano @}
+ \new Staff = "altos" <<
+ \new Voice = "altos" @{ \global \musicaAlto @}
+ >>
+ \new Lyrics \lyricsto "altos" @{ \letraAlto @}
+ \new Staff = "tenores" <<
+ \clef "G_8" % clave de tenor
+ \new Voice = "tenores" @{ \global \musicaTenor @}
+ >>
+ \new Lyrics \lyricsto "tenores" @{ \letraTenor @}
+ \new Staff = "bajos" <<
+ \clef "bass"
+ \new Voice = "bajos" @{ \global \musicaBajo @}
+ >>
+ \new Lyrics \lyricsto "bajos" @{ \letraBajo @}
+ >> % fin del ChoirStaff
+
+ \new PianoStaff <<
+ \set PianoStaff.instrumentName = "Piano "
+ \new Staff = "upper" \upper
+ \new Staff = "lower" \lower
+ >>
+>>
+@end example
+
+Al combinar todo esto junto y escribir la música de los tres compases
+del ejemplo anterior, obtenemos:
+
+@lilypond[quote,verbatim,ragged-right]
+\version "2.11.38"
+global = { \key d \major \time 4/4 }
+sopMusic = \relative c'' {
+ \clef "treble"
+ r4 d2 a4 | d4. d8 a2 | cis4 d cis2 |
+}
+sopWords = \lyricmode {
+ Wor -- thy is the lamb that was slain
+}
+altoMusic = \relative a' {
+ \clef "treble"
+ r4 a2 a4 | fis4. fis8 a2 | g4 fis fis2 |
+}
+altoWords = \sopWords
+tenorMusic = \relative c' {
+ \clef "G_8"
+ r4 fis2 e4 | d4. d8 d2 | e4 a, cis2 |
+}
+tenorWords = \sopWords
+bassMusic = \relative c' {
+ \clef "bass"
+ r4 d2 cis4 | b4. b8 fis2 | e4 d a'2 |
+}
+bassWords = \sopWords
+upper = \relative a' {
+ \clef "treble"
+ \global
+ r4 <a d fis>2 <a e' a>4 |
+ <d fis d'>4. <d fis d'>8 <a d a'>2 |
+ <g cis g'>4 <a d fis> <a cis e>2 |
+}
+lower = \relative c, {
+ \clef "bass"
+ \global
+ <d d'>4 <d d'>2 <cis cis'>4 |
+ <b b'>4. <b' b'>8 <fis fis'>2 |
+ <e e'>4 <d d'> <a' a'>2 |
+}
+
+\score {
+ << % combine ChoirStaff and PianoStaff in parallel
+ \new ChoirStaff <<
+ \new Staff = "sopranos" <<
+ \set Staff.instrumentName = "Soprano"
+ \new Voice = "sopranos" { \global \sopMusic }
+ >>
+ \new Lyrics \lyricsto "sopranos" { \sopWords }
+ \new Staff = "altos" <<
+ \set Staff.instrumentName = "Alto"
+ \new Voice = "altos" { \global \altoMusic }
+ >>
+ \new Lyrics \lyricsto "altos" { \altoWords }
+ \new Staff = "tenors" <<
+ \set Staff.instrumentName = "Tenor"
+ \new Voice = "tenors" { \global \tenorMusic }
+ >>
+ \new Lyrics \lyricsto "tenors" { \tenorWords }
+ \new Staff = "basses" <<
+ \set Staff.instrumentName = "Bass"
+ \new Voice = "basses" { \global \bassMusic }
+ >>
+ \new Lyrics \lyricsto "basses" { \bassWords }
+ >> % end ChoirStaff
+
+ \new PianoStaff <<
+ \set PianoStaff.instrumentName = "Piano "
+ \new Staff = "upper" \upper
+ \new Staff = "lower" \lower
+ >>
+ >>
+}
+@end lilypond
+
@node Building a score from scratch
@subsection Building a score from scratch
-UNTRANSLATED NODE: IGNORE ME
+Después de adquirir algo de soltura en la escritura del código de
+LilyPond, se dará cuenta de que es más fácil construir completamente
+una partitura partiendo de cero, que modificar una plantilla. También
+puede desarrollar su propio estilo de forma que se adapte al tipo de
+música que le apetezca. Veamos a continuación cómo confeccionar una
+partitura para un preludio de órgano, como ejemplo.
+
+Comenzamos con una sección para el encabezamiento. Aquí es donde van
+el título, nombre del compositor, etc., después van las definiciones
+de las variables, y finalmente el bloque de partitura. Comencemos a
+verlas por encima y más tarde completaremos los detalles.
+
+Utilizaremos los dos primeros compases del peludio de Bach basado en
+@emph{Jesu, meine Freude}, que está escrito para órgano con dos
+manuales y pedal. Tiene estos dos compases de música al final de la
+sección. La parte del manual superior tiene dos voces, y el inferior
+y el pedal, una voz cada uno. Así pues, necesitamos cuatro
+definiciones para la música y una más para definir el compás y la
+tonalidad:
+@example
+\version @w{"@version{}"}
+\header @{
+ title = "Jesu, meine Freude"
+ composer = "J S Bach"
+@}
+TimeKey = @{ \time 4/4 \key c \minor @}
+MusicaManualUnoVozUno = @{s1@}
+MusicaManualUnoVozDos = @{s1@}
+MusicaManualDos = @{s1@}
+MusicaPedal = @{s1@}
+
+\score @{
+@}
+@end example
+
+Por el momento hemos escrito tan sólo una nota espaciadora, @code{s1},
+en lugar de la música de verdad. La añadiremos más adelante.
+
+A continuación veamos qué va en el bloque de partitura.
+Sencillamente, reflejaremos la estructura de pentagramas que deseemos.
+La música de órgano se escribe por lo general en tres pentagramas, uno
+para cada uno de los manuales y otro para el pedal. Los pentagramas
+de los manuales se abarcan con una llave, así que los incluiremos en
+un grupo PianoStaff. La primera parte de manual tiene dos voces, y la
+segunda sólo una.
+
+@example
+ \new PianoStaff <<
+ \new Staff = "ManualUno" <<
+ \new Voice @{ \MusicaManualUnoVozUno @}
+ \new Voice @{ \MusicaManualUnoVozDos @}
+ >> % fun del contexto de Staff ManualUno
+ \new Staff = "ManualDos" <<
+ \new Voice @{ \MusicaManualDos @}
+ >> % fin del contexto de Staff ManualDos
+ >> % fin del contexto de PianoStaff
+@end example
+
+Después, tenemos que añadir un pentagrama para el órgano de pedal.
+Esto va por debajo del PianoStaff, pero debe ser simultáneo con él,
+por lo que escribimos dobles ángulos rodeando a los dos. Si esto se
+nos olvida, se producirá un error en el archivo log de registro. ¡Es
+un error muy común que cometerá antes o después! Intente copiar el
+ejemplo final que aparece al final de la sección, borre los dobles
+ángulos y procese el archivo para ver qué error produce.
+
+@example
+<< % el grupo PianoStaff y el pentagrama de Pedal son simultáneos
+ \new PianoStaff <<
+ \new Staff = "ManualUno" <<
+ \new Voice @{ \MusicaManualUnoVozUno @}
+ \new Voice @{ \MusicaManualUnoVozDos @}
+ >> % fin del contexto de Staff ManualUno
+ \new Staff = "ManualDos" <<
+ \new Voice @{ \MusicaManualDos @}
+ >> % fin del contexto de Staff ManualDos
+ >> % fin del contexto de PianoStaff
+ \new Staff = "OrganoPedal" <<
+ \new Voice @{ \MusicaOrganoPedal @}
+ >>
+>>
+@end example
+
+No es estrictamente necesario utilizar la construcción simultánea
+@code{<< >>} para el pentagrama del manual dos y el pentagrama del
+órgano de pedal, ya que contienen una única expresión, pero no hace
+daño y es una buena costumbre utilizar siempre dobles ángulos después
+de @code{\new Staff} cuando hay varias voces.
+
+Añadamos esta estructura al bloque de partitura, y ajustemos el
+sangrado de los márgenes. También escribimos las claves
+correspondientes, nos aseguramos de que las plicas de la segunda voz
+apuntan hacia abajo mediante @code{\voiceTwo} y escribimos el compás y
+la tonalidad en cada uno de los pentagramas usando nuestra variable
+previamente definida @code{\TimeKey}.
+
+@example
+\score @{
+ << % el grupo PianoStaff y el pentagrama de Pedal son simultáneos
+ \new PianoStaff <<
+ \new Staff = "ManualUno" <<
+ \TimeKey % establecer compás y tonalidad
+ \clef "treble"
+ \new Voice @{ \MusicaManualUnoVozUno @}
+ \new Voice @{ \voiceTwo \MusicaManualUnoVozDos @}
+ >> % fin del contexto de Staff ManualUno
+ \new Staff = "ManualDos" <<
+ \TimeKey
+ \clef "bass"
+ \new Voice @{ \MusicaManualDos @}
+ >> % fin del contexto de Staff ManualDos
+ >> % fin del contexto de PianoStaff
+ \new Staff = "OrganoPedal" <<
+ \TimeKey
+ \clef "bass"
+ \new Voice @{ \MusicaOrganoPedal @}
+ >> % fin del pentagrama de OrganoPedal
+ >>
+@} % end Score context
+@end example
+
+Con esto se completa la estructura. Toda música para órgano de tres
+pentagramas tendrá una estructura similar, aunque el número de voces
+puede variar. Todo lo que nos queda es añadir la música, y combinar
+todas las partes.
+
+@lilypond[quote,verbatim,ragged-right]
+\version "2.11.38"
+\header {
+ title = "Jesu, meine Freude"
+ composer = "J S Bach"
+}
+TimeKey = { \time 4/4 \key c \minor }
+ManualOneVoiceOneMusic = \relative g' {
+ g4 g f ees | d2 c2 |
+}
+ManualOneVoiceTwoMusic = \relative c' {
+ ees16 d ees8~ ees16 f ees s c8 d~ d c~ |
+ c c4 b8 c8. g16 c b c d |
+}
+ManualTwoMusic = \relative c' {
+ c16 b c8~ c16 b c g a8 g~ g16 g aes ees |
+ f ees f d g aes g f ees d e8~ ees16 f ees d |
+}
+PedalOrganMusic = \relative c {
+ r8 c16 d ees d ees8~ ees16 a, b g c b c8 |
+ r16 g ees f g f g8 c,2 |
+ }
+
+\score {
+ << % PianoStaff and Pedal Staff must be simultaneous
+ \new PianoStaff <<
+ \new Staff = "ManualOne" <<
+ \TimeKey % set time signature and key
+ \clef "treble"
+ \new Voice { \ManualOneVoiceOneMusic }
+ \new Voice { \voiceTwo \ManualOneVoiceTwoMusic }
+ >> % end ManualOne Staff context
+ \new Staff = "ManualTwo" <<
+ \TimeKey
+ \clef "bass"
+ \new Voice { \ManualTwoMusic }
+ >> % end ManualTwo Staff context
+ >> % end PianoStaff context
+ \new Staff = "PedalOrgan" <<
+ \TimeKey
+ \clef "bass"
+ \new Voice { \PedalOrganMusic }
+ >> % end PedalOrgan Staff
+ >>
+} % end Score context
+@end lilypond
--- SKELETON FILE --
-When you actually translate this file, please remove these lines as
-well as all `UNTRANSLATED NODE: IGNORE ME' lines.