]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/es/user/fundamental.itely
f0375e5bef6192d332dda0f6ce67cac956fb16de
[lilypond.git] / Documentation / es / user / fundamental.itely
1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
2 @c This file is part of lilypond-learning.tely
3 @ignore
4     Translation of GIT committish: aae416a0211bad0bbed5c82b91d80a83d21e8054
5
6     When revising a translation, copy the HEAD committish of the
7     version that you are working on.  See TRANSLATION for details.
8 @end ignore
9
10
11 @node Fundamental concepts
12 @chapter Fundamental concepts
13
14 UNTRANSLATED NODE: IGNORE ME
15
16 @menu
17 * How LilyPond files work::     
18 * Voices contain music::        
19 * Contexts and engravers::      
20 * Extending the templates::     
21 @end menu 
22 @node How LilyPond files work
23 @section How LilyPond files work
24
25 El formato de entrada de LilyPond es bastante libre en su forma y concede a los usuarios con experiencia
26 mucha flexibilidad para estructurar sus archivos de la forma que deseen.
27 Sin embargo, toda esta flexibilidad puede hacer que las cosas se vuelvan confusas para
28 los nuevos usuarios.  Esta sección le va a explicar parte de esta estructura, pero
29 puede obviar ciertos detalles en aras de la simplicidad.  Para ver una
30 descripción completa del formato de entrada, consulte @ruser{File structure}.
31
32 Casi todos los ejemplos del presente manual con pequeños fragmentos de código.  Por ejemplo
33
34 @example
35 c4 a b c
36 @end example
37
38 Como (esperamos) ya se habrá dado cuenta, esto no se puede compilar tal cual
39 está.  Estos ejemplos son sólo resúmenes de los ejemplos
40 completos.  Todos ellos necesitan, cuando menos, un par de llaves antes y después para que se puedan compilar
41
42 @example
43 @{
44   c4 a b c
45 @}
46 @end example
47
48 Casi todos los ejemplos también usan el comando @code{\relative c'}
49 (o @code{c''}).  Esto no es necesario para conseguir que los ejemplos
50 simplemente se puedan compilar, pero casi siempre la salida tendrá un aspecto
51 muy extraño si omite el @code{\relative c'}.
52
53 @lilypond[quote,fragment,ragged-right,verbatim]
54 \relative c'' {
55   c4 a b c
56 }
57 @end lilypond
58
59 Ahora nos encontramos con el único tropiezo de verdad: la entrada de
60 LilyPond en esta forma es realmente @emph{otra}
61 abreviatura.  Aunque se puede compilar y presenta la
62 salida correcta, es una abreviatura de
63
64 @example
65 \score @{
66   \relative c'' @{
67     c4 a b c
68   @}
69 @}
70 @end example
71
72 Un @code{\score} debe comenzar con una única expresión
73 musical.  Recuerde que una expresión musical podía ser
74 cualquier cosa desde una sola nota hasta todo un
75
76 @example
77 @{
78   \new GrandStaff <<
79     introduzca aquí la partitura completa de una ópera de Wagner
80   >>
81 @}
82 @end example
83
84 @noindent
85 Ya que todo está dentro de @code{@{ ... @}}, cuenta
86 como una sola expresión musical.
87
88 La @code{\score} puede contener otras cosas como
89
90 @example
91 \score @{
92   @{ c'4 a b c' @}
93   \layout @{ @}
94   \midi @{ @}
95   \header @{ @}
96 @}
97 @end example
98
99 @noindent
100 Hay personas que ponen algunos de estos comandos fuera del
101 bloque @code{\score} (por ejemplo, @code{\header} se
102 sitúa con frecuencia por encima del @code{\score}.  Es tan sólo
103 otra abreviatura que LilyPond acepta.
104
105 @cindex variables
106 @cindex identificadores
107
108 Otro atajo genial es la posibilidad de definir variables.
109 Todas las plantillas emplean lo siguiente:
110
111 @example
112 melodia = \relative c' @{
113   c4 a b c
114 @}
115
116 \score @{
117   @{ \melodia @}
118 @}
119 @end example
120
121 Cuando LilyPond examina este archivo, toma el valor de
122 @code{melodia} (todo lo que está después del signo igual) y lo
123 inserta dondequiera que ve
124 @code{\melodia}.  No se requiere un cuidado especial con los
125 nombres -- puede ser @code{melodia}, @code{global},
126 @code{manoderechadelpiano}, o @code{fulanomengano} --.  Puede
127 usar el nombre de variable que desee.  Para ver más
128 detalles, consulte
129 @ruser{Saving typing with identifiers and functions}.
130
131 Para ver una definición completa
132 del formato de entrada, consulte @ruser{File structure}.
133
134 @menu
135 * Introduction to the LilyPond file structure::  
136 * Score is a (single) compound musical expression::  
137 * Nesting music expressions::   
138 * On the un-nestedness of brackets and ties::  
139 @end menu 
140 @node Introduction to the LilyPond file structure
141 @subsection Introduction to the LilyPond file structure
142
143 UNTRANSLATED NODE: IGNORE ME
144
145 @node Score is a (single) compound musical expression
146 @subsection Score is a (single) compound musical expression
147
148 En la sección anterior, @ruser{How LilyPond files work},
149 pudimos ver la organización general de los archivos de entrada
150 de LilyPond.  Pero parece que nos saltamos la parte más importante:
151 ¿cómo averiguamos qué escribir después de
152 @code{\score}?
153
154 No nos hemos saltado nada en absoluto.  El gran misterio es, sencillamente,
155 que no hay @emph{ningún} misterio.  La siguiente línea lo explica
156 todo:
157
158 @quotation
159 @emph{Una @code{\score} debe comenzar con una única expresión musical.}
160 @end quotation
161
162 @noindent
163 Quizá encuentre útil dar un repaso a
164 @ruser{Music expressions explained}.  En esta sección, vimos
165 cómo elaborar grandes expresiones musicales a partir de pequeñas
166 piezas -- comenzábamos con notas, luego acordes, etc. --.  Ahora
167 partiremos de una gran expresión musical y
168 recorreremos el camino inverso hacia abajo.
169
170 @example
171 \score @{
172   @{   % esta llave da inicio a la expresión musical completa
173     \new GrandStaff <<
174       introduzca aquí la partitura completa de una ópera de Wagner
175     >>
176   @}   % esta llave da por terminada la expresión musical completa
177   \layout @{ @}
178 @}
179 @end example
180
181 Una ópera de Wagner completa puede ser fácilmente el doble de larga que este manual,
182 por tanto vamos a hacer sólo un cantante y un piano.
183 No necesitamos un @code{GrandStaff} para este conjunto, así que
184 lo retiramos.  Sin embargo, sí que @emph{necesitamos}
185 un cantante y un piano.
186
187 @example
188 \score @{
189   @{
190     <<
191       \new Staff = "cantante" <<
192       >>
193       \new PianoStaff = "piano" <<
194       >>
195     >>
196   @}
197   \layout @{ @}
198 @}
199 @end example
200
201 Recuerde que usamos @code{<<} y @code{>>} para presentar música
202 simultánea.  Y desde luego ¡queremos presentar las partes vocal y del
203 piano al mismo tiempo!
204
205 @example
206 \score @{
207   @{
208     <<
209       \new Staff = "cantante" <<
210         \new Voice = "vocal" @{ @}
211       >>
212       \new Lyrics \lyricsto vocal \new Lyrics @{ @}
213       \new PianoStaff = "piano" <<
214         \new Staff = "superior" @{ @}
215         \new Staff = "inferior" @{ @}
216       >>
217     >>
218   @}
219   \layout @{ @}
220 @}
221 @end example
222
223 Ahora tenemos muchos más detalles.  Tenemos la pauta del cantante:
224 contiene una @code{Voice} o voz (en LilyPond, este término
225 hace referencia a un conjunto de notas, no necesariamente notas
226 vocales -- por ejemplo, un violín generalmente toca una
227 voz --) y el texto de la canción.  También tenemos una pauta de piano:
228 contiene un pentagrama superior (mano derecha) y un pentagrama
229 inferior (mano izquierda).
230
231 En este momento podríamos comenzar a meter las notas.  Dentro de las
232 llaves que siguen a @code{\new Voice = vocal},
233 podríamos empezar escribiendo
234
235 @example
236 \relative c'' @{
237   a4 b c d
238 @}
239 @end example
240
241 Pero si lo hiciéramos, la sección @code{\score} se haría bastante
242 larga y sería más difícil comprender lo que ocurre.  En lugar de esto
243 utilizaremos identificadores
244 o variables.
245
246 @example
247 melodia = @{ @}
248 texto = @{ @}
249 superior = @{ @}
250 inferior = @{ @}
251 \score @{
252   @{
253     <<
254       \new Staff = "cantante" <<
255         \new Voice = "vocal" @{ \melodia @}
256       >>
257       \new Lyrics \lyricsto vocal \new Lyrics @{ \texto @}
258       \new PianoStaff = "piano" <<
259         \new Staff = "superior" @{ \superior @}
260         \new Staff = "inferior" @{ \inferior @}
261       >>
262     >>
263   @}
264   \layout @{ @}
265 @}
266 @end example
267
268 @noindent
269 Recuerde que puede usar casi cualquier nombre que se le antoje.  Las
270 limitaciones impuestas a los nombres de identificador se detallan en
271 @ruser{File structure}.
272
273 Cuando escriba una sección @code{\score} o cuando la esté
274 leyendo, hágalo despacio y con cuidado.  Comience por
275 la capa exterior y luego trabaje sobre cada una de las capas
276 interiores.  Esto también sirve para ser estricto con los márgenes
277 -- ¡asegúrese de que en su editor de texto cada elemento de la misma capa
278 comienza en la misma
279 posición horizontal! --.
280
281
282 @node Nesting music expressions
283 @subsection Nesting music expressions
284
285 UNTRANSLATED NODE: IGNORE ME
286
287
288 @node On the un-nestedness of brackets and ties
289 @subsection On the un-nestedness of brackets and ties
290
291 UNTRANSLATED NODE: IGNORE ME
292
293 @node Voices contain music
294 @section Voices contain music
295
296 UNTRANSLATED NODE: IGNORE ME
297
298 @menu
299 * I'm hearing Voices::          
300 * Explicitly instantiating voices::  
301 * Voices and vocals::           
302 @end menu 
303 @node I'm hearing Voices
304 @subsection I'm hearing Voices
305
306 UNTRANSLATED NODE: IGNORE ME
307
308 @node Explicitly instantiating voices
309 @subsection Explicitly instantiating voices
310
311 UNTRANSLATED NODE: IGNORE ME
312
313 @node Voices and vocals
314 @subsection Voices and vocals
315
316 UNTRANSLATED NODE: IGNORE ME
317
318 @node Contexts and engravers
319 @section Contexts and engravers
320
321 UNTRANSLATED NODE: IGNORE ME
322
323 @menu
324 * Contexts explained::          
325 * Creating contexts::           
326 * Engravers explained::         
327 * Modifying context properties::  
328 * Adding and removing engravers::  
329 @end menu 
330 @node Contexts explained
331 @subsection Contexts explained
332
333 Cuando se imprime la música, se tienen que añadir a la salida una gran cantidad de elementos
334 notacionales.  Por ejemplo, compare la entrada y la salida del siguiente ejemplo:
335
336 @lilypond[quote,verbatim,relative=2,fragment]
337 cis4 cis2. g4
338 @end lilypond
339
340 La entrada es bastante escueta, pero en la salida se añaden líneas divisorias, alteraciones accidentales,
341 la clave y la indicación de compás.  LilyPond @emph{interpreta} la
342 entrada.  En esta fase se inspecciona la información musical en orden temporal,
343 de forma parecida a la lectura de una partitura de izquierda a derecha. Mientras se lee
344 la entrada, el programa recuerda dónde se encuentran los límites de los compases, y qué notas
345 requieren alteraciones explícitas.  Esta información se puede presentar sobre varios
346 niveles.  Por ejemplo, el efecto de una alteración accidental se encuentra limitada
347 a un solo pentagrama, mientras que una barra divisoria debe estar sincronizada a través
348 de la partitura de arriba a abajo.
349
350 Dentro de LilyPond, estas reglas y pequeñas porciones de información se agrupan en
351 @emph{Contexts}.  Algunos ejemplos de contextos son @code{Voice} (Voz),
352 @code{Staff} (Pauta o pentagrama) y @code{Score} (Partitura).  Los contextos son jerárquicos, por
353 ejemplo: un @code{Staff} contener muchas @code{Voice}s, y una
354 @code{Score} puede contener muchos contextos de @code{Staff}.
355
356 @quotation
357 @sourceimage{context-example,5cm,,}
358 @end quotation
359
360 Cada contexto asume la responsabilidad de imponer algunas reglas de notación,
361 creando ciertos objetos de notación y manteniendo las propiedades
362 asociadas.  Por ejemplo, el contexto @code{Voice} puede introducir una alteración
363 accidental y entonces el contexto @code{Staff} mantiene la regla de mostrar o
364 suprimir la alteración para el resto del compás.  La
365 sincronización de las líneas divisorias se gestiona dentro del contexto de la partitura, @code{Score}.
366
367 Sin embargo, en algunas músicas posiblemente no queramos que las líneas divisorias estén
368 sincronizada (pensemos en una partitura polimétrica en compases de 4/4 y de 3/4).  En tales casos,
369 debemos modificar los ajustes por omisión de los contextos @code{Score}
370 y @code{Staff}.
371
372 Para partituras muy sencillas, los contextos se crean implícitamente y no debemos
373 preocuparnos por ellos.  Para piezas mayores, como por ejemplo cualquiera que tenga más de un pentagrama,
374 los contextos se deben crear explícitamente para asegurarnos
375 de que tendremos la cantidad exacta de pentagramas que necesitamos,
376 y que están en el orden correcto.  Para tipografiar piezas
377 con notación especializada, puede ser útil modificar contextos existentes
378 o definir unos nuevos.
379
380
381 En la referencia del programa se encuentra una descripción completa de todos los contextos que están disponibles,
382 consulte
383 @ifhtml
384 @internalsref{Contexts}.
385 @end ifhtml
386 @ifnothtml
387 Traducción @expansion{} Contexto.
388 @end ifnothtml
389
390 @c [TODO: describe propagation]
391
392 @node Creating contexts
393 @subsection Creating contexts
394
395 Para partituras que sólo tienen una voz y un pentagrama, los contextos se
396 crean automáticamente.  Para partituras más complejas, es necesario crearlos
397 a mano.  Existen tres instrucciones que hacen esto.
398
399 @itemize
400
401 @item
402 La instrucción más fácil es @code{\new}, y es también la más rápida de escribir.
403 Se antepone a una expresión musical, por ejemplo
404
405 @funindex \new
406 @cindex nuevos, contextos
407 @cindex Contexto, creación de
408
409 @example
410 \new @var{tipo} @var{expresión_musical}
411 @end example
412
413 @noindent
414 donde @var{tipo} es el nombre de un contexto (como @code{Staff} o
415 @code{Voice}).  Esta instrucción crea un contexto nuevo, y empieza a
416 interpretar la @var{expresión_musical} con él.
417
418 Una aplicación práctica de @code{\new} es una partitura con muchos pentagramas.
419 Cada parte que debe ir en su propio pentagrama, va precedida de
420 @code{\new Staff}.
421
422 @lilypond[quote,verbatim,relative=2,ragged-right,fragment]
423 <<
424   \new Staff { c4 c }
425   \new Staff { d4 d }
426 >>
427 @end lilypond
428
429 La instrucción @code{\new} puede también dar nombre al contexto,
430
431 @example
432 \new @var{tipo} = @var{identificador} @var{música}
433 @end example
434 Sin embargo, este nombre especificado por el usuario sólo se utiliza si no hay ya otro contexto
435 anterior con el mismo nombre.
436
437
438 @funindex \context
439
440 @item
441 Como @code{\new}, la instrucción @code{\context} también dirige una expresión musical
442 a un objeto de contexto, pero da al contexto un nombre explícito.  La sintaxis
443 es
444
445 @example
446 \context @var{tipo} = @var{identificador} @var{música}
447 @end example
448
449 En esta forma, la instrucción buscará un contexto existente del @var{tipo} especificado
450 que tenga el nombre @var{identificador}.  Si ese contexto aún no existe, se crea
451 un contexto nuevo con el nombre especificado.  Esto es útil si nos vamos a referir
452 más tarde al contexto.  Por ejemplo, cuando
453 se escribe la letra, la melodía está dentro de un contexto con nombre
454
455 @example
456 \context Voice = "@b{tenor}" @var{música}
457 @end example
458
459 @noindent
460 de forma que los textos se puedan alienar correctamente con sus notas,
461
462 @example
463 \new Lyrics \lyricsto "@b{tenor}" @var{letra}
464 @end example
465
466 @noindent
467
468 Otro uso posible de los contextos con nombre es la fusión de dos expresiones musicales
469 distintas en un solo contexto.  En el siguiente ejemplo,
470 se introducen por separado las articulaciones y las notas,
471
472 @example
473 musica = @{ c4 c4 @}
474 decoracion = @{ s4-. s4-> @}
475 @end example
476
477 se combinan enviando los dos al mismo contexto @code{Voice},
478
479 @example
480 <<
481   \new Staff \context Voice = "A" \musica
482   \context Voice = "A" \decoracion
483 >>
484 @end example
485 @lilypond[quote,ragged-right]
486 music = { c4 c4 }
487 arts = { s4-. s4-> }
488 \relative c'' <<
489   \new Staff \context Voice = "A" \music
490   \context Voice = "A" \arts
491 >>
492 @end lilypond
493
494 Con este mecanismo, es posible definir un Urtext (una edición
495 original), con la posibilidad de poner articulaciones distintas sobre las
496 mismas notas.
497
498 @cindex crear contextos
499
500 @item
501 La tercera instrucción para crear contextos es
502 @example
503 \context @var{tipo} @var{música}
504 @end example
505
506
507 @noindent
508 Esto es similar a @code{\context} con @code{= @var{identificador}}, pero se corresponde con
509 cualquier contexto del tipo @var{tipo}, sin importar qué nombre se le ha dado.
510
511 Esta variante se usa con expresiones musicales que se pueden interpretar en
512 varios niveles.  Por ejemplo, la instrucción @code{\applyOutput} (véase
513 @ref{Running a function on all layout objects}).  Sin una instrucción
514 @code{\context} explícita, normalmente se aplicaría a @code{Voice}
515
516 @example
517 \applyOutput #'@var{contexto} #@var{función}   % aplicar al contexto Voice
518 @end example
519
520 Para que se interprete dentro de los niveles de @code{Score} o @code{Staff}, utilice las siguientes
521 formas:
522
523 @example
524 \applyOutput #'Score #@var{función}
525 \applyOutput #'Staff #@var{función}
526 @end example
527
528 @end itemize
529
530 @node Engravers explained
531 @subsection Engravers explained
532
533 UNTRANSLATED NODE: IGNORE ME
534
535 @node Modifying context properties
536 @subsection Modifying context properties
537
538 @cindex properties
539 @funindex \set
540 @cindex changing properties
541
542 Cada contexto puede tener diferentes @emph{propiedades} o variables contenidas
543 en dicho contexto.  Se pueden cambiar mientras se desarrolla la fase de interpretación.
544 Esto se consigue insertando la instrucción @code{\set} en la música,
545
546 @example
547 \set @var{contexto}.@var{propiedad} = #@var{valor}
548 @end example
549
550 Por ejemplo,
551 @lilypond[quote,verbatim,relative=2,fragment]
552 R1*2
553 \set Score.skipBars = ##t
554 R1*2
555 @end lilypond
556
557 Esta instrucción hace que se salten los compases que no tienen ninguna nota.  El resultado es que
558 los silencios multicompás se comprimen.  El valor asignado es un objeto del lenguaje Scheme.  En
559 este caso, es @code{#t}, el valor booleano Verdadero.
560
561 Si el argumento @var{contexto} se deja en blanco, entonces se utiliza el contexto actual más bajo
562 (normalmente @code{ChordNames}, @code{Voice} o
563 @code{Lyrics}).  En este ejemplo,
564
565 @lilypond[quote,verbatim,relative=2,fragment]
566 c8 c c c
567 \set autoBeaming = ##f
568 c8 c c c
569 @end lilypond
570
571 @noindent
572 el argumento @var{contexto} para la instrucción @code{\set} está omitido, por tanto
573 el barrado automático está desactivado en la @internalsref{Voice} (voz) actual.  Fíjese en que
574 el contexto más bajo no siempre contiene la propiedad que quiere
575 cambiar. Por ejemplo, si intenta establecer la propiedad @code{skipBars}
576 (del contexto más bajo, en este caso @code{Voice}) no se producirá ningún
577 efecto.
578
579 @lilypond[quote,verbatim,relative=2,fragment]
580 R1*2
581 \set skipBars = ##t
582 R1*2
583 @end lilypond
584
585 Los contextos son jerárquicos, de forma que si se especificó un contexto mayor, por
586 ejemplo @code{Staff}, entonces el cambio también se aplicaría a todos los
587 @code{Voice}s o contextos de voz en el pentagrama actual.  El cambio se aplica
588 @q{al vuelo}, mientras transcurre la música, de manera que el ajuste sólo afecta al segundo
589 grupo de corcheas.
590
591 @funindex \unset
592
593 También existe una instrucción @code{\unset},
594 @example
595 \unset @var{contexto}.@var{propiedad}
596 @end example
597
598 @noindent
599 que quita la definición de la @var{propiedad}.  Esta instrucción quita
600 la definición solamente si está establecida dentro del @var{contexto} especificado, por lo que
601
602 @example
603 \set Staff.autoBeaming = ##f
604 @end example
605
606 @noindent
607 introduce un ajuste de propiedad en el nivel del contexto @code{Staff}.  El ajuste también se aplica
608 a la @code{Voice} actual.  Sin embargo,
609
610 @example
611 \unset Voice.autoBeaming
612 @end example
613
614 @noindent
615 no tiene ningún efecto.  Para cancelar este ajuste, el @code{\unset}
616 se debe especificar en el mismo nivel que el @code{\set} original.  En
617 otras palabras, deshacer el efecto de @code{Staff.autoBeaming = ##f}
618 requiere
619 @example
620 \unset Staff.autoBeaming
621 @end example
622
623 Igual que @code{\set}, el argumento @var{contexto} no tiene que especificarse para un contexto
624 que está en la parte más baja, por lo que las dos instrucciones
625
626 @example
627 \set Voice.autoBeaming = ##t
628 \set autoBeaming = ##t
629 @end example
630
631 @noindent
632 son equivalentes.
633
634
635 @cindex \once
636 Los ajustes que se quieren aplicar a un paso de tiempo único se pueden escribir
637 con @code{\once}, por ejemplo en
638
639 @lilypond[quote,verbatim,relative=2,fragment]
640 c4
641 \once \set fontSize = #4.7
642 c4
643 c4
644 @end lilypond
645
646 la propiedad @code{fontSize} pierde su valor automáticamente después de la segunda
647 nota.
648
649 En la referencia del programa hay una descripción detallada de todas las propiedades de contexto disponibles,
650 véase
651 @ifhtml
652 @internalsref{Tunable context properties}.
653 @end ifhtml
654 @ifnothtml
655 Traducción @expansion{} propiedades de contexto ajustables.
656 @end ifnothtml
657
658 @node Adding and removing engravers
659 @subsection Adding and removing engravers
660
661 UNTRANSLATED NODE: IGNORE ME
662
663 @subsubsection Changing a single context
664
665 @subsubsection Changing all contexts of the same type
666 @node Extending the templates
667 @section Extending the templates
668
669 Ha leído el tutorial y ahora sabe escribir música.  Pero ¿cómo puede poner
670 los pentagramas que quiere?  Las plantillas están muy bien, pero ¿qué ocurre
671 si quiere algo que no está en una de ellas?
672
673 Para empezar, tome la plantilla que le parezca más parecida a aquello que quiere
674 conseguir.  Digamos que quiere escribir algo para soprano y cello.
675 En este caso comenzaríamos con la plantilla @q{Notas y letra} (para la parte
676 de soprano).
677
678 @example
679 \version "2.11.38"
680 melodia = \relative c' @{
681   \clef treble
682   \key c \major
683   \time 4/4
684
685   a4 b c d
686 @}
687
688 texto = \lyricmode @{
689   Aaa Bee Cee Dee
690 @}
691
692 \score@{
693   <<
694     \new Voice = "uno" @{
695       \autoBeamOff
696       \melodia
697     @}
698     \new Lyrics \lyricsto "uno" \text
699   >>
700   \layout @{ @}
701   \midi @{ @}
702 @}
703 @end example
704
705 Ahora queremos añadir una parte de violoncello.  Veamos el ejemplo @q{Sólo notas}:
706
707 @example
708 \version "2.11.38"
709 melodia = \relative c' @{
710   \clef treble
711   \key c \major
712   \time 4/4
713
714   a4 b c d
715 @}
716
717 \score @{
718 \new Staff \melody
719 \layout @{ @}
720 \midi @{ @}
721 @}
722 @end example
723
724 No necesitamos dos comandos @code{\version}.  Vamos a necesitar la sección @code{melodia}.
725 No queremos dos secciones @code{\score} (si tuviésemos dos @code{\score}s, acabaríamos con las dos particellas por separado.
726 Queremos las dos juntas, como un dúo.
727 Dentro de la sección @code{\score}, no nos hacen falta dos 
728 @code{\layout} ni dos @code{\midi}.
729
730 Si nos limitásemos a copiar y pegar la sección @code{melodia}, acabaríamos con dos
731 secciones @code{melodia} separadas, así que vamos a cambiarles el nombre.  Llamaremos
732 @code{musicaSoprano} a la sección de la soprano y @code{musicaCello} a la sección del violoncello.
733 Al mismo tiempo cambiaremos el nombre de @code{texto}
734 a @code{letraSoprano}.  Recuerde cambiar el nombre a las dos apariciones de todos estos
735 nombres -- tanto la definición inicial (la
736 parte @code{melodia = relative c' @{ }) --
737 como el uso de ese nombre (en la sección @code{\score}).
738
739 También aprovecharemos para cambiar el pentagrama de la parte del cello (los violoncellos
740 se escriben normalmente en clave de Fa).  Asimismo, cambiaremos algunas
741 notas del cello.
742
743 @example
744 \version "2.11.38"
745 musicaSoprano = \relative c' @{
746   \clef treble
747   \key c \major
748   \time 4/4
749
750   a4 b c d
751 @}
752
753 letraSoprano = \lyricmode @{
754   Aaa Bee Cee Dee
755 @}
756
757 musicaCello = \relative c @{
758   \clef bass
759   \key c \major
760   \time 4/4
761
762   d4 g fis8 e d4
763 @}
764
765 \score@{
766   <<
767     \new Voice = "uno" @{
768       \autoBeamOff
769       \sopranoMusic
770     @}
771     \new Lyrics \lyricsto "uno" \letraSoprano
772   >>
773   \layout @{ @}
774   \midi @{ @}
775 @}
776 @end example
777
778 Esto tiene una pinta prometedora, pero la parte del cello no sale en la partitura
779 (no la hemos puesto en la sección @code{\score}).  Si queremos que la parte
780 del cello aparezca debajo de la de soprano, tenemos que añadir
781
782 @example
783 \new Staff \musicaCello
784 @end example
785
786 @noindent
787 justo debajo de todo lo de la soprano.  También tenemos que poner @code{<<} y
788 @code{>>} antes y después de la música -- lo que  indica a LilyPond que hay
789 más de una cosa (en este caso, @code{Staff}) sucediendo al mismo tiempo -- .  La
790 @code{\score} se parecerá ahora a esto
791
792 @example
793 \score@{
794   <<
795     <<
796       \new Voice = "uno" @{
797         \autoBeamOff
798         \sopranoMusic
799       @}
800       \new Lyrics \lyricsto "uno" \letraSoprano
801     >>
802     \new Staff \musicaCello
803   >>
804   \layout @{ @}
805   \midi @{ @}
806 @}
807 @end example
808
809 @noindent
810 Esto parece un poco enrevesado; los márgenes están descuadrados.  Esto tiene
811 fácil solución.  Presentamos aquí la plantilla completa para soprano y cello.
812
813 @lilypond[quote,verbatim,ragged-right]
814 \version "2.11.38"
815 sopranoMusic = \relative c' {
816   \clef treble
817   \key c \major
818   \time 4/4
819
820   a4 b c d
821 }
822
823 sopranoLyrics = \lyricmode {
824   Aaa Bee Cee Dee
825 }
826
827 celloMusic = \relative c {
828   \clef bass
829   \key c \major
830   \time 4/4
831
832   d4 g fis8 e d4
833 }
834
835 \score{
836   <<
837     <<
838       \new Voice = "one" {
839         \autoBeamOff
840         \sopranoMusic
841       }
842       \new Lyrics \lyricsto "one" \sopranoLyrics
843     >>
844     \new Staff \celloMusic
845   >>
846   \layout { }
847   \midi { }
848 }
849 @end lilypond
850
851 @menu
852 * Soprano and cello::           
853 * Four-part SATB vocal score::  
854 * Building a score from scratch::  
855 @end menu 
856 @node Soprano and cello
857 @subsection Soprano and cello
858
859 UNTRANSLATED NODE: IGNORE ME
860
861 @node Four-part SATB vocal score
862 @subsection Four-part SATB vocal score
863
864 UNTRANSLATED NODE: IGNORE ME
865
866 @node Building a score from scratch
867 @subsection Building a score from scratch
868
869 UNTRANSLATED NODE: IGNORE ME
870
871
872 -- SKELETON FILE --
873 When you actually translate this file, please remove these lines as
874 well as all `UNTRANSLATED NODE: IGNORE ME' lines.