]> git.donarmstrong.com Git - lilypond.git/commitdiff
Doc-es: some updates to Usage.
authorFrancisco Vila <francisco.vila@hispalinux.es>
Fri, 12 Feb 2010 16:49:26 +0000 (17:49 +0100)
committerFrancisco Vila <francisco.vila@hispalinux.es>
Fri, 12 Feb 2010 16:49:26 +0000 (17:49 +0100)
Documentation/es/usage/external.itely [new file with mode: 0644]
Documentation/es/usage/suggestions.itely [new file with mode: 0644]
Documentation/es/usage/updating.itely [new file with mode: 0644]

diff --git a/Documentation/es/usage/external.itely b/Documentation/es/usage/external.itely
new file mode 100644 (file)
index 0000000..2496023
--- /dev/null
@@ -0,0 +1,645 @@
+@c -*- coding: utf-8; mode: texinfo; -*-
+
+@ignore
+    Translation of GIT committish: FILL-IN-HEAD-COMMITTISH
+
+    When revising a translation, copy the HEAD committish of the
+    version that you are working on.  For details, see the Contributors'
+    Guide, node Updating translation committishes..
+@end ignore
+
+@c \version "2.12.0"
+
+@node Programas externos
+@chapter Programas externos
+@translationof External programs
+
+@c FIXME: blah blah
+
+@menu
+* Apuntar y pulsar::
+* Apoyo respecto de los editores de texto::
+* Conversión desde otros formatos::
+* Salida de LilyPond dentreo de otros programas::
+* Archivos include independientes::
+@end menu
+
+
+@node Apuntar y pulsar
+@section Apuntar y pulsar
+@translationof Point and click
+@cindex apuntar y pulsar
+
+
+«Point and click» (apuntar y pulsar con el ratón) le da la posibilidad
+de localizar notas del código de entrada pulsando sobre ellas dentro
+del visor de PDF.  Ello facilita encontrar los fragmentos de la
+entrada que producen algún tipo de error en la partitura.
+
+Cuando esta funcionalidad está activada, LilyPond añade hiper-enlaces
+al archivo PDF. Estos hiper-enlaces se envían al navegador de web, que
+a su vez abre un editor de texto con el cursor situado en el lugar
+correcto.
+
+Para conseguir que esta cadena funcione, tendrá que configurar el
+visor de PDF de forma que siga los hiper-enlaces usando el guión
+@file{lilypond-invoke-editor} proporcionado con LilyPond.
+
+Para Xpdf sobre Unix, lo siguiente debe estar presente en
+@file{xpdfrc}@footnote{En Unix, este archivo se encuentra o bien en
+@file{/etc/xpdfrc} o como @file{.xpdfrc} en su directorio personal.}
+
+@example
+urlCommand     "lilypond-invoke-editor %s"
+@end example
+
+El programa @file{lilypond-invoke-editor} es un pequeño programa de
+apoyo. Invoca un editor para las URIs especiales de @code{textedit}, y
+lanza un navegador de web para el resto.  Comprueba la variable de
+entorno @code{EDITOR} en busca de los siguientes patrones,
+
+@table @code
+@item emacs
+  esto invoca a
+@example
+emacsclient --no-wait +@var{línea}:@var{columna} @var{archivo}
+@end example
+@item vim
+  esto invoca a
+@example
+gvim --remote +:@var{línea}:norm@var{carácter} @var{archivo}
+@end example
+
+@item nedit
+esto invoca a
+@example
+  nc -noask +@var{línea} @var{archivo}'
+@end example
+@end table
+
+La variable de entorno @code{LYEDITOR} se utiliza para sobreescribir
+esto. Contiene la instrucción de línea de órdenes para abrir el
+editor, donde @code{%(archivo)s}, @code{%(columna)s} y
+@code{%(línea)s} se sustituyen por el archivo, columna y línea
+respectivamente. El ajuste
+
+@example
+emacsclient --no-wait +%(línea)s:%(columna)s %(archivo)s
+@end example
+
+@noindent
+para @code{LYEDITOR} equivale a la invocación estándar de
+emacsclient.
+
+
+@cindex archivo de salida, tamaño del
+
+Los enlaces de apuntar y pulsar aumentan significativamente el tamaño
+de los archivos de salida.  Para reducir el tamaño de los archivos PDF
+y PS, la posibilidad de apuntar y pulsar se puede desactivar
+escribiendo
+
+@example
+\pointAndClickOff
+@end example
+
+@noindent
+dentro de un archivo @file{.ly}.  Se puede activar explícitamente la
+posibilidad de apuntar y pulsar con
+
+@example
+\pointAndClickOn
+@end example
+
+De forma alternativa, puede desactivar la posibilidad de apuntar y
+pulsar con una opción de la línea de órdenes:
+
+@example
+lilypond -dno-point-and-click archivo.ly
+@end example
+
+@warning{Recuerde desactivar siempre la posibilidad Apuntar y pulsar
+en cualquier archivo de LilyPond que vaya a ser distribuido, para
+evitar incluir información de rutas de archivo relativas a su equipo
+dentro del archivo .pdf, lo que puede plantear un problema de
+seguridad.}
+
+
+
+@node Apoyo respecto de los editores de texto
+@section Apoyo respecto de los editores de texto
+@translationof Text editor support
+
+@cindex editores
+@cindex vim
+@cindex emacs
+@cindex modos del editor
+@cindex sintaxis, resaltado de
+@cindex colores, sintaxis
+
+Existe apoyo por parte de varios editores de texto para LilyPond.
+
+@menu
+* Modo de Emacs::
+* Modo de Vim::
+* jEdit::
+* TexShop::
+* TextMate::
+* LilyKDE::
+@end menu
+
+@node Modo de Emacs
+@subsection Modo de Emacs
+@translationof Emacs mode
+
+Emacs tiene un @file{lilypond-mode}, que proporciona autocompleción de
+teclado, sangrado, compensación de paréntesis específica de LilyPond y
+resaltado de sintaxis con colores, útiles combinaciones de teclas para
+compilar y leer los manuales de LilyPond utilizando Info.  Si el
+@file{lilypond-mode} no está instalado en su sistema, siga leyendo.
+
+Está incluido un modo de Emacs para escribir música y ejecutar
+LilyPond, en el archivo del código fuente dentro del directorio
+@file{elisp}.  Haga @command{make install} para instalarlo dentro de
+@var{elispdir}.  El archivo @file{lilypond-init.el} se debe situar en
+@var{load-path}@file{/site-start.d/} o añadirse a su @file{~/.emacs} o
+@file{~/.emacs.el}.
+
+Como usuario, puede querer añadir su ruta a las fuentes
+(p.ej. @file{~/site-lisp/}) a su @var{load-path} añadiendo la
+siguiente línea (modificada) a su @file{~/.emacs}
+
+@c any reason we do not advise:  (push "~/site-lisp" load-path)
+@example
+(setq load-path (append (list (expand-file-name "~/site-lisp")) load-path))
+@end example
+
+
+@node Modo de Vim
+@subsection Modo de Vim
+@translationof Vim mode
+
+Para @uref{http://@/www@/.vim@/.org,VIM} se proporciona un
+@file{vimrc}, junto con herramientas de resaltado de sintaxis con
+colores.  Se encuentra incluido un modo de Vim para escribir música y
+ejecutar LilyPond, dentro del archivo de código fuente, en el
+directorio @code{$VIM}.
+
+El tipo de archivo de LilyPond se detecta si el archivo
+@file{~/.vim/filetype.vim} tiene el siguiente contenido
+
+@example
+if exists("did_load_filetypes")
+  finish
+endif
+augroup filetypedetect
+  au! BufNewFile,BufRead *.ly,*.ily           setf lilypond
+augroup END
+@end example
+
+Incluya esta ruta añadiendo la siguiente línea a su @file{~/.vimrc}
+
+@example
+set runtimepath+=/usr/local/share/lilypond/$@{LILYPOND_VERSION@}/vim/
+@end example
+
+@noindent
+donde $@{LILYPOND_VERSION@} es su versión de lilypond.  Si LilyPond no
+se instaló en su momento en @file{/usr/local/}, cambie esta ruta de la
+forma correspondiente.
+
+En Fedora, la ruta apunta a la versión actual de Vim en lugar de
+LilyPond:
+
+@example
+set runtimepath+=/usr/share/vim/vim72/
+@end example
+
+
+@node Otros editores
+@unnumberedsubsec Otros editores
+@translationof Other editors
+
+Otros editores (de texto así como gráficos) tienen apoyo para
+LilyPond, pero sus archivos de configuración especiales no se
+distribuyen con LilyPond.  Debe consultar la documentación de estos
+programas para obtener más información.  Estos editores se encuentran
+relacionaddos en @rweb{Entornos mejorados}.
+
+
+@node Conversión desde otros formatos
+@chapter Conversión desde otros formatos
+@translationof Converting from other formats
+
+También se puede escribir la música a través de su importación desde
+otros formatos.  Este capítulo trata de documentar las herramientas
+incluidas en la distribución que permiten hacerlo.  Existen otras
+herramientas que producen código de entrada de LilyPond, como por
+ejemplo secuenciadores con interfaz gráfico y convertidores de XML.
+Consulte el @uref{http://@/lilypond@/.org,website} para ver más
+detalles.
+
+Son programas distintos a @command{lilypond} propiamente dicho, y se
+ejecutan desde la línea de órdenes; consulte @ref{Utilización desde la
+línea de órdenes} para ver más información.  Si tiene MacOS 10.3 o
+10.4 y tiene problemas para ejecutar alguno de estos guiones,
+p.ej. @code{convert-ly}, consulte @ref{Configuración para MacOS X}.
+
+
+@knownissues
+Por desgracia no disponemos de los recursos necesarios para poder
+mantener estos programas; le rogamos que los tome @qq{tal cual
+están}.  Se agradecerá el envío de parches correctores, pero los
+informes de fallo casi con certeza no se resolverán a medio plazo.
+
+@menu
+* Invocar midi2ly::            Importar archivos MIDI.
+* Invocar musicxml2ly::        Importar archivos MusicXML.
+* Invocar abc2ly::             Importar archivos ABC.
+* Invocar etf2ly::             Importar archivos de Finale.
+* Otros formatos::
+@end menu
+
+
+
+
+@node Invocar midi2ly
+@section Invocar @command{midi2ly}
+@translationof Invoking midi2ly
+
+@cindex MIDI
+
+@command{midi2ly} traduce un archivo MIDI de tipo@tie{}1 a un archivo
+de código fuente de LilyPond.
+
+El MIDI (Music Instrument Digital Interface, Interfase Digital para
+Instrumentos Musicales) es un estándar para instrumentos digitales:
+especifica la interconexión física, un protocolo en serie y un formato
+de archivo.  El formato de archivo MIDI es un formato estándar de
+facto para exportar música de otros programas, por lo que esta
+posibilidad puede ser de utilidad al importar archivos de un programa
+que tiene un convertidor para un formato directo.
+
+@command{midi2ly} convierte las pistas en contextos de
+@rinternals{Staff}) y los canales en contextos de
+@rinternals{Voice}.  Se utiliza el modo relativo para las alturas, y
+las duraciones se escriben solamente cuando es necesario.
+
+Es posible grabar un archivo MIDI usando un teclado digital y
+convertirlo después a @file{.ly}.  Sin embargo, los intérpretes
+humanos no son lo suficientemente exactos desde el punto de vista
+rítmico como para hacer que sea trivial la conversión de MIDI a LY.
+Si se invoca con las opciones de cuantización (@code{-s} y @code{-d}),
+@command{midi2ly} intenta compensar los errores de medida, pero no lo
+hace muy bien.  Por ello, no se recomienda usar @command{midi2ly} para
+archivos midi generados por seres humanos.
+
+
+Se invoca a partir de la línea de órdenes como sigue:
+@example
+midi2ly [@var{opción}]@dots{} @var{archivo_midi}
+@end example
+
+Observe que al decir @q{línea de órdenes}, queremos decir la línea de
+órdenes del sistema operativo.  Consulte @ref{Conversión desde otros
+formatos} para ver más información sobre esto.
+
+@command{midi2ly} contempla las siguientes opciones:
+
+@table @code
+@item -a, --absolute-pitches
+Imprimir alturas absolutas.
+
+@item -d, --duration-quant=@var{DURACIÓN}
+Cuantizar las duraciones a @var{DURACIÓN}.
+
+@item -e, --explicit-durations
+Imprimir valores de figura explícitos.
+
+@item -h,--help
+Mostrar un resumen de las instrucciones de utilización.
+
+@item -k, --key=@var{alteración}[:@var{minor}]
+Establecer la tonalidad predeterminada. @math{@var{alteración} > 0}
+establece el número de sostenidos; @math{@var{alteración} < 0}
+establece el número de bemoles.  Se indica una tonalidad menor
+mediante @code{:1}.
+
+@item -o, --output=@var{archivo}
+Escribir la salida en @var{archivo}.
+
+@item -s, --start-quant=@var{DURACIÓN}
+Cuantizar el inicio de las notas a @var{DURACIÓN}.
+
+@item -t, --allow-tuplet=@var{DURACIÓN}*@var{NUMERADOR}/@var{DENOMINADOR}
+Permitir duraciones de grupos especiales @var{DURACIÓN}*@var{NUMERADOR}/@var{DENOMINADOR}.
+
+@item -v, --verbose
+Ser prolijo en comentarios.
+
+@item -V, --version
+Imprimir el número de la versión.
+
+@item -w, --warranty
+Presentar la garantía y el  copyright.
+
+@item -x, --text-lyrics
+Tratar todos los textos como letra de la canción.
+@end table
+
+
+@knownissues
+
+Las notas superpuestas en un arpegio no se procesarán correctamente.
+La primera nota se lee y el resto se ignoran.  Aplique la misma
+duración a todas las notas y añada marcas de fraseo o indicaciones de
+pedal.
+
+
+@node Invocar musicxml2ly
+@section Invocar @command{musicxml2ly}
+@translationof Invoking musicxml2ly
+
+@cindex MusicXML
+
+@uref{http://@/www.@/musicxml@/.org/,MusicXML} es un
+dialecto del XML para representar notación musical.
+
+@command{musicxml2ly} extrae las notas, articulaciones, estructura de
+la partitura, letra, etc., de archivos de MusicXML parte a parte, y
+los escribe en un archivo .ly.  Se invoca a través de la línea de
+órdenes.
+
+La invocación desde la línea de órdenes se hace como sigue:
+
+@example
+musicxml2ly [@var{opción}]@dots{} @var{archivo_xml}
+@end example
+
+Observe que por @q{línea de órdenes}, nos referimos a la línea de
+órdenes del sistema operativo.  Consulte @ref{Conversión desde otros
+formatos}, para obtener más información acerca de esto.
+
+Si el nombre de archivo proporcionado es @file{-},
+@command{musicxml2ly} lee la entrada desde la entrada estándar.
+
+@command{musicxml2ly} contempla las siguientes opciones:
+
+@table @code
+@item -a, --absolute
+convertir las alturas en modo absoluto.
+
+@item -h,--help
+mostrar un resumen de la utilización y las opciones.
+
+@item -l, --language=IDIOMA
+utilizar un archivo de idioma distinto 'IDIOMA.ly' y los
+correspondientes nombres de nota, p.ej. 'deutsch' para deutsch.ly y
+los nombres de nota en alemán.
+
+@item --lxml
+usar el paquete de Python lxml.etree para el análisis de XML; usa
+menos memoria y tiempo de CPU.
+
+@item --nd --no-articulation-directions
+no convertir las direcciones (@code{^}, @code{_} o @code{-}) para las
+articulaciones, dinámica, etc.
+
+@item --no-beaming
+no convertir la información de las barras, en vez de ello usar el
+barrado automático de LilyPond.
+
+@item -o,--output=@var{archivo}
+fijar el nombre del archivo de salida como @var{archivo}. Si
+@var{archivo} es @file{-}, la salida se imprime sobre stdout, la
+salida estándar.  Si no se da, se usa @var{archivo_xml}@file{.ly}.
+
+@item -r,--relative
+convertir las alturas en modo relativo (predeterminado).
+
+@item -v,--verbose
+ser prolijo.
+
+@item -v,--version
+imprimir la información de la versión.
+
+@item -z,--compressed
+el archivo de entrada es un archivo MusicXML comprimido en zip.
+@end table
+
+
+
+@node Invocar abc2ly
+@section Invocar @code{abc2ly}
+@translationof Invoking abc2ly
+
+@cindex ABC
+
+ABC es un formato bastante simple basado en ASCII.  Se encuentra
+descrito en el sitio web de ABC:
+
+@quotation
+@uref{http://@/www@/.walshaw@/.plus@/.com/@/abc/@/learn@/.html}.
+@end quotation
+
+@command{abc2ly} convierte ABC en LilyPond.  Se invoca de la siguiente
+manera:
+
+@example
+abc2ly [@var{opción}]@dots{} @var{archivo_abc}
+@end example
+
+@command{abc2ly} contempla las siguientes opciones:
+
+@table @code
+@item -b,--beams=None
+preservar la noción de ABC de las barras
+@item -h,--help
+esta ayuda
+@item -o,--output=@var{archivo}
+fijar el nombre del archivo de salida como @var{archivo}.
+@item -s,--strict
+ser estricto respecto al éxito
+@item --version
+imprimir la información de la versión.
+@end table
+
+Existe una posibilidad rudimentaria para añadir código de LilyPond el
+archivo fuente de ABC.  Si decimos:
+
+@example
+%%LY voices \set autoBeaming = ##f
+@end example
+
+Producirá que el texto que sigue a la palabra clave @q{voices} se
+inserte en la voz en curso del archivo de salida de LilyPond.
+
+De forma similar,
+
+@example
+%%LY slyrics más palabras
+@end example
+
+producirá que el texto que sigue a la palabra clave @q{slyrics} se
+inserte en la línea de letra en curso.
+
+
+@knownissues
+
+El estándar ABC no es muy @q{estándar}.  Existen diferentes
+convenciones para las posibilidades avanzadas (por ejemplo,
+polifonía).
+
+
+No se pueden convertir varias melodías de un solo archivo.
+
+ABC sincroniza las letras y las notas al principio de una línea;
+@command{abc2ly} no lo hace.
+
+@command{abc2ly} ignora el barrado de ABC.
+
+
+@node Invocar etf2ly
+@section Invocar @command{etf2ly}
+@translationof Invoking etf2ly
+
+@cindex ETF
+@cindex enigma
+@cindex Finale
+@cindex Coda Technology
+
+ETF (Enigma Transport Format) es un formato utilizado por Finale, un
+producto de Coda Music Technology.  @command{etf2ly} convierte parte
+de un archivo ETF en un archivo de LilyPond listo para usar.
+
+Se invoca a través de la línea de órdenes como sigue:
+
+@example
+etf2ly [@var{opción}]@dots{} @var{archivo_etf}
+@end example
+
+Observe que por @q{línea de órdenes}, nos referimos a la línea de
+órdenes del sistema operativo.  Consulte @ref{Conversión desde otros
+formatos}, para obtener más información acerca de esto.
+
+@command{etf2ly} contempla las siguientes opciones:
+
+@table @code
+@item -h,--help
+esta ayuda
+@item -o,--output=@var{ARCHIVO}
+fijar el nombre del archivo de salida como @var{ARCHIVO}
+@item --version
+información de la versión
+@end table
+
+
+@knownissues
+
+La lista de inscripciones de articulación posibles es incompleta.  Los
+compases vacíos confunden a @command{etf2ly}.  Las secuencias de notas
+de adorno no se dan por finalizadas satisfactoriamente.
+
+
+
+@node Otros formatos
+@subsection Otros formatos
+@translationof Other formats
+
+@cindex programas externos, generación de archivos de LilyPond
+
+El propio LilyPond no contempla la utilización de ningún otro formato,
+pero existen algunas herramientas externas que también generan
+archivos de LilyPond.
+
+Se encuentran relacionados en la sección @rweb{Entornos mejorados}.
+
+
+
+@node Salida de LilyPond dentro de otros programas
+@section Salida de LilyPond dentro de otros programas
+@translationof LilyPond output in other programs
+
+Esta sección presenta métodos para integrar texto y música distintos
+del método automatizado con @command{lilypond-book}.
+
+@menu
+* Muchas citas de una partitura extensa::
+* Insertar la salida de LilyPond dentro de OpenOffice.org::
+* Insertar la salida de LilyPond dentro de otros programas::
+@end menu
+
+@node Muchas citas de una partitura extensa
+@unnumberedsubsec Muchas citas de una partitura extensa
+@translationof Many quotes from a large score
+
+Si tiene que citar muchos fragmentos extraídos de una partitura grade,
+puede también usar la capacidad de recorte de sistemas, véase
+@ruser{Extracción de fragmentos de música}.
+
+
+@node Insertar la salida de LilyPond dentro de OpenOffice.org
+@unnumberedsubsec Insertar la salida de LilyPond dentro de OpenOffice.org
+@translationof Inserting LilyPond output into OpenOffice.org
+
+@cindex OpenOffice.org
+
+Se puede añadir notación de LilyPond a los documentos de
+OpenOffice.org con
+@uref{http://@/ooolilypond@/.sourceforge@/.net@/,OOoLilyPond}.
+
+
+@node Insertar la salida de LilyPond dentro de otros programas
+@unnumberedsubsec Insertar la salida de LilyPond dentro de otros programas
+@translationof Inserting LilyPond output into other programs
+
+Para insertar la salida de LilyPond dentro de otros programas, use
+@code{lilypond} en vez de @code{lilypond-book}.  Cada ejemplo debe
+crearse individualmente y añadirse al documento; consulte la
+documentación del programa correspondiente.  La mayoría de los
+programas podrán insertar la salida de LilyPond en los formatos
+@file{PNG}, @file{EPS} o @file{PDF}.
+
+Para reducir el espacio vacío alrededor de la partitura de LilyPond,
+utilice las siguientes opciones:
+
+@example
+\paper@{
+  indent=0\mm
+  line-width=120\mm
+  oddFooterMarkup=##f
+  oddHeaderMarkup=##f
+  bookTitleMarkup = ##f
+  scoreTitleMarkup = ##f
+@}
+
+@{ c1 @}
+@end example
+
+Para obtener un archivo @file{EPS} que sea útil, utilice
+
+@example
+lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts miarchivo.ly
+
+@file{PNG}:
+lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts --png miarchivo.ly
+@end example
+
+
+@node Archivos include independientes
+@section Archivos @code{include} independientes
+@translationof Independent includes
+
+@c FIXME: blah blah
+
+@menu
+* Articulación MIDI::
+@end menu
+
+
+@node Articulación MIDI
+@subsection Articulación MIDI
+@translationof MIDI articulation
+
+@c stub for info about Dr. Peter Chubb's @file{articulate.ly}
+
diff --git a/Documentation/es/usage/suggestions.itely b/Documentation/es/usage/suggestions.itely
new file mode 100644 (file)
index 0000000..772c615
--- /dev/null
@@ -0,0 +1,628 @@
+@c -*- coding: utf-8; mode: texinfo; -*-
+
+@ignore
+    Translation of GIT committish: FILL-IN-HEAD-COMMITTISH
+
+    When revising a translation, copy the HEAD committish of the
+    version that you are working on.  For details, see the Contributors'
+    Guide, node Updating translation committishes..
+@end ignore
+
+@c \version "2.12.0"
+
+@node Sugerencias para escribir archivos de entrada de LilyPond
+@section Sugerencias para escribir archivos de entrada de LilyPond
+@translationof Suggestions for writing LilyPond input 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 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
+@item ¿Qué ocurre si comete un fallo?  La estructura de un archivo
+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.
+
+@end itemize
+
+@menu
+* Sugerencias de tipo general::
+* Tipografiar música existente::
+* Proyectos grandes::
+* Ahorrar tecleo mediante variables y funciones::
+* Hojas de estilo::
+@end menu
+
+
+@node Sugerencias de tipo general
+@subsection Sugerencias de tipo general
+@translationof General suggestions
+
+Presentamos algunas sugerencias que le pueden servir de ayuda para evitar
+o corregir problemas:
+
+@itemize
+@item @strong{Incluya los números de @code{\version} en todos los archivos}.  Dése 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{Comprobación de compás y de número de compás},
+@ruser{Comprobación de octava}.  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 o en la salida que desea producir, a menudo
+conviene escribir un solo compás por cada línea.  El ahorro en espacio
+de pantalla que se obtiene al amontonar ocho compases por línea no
+merece la pena si luego tiene que @q{depurar} los archivos.
+
+@item @strong{Comente los archivos}.  Utilice o números de compás (de vez en cuando)
+o referencias a temas musicales (@q{segundo tema de los violines,}
+@q{cuarta variación,} etc.).  Puede que no necesite comentarios cuando
+introduce una pieza por vez primera, pero si quiere volver a ella o
+modificar algo al cabo de dos o tres años, y también si le pasa la
+fuente a un amigo, será todo un desafío determinar sus intenciones o
+de qué manera estaba estructurado el archivo si no le añadió los
+comentarios.
+
+@item @strong{Aplique márgenes a las llaves}.  Muchos problemas están causados por una
+falta de equilibrio en el número de @code{@{} y @code{@}}.
+
+@item @strong{Escriba las duraciones explícitamente} al comienzo de las secciones
+e identificadores.  Si especifica @code{c4 d e} al principio de una
+frase (en lugar de sólo @code{c d e}) se puede ahorrar problemas si
+reelabora la música más tarde.
+
+@item @strong{Separe los trucos} de las definiciones musicales.  Consulte
+@ref{Ahorrar tecleo mediante variables y funciones} y
+@ref{Hojas de estilo}.
+
+@end itemize
+
+
+@node Tipografiar música existente
+@subsection Tipografiar música existente
+@translationof Typesetting existing music
+
+Si está introduciendo música a partir de una partitura existente (es
+decir, tipografiando una hoja de música ya impresa),
+
+@itemize
+
+@item Introduzca en LilyPond un sistema del manuscrito, o copia física, de
+cada vez (pero mantenga la práctica de escribir un compás por línea de
+texto), y compruebe cada sistema cuando lo haya terminado.  Puede usar
+las propiedades @code{showLastLength} o @code{showFirstLength} para
+acelerar el proceso (véase @ruser{Saltar la música corregida}).
+
+@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 le resultará mucho más fácil comparar la música
+de LilyPond con la original.  Cuando haya terminado de revisar su
+partitura podrá 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
+
+@noindent
+(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
+
+
+
+@node Proyectos grandes
+@subsection Proyectos grandes
+@translationof Large projects
+
+Al trabajar en proyectos grandes se hace esencial tener una estructura
+clara en los archivos de LilyPond:
+
+@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
+@code{\score} es la que cambiará con mayor probabilidad; por contra, es
+extremadamente improbable que cambie la definición de @code{violin} en
+versiones nuevas de LilyPond.
+
+@example
+violin = \relative c'' @{
+g4 c'8. e16
+@}
+...
+\score @{
+  \new GrandStaff @{
+    \new Staff @{
+      \violin
+    @}
+  @}
+@}
+@end example
+
+@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
+fluegop = _\markup@{
+  \dynamic f \italic \small @{ 2nd @} \hspace #0.1 \dynamic p @}
+violin = \relative c'' @{
+g4\fluegop c'8. e16
+@}
+@end example
+
+@end itemize
+
+
+@node Solución de problemas
+@section Solución de problemas
+@translationof Troubleshooting
+
+Antes o después escribirá un archivo que LilyPond no podrá compilar.
+Los mensajes que LilyPond proporciona pueden ayudarle a encontrar el
+error, pero en muchos casos tendrá que llevar a cabo algún tipo de
+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 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 en la porción que había eliminado.
+Si no funciona, continúe eliminando material (transformándolo en
+comentarios) hasta que tenga algo que funcione.
+
+En un caso extremo podría terminar con sólo
+
+@example
+\score @{
+  <<
+    % \melodia
+    % \armonia
+    % \bajo
+  >>
+  \layout@{@}
+@}
+@end example
+
+@noindent
+(en otras palabras: un archivo sin música)
+
+Si ocurre esto, no abandone.  Descomente un trozo pequeño -- digamos
+la parte del bajo -- y observe si funciona.  Si no es así, transforme
+en comentarios toda la música del bajo (pero deje el @code{\bajo} de
+la sección @code{\score} no comentado.
+
+@example
+bajo = \relative c' @{
+%@{
+  c4 c c c
+  d d d d
+%@}
+@}
+@end example
+
+Ahora empiece poco a poco descomentando cada vez más fracciones de la
+parte del @code{bajo} hasta que encuentre la línea del problema.
+
+Otra técnica de depuración muy útil es la construcción de
+@ref{Ejemplos mínimos}.
+
+
+@node Make y los Makefiles
+@section Make y los Makefiles
+@translationof Make and Makefiles
+
+@cindex make, archivos de
+@cindex make
+
+Posiblemente todas las plataformas en que puede correr LilyPond,
+contemplan una posibilidad de software llamada @code{make}. Este
+programa lee un archivo especial llamado @code{Makefile} que define
+las relaciones de dependencia entre los archivos y qué instrucciones
+necesitamos dar al sistema operativo para producir un archivo a partir
+de otro.  Por ejemplo, el archivo de make detallaría cómo obtener
+@code{balada.pdf} y @code{balada.midi} a partir de @code{balada.ly}
+mediante la ejecución de Lilypond.
+
+Existen ocasiones en las que es buena idea crear un @code{Makefile}
+para nuestro proyecto, bien sea por nuestra propia comodidad o como
+cortesía para otros que posiblemente tengan acceso a nuestros archivos
+fuente.  Esto es cierto para proyectos muy grandes con muchos archivos
+de inclusión y distintas opciones de salida (p.ej. partitura completa,
+particellas, partitura del director, reducción para piano, etc.), o
+para proyectos que requieren instrucciones difíciles para montarlas
+(como los proyectos de @code{lilypond-book}). La complejidad y
+flexibilidad de los Makefiles varía enormemente según las necesidades
+y la habilidad de los autores.  El programa GNU Make viene instalado
+en las distribuciones de GNU/Linux y en MacOS X, y también existe para
+Windows.
+
+Consulte el @strong{Manual de GNU Make} para ver todos los detalles
+sobre el uso de @code{make}, pues lo que sigue a continuación ofrece
+solamente una pincelada de todo lo que es capaz de hacer.
+
+Las instrucciones que definen las reglas en un archivo de make
+difieren en función de la plataforma; por ejemplo, las distintas
+formas de Linux y MacOS usan @code{bash}, mientras que Windows usa
+@code{cmd}.  Observeque en MacOS X, tenemos que configurar el sistema
+para que utilice el intérprete de órdenes. A continuación presentamos
+algunos makefiles de ejemplo, con versiones tanto para Linux/MacOS
+como para Windows.
+
+El primer ejemplo es para una obra orquestal en cuatro movimientos con
+la estructura de directorios siguiente:
+
+@example
+Sinfonia/
+|-- MIDI/
+|-- Makefile
+|-- Notas/
+|   |-- cello.ily
+|   |-- cifras.ily
+|   |-- trompa.ily
+|   |-- oboe.ily
+|   |-- trioCuerdas.ily
+|   |-- viola.ily
+|   |-- violinUno.ily
+|   `-- violinDos.ily
+|-- PDF/
+|-- Particellas/
+|   |-- sinfonia-cello.ly
+|   |-- sinfonia-trompa.ly
+|   |-- sinfonia-oboes.ly
+|   |-- sinfonia-viola.ly
+|   |-- sinfonia-violinUno.ly
+|   `-- sinfonia-violinDos.ly
+|-- Partituras/
+|   |-- sinfonia.ly
+|   |-- sinfoniaI.ly
+|   |-- sinfoniaII.ly
+|   |-- sinfoniaIII.ly
+|   `-- sinfoniaIV.ly
+`-- sinfoniaDefs.ily
+@end example
+
+Los archivos @code{.ly} de los directorios @code{Partituras} y
+@code{Particellas} obtienen las notas de archivos @code{.ily} que están en
+el directorio @code{Notas}:
+
+@example
+%%% principio del archivo "sinfonia-cello.ly"
+\include ../definiciones.ily
+\include ../Notas/cello.ily
+@end example
+
+El makefile tendrá los objetivos de @code{partitura} (la pieza
+completa en todo su esplendor), @code{movimientos} (partitura completa
+de los movimientos individuales) y @code{particellas} (partes
+individuales para los atriles). También existe un objetivo
+@code{archivo} que produce un tarball de los archivos fuente, adecuado
+para compartirlo a través de la web o por correo electrónico.  A
+continuación presentamos el makefile para GNU/Linux o MacOS X.  Se
+debe guardar con el nombre exacto @code{Makefile} el el directorio
+superior del proyecto:
+
+@warning{Cuando se define un objetivo o una regla de patrón, las
+líneas siguientes deben comenzar con tabuladores, no con espacios.}
+
+@example
+# nombre principal de los archivos de salida
+nombre = sinfonia
+# determinar cuántos procesadores existen
+CPU_CORES=`cat /proc/cpuinfo | grep -m1 "cpu cores" | sed s/".*: "//`
+# La instrucción para ejecutar lilypond
+LILY_CMD = lilypond -ddelete-intermediate-files \
+                    -dno-point-and-click -djob-count=$(CPU_CORES)
+
+# Los sufijos utilizados en este Makefile.
+.SUFFIXES: .ly .ily .pdf .midi
+
+# Los archivos de entrada y salida se buscan dentro de los directorios relacionados en
+# la variable VPATH.  Todos esllos son subdirectorios del directorio
+# en curso (dado por la variable de GNU make `CURDIR').
+VPATH = \
+  $(CURDIR)/Partituras \
+  $(CURDIR)/PDF \
+  $(CURDIR)/Particellas \
+  $(CURDIR)/Notas
+
+# La regla de patrón para crear archivos PDF y MIDI a partir de un archivo de entrada LY.
+# Los archivos de salida .pdf se colocan en el subdirectorio `PDF', y los archivos
+# .midi van al subdirectorio `MIDI'.
+%.pdf %.midi: %.ly
+        $(LILY_CMD) $<; \           # esta línea comienza con un salto de tabulación
+        if test -f "$*.pdf"; then \
+            mv "$*.pdf" PDF/; \
+        fi; \
+        if test -f "$*.midi"; then \
+            mv "$*.midi" MIDI/; \
+        fi
+
+notas = \
+  cello.ily \
+  trompa.ily \
+  oboe.ily \
+  viola.ily \
+  violinUno.ily \
+  violinDos.ily
+
+# Dependencias de los movimientos.
+$(nombre)I.pdf: $(nombre)I.ly $(notas)
+$(nombre)II.pdf: $(nombre)II.ly $(notas)
+$(nombre)III.pdf: $(nombre)III.ly $(notas)
+$(nombre)IV.pdf: $(nombre)IV.ly $(notas)
+
+# Dependencias de la partitura completa.
+$(nombre).pdf: $(nombre).ly $(notas)
+
+# Dependencias de las particellas.
+$(nombre)-cello.pdf: $(nombre)-cello.ly cello.ily
+$(nombre)-trompa.pdf: $(nombre)-trompa.ly trompa.ily
+$(nombre)-oboes.pdf: $(nombre)-oboes.ly oboe.ily
+$(nombre)-viola.pdf: $(nombre)-viola.ly viola.ily
+$(nombre)-violinUno.pdf: $(nombre)-violinUno.ly violinUno.ily
+$(nombre)-violinDos.pdf: $(nombre)-violinDos.ly violinDos.ily
+
+# Teclee `make partitura' para generer la partitura completa de los cuatro
+# movimientos como un archivo único.
+.PHONY: partitura
+partitura: $(nombre).pdf
+
+# Teclee `make particellas' para generar todas las particellas.
+# Teclee `make fulanito.pdf' para generar la particella del instrumento `fulanito'.
+# Ejemplo: `make sinfonia-cello.pdf'.
+.PHONY: particellas
+particellas: $(nombre)-cello.pdf \
+       $(nombre)-violinUno.pdf \
+       $(nombre)-violinDos.pdf \
+       $(nombre)-viola.pdf \
+       $(nombre)-oboes.pdf \
+       $(nombre)-trompa.pdf
+
+# Teclee `make movimientos' para generar los archivos de los
+# cuatro movimientos de forma separada.
+.PHONY: movimientos
+movimientos: $(nombre)I.pdf \
+           $(nombre)II.pdf \
+           $(nombre)III.pdf \
+           $(nombre)IV.pdf
+
+all: partitura particellas movimientos
+
+archivo:
+        tar -cvvf stamitz.tar \       # esta línea comienza con un salto de tabulación
+        --exclude=*pdf --exclude=*~ \
+        --exclude=*midi --exclude=*.tar \
+        ../Stamitz/*
+@end example
+
+
+Existen ciertas complicaciones en la plataforma Windows. Después de
+descargar e instalar el programa GNU Make para Windows, debemos
+configurar la ruta adecuada en las variables de entorno del sistema de
+forma que el shell del DOS pueda encontrar el programa Make. Para
+hacerlo, pulse con el botón derecho sobre "Mi PC", elija
+@code{Propiedades} y @code{Avanzadas}. Pulse sobre @code{Variables de
+entorno}, y luego en la pestaña @code{Variables del sistema},
+seleccione @code{Ruta}, pulse sobre @code{editar} y añada la ruta al
+archivo ejecutable de GNU Make, con lo que quedará algo parecido a lo
+siguiente:
+
+@example
+C:\Archivos de programa\GnuWin32\bin
+@end example
+
+El makefile en sí debe modificarse para que maneje distintas
+instrucciones del shell y para que pueda tratar con los espacios que
+aparecen en el nombre de algunos directorios del sistema
+predeterminados. El objetivo @code{archivo} se elimina porque Windows
+no tiene la instrucción @code{tar}, y Windows tiene también una
+extensión predeterminada distinta para los archivos MIDI.
+
+
+@example
+## VERSIÓN PARA WINDOWS
+##
+nombre = sinfonia
+LILY_CMD = lilypond -ddelete-intermediate-files \
+                    -dno-point-and-click \
+                    -djob-count=$(NUMBER_OF_PROCESSORS)
+
+#obtener el nombre 8.3 de CURDIR (rodeo para los espacios en PATH)
+workdir = $(shell for /f "tokens=*" %%b in ("$(CURDIR)") \
+          do @@echo %%~sb)
+
+.SUFFIXES: .ly .ily .pdf .mid
+
+VPATH = \
+  $(workdir)/Partituras \
+  $(workdir)/PDF \
+  $(workdir)/Particellas \
+  $(workdir)/Notas
+
+%.pdf %.mid: %.ly
+        $(LILY_CMD) $<      # esta línea comienza con un salto de tabulación
+        if exist "$*.pdf"  move /Y "$*.pdf"  PDF/ # comienzo con tab
+        if exist "$*.mid" move /Y "$*.mid" MIDI/  # comienzo con tab
+
+notas = \
+  cello.ily \
+  cifras.ily \
+  trompa.ily \
+  oboe.ily \
+  trioCuerdas.ily \
+  viola.ily \
+  violinUno.ily \
+  violinDos.ily
+
+$(nombre)I.pdf: $(nombre)I.ly $(notas)
+$(nombre)II.pdf: $(nombre)II.ly $(notas)
+$(nombre)III.pdf: $(nombre)III.ly $(notas)
+$(nombre)IV.pdf: $(nombre)IV.ly $(notas)
+
+$(nombre).pdf: $(nombre).ly $(notas)
+
+$(nombre)-cello.pdf: $(nombre)-cello.ly cello.ily
+$(nombre)-trompa.pdf: $(nombre)-trompa.ly trompa.ily
+$(nombre)-oboes.pdf: $(nombre)-oboes.ly oboe.ily
+$(nombre)-viola.pdf: $(nombre)-viola.ly viola.ily
+$(nombre)-violinUno.pdf: $(nombre)-violinUno.ly violinUno.ily
+$(nombre)-violinDos.pdf: $(nombre)-violinDos.ly violinDos.ily
+
+.PHONY: partitura
+partitura: $(nombre).pdf
+
+.PHONY: particellas
+particellas: $(nombre)-cello.pdf \
+       $(nombre)-violinUno.pdf \
+       $(nombre)-violinDos.pdf \
+       $(nombre)-viola.pdf \
+       $(nombre)-oboes.pdf \
+       $(nombre)-trompa.pdf
+
+.PHONY: movimientos
+movimientos: $(nombre)I.pdf \
+           $(nombre)II.pdf \
+           $(nombre)III.pdf \
+           $(nombre)IV.pdf
+
+all: partitura particellas movimientos
+@end example
+
+
+El Makefile siguiente es para un documento de @command{lilypond-book}
+hecho en LaTeX.  Este proyecto tiene un índice, que requiere ejecutar
+la instrucción @command{latex} dos veces para actualizar los enlaces.
+Todos los archivos de salida se almacenan en el directorio
+@code{salida} para los documentos .pdf y en el directorio
+@code{salidahtml} para la salida en formato html.
+
+@example
+SHELL=/bin/sh
+NOMBRE=miproyecto
+DIR_SALIDA=salida
+DIR_WEB=salidahtml
+VISOR=acroread
+NAVEGADOR=firefox
+LILYBOOK_PDF=lilypond-book --output=$(DIR_SALIDA) --pdf $(NOMBRE).lytex
+LILYBOOK_HTML=lilypond-book --output=$(DIR_WEB) $(NOMBRE).lytex
+PDF=cd $(DIR_SALIDA) && pdflatex $(NOMBRE)
+HTML=cd $(DIR_WEB) && latex2html $(NOMBRE)
+INDICE=cd $(DIR_SALIDA) && makeindex $(NOMBRE)
+VISTA_PREVIA=$(VISOR) $(DIR_SALIDA)/$(NOMBRE).pdf &
+
+all: pdf web guardar
+
+pdf:
+        $(LILYBOOK_PDF)  # comienza con un tab
+        $(PDF)           # comienza con un tab
+        $(INDICE)        # comienza con un tab
+        $(PDF)           # comienza con un tab
+        $(VISTA_PREVIA)  # comienza con un tab
+
+web:
+        $(LILYBOOK_HTML) # comienza con un tab
+        $(HTML)          # comienza con un tab
+        cp -R $(DIR_WEB)/$(NOMBRE)/ ./  # comienza con un tab
+        $(NAVEGADOR) $(NOMBRE)/$(NOMBRE).html &  # comienza con un tab
+
+guardar: pdf
+        cp $(DIR_SALIDA)/$(NOMBRE).pdf $(NOMBRE).pdf  # comienza con un tab
+
+clean:
+        rm -rf $(DIR_SALIDA) # comienza con un tab
+
+web-clean:
+        rm -rf $(DIR_WEB) # comienza con un tab
+
+archivo:
+        tar -cvvf miproyecto.tar \ # comienza con un tab
+        --exclude=salida/* \
+        --exclude=salidahtml/* \
+        --exclude=miproyecto/* \
+        --exclude=*midi \
+        --exclude=*pdf \
+        --exclude=*~ \
+        ../MiProyecto/*
+@end example
+
+HACER: conseguir que funcione en Windows
+
+El makefile anterior no funciona en Windows.  Una alternativa para los
+usuarios de Windows sería crear un archivo de lotes sencillo que
+contenga las instrucciones de montaje.  Esto no rastrea las
+dependencias en la manera en que lo hace un makefile, pero al menos
+reduce el proceso de construcción a una sola instrucción.  Guarde el
+código siguiente como @command{montaje.bat} o @command{montaje.cmd}.
+El archivo de lotes se puede ejecutar en la línea de comandos del DOS
+o simplemente haciendo doble click sobre su icono.
+
+@example
+lilypond-book --output=salida --pdf miproyecto.lytex
+cd salida
+pdflatex miproyecto
+makeindex miproyecto
+pdflatex miproyecto
+cd ..
+copy salida\miproyecto.pdf MiProyecto.pdf
+@end example
+
+
+@seealso
+Manual de utilización del programa:
+@rprogram{Configuración para MacOS X},
+@rprogram{Utilización desde la línea de órdenes},
+@rprogram{LilyPond-book}
diff --git a/Documentation/es/usage/updating.itely b/Documentation/es/usage/updating.itely
new file mode 100644 (file)
index 0000000..3367f60
--- /dev/null
@@ -0,0 +1,278 @@
+@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
+
+@ignore
+    Translation of GIT committish: 45945bd973aa9161b10e3f517902afb7ef4b4a56
+
+    When revising a translation, copy the HEAD committish of the
+    version that you are working on.  For details, see the Contributors'
+    Guide, node Updating translation committishes..
+@end ignore
+
+@c \version "2.12.0"
+
+
+@node Actualizar ficheros con convert-ly
+@section Actualizar ficheros con @command{convert-ly}
+@translationof Updating files with convert-ly
+
+@cindex actualización de un archivo de LilyPond
+@cindex convert-ly
+
+La sintaxis del lenguaje de entrada de LilyPond se modifica de forma
+habitual para simplificarla o mejorarla de distintas maneras.  Como
+efecto secundario, el intérprete de LilyPond a menudo ya no es
+compatible con los archivos de entrada antiguos.  Para poner remedio a
+esto se puede utilizar el programa @command{convert-ly} para manejar
+casi todos los cambios de sintaxis entre versiones de LilyPond.
+
+@menu
+* ¿Por qué cambia la sintaxis?::
+* Invocar convert-ly::
+* Opciones de la línea de órdenes para convert-ly::
+* Problemas con convert-ly::
+* Conversiones manuales::
+@end menu
+
+
+@node ¿Por qué cambia la sintaxis?
+@section ¿Por qué cambia la sintaxis?
+@translationof Why does the syntax change?
+
+@cindex convert-ly
+@cindex actualizar archivos de entrada antiguos
+
+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 veces estos cambios se hacen
+para conseguir que la entrada sea más fácil de leer y escribir, y
+otras veces estos cambios son para dar cabida a nuevas funcionalidades
+de LilyPond.
+
+Por ejemplo, se supone que todos los nombres de las propiedades de
+@code{\paper} y de @code{\layout} están escritos en la dorma
+@code{primero-segundo-tercero}.  Sin embargo, en la versión 2.11.60,
+observamos que la propiedad @code{printallheaders} no seguía esta
+convención.  ¿Deberíamos dejarla como está (confundiendo a los nuevos
+usuarios que tienen que tratar con un formato de entrada
+inconsistente), o cambiarla (fastidiando a los usuarios con
+experiencia que tienen partituras antiguas)?  En este caso, decidimos
+cambiar el nombre a @code{print-all-headers}.  Afortunadamente, este
+cambio se puede automatizar con nuestra herramienta
+@command{convert-ly}.
+
+Sin embargo, lamentablemente @code{convert-ly} no puede tratar todos
+los cambios en la entrada.  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, @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 sus archivos de LilyPond
+antiguos.
+
+
+@node Invocar convert-ly
+@subsection Invocar @command{convert-ly}
+@translationof Invoking convert-ly
+
+@command{convert-ly} utiliza los enunciados @code{\version} de los
+archivos de entrada para detectar el número de versión antiguo.  En
+casi todos los casos, para actualizar el archivo de entrada basta con
+ejecutar
+
+@example
+convert-ly -e miarchivo.ly
+@end example
+
+@noindent
+dentro del directorio que contiene el archivo.  Con esto se actualiza
+@code{miarchivo.ly} @emph{in situ} y se preserva el archivo original
+@code{miarchivo.ly~}.
+
+@warning{@command{convert-ly} siempre convierte hasta el último cambio
+de sintaxis que es capaz de manejar.  Esto significa que el número de
+@code{\version} que aparece en el archivo convertido suele ser
+inferior al número de versión del propio programa
+@command{convert-ly}.}
+
+Para convertir de una vez todos los archivos de entrada que hay en un
+directorio, use
+
+@example
+convert-ly -e *.ly
+@end example
+
+De forma alternativa, si queremos especificar un nombre distinto para
+el archivo actualizado, preservando el archivo original con el mismo
+nombre, haga
+
+@example
+convert-ly miarchivo.ly > minuevoarchivo.ly
+@end example
+
+El programa imprimirá una relación de los números de versión para los
+que se han hecho conversiones.  Si no se imprime ningún número de
+versión, el archivo ya está actualizado.
+
+@noindent
+Los usuarios de MacOS@tie{}X pueden ejecutar esta instrucción bajo el
+menú @code{Compilar > Actualizar sintaxis}.
+
+Los usuarios de Windows deben introducir esta instrucción en una
+ventana del terminal del sistema, que se encuentra por lo general bajo
+@code{Inicio > Accesorios > Símbolo del sistema}.
+
+
+@node Opciones de la línea de órdenes para convert-ly
+@subsection Opciones de la línea de órdenes para @command{convert-ly}
+@translationof Command line options for convert-ly
+
+
+En general, el programa se invoca de la manera siguiente:
+
+@example
+convert-ly [@var{opción}]@dots{} @var{archivo}@dots{}
+@end example
+
+
+Se pueden dar las siguientes opciones:
+
+@table @code
+@item -e,--edit
+Aplicar las conversiones directamente al archivo de entrada,
+modificándolo in situ.
+
+@item -f,--from=@var{versión_de_origen}
+Establece la versión desde la que convertir.  Si no aparece esta
+opción, @command{convert-ly} tratará de adivinarla, basándose en el
+enunciado @code{\version} del archivo.  Ejemplo: @code{--from=2.10.25}
+
+@item -n,--no-version
+Normalmente @command{convert-ly} añade un indicador @code{\version} a
+la salida.  La especificación de esta opción lo suprime.
+
+@item -s, --show-rules
+Mostrar todas las conversiones conocidas y salir.
+
+@item --to=@var{versión_final}
+Fijar la versión de destino de la conversión.  De forma predeterminada
+se convierte a la última versión disponible.
+
+@item -h, --help
+Imprimir la ayuda de la utilización.
+@end table
+
+Para actualizar fragmentos de LilyPond en archivos de texinfo, use
+
+@example
+convert-ly --from=... --to=... --no-version *.itely
+@end example
+
+Para ver los cambios en la sintaxis de LilyPond entre dos versiones
+dadas, use
+
+@example
+convert-ly --from=... --to=... -s
+@end example
+
+
+@node Problemas con convert-ly
+@subsection Problemas con @code{convert-ly}
+@translationof Problems with convert-ly
+
+Al ejecutar convert-ly en una ventana del Símbolo del Sistema bajo
+Windows sobre un archivo que tiene espacios en el nombre o en la ruta,
+es necesario encerrar todo el nombre del archivo de entrada con tres
+(!) pares de comillas:
+
+@example
+convert-ly """D:/Mis partituras/Oda.ly""" > "D:/Mis partituras/nueva Oda.ly"
+@end example
+
+Si la orden simple @command{convert-ly -e *.ly} no funciona porque la
+instrucción expandida se hace muy larga, en vez de ello la orden
+@command{convert-ly} se puede poner dentro de un bucle.  Este ejemplo
+para UNIX actualiza todos los documentos @code{.ly} del directorio
+actual
+
+@example
+for f in *.ly; do convert-ly -e $f; done;
+@end example
+
+En la ventana del terminal de órdenes de Windows, la instrucción
+correspondiente es
+
+@example
+for %x in (*.ly) do convert-ly -e """%x"""
+@end example
+
+No se manejan todos los cambios en el lenguaje.  Sólo se puede
+especificar una opción de salida.  La actualización automática de
+Scheme y los interfaces Scheme de LilyPond es bastante improbable;
+prepárese para trucar el código de Scheme a mano.
+
+@node Conversiones manuales
+@section Conversiones manuales
+@translationof Manual conversions
+
+En teoría, un programa como @command{convert-ly} debería poder tratar
+cualquier cambio en la sintaxis.  Después de todo, un programa de
+ordenador interpreta las versiones antigua y nueva, por lo que otro
+programa de ordenador podría traducir un archivo al otro@footnote{Al
+menos, esto es posible en cualquier archivo de LilyPond que no
+contenga Scheme.  Si hay Scheme dentro del archivo, contiene un
+lenguaje Turing-completo, y nos encontramos con el famoso @qq{Problema
+de la parada} en informática.}.
+
+Sin embargo, el proyecto LilyPond cuenta con unos recursos limitados:
+no todas las conversiones se efectúan automáticamente.  A continuación
+aparece una lista de los problemas conocidos.
+
+
+@verbatim
+1.6->2.0:
+ No siempre convierte el bajo cifrado correctamente, específicamente cosas como {<
+>}.  El comentario de Mats sobre cómo solventar el problema:
+   Para poder ejecutar convert-ly
+   sobre él, primero sustituí todas las apariciones de '{<' a algo mudo como '{#'
+   y de forma similar sustituí '>}' con '&}'.  Después de la conversión, pude
+   volver a cambiarlos de '{ #' a '{ <' y de '& }' a '> }'.
+ No convierte todos los marcados de texto correctamente.  En sintaxis antigua,
+ se podían agrupar varios marcados entre paréntesis, p.ej.
+   -#'((bold italic) "cadena")
+   Esto se convierte incorrectamente en
+   -\markup{{\bold italic} "cadena"}
+   en vez del correcto
+   -\markup{\bold \italic "cadena"}
+2.0->2.2:
+ No maneja \partcombine
+ No hace \addlyrics => \lyricsto, esto rompe algunas partituras con varias estrofas.
+2.0->2.4:
+ \magnify no se cambia por \fontsize.
+    - \magnify #m => \fontsize #f, donde f = 6ln(m)/ln(2)
+ remove-tag no se cambia.
+    - \applyMusic #(remove-tag '. . .) => \keepWithTag #'. . .
+ first-page-number no se cambia.
+    - first-page-number no => print-first-page-number = ##f
+ Los saltos de línea en las cadenas de cabecera no se convierten.
+    - \\\\  como salto de línea en las cadenas de \header  => \markup \center-align <
+      "Primera línea" "Segunda línea" >
+ Los terminadores de crescendo y decrescendo no se convierten.
+    - \rced => \!
+    - \rc => \!
+2.2->2.4:
+ \turnOff (usado en \set Staff.VoltaBracket = \turnOff) no se convierte
+adecuadamente.
+2.4.2->2.5.9
+ \markup{ \center-align <{ ... }> } se tendría que convertir en:
+ \markup{ \center-align {\line { ... }} }
+ pero ahora, falta el \line.
+2.4->2.6
+ Los caracteres especiales de LaTeX como $~$ en el texto no se convierten a UTF8.
+2.8
+ \score{} ahora debe empezar con una expresión musical.  Cualquier otra cosa
+ (en particular, \header{}) debe ir después de la música.
+@end verbatim
+
+