]> 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
-    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
 
+@c \version "2.12.0"
+
 @node Working on LilyPond projects
 @chapter Working on LilyPond projects
 
@@ -17,72 +19,77 @@ que lea este capítulo.
 
 
 @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
 
-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
-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?
-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
-* 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
 
-Presentamos algunas sugerencias que pueden serle de ayuda para evitar
+Presentamos algunas sugerencias que le pueden servir de ayuda para evitar
 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
@@ -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
-@ref{Saving typing with identifiers and functions} y
+@ref{Saving typing with variables and functions} y
 @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),
 
-@itemize @bullet
+@itemize
 
 @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
@@ -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.
 
+@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
 
 
@@ -145,9 +173,9 @@ más oportuno.
 @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
@@ -169,26 +197,25 @@ g4 c'8. e16
 @}
 @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
-fthenp = _\markup@{
+fluegop = _\markup@{
   \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
 
 
-@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
@@ -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]
-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
@@ -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
-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 }
@@ -259,7 +286,10 @@ violin = \relative c'' @{
 @}
 @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=}).
@@ -284,7 +314,7 @@ padText =
 @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,
@@ -292,11 +322,11 @@ en lugar de tener que hacer cambios en cada uno de los archivos @code{.ly}.
 
 
 @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
-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.
 
@@ -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,
-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:
 
@@ -447,7 +477,7 @@ tempoMark = #(define-music-function (parser location markp) (string?)
 }
 @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
@@ -537,7 +567,7 @@ Yo utilizo media docena de archivos de
 
 @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"
@@ -546,8 +576,17 @@ Yo utilizo media docena de archivos de
 @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
-@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
@@ -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
-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
@@ -575,7 +614,7 @@ sus archivos de LilyPond antiguos.
 
 
 @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
@@ -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á
-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
@@ -598,7 +637,7 @@ En un caso extremo podría terminar con sólo
 \score @{
   <<
     % \melodia
-    % \harmonia
+    % \armonia
     % \bajo
   >>
   \layout@{@}
@@ -630,7 +669,7 @@ Otra técnica de depuración muy útil es la construcción de
 
 
 @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
@@ -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.
-@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
 
 
+@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