]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/es/user/input.itely
lilypond-book robustness: ensure EOL at the end of @verbatim
[lilypond.git] / Documentation / es / user / input.itely
index a48f8d948f35941183125e1f8366d989c44a8381..c298493a24b25e7e15f620124674177ebb9f45a0 100644 (file)
-@c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
+@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: 6bcad9cdc487270910758b1ee39cf3c8aee1015e
+    Translation of GIT committish: 46e1b0a15ecf324b3272645224f3a2b3068dce73
 
     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 General input and output
 @chapter General input and output
 
 
 @node General input and output
 @chapter General input and output
 
-@untranslated
-
+Esta sección trata de asuntos relacionados con la entrada y salida
+generales de LilyPond, más que con la notación específica.
 
 @menu
 
 @menu
-* Input structure::             
-* Titles and headers::          
-* Working with input files::    
-* Controlling output::          
-* MIDI output::                 
+* Input structure::
+* Titles and headers::
+* Working with input files::
+* Controlling output::
+* MIDI output::
 @end menu
 
 @end menu
 
+
 @node Input structure
 @section Input structure
 
 @node Input structure
 @section Input structure
 
-@untranslated
-
+El formato principal de entrada para LilyPond son archivos de texto.
+Por convenio, el nombre de estos archivos termina en @code{.ly}.
 
 @menu
 
 @menu
-* Structure of a score::        
-* Multiple scores in a book::   
-* File structure::              
+* Structure of a score::
+* Multiple scores in a book::
+* File structure::
 @end menu
 
 @end menu
 
+
 @node Structure of a score
 @subsection Structure of a score
 
 @node Structure of a score
 @subsection Structure of a score
 
-@untranslated
+@funindex \score
+
+Un bloque @code{\score} debe contener una expresión musical única
+delimitada por un par de llaves:
+
+@example
+\score @{
+...
+@}
+@end example
+
+@c outer?
+@warning{Sólo puede haber @strong{una} expresión musical dentro del
+bloque @code{\score}, y @strong{debe} estar encerrada entre llaves.}
+
+Esta expresión musical única puede tener cualquier tamaño, y puede
+contener otras expresiones musicales hasta cualquier grado de
+complejidad.  Todos los siguientes ejemplos son expresiones musicales:
+
+@example
+@{ c'4 c' c' c' @}
+@end example
+
+@lilypond[verbatim,quote]
+{
+  { c'4 c' c' c'}
+  { d'4 d' d' d'}
+}
+@end lilypond
+
+@lilypond[verbatim,quote]
+<<
+  \new Staff { c'4 c' c' c' }
+  \new Staff { d'4 d' d' d' }
+>>
+@end lilypond
+
+@example
+@{
+  \new GrandStaff <<
+    \new StaffGroup <<
+      \new Staff @{ \flute @}
+      \new Staff @{ \oboe @}
+    >>
+    \new StaffGroup <<
+      \new Staff @{ \violinI @}
+      \new Staff @{ \violinII @}
+    >>
+  >>
+@}
+@end example
+
+Los comentarios son una excepción a esta regla general (para ver otras
+excepciones, consulte @ref{File structure}).  Tanto los comentarios de
+una línea como los que están delimitados por @code{%@{ .. %@}} se
+pueden escribir en cualquier lugar dentro del archivo de entrada.  Se
+pueden escribir dentro o fuera del bloque @code{\score}, y dentro o
+fuera de la expresión musical única dentro del bloque @code{\score}.
+
+
+@seealso
+Manual de aprendizaje:
+@rlearning{Working on input files},
+@rlearning{Music expressions explained},
+@rlearning{Score is a (single) compound musical expression}.
 
 
 @node Multiple scores in a book
 @subsection Multiple scores in a book
 
 
 
 @node Multiple scores in a book
 @subsection Multiple scores in a book
 
-@untranslated
+@funindex \book
+@cindex movimientos, varios
+
+Un documento puede contener varias piezas de música y texto.  Son
+ejemplos un libro de estudios o una parte orquestal con varios
+movimientos.  Cada movimiento se introduce con un bloque
+@code{\score}:
+
+@example
+\score @{
+  @var{..música..}
+@}
+@end example
+
+y los textos se introducen con un bloque @code{\markup}:
+
+@example
+\markup @{
+  @var{..texto..}
+@}
+@end example
+
+@funindex \book
+
+Todos los movimientos y textos que aparecen en el mismo archivo
+@code{.ly} se tipografían normalmente en la forma de un solo archivo
+de salida.
+
+@example
+\score @{
+  @var{..}
+@}
+\markup @{
+  @var{..}
+@}
+\score @{
+  @var{..}
+@}
+@end example
+
+Sin embargo, si queremos varios archivos de salida a partir del mismo
+archivo @code{.ly}, podemos escribir varios bloques @code{\book},
+donde cada uno de estos bloques @code{\book} dará como resultado un
+archivo de salida distinto.  Si no especificamos ningún bloque
+@code{\book} en el archivo,, LilyPond trata implícitamente todo el
+archivo como un solo bloque @code{\book}, véase @ref{File structure}.
+Una excepción importante se da dentro de los documentos de
+lilypond-book, en los que tenemos que escribir explícitamente un
+bloque @code{\book}, pues en caso contrario sólo aparecerá en la
+salida el primer @code{\score} o @code{\markup}.
+
+El encabezamiento de cada pieza se puede poner dentro del bloque
+@code{\score}.  Antes de cada movimiento, se imprime el nombre de la
+pieza (@code{piece}) extraído del encabezamiento.  El título del libro
+entero se puede poner dentro del bloque @code{\book}, pero si no está
+presente se inserta el encabezamiento @code{\header} que está al
+principio del archivo.
+
+@example
+\header @{
+  title = "Ocho miniaturas"
+  composer = "Igor Stravinsky"
+@}
+\score @{
+  @dots{}
+  \header @{ piece = "Romanze" @}
+@}
+\markup @{
+   ..texto de la segunda estrofa..
+@}
+\markup @{
+   ..texto de la tercera estrofa..
+@}
+\score @{
+  @dots{}
+  \header @{ piece = "Menuetto" @}
+@}
+@end example
+
+
+@funindex \bookpart
+
+Se pueden agrupar distintas piezas de música en partes de un libro
+utilizando bloques @code{\bookpart}.  Las partes de libro se separan
+por medio de saltos de página, y pueden dar comienzo con un título,
+como el libro propiamente dicho, mediante la especificación del bloque
+@code{\header}.
+
+@example
+\bookpart @{
+  \header @{
+    title = "Título del libro"
+    subtitle = "Primera parte"
+  @}
+  \score @{ @dots{} @}
+  @dots{}
+@}
+\bookpart @{
+  \header @{
+    subtitle = "Segunda parte"
+  @}
+  \score @{ @dots{} @}
+  @dots{}
+@}
+@end example
 
 
 @node File structure
 @subsection File structure
 
 
 
 @node File structure
 @subsection File structure
 
-@untranslated
+@funindex \paper
+@funindex \midi
+@funindex \layout
+@funindex \header
+@funindex \score
+@funindex \book
+@funindex \bookpart
+
+Un archivo @code{.ly} puede contener cualquier número de expresiones
+del nivel superior, donde una expresión del nivel superior es una de
+las siguientes posibilidades:
+
+@itemize @bullet
+@item
+Una definición de salida, como @code{\paper}, @code{\midi} y
+@code{\layout}.  Tal definición en el nivel más alto cambia los
+ajustes predeterminados para todo el libro.  Si se introduce más de
+una de estas definiciones del mismo tipo en el nivel más alto,
+cualquier definición en una expresión posterior tiene prioridad.
+
+@item
+Una expresión directa de Scheme, como
+@code{#(set-default-paper-size "a7" 'landscape)} o
+@code{#(ly:set-option 'point-and-click #f)}.
+
+@item
+Un bloque @code{\header}.  Esto establece el bloque de encabezamiento
+global.  Es el bloque que contiene las definiciones de los ajustes
+para todo el libro, como el compositor, título, etc.
+
+@item
+Un bloque @code{\score}.  Esta partitura se reúne con otras partituras
+del nivel superior, y se combina con ellas formando un @code{\book}
+(libro) único.  Este comportamiento se puede cambiar estableciendo el
+valor de la variable @code{toplevel-score-handler} en el nivel
+superior.  El @emph{handler} predeterminado se define en el archivo de
+inicio @file{../scm/@/lily@/.scm}.
+
+@item
+Un bloque @code{\book} combina lógicamente varios movimientos (es
+decir, varios bloques @code{\score}) en un solo documento.  Si hay
+varias partituras @code{\score}, se crea un solo archivo de salida
+para cada bloque @code{\book}, en el que se concatenan todos los
+movimientos correspondientes.  La única razón para especificar
+explícitamente bloques @code{\book} en un archivo de entrada
+@code{.ly} es si queremos crear varios archivos de salida a partir de
+un único archivo de entrada.  Una excepción se da dentro de los
+documentos de lilypond-book, en los que tenemos que escribir
+explícitamente un bloque @code{\book} si queremos tener más de una
+única partitura @code{\score} o marcado @code{\markup} en el mismo
+ejemplo.  Se puede cambiar este comportamiento estableciendo el valor
+de la variable @code{toplevel-book-handler} en el nivel superior.  El
+@emph{handler} predeterminado se define en el archivo de inicio
+@file{../scm/@/lily@/.scm}.
+
+@item
+Un bloque @code{\bookpart}.  Un libro puede dividirse en varias
+partes, utilizando bloques @code{\bookpart}, con objeto de facilitar
+la inserción de saltos de página o usar distintos ajustes de
+@code{\paper} en las distintas partes.
+
+@item
+Una expresión musical compuesta, como
+@example
+@{ c'4 d' e'2 @}
+@end example
+
+Esto añade la pieza al @code{\score} y la conforma dentro de un libro
+único junto a todas las demás partituras @code{\score} y expresiones
+musicales del nivel superior.  En otras palabras, un archivo que
+contiene sólo la expresión musical anterior se traduce a
+
+@example
+\book @{
+  \score @{
+    \new Staff @{
+      \new Voice @{
+        @{ c'4 d' e'2 @}
+      @}
+    @}
+  @}
+       \layout @{ @}
+       \header @{ @}
+@}
+@end example
+
+Se puede cambiar este comportamiento estableciendo el valor de la
+variable @code{toplevel-music-handler} en el nivel más alto.  El
+@emph{handler} predeterminado se define en el archivo de inicio
+@file{../scm/@/lily@/.scm}.
+
+@item
+Un texto de marcado, por ejemplo una estrofa
+@example
+\markup @{
+   2.  Estrofa dos, línea uno
+@}
+@end example
+
+Los textos de marcado se colocan encima, en medio o debajo de las
+partituras o expresiones musicales, según donde aparezcan escritos.
+
+@cindex variables
+
+@item
+Una variable, como
+@example
+fulano = @{ c4 d e d @}
+@end example
+
+Esto se puede utilizar más tarde en el archivo escribiendo
+@code{\fulano}.  El nombre de las variables ha de ser exclusivamente
+alfabético; sin números, guiones ni barras bajas.
+
+@end itemize
+
+El ejemplo siguiente muestra tres cosas que se pueden introducir en el
+nivel superior:
+
+@example
+\layout @{
+  % No justificar la salida
+  ragged-right = ##t
+@}
+
+\header @{
+   title = "Do-re-mi"
+@}
+
+@{ c'4 d' e2 @}
+@end example
+
+En cualquier punto del archivo se pueden introducir cualquiera de las
+instrucciones léxicas siguientes:
+
+@itemize
+@item @code{\version}
+@item @code{\include}
+@item @code{\sourcefilename}
+@item @code{\sourcefileline}
+@item
+Un comentario de una línea, determinado por un símbolo @code{%} al principio.
+
+@item
+Un comentario de varias líneas, delimitado por @code{%@{ .. %@}}.
+
+@end itemize
+
+@cindex espacios en blanco
+
+Por lo general se ignoran los espacios entre elementos del flujo de
+entrada, y se pueden omitir o aumentar tranquilamente para mejorar la
+legibilidad.  Sin embargo, los espacios se deben utilizar siempre para
+evitar errores, en las siguientes situaciones:
+
+@itemize
+@item Alrededor de todas y cada una de las llaves curvas de apertura y cierre.
+@item A continuación de las instrucciones y variables, es decir, todos los elementos
+que comienzan con un signo @code{\} de barra invertida.
+@item A continuación de todo elemento que se deba interpretar como expresión
+de Scheme, es decir, todo elemento que comience por un signo @code{#}.
+@item Para separar los elementode de una expresión de Scheme.
+@item Dentro de @code{lyricmode} para separar todos los términos de las instrucciones
+@code{\override} y @code{\set}.  Concretamente, hay que usar espacios
+alrededor del punto y el signo igual en instrucciones como
+@code{\override Score . LyricText #'font-size = #5} y antes y después
+de la instrucción completa.
+
+@end itemize
+
+@seealso
+Manual de aprendizaje:
+@rlearning{How LilyPond input files work}.
 
 
 @node Titles and headers
 
 
 @node Titles and headers
@@ -59,17 +402,19 @@ Casi toda la música impresa tiene un título y el nombre del
 compositor; ciertas piezas tienen mucha más información.
 
 @menu
 compositor; ciertas piezas tienen mucha más información.
 
 @menu
-* Creating titles::             
-* Custom titles::               
-* Reference to page numbers::   
-* Table of contents::           
+* Creating titles::
+* Custom titles::
+* Reference to page numbers::
+* Table of contents::
 @end menu
 
 @end menu
 
+
 @node Creating titles
 @subsection Creating titles
 
 Se crean títulos para cada uno de los bloques @code{\score} así como
 @node Creating titles
 @subsection Creating titles
 
 Se crean títulos para cada uno de los bloques @code{\score} así como
-para todo el archivo de entrada (o bloque @code{\book} (libro)).
+para todo el archivo de entrada (o bloque @code{\book}, libro) y las
+partes de libro (creadas mediante bloques @code{\bookpart}).
 
 El contenido de cada título se extrae a partir de los bloques
 @code{\header} (cabecera).  El bloque de cabecera de un libro
 
 El contenido de cada título se extrae a partir de los bloques
 @code{\header} (cabecera).  El bloque de cabecera de un libro
@@ -130,7 +475,7 @@ Esto fuerza que el título comience sobre una página nueva (establézcalo a ##t
 @funindex copyright
 @item copyright
 Aviso de Copyright, centrado en la parte inferior de la primera
 @funindex copyright
 @item copyright
 Aviso de Copyright, centrado en la parte inferior de la primera
-página.  Para insertar el símbolo de copyright symbol, consulte
+página.  Para insertar el símbolo de copyright, consulte
 @ref{Text encoding}.
 
 @funindex tagline
 @ref{Text encoding}.
 
 @funindex tagline
@@ -152,13 +497,13 @@ cualquier instrucción de marcado de texto (Véase @ref{Formatting text}).
 \book {
   \header {
     dedication = "dedicated to me"
 \book {
   \header {
     dedication = "dedicated to me"
-    title = \markup \center-align { "Title first line" "Title second line,
+    title = \markup \center-column { "Title first line" "Title second line,
 longer" }
     subtitle = "the subtitle,"
     subsubtitle = #(string-append "subsubtitle LilyPond version "
 (lilypond-version))
     poet = "Poet"
 longer" }
     subtitle = "the subtitle,"
     subsubtitle = #(string-append "subsubtitle LilyPond version "
 (lilypond-version))
     poet = "Poet"
-    composer =  \markup \center-align { "composer" \small "(1847-1973)" }
+    composer =  \markup \center-column { "composer" \small "(1847-1973)" }
     texttranslator = "Text Translator"
     meter = \markup { \teeny "m" \tiny "e" \normalsize "t" \large "e" \huge
 "r" }
     texttranslator = "Text Translator"
     meter = \markup { \teeny "m" \tiny "e" \normalsize "t" \large "e" \huge
 "r" }
@@ -224,7 +569,7 @@ del @code{\header}.
 }
 @end lilypond
 
 }
 @end lilypond
 
-@funindex printallheaders
+@funindex print-all-headers
 @noindent
 Se puede cambiar este comportamiento (e imprimir todas las cabeceras
 cuando la cabecera @code{\header} está definida dentro del bloque
 @noindent
 Se puede cambiar este comportamiento (e imprimir todas las cabeceras
 cuando la cabecera @code{\header} está definida dentro del bloque
@@ -232,7 +577,7 @@ cuando la cabecera @code{\header} está definida dentro del bloque
 
 @example
 \paper@{
 
 @example
 \paper@{
-  printallheaders=##t
+  print-all-headers = ##t
 @}
 @end example
 
 @}
 @end example
 
@@ -263,7 +608,7 @@ falso.
 @subsection Custom titles
 
 Una opción más avanzada es cambiar las definiciones de las variables
 @subsection Custom titles
 
 Una opción más avanzada es cambiar las definiciones de las variables
-siguientes dentro del bloque @code{\paper} block.  El archivo de
+siguientes dentro del bloque @code{\paper}.  El archivo de
 inicio @file{ly/titling-init.ly} ofrece un listado de la disposición
 predeterminada.
 
 inicio @file{ly/titling-init.ly} ofrece un listado de la disposición
 predeterminada.
 
@@ -288,7 +633,7 @@ normalmente contiene el nombre del movimiento (campo @code{piece}).
   sin especificar, se usará el encabezamiento de las páginas impares.
 
   De forma predeterminada, los encabezamientos se definen de tal forma
   sin especificar, se usará el encabezamiento de las páginas impares.
 
   De forma predeterminada, los encabezamientos se definen de tal forma
-que el número de página está en el borde exterior, y el isntrumento
+que el número de página está en el borde exterior, y el instrumento
 está centrado.
 
 @funindex oddFooterMarkup
 está centrado.
 
 @funindex oddFooterMarkup
@@ -372,15 +717,18 @@ para decidir estas dimensiones.  Si el libro tiene entre 10 y 99
 páginas, el medidor puede ser "00", es decir, un número de dos
 dígitos.
 
 páginas, el medidor puede ser "00", es decir, un número de dos
 dígitos.
 
-@predefined
 
 
+@predefined
 @funindex \label
 @funindex \label
-@code{\label}
+@code{\label},
 @funindex \page-ref
 @funindex \page-ref
-@code{\page-ref}
+@code{\page-ref}.
+@endpredefined
+
 
 @node Table of contents
 @subsection Table of contents
 
 @node Table of contents
 @subsection Table of contents
+
 Se puede insertar un índice general o tabla de contenidos utilizando
 la instrucción @code{\markuplines \table-of-contents}.  Los elementos
 que deben aparecer en la tabla de contenidos se introducen con la
 Se puede insertar un índice general o tabla de contenidos utilizando
 la instrucción @code{\markuplines \table-of-contents}.  Los elementos
 que deben aparecer en la tabla de contenidos se introducen con la
@@ -392,11 +740,11 @@ la jerarquía del código, o dentro de una expresión musical.
 \pageBreak
 
 \tocItem \markup "Primera partitura"
 \pageBreak
 
 \tocItem \markup "Primera partitura"
-\score { 
+\score {
   {
     c'  % ...
     \tocItem \markup "Un punto concreto dentro de la primera partitura"
   {
     c'  % ...
     \tocItem \markup "Un punto concreto dentro de la primera partitura"
-    d'  % ... 
+    d'  % ...
   }
 }
 
   }
 }
 
@@ -434,7 +782,7 @@ Observe la forma en que nos referimos al texto y al número de página
 del elemento de índice, dentro de la definición @code{tocItemMarkup}.
 
 También se pueden definir nuevas instrucciones y elementos de
 del elemento de índice, dentro de la definición @code{tocItemMarkup}.
 
 También se pueden definir nuevas instrucciones y elementos de
-marcado para crear índices generales más eleborados:
+marcado para crear índices generales más elaborados:
 @itemize
 @item en primer lugar, defina una variable de marcado nueva dentro del bloque @code{\paper}
 @item luego defina una función de música cuyo propósito es añadir un elemento al índice general
 @itemize
 @item en primer lugar, defina una variable de marcado nueva dentro del bloque @code{\paper}
 @item luego defina una función de música cuyo propósito es añadir un elemento al índice general
@@ -453,7 +801,7 @@ nombres de los actos de una ópera en el índice general:
   }
 }
 
   }
 }
 
-tocAct = 
+tocAct =
 #(define-music-function (parser location text) (markup?)
    (add-toc-item! 'tocActMarkup text))
 @end verbatim
 #(define-music-function (parser location text) (markup?)
    (add-toc-item! 'tocActMarkup text))
 @end verbatim
@@ -468,7 +816,7 @@ tocAct =
   }
 }
 
   }
 }
 
-tocAct = 
+tocAct =
 #(define-music-function (parser location text) (markup?)
    (add-toc-item! 'tocActMarkup text))
 
 #(define-music-function (parser location text) (markup?)
    (add-toc-item! 'tocActMarkup text))
 
@@ -484,93 +832,634 @@ tocAct =
 }
 @end lilypond
 
 }
 @end lilypond
 
+
 @seealso
 @seealso
+Archivos de inicio:
+@file{ly/@/toc@/-init@/.ly}.
 
 
-Archivos de inicio: @file{ly/@/toc@/-init@/.ly}.
 
 @predefined
 
 @predefined
-
 @funindex \table-of-contents
 @funindex \table-of-contents
-@code{\table-of-contents}
+@code{\table-of-contents},
 @funindex \tocItem
 @funindex \tocItem
-@code{\tocItem}
+@code{\tocItem}.
+@endpredefined
 
 
 @node Working with input files
 @section Working with input files
 
 
 
 @node Working with input files
 @section Working with input files
 
-@untranslated
-
-
 @menu
 @menu
-* Including LilyPond files::    
-* Different editions from one source::  
-* Text encoding::               
-* Displaying LilyPond notation::  
+* Including LilyPond files::
+* Different editions from one source::
+* Text encoding::
+* Displaying LilyPond notation::
 @end menu
 
 @end menu
 
+
 @node Including LilyPond files
 @subsection Including LilyPond files
 
 @node Including LilyPond files
 @subsection Including LilyPond files
 
-@untranslated
+@funindex \include
+@cindex including files
+
+Un proyecto grande se puede dividir en varios archivos.  Para
+referirse a otro archivo, utilice
+
+@example
+\include "otroarchivo.ly"
+@end example
+
+La línea @code{\include "otroarchivo.ly"} equivale a pegar todo el
+contenido de @file{otroarchivo.ly} en el archivo actual en el lugar en
+que aparece el @code{\include}.  Por ejemplo, en un proyecto grande
+podríamos querer archivos distintos para cada parte instrumental y
+crear un archivo de @qq{partitura completa} que reúne los archivos
+individuales de los instrumentos.  Normalmente el archivo incluido
+define un cierto número de variables que a partir de entonces quedan
+disponibles para poderlas utilizar en el archivo de la partitura
+completa.  En los archivos incluidos se pueden marcar las secciones
+etiquetadas para ayudar a hacerlas utilizables en distintos lugares de
+la partitura, véase @ref{Different editions from one source}.
+
+Los archivos que están en el directorio de trabajo actual se pueden
+referenciar simplemente especificando el nombre después de la
+instrucción @code{\include}.  Los archivos en otros lugares se pueden
+incluir proporcionando una referencia de ruta completa o una ruta
+relativa (pero utilice la barra inclinada normal del UNIX, /, no la
+barra invertida de DOS/Windows, \, como separador de directorio).  Por
+ejemplo, si @file{material.ly} está situado un directorio por encima
+del directorio de trabajo actual, utilice
+
+@example
+\include "../material.ly"
+@end example
+
+@noindent
+o si los archivos de las partes orquestales incluidas están todos
+situados en un subdirectorio llamado @file{partes} dentro del
+directorio actual, use
+
+@example
+\include "partes/VI.ly"
+\include "partes/VII.ly"
+... etc.
+@end example
+
+Los archivos de inclusión también pueden contener enunciados
+@code{\include} a su vez.  De forma predeterminada, estos enunciados
+@code{\include} de segundo nivel no se interpretan hasta que se
+incorporan al archivo principal, por lo que los nombres de archivo que
+especifican deben ser relativos al directorio que contiene el archivo
+principal, no al directorio que contiene el archivo incluido.  Sin
+embargo, este comportamiento se puede modificar pasando la opción
+@code{-drelative-includes} en la línea de órdenes (o mediante la
+adición de @code{#(ly:set-option 'relative-includes #t)} al principio
+del archivo principal de entrada).  Con el valor de
+@code{relative-includes} establecido, la ruta de cada instrucción
+@code{\include} se considera relativa al archivo que contiene dicha
+instrucción.  Este comportamiento es el recomendado y se convertirá en
+el comportamiento predeterminado en una versión futura de lilypond.
+
+También se pueden incluir archivos de un directorio que está en una
+ruta de búsqueda especificada como opción al invocar a LilyPond desde
+la línea de órdenes.  Los archivos incluidos se especifican usando
+solamente su nombre de archivo.  Por ejemplo, para compilar mediante
+este método un archivo @file{principal.ly} que incluye archivos
+situados en un subdirectorio llamado @file{partes}, cambie al
+directorio que contiene @file{principal.ly} e introduzca
+
+@example
+lilypond --include=partes principal.ly
+@end example
+
+y en @file{principal.ly} escriba
+
+@example
+\include "VI.ly"
+\include "VII.ly"
+... etc.
+@end example
+
+Los archivos que se incluyen en muchas partituras se pueden poner en
+el directorio de LilyPond @file{../ly} (la localización de este
+directorio depende de la instalación: véase
+@rlearning{Other sources of information}).  Estos archivos se pueden
+incluir sencillamente por su nombre en un enunciado @code{\include}.
+De esta forma se incluyen los archivos dependientes del idioma como
+@file{espanol.ly}.
+
+LilyPond incluye de forma predeterminada ciertos archivos cuando se
+inicia el programa.  Estas inclusiones no son visibles para el
+usuario, pero los archivos se pueden identificar ejecutando
+@code{lilypond --verbose} desde la línea de órdenes.  Esto presentará
+una lista de rutas y archivos que utiliza LilyPond, junto a muchas
+otras indicaciones.  De forma alternativa, pueden verse explicaciones
+sobre los archivos más importantes de este conjunto en
+@rlearning{Other sources of information}.  Estos archivos se pueden
+editar, pero los cambios realizados sobre ellos se perderán al
+instalar una nueva versión de LilyPond.
+
+Pueden verse ejemplos sencillos sobre el uso de @code{\include} en
+@rlearning{Scores and parts}.
+
+
+@seealso
+Manual de aprendizaje:
+@rlearning{Other sources of information},
+@rlearning{Scores and parts}.
+
+
+@knownissues
+
+Si un archivo incluido recibe un nombre igual al de uno de los
+archivos de instalación de LilyPond, el archivo que tiene prioridad es
+el de los archivos de instalación de LilyPond.
 
 
 @node Different editions from one source
 @subsection Different editions from one source
 
 
 
 @node Different editions from one source
 @subsection Different editions from one source
 
-@untranslated
-
+Se encuentran disponibles varios mecanismos para facilitar la
+producción de distintas versiones de una partitura a partir de la
+misma fuente musical.  Las variables son quizá más útiles para
+combinar secciones extensas de música y/o anotaciones de diversas
+formas, mientras que las etiquetas son más útiles para seleccionar una
+de entra varias secciones de música más cortas.  Cualquiera que sea el
+método utilizado, la separación de la notación de la estructura de la
+partitura hará que sea más fácil cambiar la estructura dejando intacta
+la notación.
 
 @menu
 
 @menu
-* Using variables::             
-* Using tags::                  
+* Using variables::
+* Using tags::
 @end menu
 
 @node Using variables
 @unnumberedsubsubsec Using variables
 
 @end menu
 
 @node Using variables
 @unnumberedsubsubsec Using variables
 
-@untranslated
+@cindex variables, uso de las
+
+Si las secciones de la música se definen dentro de variables, se
+pueden reutilizar en distintas partes de la partitura, véase
+@rlearning{Organizing pieces with variables}.  Por ejemplo, una
+partitura vocal @notation{a cappella} con frecuencia incluye una
+reducción de piano de las partes para ensayar que es idéntica a la
+música vocal, por lo que ésta sólo se tiene que escribir una vez.  Se
+puede combinar sobre un solo pentagrama la música de dos variables,
+véase @ref{Automatic part combining}.  He aquí un ejemplo:
+
+@lilypond[verbatim,quote]
+sopranoMusic = \relative c'' { a4 b c b8( a)}
+altoMusic = \relative g' { e4 e e f }
+tenorMusic = \relative c' { c4 b e d8( c) }
+bassMusic = \relative c' { a4 gis a d, }
+allLyrics = \lyricmode {King of glo -- ry }
+<<
+  \new Staff = "Soprano" \sopranoMusic
+  \new Lyrics \allLyrics
+  \new Staff = "Alto" \altoMusic
+  \new Lyrics \allLyrics
+  \new Staff = "Tenor" {
+    \clef "treble_8"
+    \tenorMusic
+  }
+  \new Lyrics \allLyrics
+  \new Staff = "Bass" {
+    \clef "bass"
+    \bassMusic
+  }
+  \new Lyrics \allLyrics
+  \new PianoStaff <<
+    \new Staff = "RH" {
+      \set Staff.printPartCombineTexts = ##f
+      \partcombine
+      \sopranoMusic
+      \altoMusic
+    }
+    \new Staff = "LH" {
+      \set Staff.printPartCombineTexts = ##f
+      \clef "bass"
+      \partcombine
+      \tenorMusic
+      \bassMusic
+    }
+  >>
+>>
+@end lilypond
+
+Se pueden producir partituras distintas que presenten sólo las partes
+vocales o sólo la parte de piano, cambiando solamente los enunciados
+estructurales, sin modificar la notación musical.
+
+Para partituras extensas, las definiciones de variable se pueden poner
+en archivos separados que se incluyen más tarde, véase @ref{Including
+LilyPond files}.
 
 
 @node Using tags
 @unnumberedsubsubsec Using tags
 
 
 
 @node Using tags
 @unnumberedsubsubsec Using tags
 
-@untranslated
+@funindex \tag
+@funindex \keepWithTag
+@funindex \removeWithTag
+@cindex etiqueta
+@cindex mantener música etiquetada
+@cindex quitar música etiquetada
+
+La instrucción @code{\tag #'@var{parteA}} marca una expresión musical
+con el nombre @var{parteA}.  Las expresiones etiquetadas de esta
+manera se pueden seleccionar o filtrar más tarde por su nombre, usando
+bien @code{\keepWithTag #'@var{nombre}} o bien @code{\removeWithTag
+#'@var{nombre}}.  El resultado de la aplicación de estos filtros a la
+música etiquetada es como sigue:
+
+@multitable @columnfractions .5 .5
+@headitem Filtro
+  @tab Resultado
+@item
+Música etiquetada precedida de @code{\keepWithTag #'@var{nombre}}
+@tab
+Se incluye la música no etiquetada y la música etiquetada con
+@var{nombre}; se excluye la música etiquetada con cualquier otro
+nombre de etiqueta.
+@item
+Música etiquetada precedida de @code{\removeWithTag #'@var{nombre}}
+@tab
+Se incluye la música no etiquetada y la música etiquetada con
+cualquier nombre de etiqueta distinto a @var{nombre}; se excluye la
+música etiquetada con @var{nombre}.
+@item
+Música etiquetada no precedida de @code{\keepWithTag} ni de
+@code{\removeWithTag}
+@tab Se incluye toda la música etiquetada y no etiquetada.
+@end multitable
+
+Los argumentos de las instrucciones @code{\tag}, @code{\keepWithTag} y
+@code{\removeWithTag} deben ser un símbolo (como @code{#'partitura} o
+@code{#'parte}), seguido de una expresión musical.
+
+En el ejemplo siguiente vemos dos versiones de una pieza musical, una
+que muestra trinos con la notación usual y otra con los trinos
+expandidos explícitamente:
+
+@lilypond[verbatim,quote]
+music = \relative g' {
+  g8. c32 d
+  \tag #'trills {d8.\trill }
+  \tag #'expand {\repeat unfold 3 {e32 d} }
+  c32 d
+ }
+
+\score {
+  \keepWithTag #'trills \music
+}
+\score {
+  \keepWithTag #'expand \music
+}
+@end lilypond
+
+@noindent
+De forma alternativa, a veces es más fácil excluir secciones de música:
+
+@lilypond[verbatim,quote]
+music = \relative g' {
+  g8. c32 d
+  \tag #'trills {d8.\trill }
+  \tag #'expand {\repeat unfold 3 {e32 d} }
+  c32 d
+ }
+
+\score {
+  \removeWithTag #'expand
+  \music
+}
+\score {
+  \removeWithTag #'trills
+  \music
+}
+@end lilypond
+
+El filtrado con etiquetas se puede aplicar a articulaciones, textos,
+etc. anteponiendo
+
+@example
+-\tag #'@var{mi-etiqueta}
+@end example
+
+a una articulación.  Por ejemplo, esto define una nota con una
+indicación opcional de digitación y una nota con una anotación
+condicional:
+
+@example
+c1-\tag #'finger ^4
+c1-\tag #'warn ^"¡Ojo!"
+@end example
+
+Se pueden poner varias etiquetas sobre expresiones con varias entradas
+de @code{\tag}:
+
+@lilypond[quote,verbatim]
+music = \relative c'' {
+  \tag #'a \tag #'both { a a a a }
+  \tag #'b \tag #'both { b b b b }
+}
+<<
+\keepWithTag #'a \music
+\keepWithTag #'b \music
+\keepWithTag #'both \music
+>>
+@end lilypond
+
+Se pueden aplicar varios filtros @code{\removeWithTag} a una sola
+expresión musical para quitar varias secciones etiquetadas con nombres
+distintos:
+
+@lilypond[verbatim,quote]
+music = \relative c'' {
+\tag #'A { a a a a }
+\tag #'B { b b b b }
+\tag #'C { c c c c }
+\tag #'D { d d d d }
+}
+{
+\removeWithTag #'B
+\removeWithTag #'C
+\music
+}
+@end lilypond
+
+Dos o más filtros @code{\keepWithTag} aplicados a una sola expresión
+musical producen la eliminación de @emph{todas} las secciones
+etiquetadas, porque el primer filtro quita todas las secciones
+etiquetadas excepto la que se nombra, y el segundo filtro elimina
+incluso esa sección etiquetada.
+
+
+@seealso
+Manual de aprendizaje:
+@rlearning{Organizing pieces with variables}.
+
+Referencia de la notación:
+@ref{Automatic part combining},
+@ref{Including LilyPond files}.
 
 
 
 
+@ignore
+@c This warning is more general than this placement implies.
+@c Rests are not merged whether or not they come from tagged sections.
+@c Should be deleted?  -td
+
+
+@knownissues
+
+Multiple rests are not merged if you create a score with more
+than one tagged section at the same place.
+
+@end ignore
+
 @node Text encoding
 @subsection Text encoding
 
 @node Text encoding
 @subsection Text encoding
 
-@untranslated
+LilyPond usa el conjunto de caracteres definido por el consorcio
+Unicode y la norma ISO/IEC 10646.  Define un nombre único y un código
+para los conjuntos de caracteres que se utilizan en prácticamente
+todos los idiomas modernos y también en muchos otros.  Unicode se
+puede implementar utilizando varios esquemas de codificación
+distintos.  LilyPond usa la codificación UTF-8 (UTF son las siglas de
+@emph{Unicode Transformation Format}, o formato de transformación de
+Unicode) que representa todos los caracteres comunes de Latin en un
+solo byte, y representa otros caracteres usando un formato de longitud
+variable de hasta cuatro bytes.
+
+El aspecto visual real de los caracteres viene determinado por los
+glifos que se definen en las fuentes tipográficas concretas que se
+tengan disponibles: una fuente tipográfica define la asignación de un
+subconjunto de los códigos de Unicode a glifos.  LilyPond usa la
+biblioteca Pango para representar y disponer tipográficamente textos
+multilingües.
+
+LilyPond no realiza ninguna conversión en la codificación de la
+entrada.  Esto significa que cualquier text, ya sea el título, la
+letra de la canción o una instrucción musical que contenga caracteres
+distintos a los del conjunto ASCII, se deben codificar en UTF-8.  La
+forma más fácil de escribir dicho texto es utilizar un editor
+preparado para Unicode y guardar el archivo con la codificación UTF-8.
+Casi todos los editores modernos populares contemplan el UTF-8, por
+ejemplo lo hacen vim, Emacs, jEdit, y GEdit.  Todos los sistemas MS
+Windows posteriores a NT usan Unicode como codificación de caracteres
+nativa, de manera que incluso el accesorio Bloc de Notas (Notepad)
+puede editar y guardar un archivo en el formato UTF-8.  Una
+alternativa más funcional para Windows es BabelPad.
+
+Si un archivo de entrada que contiene un carácter que no es ASCII, no
+se guarda en el formato UTF-8, se genera el mensaje de error
+
+@example
+FT_Get_Glyph_Name () error: argumento inválido
+@end example
+
+He aquí un ejemplo que muestra texto cirílico, hebreo y portugués:
+
+@lilypond[quote]
+%c No verbatim here as the code does not display correctly in PDF
+% Cyrillic
+bulgarian = \lyricmode {
+  Жълтата дюля беше щастлива, че пухът, който цъфна, замръзна като гьон.
+}
+
+% Hebrew
+hebrew = \lyricmode {
+  זה כיף סתם לשמוע איך תנצח קרפד עץ טוב בגן.
+}
+
+% Portuguese
+portuguese = \lyricmode {
+  à vo -- cê uma can -- ção legal
+}
+
+\relative  {
+  c2 d e f g f e
+}
+\addlyrics { \bulgarian }
+\addlyrics { \hebrew }
+\addlyrics { \portuguese }
+@end lilypond
+
+Para introducir un carácter aislado para el que se conoce el punto de
+código Unicode pero no está disponible en el editor que se está
+usando, use @code{\char ##xhhhh} o bien @code{\char #dddd} dentro de
+un bloque @code{\markup}, donde @code{hhhh} es el código hexadecimal
+del carácter en cuestión y @code{dddd} es su valor decimal
+correspondiente.  Pueden omitirse los ceros iniciales, pero es
+costumbre indicar los cuatro caracteres en la representación
+hexadecimal (observe que @emph{no} debe utilizarse la codificación
+UTF-8 del punto de código Unicode después de @code{\char}, pues la
+codificación UTF-8 contiene bits adicionales que indican el número de
+octetos.)
+
+Por ejemplo, tanto @code{\char ##x03BE} como @code{\char #958}
+insertan el carácter Unicode U+03BE, que tiene el nombre Unicode
+@qq{Letra griega Xi pequeña}.
+
+Se puede escribir de esta forma cualquier punto de código Unicode, y
+si todos los caracteres especiales se escriben en este formato no es
+necesario guardar el archivo de entrada en formato UTF-8.  Por
+supuesto, debe estar instalada y estar disponible para LilyPond una
+fuente tipográfica que contenga codificados todos estos caracteres.
+
+El ejemplo siguiente muestra valores hexadecimales Unicode que se usan
+en cuatro lugares: en una llamada de ensayo, como texto de
+articulación, en la letra y como texto independiente bajo la
+partitura:
+
+@lilypond[quote,verbatim]
+\score {
+  \relative c'' {
+    c1 \mark \markup { \char ##x03EE }
+    c1_\markup { \tiny { \char ##x03B1 " to " \char ##x03C9 } }
+  }
+  \addlyrics { O \markup { \concat{ Ph \char ##x0153 be! } } }
+}
+\markup { "Copyright 2008--2009" \char ##x00A9 }
+@end lilypond
+
+Para escribir el símbolo de copyright en la nota de créditos, utilice:
+
+@example
+\header @{
+  copyright = \markup @{ \char ##x00A9 "2008" @}
+@}
+@end example
 
 
 @node Displaying LilyPond notation
 @subsection Displaying LilyPond notation
 
 
 
 @node Displaying LilyPond notation
 @subsection Displaying LilyPond notation
 
-@untranslated
+@funindex \displayLilyMusic
+La impresión textual de una expresión musical en notación de LilyPond
+puede hacerse usando la función musical @code{\displayLilyMusic}.  Por
+ejemplo,
 
 
+@example
+@{
+  \displayLilyMusic \transpose c a, @{ c e g a bes @}
+@}
+@end example
 
 
-@node Controlling output
-@section Controlling output
+imprimirá
+
+@example
+@{ a, cis e fis g @}
+@end example
 
 
-@untranslated
+De forma predeterminada, LilyPond imprime estos mensajes en la consola
+junto al resto de los mensajes.  Para discernir entre estos mensajes y
+guardar el resultado de @code{\display@{MATERIAL@}}, redireccione la
+salida hacia un archivo.
 
 
+@c TODO What happens under Windows?
+
+@example
+lilypond archivo.ly >resultado.txt
+@end example
+
+
+
+@node Controlling output
+@section Controlling output
 
 @menu
 
 @menu
-* Extracting fragments of music::  
-* Skipping corrected music::    
+* Extracting fragments of music::
+* Skipping corrected music::
 @end menu
 
 @node Extracting fragments of music
 @subsection Extracting fragments of music
 
 @end menu
 
 @node Extracting fragments of music
 @subsection Extracting fragments of music
 
-@untranslated
+Es posible citar pequeños fragmentos de una partitura grande
+directamente a partir de la salida.  Puede compararse con la
+separación de una pieza de una partitura, recortándola con tijeras.
+
+Esto se hace definiendo los compases que se deben recortar.  Por
+ejemplo, la inclusión de la siguiente definición
+
+@verbatim
+\layout {
+  clip-regions
+  = #(list
+      (cons
+       (make-rhythmic-location 5 1 2)
+       (make-rhythmic-location 7 3 4)))
+}
+@end verbatim
+
+@noindent
+extrae un fragmento empezando por la mitad del quinto compás y
+finalizando en el séptimo compás.  El significado de @code{5 1 2} es:
+después de una blanca (1/2) en el compás 5, y el de @code{7 3 4}
+después de tres negras del compás 7.
+
+Se pueden definir más zonas de recorte añadiendo más parejas de
+definición de tiempo rhythmic-location a la lista.
+
+Para poder utilizar esta funcionalidad, LilyPond se debe invocar con
+la opción @code{-dclip-systems}.  Los recortes aparecen en la salida
+como archivos EPS, y se convierten en PDF y PNG si estos formatos
+también están activados.
+
+Para ver más información sobre los formatos de salida, consulte
+@rprogram{Invoking lilypond}.
 
 
 @node Skipping corrected music
 @subsection Skipping corrected music
 
 
 
 @node Skipping corrected music
 @subsection Skipping corrected music
 
-@untranslated
+@funindex skipTypesetting
+@funindex showFirstLength
+@funindex showLastLength
+
+Al escribir o copiar música, normalmente sólo es interesante de ver y
+corregir la música cercana al final (donde estamos añadiendo las
+notas).  Para acelerar este proceso de corrección, es posible saltar
+la composición tipográfica de todos excepto unos pocos de los últimos
+compases.  Esto se consigue poniendo
+
+@verbatim
+showLastLength = R1*5
+\score { ... }
+@end verbatim
+
+@noindent
+en nuestro archivo fuente.  Esto hará que se tracen sólo los últimos
+cinco compases (suponiendo un compás de 4/4) de cada una de las
+partituras @code{\score} del archivo de entrada.  Para piezas largas,
+el tipografiado de únicamente una parte pequeña es con frecuencia un
+orden de magnitud más rápido que el de la obra completa.  Si estamos
+trabajando sobre el principio de una partitura que ya hemos
+tipografiado (p.ej., para añadir una parte instrumental nueva),
+también puede ser útil la propiedad @code{showFirstLength}.
+
+Este mecanismo de pasar por alto partes de un partitura se puede
+controlar con un grano más fino mediante la propiedad
+@code{Score.skipTypesetting}.  Cuando su valor está establecido, no se
+lleva a cabo ningún tipografiado en absoluto.
+
+Esta propiedad se usa también para controlar la salida al archivo
+MIDI.  Observe que pasa por alto todos los eventos, incluidos el tempo
+y los cambios de instrumento.  Está usted advertido.
+
+@lilypond[quote,fragment,ragged-right,verbatim]
+\relative c'' {
+  c8 d
+  \set Score.skipTypesetting = ##t
+  e e e e e e e e
+  \set Score.skipTypesetting = ##f
+  c d b bes a g c2 }
+@end lilypond
+
+En música polifónica, @code{Score.skipTypesetting} afecta a todas las
+voces y pentagramas, ahorrando más tiempo incluso.
 
 
 @node MIDI output
 
 
 @node MIDI output
@@ -582,7 +1471,7 @@ Archivos de inicio: @file{ly/@/toc@/-init@/.ly}.
 El MIDI (Musical Instrument Digital Interface, Interfase Digital para
 Instrumentos Musicales) es un estándar para interconectar y controlar
 instrumentos musicales electrónicos.  Un archivo o secuencia MIDI es
 El MIDI (Musical Instrument Digital Interface, Interfase Digital para
 Instrumentos Musicales) es un estándar para interconectar y controlar
 instrumentos musicales electrónicos.  Un archivo o secuencia MIDI es
-una serie de notas dentro de un conjunto de pistas.  No es un archivoo
+una serie de notas dentro de un conjunto de pistas.  No es un archivo
 de sonidos reales; se necesita un programa reproductor especial para
 traducir la serie de notas en sonidos de verdad.
 
 de sonidos reales; se necesita un programa reproductor especial para
 traducir la serie de notas en sonidos de verdad.
 
@@ -592,28 +1481,19 @@ para comprobar la corrección de la música; las octavas equivocadas o
 las alteraciones erróneas se ponen de relieve muy claramente al
 escuchar la salida MIDI.
 
 las alteraciones erróneas se ponen de relieve muy claramente al
 escuchar la salida MIDI.
 
-@knownissues
-
-Muchhos efectos con interés musical como el swing, la articulación, el
-fraseo, etc., no se traducen al midi.
-
-La salida midi reserva un canal para cada pentagrama, y uno más para
-los ajustes globales.  Por ello, el archivo de entrada no debería
-tener más de 15 pentagramas (o 14 si no usa percusión).  Los otros
-pentagramas permanecerán en silencio.
-
-No todos los reproductores de midi manejan correctamente los cambios
-de tempo en la salida midi.  Entre los reproductores que se sabe que
-funcionan, se encuentra
-@uref{http://@/timidity@/.sourceforge@/.net/,timidity}.
-
+@c TODO Check this
+La salida MIDI reserva un canal por cada pentagrama, y otro para los
+ajustes globales.  Por ello, el archivo MIDI no debe tener más de 15
+pautas (o 14 si no se usa la percusión).  Otros pentagramas permanecen
+en silencio.
 
 @menu
 
 @menu
-* Creating MIDI files::         
-* MIDI block::                  
-* What goes into the MIDI output?::  
-* Repeats in MIDI::             
-* Controlling MIDI dynamics::   
+* Creating MIDI files::
+* MIDI block::
+* What goes into the MIDI output?::
+* Repeats in MIDI::
+* Controlling MIDI dynamics::
+* Percussion in MIDI::
 @end menu
 
 @node Creating MIDI files
 @end menu
 
 @node Creating MIDI files
@@ -625,32 +1505,14 @@ Para crear un MIDI a partir de una pieza de música, escriba un bloque
 @example
 \score @{
   @var{...música...}
 @example
 \score @{
   @var{...música...}
-   \midi @{
-     \context @{
-       \Score
-       tempoWholesPerMinute = #(ly:make-moment 72 4)
-       @}
-     @}
+  \midi @{ @}
 @}
 @end example
 
 @}
 @end example
 
-El tempo se puede especificar utilizando la instrucción @code{\tempo}
-dentro de la propia música, véase @ref{Metronome marks}.  Más abajo se
-muestra una alternativa que no da lugar a una indicación metronómica
-en la partitura impresa.  En este ejemplo, el tempo de negras se
-establece en 72 pulsos por minuto.  Esta clase de especificación del
-tempo no puede tomar notas con puntillo como argumento.  En este caso,
-divida las notas con puntillo en unidades más pequeñas.  Por ejemplo,
-un tempo de 90 negras con puntillo por minuto se puede especificar
-como 270 corcheas por minuto:
-
-@example
-tempoWholesPerMinute = #(ly:make-moment 270 8)
-@end example
-
-Si hay una instrucción @code{\midi} dentro de un @code{\score},
-solamente se producirá MIDI.  Si se necesita también una notación
-impresa, se debe escribir un bloque @code{\layout}
+Si hay un bloque @code{\midi} dentro de un @code{\score} que no tenga
+ningún bloque @code{\layout}, solamente se producirá MIDI.  Si se
+necesita una notación impresa, debe haber también un bloque
+@code{\layout}:
 
 @example
 \score @{
 
 @example
 \score @{
@@ -659,123 +1521,233 @@ impresa, se debe escribir un bloque @code{\layout}
   \layout @{ @}
 @}
 @end example
   \layout @{ @}
 @}
 @end example
-@cindex layout, bloque
 
 
+Se traducen correctamente a la salida MIDI la altura y duración de las
+notas, las ligaduras de unión, matices y cambios de tempo.  Las
+indicaciones dinámicas, crescendi y decrescendi se traducen a niveles
+de volumen MIDI.  Las marcas dinámicas se traducen a una fracción fija
+del rango de volumen MIDI disponible.  Los crescendi y decrescendi
+hacen que el volumen varía linealmente entre sus dos extremos. El
+efecto de las indicaciones dinámicas sobre la salida MIDI se puede
+eliminar por completo, véase @ref{MIDI block}.
+
+El tempo inicial y los cambios de tempo posteriores se pueden
+especificar utilizando la instrucción @code{\tempo} dentro de la
+propia notación musical.  Se reflejan en cambios de tempo en la salida
+MIDI.  Esta instrucción normalmente hace que se imprima la indicación
+metronómica, pero esto se puede eliminar, véase @ref{Metronome marks}.
+Más abajo se describe una forma alternativa de especificar el tempo
+MIDI inicial o global, véase @ref{MIDI block}.
+
+Debido a ciertas limitaciones de Windows, la extensión predeterminada
+para los archivos MIDI en Windows es @code{.mid}. Otros sistemas
+operativos utilizan la extensión @code{.midi}.  Si prefiere una
+extensión diferente, inserte la siguiente línea en el nivel jerárquico
+superior del archivo de entrada, antes del inicio de cualquier bloque
+@code{\book}, @code{\bookpart} o @code{\score}:
+
+@example
+#(ly:set-option 'midi-extension "midi")
+@end example
 
 
+La línea anterior establece la extensión predeterminada para los
+archivos MIDI a @code{.midi}.
 
 
-Se interpretan las ligaduras de unión, los matices dinámicos y los
-cambios de tempo.  Las marcas dinámicas, crescendi y decrescendi se
-traducen en niveles de volumen MIDI.  Las marcas de dinámica se
-traducen a una fracción fija del rango de volumen MIDI disponible, los
-crescendi y decrescendi hacen que el volumen varíe de forma lineal
-entre sus dos extremos.  Las fracciones se pueden ajustar mediante
-@code{dynamicAbsoluteVolumeFunction} dentro de un contexto
-@rinternals{Voice}.  Para cada tipo de instrumento MIDI se puede
-definir un rango de volumen.  Esto proporciona un control de
-ecualización básico, que puede realzar significativamente la calidad
-de la salida MIDI.  El ecualizador se puede controlar estableciendo un
-valor para @code{instrumentEqualizer}, o fijando
+De forma alternativa, esta opción se puede también proporcionar en la
+línea de órdenes:
 
 @example
 
 @example
-\set Staff.midiMinimumVolume = #0.2
-\set Staff.midiMaximumVolume = #0.8
+lilypond … -dmidi-extension=midi archivoLily.ly
 @end example
 
 @end example
 
-Para quitar los matices dinámicos de la salida MIDI, escriba las
-siguientes líneas dentro de la sección @code{\midi@{@}}.
+
+@unnumberedsubsubsec Instrument names
+
+@cindex instrumento, nombres de
+@funindex Staff.midiInstrument
+
+El nombre del instrumento MIDI se establece mediante la propiedad
+@code{Staff.midiInstrument}.  El nombre del instrumento se debe elegir
+de entre los que están en la lista que aparece en @ref{MIDI
+instruments}.
 
 @example
 
 @example
-\midi @{
-  ...
-  \context @{
-    \Voice
-    \remove "Dynamic_performer"
-  @}
+\new Staff @{
+  \set Staff.midiInstrument = #"glockenspiel"
+  @var{...notes...}
+@}
+@end example
+
+@example
+\new Staff \with @{midiInstrument = #"cello"@} @{
+  @var{...notes...}
 @}
 @end example
 
 @}
 @end example
 
+Si el instrumento elegido no coincide exactamente con uno de los
+instrumentos de la lista de instrumentos MIDI, se usará el instrumento
+Piano de Cola (@code{"acoustic grand"}).
+
+@snippets
+
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
+{changing-midi-output-to-one-channel-per-voice.ly}
 
 @knownissues
 
 
 @knownissues
 
-Los (de)crescendos sin terminar no se procesarán adecuadamente en el
-archivo midi, dando como resultado pasajes de música en silenco.  Una
-forma de sortearlo es terminar el (de)crescendo explícitamente.  Por
-ejemmplo,
+@c In 2.11 the following no longer seems to be a problem -td
+@ignore
+Unterminated (de)crescendos will not render properly in the midi file,
+resulting in silent passages of music.  The workaround is to explicitly
+terminate the (de)crescendo.  For example,
 
 @example
 @{ a\< b c d\f @}
 @end example
 
 @noindent
 
 @example
 @{ a\< b c d\f @}
 @end example
 
 @noindent
-no funcionará bien, pero
+will not work properly but
 
 @example
 @{ a\< b c d\!\f @}
 @end example
 
 @noindent
 
 @example
 @{ a\< b c d\!\f @}
 @end example
 
 @noindent
-sí lo hará.
+will.
+@end ignore
 
 
+Los cambios del volumen MIDI sólo tienen lugar al principio de la
+nota, por lo que los crescendi y decrescendi no pueden afectar al
+volumen de una sola nota.
 
 
-Solamente se crea una salida MIDI cuando la instrucción @code{\midi}
-está dentro de un bloque @code{\score}.  Si lo escribe dentro de un
-contexto instanciado explícitamente (es decir: @code{\new Score} ) el
-archivo no se producirá.  Para solucionarlo, encierre el @code{\new
-Score} y el @code{\midi} dentro de un bloque @code{\score}.
+No todos los reproductores de MIDI manejar adecuadamente los cambios de
+tempo de la salida MIDI.  Entre los reproductores que se sabe que
+funcionan se encuentran el Reproductor de Medios de MS Windows y
+@uref{http://@/timidity@/.sourceforge@/.net/,timidity}.
+
+
+@node MIDI block
+@subsection MIDI block
+
+@cindex bloque MIDI
+
+Si se requiere una salida MIDI, debe aparecer un bloque @code{\midi}
+dentro de un bloque de partitura.  Es análogo al bloque layout de
+diseño de página, pero algo maś simple.  Con frecuencia, el bloque
+@code{\midi} se deja vacío, pero puede contener reorganizaciones de
+contextos, definiciones de contexto nuevas o código para fijar valores
+de propiedades.  Por ejemplo, en el ejemplo siguiente se establece el
+tempo inicial exportado al archivo MIDI sin hacer que se imprima una
+indicación de tempo:
 
 @example
 \score @{
 
 @example
 \score @{
-  \new Score @{ @dots{}notas@dots{} @}
-  \midi
+  @var{...música...}
+  \midi @{
+    \context @{
+      \Score
+      tempoWholesPerMinute = #(ly:make-moment 72 4)
+    @}
+  @}
 @}
 @end example
 
 @}
 @end example
 
+En este ejemplo, el tempo se establece a 72 pulsos de negra por
+minuto.  Esta clase de especificación de tempo no puede tomar como
+argumento una figura con puntillo.  Si necesitamos una figura con
+puntillo, dividimos la nota con puntillo en figuras más pequeñas.  Por
+ejemplo, un tempo de 90 negras con puntillo por minuto se puede
+especificar como 270 corcheas por minuto:
 
 
-@unnumberedsubsubsec Instrument names
-@cindex instrumento, nombres de
-@funindex Staff.midiInstrument
+@example
+tempoWholesPerMinute = #(ly:make-moment 270 8)
+@end example
 
 
-El nombre del instrumento MIDI se establece mediante la propiedad
-@code{Staff.midiInstrument}.  El nombre del instrumento se debe elegir
-de entre los que están en la lista que aparece en @ref{MIDI
-instruments}.
+@cindex MIDI, definiciones de contexto
+
+Las definiciones de contexto siguen con precisión la misma sintaxis
+que la de un bloque @code{\layout}.  Los módulos de traducción para el
+sonido reciben el nombre de ejecutantes.  Los contextos para la salida
+MIDI se definen en @file{../ly/@/performer@/-init@/.ly}, véase
+@rlearning{Other sources of information}.  Por ejemplo, para eliminar
+el efecto de los matices de la salida MIDI, inserte las líneas
+siguientes en el bloque @code{\midi@{ @}}.
 
 @example
 
 @example
-\set Staff.midiInstrument = "glockenspiel"
-@var{...notes...}
+\midi @{
+  ...
+  \context @{
+    \Voice
+    \remove "Dynamic_performer"
+  @}
+@}
 @end example
 
 @end example
 
-Si el instrumento elegido no coincide exactamente con uno de los
-instrumentos de la lista de instrumentos MIDI, se usará el instrumento
-Piano de Cola (@code{"acoustic grand"}).
-
+La salida MIDI se crea sólo cuando se incluye un bloque @code{\midi}
+dentro de un bloque de partitura definido con una instrucción
+@code{\score}.  Si se sitúa dentro de un contexto de partitura
+instanciado explícitamente (es decir, dentro de un bloque @code{\new
+Score}) el archivo no funciona.  Para resolverlo, encierre las
+instrucciones @code{\new Score} y @code{\midi} dentro de un bloque
+@code{\score}.
 
 
-@node MIDI block
-@subsection MIDI block
+@example
+\score @{
+  \new Score @{ @dots{}notas@dots{} @}
+  \midi @{ @}
+@}
+@end example
 
 
-@cindex bloque MIDI
+@node What goes into the MIDI output?
+@subsection What goes into the MIDI output?
 
 
+@unnumberedsubsubsec Supported in MIDI
 
 
-El bloque @code{\midi} es similar al bloque @code{\layout}, pero algo
-más simple.  Puede contener definiciones de contexto.
+@cindex alturas en MIDI
+@cindex MIDI, alturas
+@cindex cuartos de tono en MIDI
+@cindex MIDI, cuartos de tono
+@cindex microtonos en MIDI
+@cindex MIDI, microtonos
+@cindex acordes, nombres de, en MIDI
+@cindex MIDI, nombres de
+@cindex duraciones en MIDI
+@cindex MIDI, duraciones
+@c TODO etc
 
 
+Los siguientes elementos de notación se reflejan en la salida MIDI:
 
 
-@cindex contexto, definición de
+@itemize
+@item Alturas
+@item Microtonos (véase @ref{Accidentals}. La reproducción necesita un reproductor que contemple la curvatura de tono o @emph{pitch bend}.)
+@item Acordes escritos como nombres de acorde
+@item Ritmos escritos como duraciones de las notas, incluidos los grupos de valoración especial
+@item Trémolos escritos sin @q{@code{:}[@var{número}]}
+@item Ligaduras de unión
+@item Matices o indicaciones de dinámica
+@item Crescendi y decrescendi sobre varias notas
+@item Cambios de tempo insertados con una marca metronómica
+@item Letra de las canciones
+@end itemize
 
 
-Las definiciones de contexto siguen con exactitud la misma sintaxis
-que dentro del bloque \layout.  Los módulos de traducción para el
-sonido reciben el nombre de «performers» o intérpretes.  Los contextos
-para la salida MIDI se encuentran definidos dentro de
-@file{ly/@/performer@/-init@/.ly}.
+@unnumberedsubsubsec Unsupported in MIDI
 
 
+@c TODO index as above
 
 
-@node What goes into the MIDI output?
-@subsection What goes into the MIDI output?
+Los siguientes elementos de notación no tienen ningún efecto sobre la
+salida MIDI:
 
 
-@untranslated
+@itemize
+@item Duraciones escritas como anotaciones, p.ej. el swing
+@item Cambios de tempo escritos como anotaciones sin marca de tempo
+@item Staccato y otras articulaciones y ornamentos
+@item Ligaduras de expresión y de fraseo
+@item Crescendi y decrescendi sobre una nota única
+@item Trémolos introducidos con @q{@code{:}[@var{número}]}
+@item Bajo cifrado
+@item Acordes microtonales
+@end itemize
 
 
-@unnumberedsubsubsec Supported in MIDI
-@unnumberedsubsubsec Unsupported in MIDI
 
 @node Repeats in MIDI
 @subsection Repeats in MIDI
 
 @node Repeats in MIDI
 @subsection Repeats in MIDI
@@ -788,7 +1760,7 @@ repetición esté presente en la salida MIDI.  Esto se consigue mediante
 la aplicación de la función musical @code{\unfoldRepeats}.  Esta
 función cambia todas las repeticiones a repeticiones desplegadas.
 
 la aplicación de la función musical @code{\unfoldRepeats}.  Esta
 función cambia todas las repeticiones a repeticiones desplegadas.
 
-@lilypond[quote,verbatim,fragment,line-width=8.0\cm]
+@lilypond[quote,verbatim]
 \unfoldRepeats {
   \repeat tremolo 8 {c'32 e' }
   \repeat percent 2 { c''8 d'' }
 \unfoldRepeats {
   \repeat tremolo 8 {c'32 e' }
   \repeat percent 2 { c''8 d'' }
@@ -822,10 +1794,295 @@ y percent --repetición de compases--).  Por ejemplo,
 @node Controlling MIDI dynamics
 @subsection Controlling MIDI dynamics
 
 @node Controlling MIDI dynamics
 @subsection Controlling MIDI dynamics
 
-@untranslated
-
+La dinámica en el MIDI está implementada por medio del intérprete
+Dynamic_performer que reside de forma predeterminada dentro del
+contexto Voice.  Es posible controlar el volumen MIDI general, el
+volumen relativo de los matices dinámicos y el volumen relativo de los
+distintos instrumentos.
 
 @unnumberedsubsubsec Dynamic marks
 
 @unnumberedsubsubsec Dynamic marks
+
+Los matices o indicaciones de dinámica se traducen a una fracción fija
+del rango de volumen MIDI disponible.  Las fracciones predeterminadas
+se extienden desde 0.25 para @notation{ppppp} hasta 0.95 para
+@notation{fffff}.  El conjunto de indicaciones dinámicas y las
+fracciones asociadas pueden verse en @file{../scm/midi.scm}, véase
+@rlearning{Other sources of information}.  Este conjunto de fracciones
+se puede cambiar o extender proporcionando una función que toma como
+argumento una indicación dinámica y devuelve la fracción requerida, y
+estableciendo @code{Score.dynamicAbsoluteVolumeFunction} a esta
+función.
+
+Por ejemplo, si se requiere una indicación dinámica
+@notation{rinforzando}, @code{\rfz}, ésta no tiene ningún efecto
+predeterminado sobre el volumen MIDI, pues no está incluida en el
+conjunto predeterminado.  De igual manera, si se define una indicación
+dinámica nueva con @code{make-dynamic-script}, ésta tampoco estará
+incluida en el conjunto predeterminado.  El ejemplo siguiente muestra
+cómo hay que añadir el volumen MIDI para estas indicaciones dinámicas.
+La función Scheme establece la fracción a 0.9 si se encuentra una
+indicación dinámica rfz, y en caso contrario llama a la función
+predeterminada.
+
+@lilypond[verbatim,quote]
+#(define (myDynamics dynamic)
+    (if (equal? dynamic "rfz")
+      0.9
+      (default-dynamic-absolute-volume dynamic)))
+
+\score {
+  \new Staff {
+    \set Staff.midiInstrument = #"cello"
+    \set Score.dynamicAbsoluteVolumeFunction = #myDynamics
+    \new Voice {
+       \relative c'' {
+         a\pp b c-\rfz
+       }
+    }
+  }
+  \layout {}
+  \midi {}
+}
+@end lilypond
+
+Como alternativa, si se necesitara redefinir la tabla completa de
+fracciones, sería mejor usar el procedimiento
+@notation{default-dynamic-absolute-volume} que aparece en
+@file{../scm/midi.scm} y la tabla asociada como modelo.  El último
+ejemplo de esta sección muestra cómo se puede hacer esto.
+
 @unnumberedsubsubsec Overall MIDI volume
 @unnumberedsubsubsec Overall MIDI volume
+
+El volumen general máximo y mínimo de las indicaciones dinámicas de
+MIDI se controla estableciendo valores para las propiedades
+@code{midiMinimumVolume} y @code{midiMaximumVolume} en el nivel de
+@code{Score}.  Estas propiedades tienen efecto solamente sobre las
+indicaciones dinámicas, por ello si queremos que tengan validez desde
+el comienzo de la partitura, se debe colocar allí una indicación de
+dinámica.  La fracción que corresponde a cada indicación dinámica se
+modifica con esta fórmula:
+
+@example
+midiMinimumVolume + (midiMaximumVolume - midiMinimumVolume) * fracción
+@end example
+
+En el ejemplo siguiente, el rango de intensidad dinámica del volumen
+general MIDI está limitado al intervalo desde 0.2 hasta 0.5.
+
+@lilypond[verbatim,quote]
+\score {
+  <<
+    \new Staff {
+      \key g \major
+      \time 2/2
+      \set Staff.midiInstrument = #"flute"
+      \new Voice \relative c''' {
+        r2 g\mp g fis ~
+        fis4 g8 fis e2 ~
+        e4 d8 cis d2
+      }
+    }
+    \new Staff {
+      \key g \major
+      \set Staff.midiInstrument = #"clarinet"
+      \new Voice \relative c'' {
+        b1\p a2. b8 a
+        g2. fis8 e
+        fis2 r
+      }
+    }
+  >>
+  \layout { }
+  \midi {
+    \context {
+      \Score
+      tempoWholesPerMinute = #(ly:make-moment 72 2)
+      midiMinimumVolume = #0.2
+      midiMaximumVolume = #0.5
+    }
+  }
+}
+@end lilypond
+
 @unnumberedsubsubsec Equalizing different instruments (i)
 @unnumberedsubsubsec Equalizing different instruments (i)
+
+Si las propiedades de volumen MIDI máximo y mínimo están establecidas
+en el contexto @code{Staff} se pueden controlar los volúmenes
+relativos de los instrumentos MIDI.  Esto proporciona un ecualizador
+de instrumentos básico que puede realzar significativamente la calidad
+de la salida MIDI.
+
+En este ejemplo se reduce el volumen del clarinete con relación al de
+la flauta.  Debe haber una indicación dinámica en la primera nota de
+cada instrumento para que esto funcione correctamente.
+
+@lilypond[verbatim,quote]
+\score {
+  <<
+    \new Staff {
+      \key g \major
+      \time 2/2
+      \set Staff.midiInstrument = #"flute"
+      \set Staff.midiMinimumVolume = #0.7
+      \set Staff.midiMaximumVolume = #0.9
+      \new Voice \relative c''' {
+        r2 g\mp g fis ~
+        fis4 g8 fis e2 ~
+        e4 d8 cis d2
+      }
+    }
+    \new Staff {
+      \key g \major
+      \set Staff.midiInstrument = #"clarinet"
+      \set Staff.midiMinimumVolume = #0.3
+      \set Staff.midiMaximumVolume = #0.6
+      \new Voice \relative c'' {
+        b1\p a2. b8 a
+        g2. fis8 e
+        fis2 r
+      }
+    }
+  >>
+  \layout { }
+  \midi {
+    \context {
+      \Score
+      tempoWholesPerMinute = #(ly:make-moment 72 2)
+    }
+  }
+}
+@end lilypond
+
 @unnumberedsubsubsec Equalizing different instruments (ii)
 @unnumberedsubsubsec Equalizing different instruments (ii)
+
+Si las propiedades de volumen MIDI máximo y mínimo no están
+establecidas, de forma predeterminada LilyPond aplica un pequeño grado
+de ecualización a algunos instrumentos.  Los instrumentos y la
+ecualización que se aplica se muestra en la tabla
+@notation{instrument-equalizer-alist} en @file{../scm/midi.scm}.
+
+El ecualizador básico predeterminado se puede sustituir estableciendo
+@code{instrumentEqualizer} en el contexto @code{Score} a un
+procedimiento Scheme nuevo que acepte el nombre de un instrumento MIDI
+como único argumento y devuelva un par de fracciones que dan los
+volúmenes máximo y mínimo que se aplican a dicho instrumento.  Esta
+sustitución se hace de la misma forma que mostramos para restablecer
+la fracción de volumen absoluto @code{dynamicAbsoluteVolumeFunction}
+al comienzo de esta sección.  El ecualizador predeterminado,
+@notation{default-instrument-equalizer}, en @file{../scm/midi.scm},
+muestra cómo se puede escribir tal procedimiento.
+
+El ejemplo siguiente establece los volúmenes relativos de la flauta y
+del clarinete a los mismos valores que el ejemplo anterior.
+
+@lilypond[verbatim,quote]
+#(define my-instrument-equalizer-alist '())
+
+#(set! my-instrument-equalizer-alist
+  (append
+    '(
+      ("flute" . (0.7 . 0.9))
+      ("clarinet" . (0.3 . 0.6)))
+    my-instrument-equalizer-alist))
+
+#(define (my-instrument-equalizer s)
+  (let ((entry (assoc s my-instrument-equalizer-alist)))
+    (if entry
+      (cdr entry))))
+
+\score {
+  <<
+    \new Staff {
+      \key g \major
+      \time 2/2
+      \set Score.instrumentEqualizer = #my-instrument-equalizer
+      \set Staff.midiInstrument = #"flute"
+      \new Voice \relative c''' {
+        r2 g\mp g fis ~
+        fis4 g8 fis e2 ~
+        e4 d8 cis d2
+      }
+    }
+    \new Staff {
+      \key g \major
+      \set Staff.midiInstrument = #"clarinet"
+      \new Voice \relative c'' {
+        b1\p a2. b8 a
+        g2. fis8 e
+        fis2 r
+      }
+    }
+  >>
+  \layout { }
+  \midi {
+    \context {
+      \Score
+      tempoWholesPerMinute = #(ly:make-moment 72 2)
+    }
+  }
+}
+@end lilypond
+
+@ignore
+@c Delete when satisfied this is adequately covered elsewhere -td
+
+@n ode Microtones in MIDI
+@s ubsection Microtones in MIDI
+
+@cindex microtones in MIDI
+
+Microtones consisting of half sharps and half flats are exported
+to the MIDI file and render correctly in MIDI players which support
+pitch bending.  See @ref{Note names in other languages}.  Here is
+an example showing all the half sharps and half flats.  It can be
+copied out and compiled to test microtones in your MIDI player.
+
+@lilypond[verbatim,quote]
+\score {
+  \relative c' {
+    c cih cis cisih
+    d dih ees eeh
+    e eih f fih
+    fis fisih g gih
+    gis gisih a aih
+    bes beh b bih
+  }
+  \layout {}
+  \midi {}
+}
+@end lilypond
+@end ignore
+
+
+@node Percussion in MIDI
+@subsection Percussion in MIDI
+
+La notación de los instrumentos de percusión se realiza normalmente en
+un contexto @code{DrumStaff} y cuando se hace de esta forma se les da
+salida correctamente por el canal MIDI@tie{}10, pero ciertos
+instrumentos de percusión de altura determinada, como el xilófono,
+marimba, vibráfono, timbales, etc., se tratan como instrumentos
+@qq{normales} y la música para estos instrumentos se debe introducir
+en contextos de @code{Staff} normales, no en un contexto
+@code{DrumStaff}, para obtener la salida MIDI correcta.
+
+Ciertos sonidos de altura indeterminada que están incluidos en el
+estándar General MIDI, como el tom melódico, el tambor taiko, los
+tambores sintéticos, etc., no se pueden acceder a través del canal
+MIDI@tie{}10, por lo que la notación para dichos instrumentos se debe
+introducir también en un contexto normal de @code{Staff}, utilizando
+las alturas normales adecuadas.
+
+Muchos instrumentos de percusión no están incluidos dentro del
+estándar General MIDI, p.ej. las castañuelas.  El método más
+fácil (aunque no satisfactorio) de producir una salida MIDI al
+escribir para estos instrumentos es sustituirlos por el sonido más
+parecido del conjunto estándar.
+
+@c TODO Expand with examples, and any other issues
+
+@knownissues
+
+Debido a que el estándar General MIDI no contiene golpes de aro
+(@emph{rim shots}), para este propósito se utiliza en su lugar el
+golpe lateral de baqueta (@emph{sidestick}).