]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/es/user/working.itely
Imported Upstream version 2.12.3
[lilypond.git] / Documentation / es / user / working.itely
index 0c8bef00a2fbbdadffae867036b6c8b971616492..fd2e3ecca2d4d21e62e88ef754304464461a3df9 100644 (file)
@@ -1,12 +1,14 @@
-@c -*- coding: utf-8; mode: texinfo; -*-
+@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
 @c This file is part of lilypond.tely
 @ignore
 @c This file is part of lilypond.tely
 @ignore
-    Translation of GIT committish: 0e1bfd7406edd13aaccccd6827657a64d298fadc
+    Translation of GIT committish: 3e63320d65c86c823949f70ab9791eab96c98352
 
     When revising a translation, copy the HEAD committish of the
     version that you are working on.  See TRANSLATION for details.
 @end ignore
 
 
     When revising a translation, copy the HEAD committish of the
     version that you are working on.  See TRANSLATION for details.
 @end ignore
 
+@c \version "2.12.0"
+
 @node Working on LilyPond projects
 @chapter Working on LilyPond projects
 
 @node Working on LilyPond projects
 @chapter Working on LilyPond projects
 
@@ -17,72 +19,77 @@ que lea este capítulo.
 
 
 @menu
 
 
 @menu
-* Suggestions for writing LilyPond files::  
-* Saving typing with identifiers and functions::  
-* Style sheets::                
-* Updating old files::          
-* Troubleshooting (taking it all apart)::  
-* Minimal examples::            
+* Suggestions for writing LilyPond files::
+* When things don't work::
+* Scores and parts::
 @end menu
 
 
 @node Suggestions for writing LilyPond files
 @section Suggestions for writing LilyPond files
 
 @end menu
 
 
 @node Suggestions for writing LilyPond files
 @section Suggestions for writing LilyPond files
 
-En este momento está preparado para comenzar a escribir archivos de LilyPond más grandes -- no sólo los
-pequeños ejemplos que aparecen en el tutorial, sino piezas completas --. Pero ¿cómo debe proceder
-para hacerlo?
+En este momento está preparado para comenzar a escribir archivos de
+LilyPond más grandes -- no sólo los pequeños ejemplos que aparecen en
+el tutorial, sino piezas completas --. Pero ¿cómo debe proceder para
+hacerlo?
 
 
-En la medida en que LilyPond entienda sus archivos y produzca la salida que usted
-pretendía, realmente no importa mucho qué aspecto tengan sus archivos.  Sin embargo
-existen algunas otras cosas a tener en cuenta cuando se escriben archivos de LilyPond.
+En la medida en que LilyPond entienda sus archivos y produzca la
+salida que usted pretendía, realmente no importa mucho qué aspecto
+tengan sus archivos.  Sin embargo existen algunas otras cosas a tener
+en cuenta cuando se escriben archivos de LilyPond.
 
 
-@itemize @bullet
+@itemize
 @item ¿Qué ocurre si comete un fallo?  La estructura de un archivo
 @item ¿Qué ocurre si comete un fallo?  La estructura de un archivo
-lilypond puede hacer que ciertos errores se hagan más fáciles (o más difíciles) de encontrar.
+de LilyPond puede hacer que ciertos errores se hagan más fáciles (o
+más difíciles) de encontrar.
 
 @item ¿Qué ocurre si quiere compartir sus archivos con otras personas?
 
 @item ¿Qué ocurre si quiere compartir sus archivos con otras personas?
-De hecho, ¿y si quiere alterar sus propios archivos después de algunos años?
-Algunos archivos de lilypond se comprenden a primera vista;
-otros pueden tenerle rascándose la cabeza
-durante una hora.
-
-@item ¿Qué ocurre si quiere actualizar su archivo de lilypond para poderlo usar con
-una versión más reciente del programa?  La sintaxis de la entrada se modifica
-de forma ocasional según lilypond se va perfeccionando.  Casi todos los cambios se pueden
-hacer de forma automática con @code{convert-ly}, pero algunos podrían necesitar de una
-ayuda manual.  Los archivos de LilyPond se pueden estructurar para que sean
-más fáciles (o más difíciles) de actualizar.
+De hecho, ¿y si quiere alterar sus propios archivos después de algunos
+años?  Algunos archivos de LilyPond se comprenden a primera vista;
+otros pueden tenerle rascándose la cabeza durante una hora.
+
+@item ¿Qué ocurre si quiere actualizar su archivo de LilyPond para poderlo usar con
+una versión más reciente del programa?  La sintaxis de la entrada se
+modifica de forma ocasional según LilyPond se va perfeccionando.  Casi
+todos los cambios se pueden hacer de forma automática con
+@code{convert-ly}, pero algunos podrían necesitar de una ayuda manual.
+Los archivos de LilyPond se pueden estructurar para que sean más
+fáciles (o más difíciles) de actualizar.
+
 @end itemize
 
 @menu
 @end itemize
 
 @menu
-* General suggestions::         
-* Typesetting existing music::  
-* Large projects::              
+* General suggestions::
+* Typesetting existing music::
+* Large projects::
+* Saving typing with variables and functions::
+* Style sheets::
 @end menu
 
 
 @node General suggestions
 @subsection General suggestions
 
 @end menu
 
 
 @node General suggestions
 @subsection General suggestions
 
-Presentamos algunas sugerencias que pueden serle de ayuda para evitar
+Presentamos algunas sugerencias que le pueden servir de ayuda para evitar
 o corregir problemas:
 
 o corregir problemas:
 
-@itemize @bullet
-@item @strong{Incluya los números de @code{\version} en todos los archivos}.  Dése cuenta de que todas las
-plantillas contienen una cadena como @code{\version "2.11.23"}.  Le recomendamos
-mucho que siempre incluya la @code{\version}, sin importar cuán
-pequeño pueda ser su archivo.  Desde la experiencia personal podemos decirle que es bastante frustrante
-intentar recordar el número de versión de LilyPond que estaba usando hace unos años.
-@code{convert-ly} requiere que declare
-qué versión de LilyPond utilizó.
-
-@item @strong{Incluya comprobaciones}: @ref{Bar check}, @ref{Octave check} y
-@ref{Barnumber check}.  Si
-incluye comprobaciones de vez en cuando, en caso de que cometa un error podrá localizarlo mucho más rápidamente.
-¿Con qué frecuencia es @q{de vez en cuando}?  Depende de la complejidad
-de la música.  Para una música muy sencilla, quizá tan sólo una o dos veces.  Para
-una música muy compleja, quizá a cada compás.
+@itemize
+@item @strong{Incluya los números de @code{\version} en todos los archivos}.  Dese cuenta de que todas las
+plantillas contienen información sobre la @code{\version}.  Le
+recomendamos mucho que siempre incluya la @code{\version}, sin
+importar cuán pequeño pueda ser su archivo.  Desde la experiencia
+personal podemos decirle que es bastante frustrante intentar recordar
+el número de versión de LilyPond que estaba usando hace unos años.
+@code{convert-ly} requiere que declare qué versión de LilyPond
+utilizó.
+
+@item @strong{Incluya comprobaciones}: @ruser{Bar and bar number checks},
+@ruser{Octave checks}.  Si incluye comprobaciones de vez en cuando, en
+caso de que cometa un error podrá localizarlo mucho más rápidamente.
+¿Con qué frecuencia es @q{de vez en cuando}?  Depende de la
+complejidad de la música.  Para una música muy sencilla, quizá tan
+sólo una o dos veces.  Para una música muy compleja, quizá a cada
+compás.
 
 @item @strong{Un compás por cada línea de texto}.  Si hay algo muy complicado, ya sea
 en la propia música
 
 @item @strong{Un compás por cada línea de texto}.  Si hay algo muy complicado, ya sea
 en la propia música
@@ -110,7 +117,7 @@ e identificadores.  Si especifica @code{c4 d e} al principio de una frase
 si reelabora la música más tarde.
 
 @item @strong{Separe los trucos} de las definiciones musicales.  Consulte
 si reelabora la música más tarde.
 
 @item @strong{Separe los trucos} de las definiciones musicales.  Consulte
-@ref{Saving typing with identifiers and functions} y
+@ref{Saving typing with variables and functions} y
 @ref{Style sheets}.
 
 @end itemize
 @ref{Style sheets}.
 
 @end itemize
@@ -122,13 +129,13 @@ si reelabora la música más tarde.
 Si está introduciendo música a partir de una partitura existente (es decir, tipografiando una hoja
 de música ya impresa),
 
 Si está introduciendo música a partir de una partitura existente (es decir, tipografiando una hoja
 de música ya impresa),
 
-@itemize @bullet
+@itemize
 
 @item Introduzca un sistema del manuscrito (la copia física) cada vez (pero mantenga
 
 @item Introduzca un sistema del manuscrito (la copia física) cada vez (pero mantenga
-la práctica de escibir un compás por línea de texto), y
-compruebe cada sistema cuando lo haya terminado.  Puede usar el comando
-@code{showLastLength} para acelerar el proceso -- ver
-@ref{Skipping corrected music} -- .
+la práctica de escribir un compás por línea de texto), y compruebe
+cada sistema cuando lo haya terminado.  Puede usar las instrucciones
+@code{showLastLength} o @code{showFirstLength} para acelerar el
+proceso -- ver @ruser{Skipping corrected music} -- .
 
 @item Defina @code{mBreak = @{ \break @}} e inserte @code{\mBreak}
 dentro del archivo de entrada donde el manuscrito tenga un saldo de línea.  De esta forma
 
 @item Defina @code{mBreak = @{ \break @}} e inserte @code{\mBreak}
 dentro del archivo de entrada donde el manuscrito tenga un saldo de línea.  De esta forma
@@ -138,6 +145,27 @@ definir @code{mBreak = @{ @}} para quitar todos esos saltos de línea.  Así
 permitirá a LilyPond colocar los saltos donde éste lo estime
 más oportuno.
 
 permitirá a LilyPond colocar los saltos donde éste lo estime
 más oportuno.
 
+@item Al escribir una parte para un instrumento transpositor dentro de una
+variable, se recomienda que las notas estén envueltas dentro de
+
+@example
+\transpose c altura-natural @{...@}
+@end example
+(donde @code{altura-natural} es la afinación natural del instrumento)
+de forma que la música dentro de la variable esté realmente en Do
+mayor.  Después podemos volver a transportarlas en sentido inverso
+cuando se utiliza la variable, si es necesario, pero quizá no queramos
+hacerlo (p.ej., al imprimir una partitura en afinación de concierto,
+al convertir una parte de trombón de clave de Sol a clave de Fa,
+etc.).  Es menos probable cometer errores en los transportes si toda
+la música que está dentro de las variables se encuentra en un tono
+coherente.
+
+Asimismo, haga los transportes exclusivamente hacia o desde Do mayor.
+Esto significa que aparte de ésta, las únicas tonalidades que usaremos
+serán los tonos de afinación de los instrumentos transpositores: bes
+para una trompeta en Si bemol, aes para un clarinete en La bemol, etc.
+
 @end itemize
 
 
 @end itemize
 
 
@@ -145,9 +173,9 @@ más oportuno.
 @subsection Large projects
 
 Al trabajar en proyecto grande se hace esencial tener una estructura clara
 @subsection Large projects
 
 Al trabajar en proyecto grande se hace esencial tener una estructura clara
-en los archivos de lilypond.
+en los archivos de LilyPond
 
 
-@itemize @bullet
+@itemize
 
 @item @strong{Utilice un identificador para cada voz}, con un mínimo de
 estructura dentro de la definición.  La estructura de la sección
 
 @item @strong{Utilice un identificador para cada voz}, con un mínimo de
 estructura dentro de la definición.  La estructura de la sección
@@ -169,26 +197,25 @@ g4 c'8. e16
 @}
 @end example
 
 @}
 @end example
 
-@item @strong{Separe los trucos de las definiciones musicales}.  Ya se mencionó
-en @ref{General suggestions}, pero para proyectos
-grandes es vital.  Quizá tengamos que cambiar la
-definición de @code{fthenp}, pero en ese caso sólo lo tendremos que
-hacer una vez, y aún podremos evitar tocar nada
-dentro de @code{violin}.
+@item @strong{Separe los trucos de las definiciones musicales}.
+Ya se mencionó con anterioridad, pero para proyectos grandes es vital.
+Quizá tengamos que cambiar la definición de @code{fluegop}, pero en ese
+caso sólo lo tendremos que hacer una vez, y aún podremos evitar tocar
+nada dentro de @code{violin}.
 
 @example
 
 @example
-fthenp = _\markup@{
+fluegop = _\markup@{
   \dynamic f \italic \small @{ 2nd @} \hspace #0.1 \dynamic p @}
 violin = \relative c'' @{
   \dynamic f \italic \small @{ 2nd @} \hspace #0.1 \dynamic p @}
 violin = \relative c'' @{
-g4\fthenp c'8. e16
+g4\fluegop c'8. e16
 @}
 @end example
 
 @end itemize
 
 
 @}
 @end example
 
 @end itemize
 
 
-@node Saving typing with identifiers and functions
-@section Saving typing with identifiers and functions
+@node Saving typing with variables and functions
+@subsection Saving typing with variables and functions
 
 @cindex variables
 @cindex identificadores
 
 @cindex variables
 @cindex identificadores
@@ -207,9 +234,9 @@ hornNotes = \relative c'' { c4 b dis c }
 Incluso se dará cuenta de que esto puede ser útil en música minimalista:
 
 @lilypond[quote,verbatim,ragged-right]
 Incluso se dará cuenta de que esto puede ser útil en música minimalista:
 
 @lilypond[quote,verbatim,ragged-right]
-fragA = \relative c'' { a4 a8. b16 }
-fragB = \relative c'' { a8. gis16 ees4 }
-violin = \new Staff { \fragA \fragA \fragB \fragA }
+fragmentA = \relative c'' { a4 a8. b16 }
+fragmentB = \relative c'' { a8. gis16 ees4 }
+violin = \new Staff { \fragmentA \fragmentA \fragmentB \fragmentA }
 \score {
   {
     \violin
 \score {
   {
     \violin
@@ -218,7 +245,7 @@ violin = \new Staff { \fragA \fragA \fragB \fragA }
 @end lilypond
 
 Sin embargo también puede usar estos identificadores (que también se conocen como
 @end lilypond
 
 Sin embargo también puede usar estos identificadores (que también se conocen como
-variables, macros o comandos definidos por el usuario) para hacer trucos:
+variables, macros o instrucciones definidas por el usuario) para hacer trucos:
 
 @lilypond[quote,verbatim,ragged-right]
 dolce = \markup{ \italic \bold dolce }
 
 @lilypond[quote,verbatim,ragged-right]
 dolce = \markup{ \italic \bold dolce }
@@ -259,7 +286,10 @@ violin = \relative c'' @{
 @}
 @end example
 
 @}
 @end example
 
-Hasta ahora hemos contemplado la sustitucion estática: cuando LilyPond
+@c TODO Replace the following with a better example  -td
+@c Skylining handles this correctly without padText
+
+Hasta ahora hemos contemplado la sustitución estática: cuando LilyPond
 se encuentra con @code{\padText}, lo sustituye con aquello que
 hemos definido que sea (es decir, todo lo que está a la derecha de
 @code{padtext=}).
 se encuentra con @code{\padText}, lo sustituye con aquello que
 hemos definido que sea (es decir, todo lo que está a la derecha de
 @code{padtext=}).
@@ -284,7 +314,7 @@ padText =
 @end lilypond
 
 La utilización de identificadores también es una buena forma de reducir el trabajo si
 @end lilypond
 
 La utilización de identificadores también es una buena forma de reducir el trabajo si
-la sintaxis de entrada de LilyPond cambia (ver @ref{Updating old files}).  Si
+la sintaxis de entrada de LilyPond cambia (véase @ref{Updating old files}).  Si
 tiene una sola definición (como p.ej. @code{\dolce}) para todos sus
 archivos (ver @ref{Style sheets}), y después la sintaxis se modifica, sólo tendrá
 que actualizar su definición @code{\dolce} única,
 tiene una sola definición (como p.ej. @code{\dolce}) para todos sus
 archivos (ver @ref{Style sheets}), y después la sintaxis se modifica, sólo tendrá
 que actualizar su definición @code{\dolce} única,
@@ -292,11 +322,11 @@ en lugar de tener que hacer cambios en cada uno de los archivos @code{.ly}.
 
 
 @node Style sheets
 
 
 @node Style sheets
-@section Style sheets
+@subsection Style sheets
 
 La salida que produce LilyPond se puede modificar profundamente; consulte
 @ref{Tweaking output} para leer detalles sobre este asunto.  Pero ¿qué ocurre si tiene muchos
 
 La salida que produce LilyPond se puede modificar profundamente; consulte
 @ref{Tweaking output} para leer detalles sobre este asunto.  Pero ¿qué ocurre si tiene muchos
-archivos a los que les quiere aplicar sus porpios trucos?  O ¿qué ocurre si, sencillamente,
+archivos a los que les quiere aplicar sus propios trucos?  O ¿qué ocurre si, sencillamente,
 quiere separar los trucos de la propia música?  Todo esto
 es bastante fácil de conseguir.
 
 quiere separar los trucos de la propia música?  Todo esto
 es bastante fácil de conseguir.
 
@@ -327,7 +357,7 @@ las técnicas descritas en @ref{Moving objects}.  Pero también haremos algo res
 las definiciones @code{mpdolce} y @code{tempoMark}.  Éstas producen la salida que
 deseamos, pero quizá las querríamos utilizar en otra pieza.
 Podríamos simplemente copiarlas y pegarlas al principio de cada archivo,
 las definiciones @code{mpdolce} y @code{tempoMark}.  Éstas producen la salida que
 deseamos, pero quizá las querríamos utilizar en otra pieza.
 Podríamos simplemente copiarlas y pegarlas al principio de cada archivo,
-pero sería bastente molesto.  También hace que se queden las definiciones
+pero sería bastante molesto.  También hace que se queden las definiciones
 a la vista dentro de nuestros archivos de música, y yo personalmente encuentro
 todos los @code{#()} bastante poco estéticos.  Los vamos a esconder dentro de otro archivo:
 
 a la vista dentro de nuestros archivos de música, y yo personalmente encuentro
 todos los @code{#()} bastante poco estéticos.  Los vamos a esconder dentro de otro archivo:
 
@@ -447,7 +477,7 @@ tempoMark = #(define-music-function (parser location markp) (string?)
 }
 @end lilypond
 
 }
 @end lilypond
 
-¡Eso tiene un aspecto mucho mejor!  Ahora suponga que quier publicar esta
+¡Eso tiene un aspecto mucho mejor!  Ahora suponga que quiere publicar esta
 pieza.  A mi profesor de composición no le gustan las indicaciones de compás @q{C},
 pero yo les tengo cierto cariño.  Copiaremos el archivo
 actual @file{definiciones.ly} a @file{publicar-web.ly} y modificaremos
 pieza.  A mi profesor de composición no le gustan las indicaciones de compás @q{C},
 pero yo les tengo cierto cariño.  Copiaremos el archivo
 actual @file{definiciones.ly} a @file{publicar-web.ly} y modificaremos
@@ -537,7 +567,7 @@ Yo utilizo media docena de archivos de
 
 @example
 %%%   global.ly
 
 @example
 %%%   global.ly
-\version "2.11.23"
+\version @w{"@version{}"}
 #(ly:set-option 'point-and-click #f)
 \include "../iniciar/iniciar-definiciones.ly"
 \include "../iniciar/iniciar-disposicion.ly"
 #(ly:set-option 'point-and-click #f)
 \include "../iniciar/iniciar-definiciones.ly"
 \include "../iniciar/iniciar-disposicion.ly"
@@ -546,8 +576,17 @@ Yo utilizo media docena de archivos de
 @end example
 
 
 @end example
 
 
+@node When things don't work
+@section When things don't work
+
+@menu
+* Updating old files::
+* Troubleshooting (taking it all apart)::
+* Minimal examples::
+@end menu
+
 @node Updating old files
 @node Updating old files
-@section Updating old files
+@subsection Updating old files
 
 La sintaxis de la entrada de LilyPond cambia de manera ocasional.  A medida que el propio
 LilyPond mejora, la sintaxis (el lenguaje de la entrada) se modifica en consonancia.  A
 
 La sintaxis de la entrada de LilyPond cambia de manera ocasional.  A medida que el propio
 LilyPond mejora, la sintaxis (el lenguaje de la entrada) se modifica en consonancia.  A
@@ -566,8 +605,8 @@ se relacionan en @rprogram{Updating files with convert-ly}.
 
 Por ejemplo, en la versión 2.4 y anteriores de LilyPond,
 los acentos y las letras no inglesas se introducían utilizando
 
 Por ejemplo, en la versión 2.4 y anteriores de LilyPond,
 los acentos y las letras no inglesas se introducían utilizando
-LaTeX: por ejemplo, @samp{No\"el} (que significa @q{Navidad} en francés).
-En LilyPond 2.6 y siguientes, el carácter especial @samp{ë}
+LaTeX: por ejemplo, @code{No\"el} (que significa @q{Navidad} en francés).
+En LilyPond 2.6 y siguientes, el carácter especial @code{ë}
 debe introducirse directamente en el archivo de LilyPond como un carácter UTF-8.
 @code{convert-ly} no puede cambiar todos los caracteres especiales
 de LaTeX a caracteres de UTF-8; tendrá que actualizar manualmente
 debe introducirse directamente en el archivo de LilyPond como un carácter UTF-8.
 @code{convert-ly} no puede cambiar todos los caracteres especiales
 de LaTeX a caracteres de UTF-8; tendrá que actualizar manualmente
@@ -575,7 +614,7 @@ sus archivos de LilyPond antiguos.
 
 
 @node Troubleshooting (taking it all apart)
 
 
 @node Troubleshooting (taking it all apart)
-@section Troubleshooting (taking it all apart)
+@subsection Troubleshooting (taking it all apart)
 
 Antes o después escribirá un archivo que LilyPond no podrá compilar.
 Los mensajes que LilyPond proporciona pueden ayudarle a encontrar el
 
 Antes o después escribirá un archivo que LilyPond no podrá compilar.
 Los mensajes que LilyPond proporciona pueden ayudarle a encontrar el
@@ -585,7 +624,7 @@ investigación para determinar el origen del problema.
 Las herramientas más poderosas para este cometido son el
 comentario de una sola línea (indicado por @code{%}) y el comentario de bloque
 (indicado por @code{%@{ ... %@}}).  Si no sabe dónde está
 Las herramientas más poderosas para este cometido son el
 comentario de una sola línea (indicado por @code{%}) y el comentario de bloque
 (indicado por @code{%@{ ... %@}}).  Si no sabe dónde está
-el problema, comience coviertiendo grandes secciones del
+el problema, comience convirtiendo grandes secciones del
 archivo de entrada en un comentario.  Después de eliminar una
 sección convirtiéndola en un comentario, pruebe a compilar el
 archivo otra vez.  Si funciona, entonces el problema debía estar
 archivo de entrada en un comentario.  Después de eliminar una
 sección convirtiéndola en un comentario, pruebe a compilar el
 archivo otra vez.  Si funciona, entonces el problema debía estar
@@ -598,7 +637,7 @@ En un caso extremo podría terminar con sólo
 \score @{
   <<
     % \melodia
 \score @{
   <<
     % \melodia
-    % \harmonia
+    % \armonia
     % \bajo
   >>
   \layout@{@}
     % \bajo
   >>
   \layout@{@}
@@ -630,7 +669,7 @@ Otra técnica de depuración muy útil es la construcción de
 
 
 @node Minimal examples
 
 
 @node Minimal examples
-@section Minimal examples
+@subsection Minimal examples
 
 Un ejemplo mínimo es un ejemplo tan pequeño como sea posible.  Estos
 ejemplos son mucho más fáciles de comprender que los ejemplos largos.  Los ejemplos
 
 Un ejemplo mínimo es un ejemplo tan pequeño como sea posible.  Estos
 ejemplos son mucho más fáciles de comprender que los ejemplos largos.  Los ejemplos
@@ -663,8 +702,128 @@ En resumen, el objetivo de un ejemplo mínimo es que sea fácil de leer:
 @itemize
 @item Evite usar notas, tonalidades o compases demasiado complicados, a no ser que quiera
 demostrar algo sobre el comportamiento de estos elementos precisamente.
 @itemize
 @item Evite usar notas, tonalidades o compases demasiado complicados, a no ser que quiera
 demostrar algo sobre el comportamiento de estos elementos precisamente.
-@item No use comandos @code{\override} a no ser que ése sea el propósito
+@item No use instrucciones @code{\override} a no ser que ése sea el propósito
 del ejemplo.
 @end itemize
 
 
 del ejemplo.
 @end itemize
 
 
+@node Scores and parts
+@section Scores and parts
+
+En música orquestal, todas las notas se imprimen dos veces.  Una vez
+en las particellas para los músicos, y otra para la partitura del director.
+Los identificadores se pueden usar para evitar la duplicación del trabajo.
+La música se escribe una vez y se almacena en una variable.
+El contenido de dicha variable se usa después para generar tanto la particella como la partitura del director.
+
+Es muy conveniente definir las notas en un archivo especial.  Por
+ejemplo, supongamos que el archivo @file{trompa.ly} contiene la
+siguiente parte de un dúo para trompa y fagot:
+
+@example
+notasTrompa = \relative c @{
+  \time 2/4
+  r4 f8 a cis4 f e d
+@}
+@end example
+
+@noindent
+Luego se hace una particella escribiendo en un archivo lo siguiente
+
+@example
+\include "trompa.ly"
+\header @{
+  instrument = "Trompa en Fa"
+@}
+
+@{
+ \transpose f c' \notasTrompa
+@}
+@end example
+
+La línea
+
+@example
+\include "trompa.ly"
+@end example
+
+@noindent
+sustituye el contenido de @file{trompa.ly} en esta posición dentro del
+archivo, así que @code{notasTrompa} se define con posterioridad.  La
+instrucción @code{\transpose f@tie{}c'} indica que el argumento
+constituido por @code{\notasTrompa} se debe transponer una quinta
+hacia arriba.  Lo que suena como @code{f} se escribe como @code{c'},
+lo que corresponde con el tono de afinación de una trompa normal
+en@tie{}Fa.  La transposición se puede ver en la siguiente salida
+
+@lilypond[quote,ragged-right]
+\transpose f c' \relative c {
+  \time 2/4
+  r4 f8 a cis4 f e d
+}
+@end lilypond
+
+En piezas para conjunto, con frecuencia una de las voces no suena durante muchos compases.
+Esto queda denotado por un silencio especial, el silencio multicompás.
+Se introduce con una @code{R} mayúscula seguida de una duración
+(@code{1}@tie{}en el caso de la redonda, @code{2}@tie{}en el caso de una blanca,
+etc.).  Multiplicando la duración se pueden construir
+silencios más largos.  Por ejemplo, este silencio ocupa
+3@tie{}compases de 2/4
+
+@example
+R2*3
+@end example
+
+Cuando se imprime la particella tienen que comprimirse los silencios
+multicompás.  Esto se hace estableciendo una variable en tiempo de ejecución
+
+@example
+\set Score.skipBars = ##t
+@end example
+
+@noindent
+Esta instrucción establece el valor de la propiedad @code{skipBars} en el
+contexto de @code{Score} a verdadero (@code{##t}).  Anteponiendo el silencio y
+esta opción a la música anterior, llegamos al siguiente resultado
+
+@lilypond[quote,ragged-right]
+\transpose f c' \relative c {
+  \time 2/4
+  \set Score.skipBars = ##t
+  R2*3
+  r4 f8 a cis4 f e d
+}
+@end lilypond
+
+
+Esta partitura se hace combinando toda la música junta.  Suponiendo
+que la otra voz se encuentra dentro de @code{notasFagot} en el archivo
+@file{fagot.ly}, la partitura se hace con
+
+@example
+\include "fagot.ly"
+\include "trompa.ly"
+
+<<
+  \new Staff \notasTrompa
+  \new Staff \notasFagot
+>>
+@end example
+
+@noindent
+lo que nos lleva a
+
+@lilypond[quote,ragged-right]
+\relative c <<
+  \new Staff {
+    \time 2/4 R2*3
+    r4 f8 a cis4 f e d
+  }
+  \new Staff {
+    \clef bass
+    r4 d,8 f | gis4 c | b bes |
+    a8 e f4 | g d | gis f
+  }
+>>
+@end lilypond