1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
4 Translation of GIT committish: cd6d449de0bfc3236b87fbec08389697be8cae81
6 When revising a translation, copy the HEAD committish of the
7 version that you are working on. For details, see the Contributors'
8 Guide, node Updating translation committishes..
13 @node Entrada y salida generales
14 @chapter Entrada y salida generales
15 @translationof General input and output
17 Esta sección trata de asuntos relacionados con la entrada y salida
18 generales de LilyPond, más que con la notación específica.
21 * Estructura del código de entrada::
22 * Títulos y cabeceras::
23 * Trabajar sobre los archivos de entrada::
24 * Controlar la salida::
29 @node Estructura del código de entrada
30 @section Estructura del código de entrada
31 @translationof Input structure
33 El formato principal de entrada para LilyPond son archivos de texto.
34 Por convenio, el nombre de estos archivos termina en @code{.ly}.
37 * Estructura de una partitura::
38 * Varias partituras en un libro::
39 * Varios archivos de salida a partir de uno de entrada::
40 * Nombres de los archivos de salida::
41 * Estructura del archivo::
45 @node Estructura de una partitura
46 @subsection Estructura de una partitura
47 @translationof Structure of a score
51 Un bloque @code{\score} debe contener una expresión musical única
52 delimitada por un par de llaves:
61 @warning{Sólo puede haber @strong{una} expresión musical dentro del
62 bloque @code{\score}, y @strong{debe} estar encerrada entre llaves.}
64 Esta expresión musical única puede tener cualquier tamaño, y puede
65 contener otras expresiones musicales hasta cualquier grado de
66 complejidad. Todos los siguientes ejemplos son expresiones musicales:
72 @lilypond[verbatim,quote]
79 @lilypond[verbatim,quote]
81 \new Staff { c'4 c' c' c' }
82 \new Staff { d'4 d' d' d' }
90 \new Staff @{ \flute @}
91 \new Staff @{ \oboe @}
94 \new Staff @{ \violinI @}
95 \new Staff @{ \violinII @}
101 Los comentarios son una excepción a esta regla general (para ver otras
102 excepciones, consulte @ref{Estructura del archivo}). Tanto los comentarios de
103 una línea como los que están delimitados por @code{%@{ .. %@}} se
104 pueden escribir en cualquier lugar dentro del archivo de entrada. Se
105 pueden escribir dentro o fuera del bloque @code{\score}, y dentro o
106 fuera de la expresión musical única dentro del bloque @code{\score}.
108 Recuerde que incluso dentro de un archivo que contenga solamente un
109 bloque @code{\score}, éste se encuentra incluido implícitamente dentro
110 de un bloque @code{\book}. Un bloque @code{\book} dentro de un
111 archivo fuente produce al menos un archivo de salida, y de forma
112 predeterminada el nombre del archivo de salida que se produce está
113 derivado del nombre del archivo de entrada, de forma que
114 @file{fandangoforelephants.ly} da como resultado
115 @file{fandangoforelephants.pdf}.
117 (Para ver más detalles acerca de los bloques @code{\book}, consulte
118 @ref{Varias partituras en un libro}, @ref{Varios archivos de salida a
119 partir de uno de entrada} y @ref{Estructura del archivo}.)
122 Manual de aprendizaje:
123 @rlearning{Trabajar sobre los archivos de entrada},
124 @rlearning{Explicación de las expresiones musicales},
125 @rlearning{La partitura es una (única) expresión musical compuesta}.
128 @node Varias partituras en un libro
129 @subsection Varias partituras en un libro
130 @translationof Multiple scores in a book
133 @cindex movimientos, varios
135 Un documento puede contener varias piezas de música y texto. Son
136 ejemplos un libro de estudios o una parte orquestal con varios
137 movimientos. Cada movimiento se introduce con un bloque
146 y los textos se introducen con un bloque @code{\markup}:
156 Todos los movimientos y textos que aparecen en el mismo archivo
157 @code{.ly} se tipografían normalmente en la forma de un solo archivo
172 Una excepción importante se da dentro de los documentos de
173 lilypond-book, en los que tenemos que escribir explícitamente un
174 bloque @code{\book}, pues en caso contrario sólo aparecerá en la
175 salida el primer @code{\score} o @code{\markup}.
177 El encabezamiento de cada pieza se puede poner dentro del bloque
178 @code{\score}. Antes de cada movimiento, se imprime el nombre de la
179 pieza (@code{piece}) extraído del encabezamiento. El título del libro
180 entero se puede poner dentro del bloque @code{\book}, pero si no está
181 presente se inserta el encabezamiento @code{\header} que está al
182 principio del archivo.
186 title = "Ocho miniaturas"
187 composer = "Igor Stravinsky"
191 \header @{ piece = "Romanze" @}
194 ..texto de la segunda estrofa..
197 ..texto de la tercera estrofa..
201 \header @{ piece = "Menuetto" @}
208 Se pueden agrupar distintas piezas de música en partes de un libro
209 utilizando bloques @code{\bookpart}. Las partes de libro se separan
210 por medio de saltos de página, y pueden dar comienzo con un título,
211 como el libro propiamente dicho, mediante la especificación del bloque
217 title = "Título del libro"
218 subtitle = "Primera parte"
225 subtitle = "Segunda parte"
232 @node Varios archivos de salida a partir de uno de entrada
233 @subsection Varios archivos de salida a partir de uno de entrada
234 @translationof Multiple output files from one input file
236 Si queremos varios archivos de salida a partir del mismo archivo
237 @code{.ly}, podemos escribir varios bloques @code{\book}, donde cada
238 uno de estos bloques @code{\book} dará como resultado un archivo de
239 salida distinto. Si no especificamos ningún bloque @code{\book} en el
240 archivo, LilyPond trata implícitamente todo el archivo como un solo
241 bloque @code{\book}, véase @ref{Estructura del archivo}.
243 Al producir varios archivos a partir de un solo archivo fuente,
244 Lilypond se asegura de que ninguno de los archivos de salida de ningún
245 bloque @code{\book} sobreescribe el archivo de salida producido por un
246 @code{\book} anterior del mismo archivo de entrada.
248 Lo hace añadiendo un sufijo al nombre de la salida para cada libro
249 @code{\book} que utiliza el nombre del archivo de salida
250 predeterminado, derivado del archivo fuente de entrada.
252 El comportamiento predeterminado es añadir un sufijo con el número de
253 versión para cada nombre que pueda coincidir; así:
258 \layout @{ @dots{} @}
262 \layout @{ @dots{} @}
266 \layout @{ @dots{} @}
270 en el archivo fuente @file{eightminiatures.ly}, produce
274 @file{eightminiatures.pdf},
276 @file{eightminiatures-1.pdf} y
278 @file{eightminiatures-2.pdf}.
281 @node Nombres de los archivos de salida
282 @subsection Nombres de los archivos de salida
283 @translationof Output file names
285 @funindex \bookOutputSuffix
286 @funindex \bookOutputName
288 Lilypond le ofrece unos mecanismos que le permiten controlar los
289 nombres de archivo que se utilizan por parte de los diversos motores
290 finales al producir los archivos de salida.
292 En la sección anterior vimos cómo Lilypond evita las coincidencias de
293 nombres al producir varias salidas a partir de un único archivo fuente
294 de entrada. También podemos especificar nuestros propios sufijos para
295 cada bloque @code{\book}, de manera que podemos producir, por ejemplo,
296 archivos con los nombres @file{eightminiatures-Romanze.pdf},
297 @file{eightminiatures-Menuetto.pdf} y
298 @file{eightminiatures-Nocturne.pdf} añadiendo una declaración
299 @code{\bookOutputSuffix} dentro de cada bloque @code{\book}.
303 \bookOutputSuffix "Romanze"
305 \layout @{ @dots{} @}
308 \bookOutputSuffix "Menuetto"
310 \layout @{ @dots{} @}
313 \bookOutputSuffix "Nocturne"
315 \layout @{ @dots{} @}
319 También podemos especificar un nombre de archivo de salida diferente
320 para cada bloque @code{book}, mediante la utilización de declaraciones
321 @code{\bookOutputName}:
325 \bookOutputName "Romanze"
327 \layout @{ @dots{} @}
330 \bookOutputName "Menuetto"
332 \layout @{ @dots{} @}
335 \bookOutputName "Nocturne"
337 \layout @{ @dots{} @}
341 El código anterior produce los siguientes archivos de salida:
347 @file{Menuetto.pdf} y
352 @node Estructura del archivo
353 @subsection Estructura del archivo
354 @translationof File structure
364 Un archivo @code{.ly} puede contener cualquier número de expresiones
365 del nivel superior, donde una expresión del nivel superior es una de
366 las siguientes posibilidades:
370 Una definición de salida, como @code{\paper}, @code{\midi} y
371 @code{\layout}. Tal definición en el nivel más alto cambia los
372 ajustes predeterminados para todo el libro. Si se introduce más de
373 una de estas definiciones del mismo tipo en el nivel más alto,
374 cualquier definición en una expresión posterior tiene prioridad.
377 Una expresión directa de Scheme, como
378 @code{#(set-default-paper-size "a7" 'landscape)} o
379 @code{#(ly:set-option 'point-and-click #f)}.
382 Un bloque @code{\header}. Esto establece el bloque de encabezamiento
383 global. Es el bloque que contiene las definiciones de los ajustes
384 para todo el libro, como el compositor, título, etc.
387 Un bloque @code{\score}. Esta partitura se reúne con otras partituras
388 del nivel superior, y se combina con ellas formando un @code{\book}
389 (libro) único. Este comportamiento se puede cambiar estableciendo el
390 valor de la variable @code{toplevel-score-handler} en el nivel
391 superior. El @emph{handler} predeterminado se define en el archivo de
392 inicio @file{../@/scm/@/lily@/.scm}.
395 Un bloque @code{\book} combina lógicamente varios movimientos (es
396 decir, varios bloques @code{\score}) en un solo documento. Si hay
397 varias partituras @code{\score}, se crea un solo archivo de salida
398 para cada bloque @code{\book}, en el que se concatenan todos los
399 movimientos correspondientes. La única razón para especificar
400 explícitamente bloques @code{\book} en un archivo de entrada
401 @code{.ly} es si queremos crear varios archivos de salida a partir de
402 un único archivo de entrada. Una excepción se da dentro de los
403 documentos de lilypond-book, en los que tenemos que escribir
404 explícitamente un bloque @code{\book} si queremos tener más de una
405 única partitura @code{\score} o marcado @code{\markup} en el mismo
406 ejemplo. Se puede cambiar este comportamiento estableciendo el valor
407 de la variable @code{toplevel-book-handler} en el nivel superior. El
408 @emph{handler} predeterminado se define en el archivo de inicio
409 @file{../@/scm/@/lily@/.scm}.
412 Un bloque @code{\bookpart}. Un libro puede dividirse en varias
413 partes, utilizando bloques @code{\bookpart}, con objeto de facilitar
414 la inserción de saltos de página o usar distintos ajustes de
415 @code{\paper} en las distintas partes.
418 Una expresión musical compuesta, como
423 Esto añade la pieza al @code{\score} y la conforma dentro de un libro
424 único junto a todas las demás partituras @code{\score} y expresiones
425 musicales del nivel superior. En otras palabras, un archivo que
426 contiene sólo la expresión musical anterior se traduce a
442 Se puede cambiar este comportamiento estableciendo el valor de la
443 variable @code{toplevel-music-handler} en el nivel más alto. El
444 @emph{handler} predeterminado se define en el archivo de inicio
445 @file{../@/scm/@/lily@/.scm}.
448 Un texto de marcado, por ejemplo una estrofa
451 2. Estrofa dos, línea uno
455 Los textos de marcado se colocan encima, en medio o debajo de las
456 partituras o expresiones musicales, según donde aparezcan escritos.
463 fulano = @{ c4 d e d @}
466 Esto se puede utilizar más tarde en el archivo escribiendo
467 @code{\fulano}. El nombre de las variables ha de ser exclusivamente
468 alfabético; sin números, guiones ni barras bajas.
472 El ejemplo siguiente muestra tres cosas que se pueden introducir en el
477 % No justificar la salida
488 En cualquier punto del archivo se pueden introducir cualquiera de las
489 instrucciones léxicas siguientes:
492 @item @code{\version}
493 @item @code{\include}
494 @item @code{\sourcefilename}
495 @item @code{\sourcefileline}
497 Un comentario de una línea, determinado por un símbolo @code{%} al principio.
500 Un comentario de varias líneas, delimitado por @code{%@{ .. %@}}.
504 @cindex espacios en blanco
506 Por lo general se ignoran los espacios entre elementos del flujo de
507 entrada, y se pueden omitir o aumentar tranquilamente para mejorar la
508 legibilidad. Sin embargo, los espacios se deben utilizar siempre para
509 evitar errores, en las siguientes situaciones:
512 @item Alrededor de todas y cada una de las llaves curvas de apertura y cierre.
513 @item A continuación de las instrucciones y variables, es decir, todos los elementos
514 que comienzan con un signo @code{\} de barra invertida.
515 @item A continuación de todo elemento que se deba interpretar como expresión
516 de Scheme, es decir, todo elemento que comience por un signo @code{#}.
517 @item Para separar los elementos de una expresión de Scheme.
518 @item Dentro de @code{lyricmode} para separar todos los términos de las instrucciones
519 @code{\override} y @code{\set}. Concretamente, hay que usar espacios
520 alrededor del punto y el signo igual en instrucciones como
521 @code{\override Score . LyricText #'font-size = #5} y antes y después
522 de la instrucción completa.
527 Manual de aprendizaje:
528 @rlearning{Cómo funcionan los archivos de entrada de LilyPond}.
531 @node Títulos y cabeceras
532 @section Títulos y cabeceras
533 @translationof Titles and headers
535 Casi toda la música impresa tiene un título y el nombre del
536 compositor; ciertas piezas tienen mucha más información.
540 * Títulos personalizados::
541 * Referencias a números de página::
547 @subsection Crear títulos
548 @translationof Creating titles
550 Se crean títulos para cada uno de los bloques @code{\score} así como
551 para todo el archivo de entrada (o bloque @code{\book}, libro) y las
552 partes de libro (creadas mediante bloques @code{\bookpart}).
554 El contenido de cada título se extrae a partir de los bloques
555 @code{\header} (cabecera). El bloque de cabecera de un libro
556 contempla lo siguiente:
559 @funindex dedicatoria
561 El dedicatario de la música, centrado en lo alto de la primera página.
565 El título de la música, centrado justo debajo de la
570 Subtítulo, centrado debajo del título.
572 @funindex subsubtitle
574 Sub-subtítulo, centrado debajo del subtítulo.
578 Nombre del poeta, a la izquierda, debajo del subtítulo.
582 Nombre del compositor, a la derecha, debajo del subtítulo.
586 Texto de la medida, a la izquierda, debajo del poeta.
590 Nombre del Opus, a la derecha, debajo del compositor.
594 Nombre del arreglista, a la derecha, debajo del Opus.
598 Nombre del instrumento, centrado, debajo del arreglista. También
599 aparece centrado en lo alto de cada página (aparte de la primera).
603 Nombre de la pieza, a la izquierda, debajo del instrumento.
605 @cindex página, saltos, forzar
606 @funindex breakbefore
608 Esto fuerza que el título comience sobre una página nueva (establézcalo a ##t o a ##f).
612 Aviso de Copyright, centrado en la parte inferior de la primera
613 página. Para insertar el símbolo de copyright, consulte
614 @ref{Codificación del texto}.
618 Cartel de propósito general en el pie de página, centrado al final de la última.
622 A continuación presentamos una demostración de todos los campos que
623 están disponibles. Fíjese en que puede utilizar en la cabecera
624 cualquier instrucción de marcado de texto (Véase @ref{Formatear el texto}).
626 @lilypond[quote,verbatim,line-width=11.0\cm]
629 paper-height = 10.0\cm
634 dedication = "dedicated to me"
635 title = \markup \center-column { "Title first line" "Title second line,
637 subtitle = "the subtitle,"
638 subsubtitle = #(string-append "subsubtitle LilyPond version "
641 composer = \markup \center-column { "composer" \small "(1847-1973)" }
642 texttranslator = "Text Translator"
643 meter = \markup { \teeny "m" \tiny "e" \normalsize "t" \large "e" \huge
645 arranger = \markup { \fontsize #8.5 "a" \fontsize #2.5 "r" \fontsize
646 #-2.5 "r" \fontsize #-5.3 "a" \fontsize #7.5 "nger" }
647 instrument = \markup \bold \italic "instrument"
671 Como se mostró anteriormente, puede usar varios bloques
672 @code{\header}. Cuando los mismos campos aparecen en distintos
673 bloques, tiene validez el último en definirse. A continuación un
678 composer = "Compositor"
686 piece = "Otra pieza" % sobreescribe a la anterior
691 Si define la cabecera @code{\header} dentro del bloque @code{\score},
692 por lo general se imprimirán solamente las cabeceras @code{piece} y
693 @code{opus}. Fíjese en que la expresión musical debe aparecer antes
696 @lilypond[quote,verbatim,line-width=11.0\cm]
700 title = "title" % not printed
707 @funindex print-all-headers
709 Se puede cambiar este comportamiento (e imprimir todas las cabeceras
710 cuando la cabecera @code{\header} está definida dentro del bloque
711 @code{\score}) mediante la utilización de
715 print-all-headers = ##t
722 El pie de página por omisión se encuentra vacío, excepto para la
723 primera página, en la que se inserta el campo de @code{copyright}
724 extraído del @code{\header}, y para la última página, en la que se
725 escribe el cartel @code{tagline} sacado del bloque @code{\header}. La
726 línea por omisión para este cartel es @qq{Music engraving by LilyPond
727 (@var{version})}.@footnote{Las partituras bien tipografiadas son una
728 magnífica promoción para nosotros, así que por favor, si puede,
729 conserve intacta la línea del letrero.}
731 Las cabeceras se pueden quitar completamente estableciendo su valor a
742 @node Títulos personalizados
743 @subsection Títulos personalizados
744 @translationof Custom titles
746 Una opción más avanzada es cambiar las definiciones de las variables
747 siguientes dentro del bloque @code{\paper}. El archivo de inicio
748 @file{../@/ly/@/titling@/-init@/.ly} ofrece un listado de la
749 disposición predeterminada.
752 @funindex bookTitleMarkup
753 @item bookTitleMarkup
754 Es el título que se escribe en lo alto del documento de salida
755 completo. Normalmente contiene el compositor y el título de la pieza.
757 @funindex scoreTitleMarkup
758 @item scoreTitleMarkup
759 Es el título que se coloca por encima de un bloque @code{\score}.
760 normalmente contiene el nombre del movimiento (campo @code{piece}).
762 @funindex oddHeaderMarkup
763 @item oddHeaderMarkup
764 Es el encabezamiento de las páginas de numeración impar.
766 @funindex evenHeaderMarkup
767 @item evenHeaderMarkup
768 Es el encabezamiento de las páginas de numeración par. Si se deja
769 sin especificar, se usará el encabezamiento de las páginas impares.
771 De forma predeterminada, los encabezamientos se definen de tal forma
772 que el número de página está en el borde exterior, y el instrumento
775 @funindex oddFooterMarkup
776 @item oddFooterMarkup
777 Es el pie de las páginas de numeración impar.
779 @funindex evenFooterMarkup
780 @item evenFooterMarkup
781 Es el pie de las páginas de numeración par. Si se deja sin
782 especificar, se usará en su lugar el encabezamiento de las páginas
785 De forma predeterminada, el pie de página tiene el aviso de
786 copyright en la primera página, y el cartel @code{tagline} en la
792 @cindex encabezamiento
795 @cindex disposición de la página
798 La definición siguiente pone el título en el extremo izquierdo, y el
799 compositor en el extremo derecho sobre una única línea.
803 bookTitleMarkup = \markup {
805 \fromproperty #'header:title
806 \fromproperty #'header:composer
812 @node Referencias a números de página
813 @subsection Referencias a números de página
814 @translationof Reference to page numbers
816 Se puede marcar un lugar determinado de una partitura utilizando la
817 instrucción @code{\label} (etiqueta), bien en lo alto de la estructura
818 o bien dentro de la música. Posteriormente se puede hacer referencia
819 a esta etiqueta dentro de un elemento de marcado, para obtener el
820 número de la página en que se encuentra la marca, usando la
821 instrucción de marcado @code{\page-ref}.
823 @lilypond[verbatim,line-width=11.0\cm]
824 \header { tagline = ##f }
830 \pageBreak \mark A \label #'markA
835 \markup { The first score begins on page \page-ref #'firstScore "0" "?" }
836 \markup { Mark A is on page \page-ref #'markA "0" "?" }
840 La instrucción de marcado @code{\page-ref} toma tres argumentos:
842 @item la etiqueta, un símbolo de scheme, p.ej. @code{#'firstScore};
843 @item un elemento de marcado que se usará como medidor para estimar las dimensiones del marcado;
844 @item un elemento de marcado que se utilizará en sustitución del número de página si la etiqueta es desconocida.
847 El motivo de que se necesite un medidor es que en el momento en que se
848 están interpretando los marcados, los saltos de página aún no se han
849 producido y por tanto los números de página no se conocen todavía.
850 Para sortear este inconveniente, la interpretación real del marcado se
851 retrasa hasta un momento posterior; sin embargo, las dimensiones del
852 marcado se tienen que conocer de antemano, así que se usa el medidor
853 para decidir estas dimensiones. Si el libro tiene entre 10 y 99
854 páginas, el medidor puede ser "00", es decir, un número de dos
867 @subsection Índice general
868 @translationof Table of contents
870 Se puede insertar un índice general o tabla de contenidos utilizando
871 la instrucción @code{\markuplines \table-of-contents}. Los elementos
872 que deben aparecer en la tabla de contenidos se introducen con la
873 instrucción @code{\tocItem}, que se puede usar en el nivel más alto de
874 la jerarquía del código, o dentro de una expresión musical.
877 \markuplines \table-of-contents
880 \tocItem \markup "Primera partitura"
884 \tocItem \markup "Un punto concreto dentro de la primera partitura"
889 \tocItem \markup "Segunda partitura"
897 Los elementos de marcado que se usan para dar formato al índice
898 general se encuentran definidos dentro del bloque @code{\paper}. Los
899 elementos predeterminados son @code{tocTitleMarkup}, para dar formato
900 al título de la tabla, y @code{tocItemMarkup}, para aplicar formato a
901 los elementos del índice, que consisten en el título del elemento y el
902 número de página. Estas variables se pueden cambiar por parte del
907 %% Traducir el título del índice al español:
908 tocTitleMarkup = \markup \huge \column {
909 \fill-line { \null "Índice general" \null }
912 %% usar una fuente mayor
913 tocItemMarkup = \markup \large \fill-line {
914 \fromproperty #'toc:text \fromproperty #'toc:page
919 Observe la forma en que nos referimos al texto y al número de página
920 del elemento de índice, dentro de la definición @code{tocItemMarkup}.
922 También se pueden definir nuevas instrucciones y elementos de
923 marcado para crear índices generales más elaborados:
925 @item en primer lugar, defina una variable de marcado nueva dentro del bloque @code{\paper}
926 @item luego defina una función de música cuyo propósito es añadir un elemento al índice general
927 utilizando esta variable de marcado del bloque @code{\paper}.
930 En el ejemplo siguiente se define un estilo nuevo para introducir los
931 nombres de los actos de una ópera en el índice general:
935 tocActMarkup = \markup \large \column {
937 \fill-line { \null \italic \fromproperty #'toc:text \null }
943 #(define-music-function (parser location text) (markup?)
944 (add-toc-item! 'tocActMarkup text))
947 @lilypond[line-width=11.0\cm]
948 \header { tagline = ##f }
950 tocActMarkup = \markup \large \column {
952 \fill-line { \null \italic \fromproperty #'toc:text \null }
958 #(define-music-function (parser location text) (markup?)
959 (add-toc-item! 'tocActMarkup text))
962 \markuplines \table-of-contents
963 \tocAct \markup { Atto Primo }
964 \tocItem \markup { Coro. Viva il nostro Alcide }
965 \tocItem \markup { Cesare. Presti omai l'Egizzia terra }
966 \tocAct \markup { Atto Secondo }
967 \tocItem \markup { Sinfonia }
968 \tocItem \markup { Cleopatra. V'adoro, pupille, saette d'Amore }
976 @file{../@/ly/@/toc@/-init@/.ly}.
980 @funindex \table-of-contents
981 @code{\table-of-contents},
987 @node Trabajar sobre los archivos de entrada
988 @section Trabajar sobre los archivos de entrada
989 @translationof Working with input files
992 * Inclusión de archivos de LilyPond::
993 * Distintas ediciones a partir de una misma fuente::
994 * Codificación del texto::
995 * Presentar la notación de LilyPond::
999 @node Inclusión de archivos de LilyPond
1000 @subsection Inclusión de archivos de LilyPond
1001 @translationof Including LilyPond files
1004 @cindex including files
1006 Un proyecto grande se puede dividir en varios archivos. Para
1007 referirse a otro archivo, utilice
1010 \include "otroarchivo.ly"
1013 La línea @code{\include "otroarchivo.ly"} equivale a pegar todo el
1014 contenido de @file{otroarchivo.ly} en el archivo actual en el lugar en
1015 que aparece el @code{\include}. Por ejemplo, en un proyecto grande
1016 podríamos querer archivos distintos para cada parte instrumental y
1017 crear un archivo de @qq{partitura completa} que reúne los archivos
1018 individuales de los instrumentos. Normalmente el archivo incluido
1019 define un cierto número de variables que a partir de entonces quedan
1020 disponibles para poderlas utilizar en el archivo de la partitura
1021 completa. En los archivos incluidos se pueden marcar las secciones
1022 etiquetadas para ayudar a hacerlas utilizables en distintos lugares de
1023 la partitura, véase @ref{Distintas ediciones a partir de una misma fuente}.
1025 Los archivos que están en el directorio de trabajo actual se pueden
1026 referenciar simplemente especificando el nombre después de la
1027 instrucción @code{\include}. Los archivos en otros lugares se pueden
1028 incluir proporcionando una referencia de ruta completa o una ruta
1029 relativa (pero utilice la barra inclinada normal del UNIX, /, no la
1030 barra invertida de DOS/Windows, \, como separador de directorio). Por
1031 ejemplo, si @file{material.ly} está situado un directorio por encima
1032 del directorio de trabajo actual, utilice
1035 \include "../material.ly"
1039 o si los archivos de las partes orquestales incluidas están todos
1040 situados en un subdirectorio llamado @file{partes} dentro del
1041 directorio actual, use
1044 \include "partes/VI.ly"
1045 \include "partes/VII.ly"
1049 Los archivos de inclusión también pueden contener enunciados
1050 @code{\include} a su vez. De forma predeterminada, estos enunciados
1051 @code{\include} de segundo nivel no se interpretan hasta que se
1052 incorporan al archivo principal, por lo que los nombres de archivo que
1053 especifican deben ser relativos al directorio que contiene el archivo
1054 principal, no al directorio que contiene el archivo incluido. Sin
1055 embargo, este comportamiento se puede modificar pasando la opción
1056 @code{-drelative-includes} en la línea de órdenes (o mediante la
1057 adición de @code{#(ly:set-option 'relative-includes #t)} al principio
1058 del archivo principal de entrada). Con el valor de
1059 @code{relative-includes} establecido, la ruta de cada instrucción
1060 @code{\include} se considera relativa al archivo que contiene dicha
1061 instrucción. Este comportamiento es el recomendado y se convertirá en
1062 el comportamiento predeterminado en una versión futura de lilypond.
1064 También se pueden incluir archivos de un directorio que está en una
1065 ruta de búsqueda especificada como opción al invocar a LilyPond desde
1066 la línea de órdenes. Los archivos incluidos se especifican usando
1067 solamente su nombre de archivo. Por ejemplo, para compilar mediante
1068 este método un archivo @file{principal.ly} que incluye archivos
1069 situados en un subdirectorio llamado @file{partes}, cambie al
1070 directorio que contiene @file{principal.ly} e introduzca
1073 lilypond --include=partes principal.ly
1076 y en @file{principal.ly} escriba
1084 Los archivos que se incluyen en muchas partituras se pueden poner en
1085 el directorio de LilyPond @file{../ly} (la localización de este
1086 directorio depende de la instalación: véase
1087 @rlearning{Otras fuentes de información}). Estos archivos se pueden
1088 incluir sencillamente por su nombre en un enunciado @code{\include}.
1089 De esta forma se incluyen los archivos dependientes del idioma como
1092 LilyPond incluye de forma predeterminada ciertos archivos cuando se
1093 inicia el programa. Estas inclusiones no son visibles para el
1094 usuario, pero los archivos se pueden identificar ejecutando
1095 @code{lilypond --verbose} desde la línea de órdenes. Esto presentará
1096 una lista de rutas y archivos que utiliza LilyPond, junto a muchas
1097 otras indicaciones. De forma alternativa, pueden verse explicaciones
1098 sobre los archivos más importantes de este conjunto en
1099 @rlearning{Otras fuentes de información}. Estos archivos se pueden
1100 editar, pero los cambios realizados sobre ellos se perderán al
1101 instalar una nueva versión de LilyPond.
1103 Pueden verse ejemplos sencillos sobre el uso de @code{\include} en
1104 @rlearning{Partituras y particellas}.
1108 Manual de aprendizaje:
1109 @rlearning{Otras fuentes de información},
1110 @rlearning{Partituras y particellas}.
1115 Si un archivo incluido recibe un nombre igual al de uno de los
1116 archivos de instalación de LilyPond, el archivo que tiene prioridad es
1117 el de los archivos de instalación de LilyPond.
1120 @node Distintas ediciones a partir de una misma fuente
1121 @subsection Distintas ediciones a partir de una misma fuente
1122 @translationof Different editions from one source
1124 Se encuentran disponibles varios mecanismos para facilitar la
1125 producción de distintas versiones de una partitura a partir de la
1126 misma fuente musical. Las variables son quizá más útiles para
1127 combinar secciones extensas de música y/o anotaciones de diversas
1128 formas, mientras que las etiquetas son más útiles para seleccionar una
1129 de entra varias secciones de música más cortas. Cualquiera que sea el
1130 método utilizado, la separación de la notación de la estructura de la
1131 partitura hará que sea más fácil cambiar la estructura dejando intacta
1135 * Uso de las variables::
1136 * Uso de etiquetas::
1139 @node Uso de las variables
1140 @unnumberedsubsubsec Uso de las variables
1141 @translationof Using variables
1143 @cindex variables, uso de las
1145 Si las secciones de la música se definen dentro de variables, se
1146 pueden reutilizar en distintas partes de la partitura, véase
1147 @rlearning{Organizar las piezas mediante variables}. Por ejemplo, una
1148 partitura vocal @notation{a cappella} con frecuencia incluye una
1149 reducción de piano de las partes para ensayar que es idéntica a la
1150 música vocal, por lo que ésta sólo se tiene que escribir una vez. Se
1151 puede combinar sobre un solo pentagrama la música de dos variables,
1152 véase @ref{Combinación automática de las partes}. He aquí un ejemplo:
1154 @lilypond[verbatim,quote]
1155 sopranoMusic = \relative c'' { a4 b c b8( a) }
1156 altoMusic = \relative g' { e4 e e f }
1157 tenorMusic = \relative c' { c4 b e d8( c) }
1158 bassMusic = \relative c' { a4 gis a d, }
1159 allLyrics = \lyricmode {King of glo -- ry }
1161 \new Staff = "Soprano" \sopranoMusic
1162 \new Lyrics \allLyrics
1163 \new Staff = "Alto" \altoMusic
1164 \new Lyrics \allLyrics
1165 \new Staff = "Tenor" {
1169 \new Lyrics \allLyrics
1170 \new Staff = "Bass" {
1174 \new Lyrics \allLyrics
1177 \set Staff.printPartCombineTexts = ##f
1183 \set Staff.printPartCombineTexts = ##f
1193 Se pueden producir partituras distintas que presenten sólo las partes
1194 vocales o sólo la parte de piano, cambiando solamente los enunciados
1195 estructurales, sin modificar la notación musical.
1197 Para partituras extensas, las definiciones de variable se pueden poner
1198 en archivos separados que se incluyen más tarde, véase @ref{Inclusión de archivos de LilyPond}.
1201 @node Uso de etiquetas
1202 @unnumberedsubsubsec Uso de etiquetas
1203 @translationof Using tags
1206 @funindex \keepWithTag
1207 @funindex \removeWithTag
1209 @cindex mantener música etiquetada
1210 @cindex quitar música etiquetada
1212 La instrucción @code{\tag #'@var{parteA}} marca una expresión musical
1213 con el nombre @var{parteA}. Las expresiones etiquetadas de esta
1214 manera se pueden seleccionar o filtrar más tarde por su nombre, usando
1215 bien @code{\keepWithTag #'@var{nombre}} o bien @code{\removeWithTag
1216 #'@var{nombre}}. El resultado de la aplicación de estos filtros a la
1217 música etiquetada es como sigue:
1219 @multitable @columnfractions .5 .5
1223 Música etiquetada precedida de @code{\keepWithTag #'@var{nombre}}
1225 Se incluye la música no etiquetada y la música etiquetada con
1226 @var{nombre}; se excluye la música etiquetada con cualquier otro
1229 Música etiquetada precedida de @code{\removeWithTag #'@var{nombre}}
1231 Se incluye la música no etiquetada y la música etiquetada con
1232 cualquier nombre de etiqueta distinto a @var{nombre}; se excluye la
1233 música etiquetada con @var{nombre}.
1235 Música etiquetada no precedida de @code{\keepWithTag} ni de
1236 @code{\removeWithTag}
1237 @tab Se incluye toda la música etiquetada y no etiquetada.
1240 Los argumentos de las instrucciones @code{\tag}, @code{\keepWithTag} y
1241 @code{\removeWithTag} deben ser un símbolo (como @code{#'partitura} o
1242 @code{#'parte}), seguido de una expresión musical.
1244 En el ejemplo siguiente vemos dos versiones de una pieza musical, una
1245 que muestra trinos con la notación usual y otra con los trinos
1246 expandidos explícitamente:
1248 @lilypond[verbatim,quote]
1249 music = \relative g' {
1251 \tag #'trills { d8.\trill }
1252 \tag #'expand { \repeat unfold 3 { e32 d } }
1257 \keepWithTag #'trills \music
1260 \keepWithTag #'expand \music
1265 De forma alternativa, a veces es más fácil excluir secciones de música:
1267 @lilypond[verbatim,quote]
1268 music = \relative g' {
1270 \tag #'trills { d8.\trill }
1271 \tag #'expand {\repeat unfold 3 { e32 d } }
1276 \removeWithTag #'expand
1280 \removeWithTag #'trills
1285 El filtrado con etiquetas se puede aplicar a articulaciones, textos,
1289 -\tag #'@var{mi-etiqueta}
1292 a una articulación. Por ejemplo, esto define una nota con una
1293 indicación opcional de digitación y una nota con una anotación
1298 c1-\tag #'warn ^"¡Ojo!"
1301 Se pueden poner varias etiquetas sobre expresiones con varias entradas
1304 @lilypond[quote,verbatim]
1305 music = \relative c'' {
1306 \tag #'a \tag #'both { a4 a a a }
1307 \tag #'b \tag #'both { b4 b b b }
1310 \keepWithTag #'a \music
1311 \keepWithTag #'b \music
1312 \keepWithTag #'both \music
1316 Se pueden aplicar varios filtros @code{\removeWithTag} a una sola
1317 expresión musical para quitar varias secciones etiquetadas con nombres
1320 @lilypond[verbatim,quote]
1321 music = \relative c'' {
1322 \tag #'A { a4 a a a }
1323 \tag #'B { b4 b b b }
1324 \tag #'C { c4 c c c }
1325 \tag #'D { d4 d d d }
1334 Dos o más filtros @code{\keepWithTag} aplicados a una sola expresión
1335 musical producen la eliminación de @emph{todas} las secciones
1336 etiquetadas, porque el primer filtro quita todas las secciones
1337 etiquetadas excepto la que se nombra, y el segundo filtro elimina
1338 incluso esa sección etiquetada.
1342 Manual de aprendizaje:
1343 @rlearning{Organizar las piezas mediante variables}.
1345 Referencia de la notación:
1346 @ref{Combinación automática de las partes},
1347 @ref{Inclusión de archivos de LilyPond}.
1351 @c This warning is more general than this placement implies.
1352 @c Rests are not merged whether or not they come from tagged sections.
1353 @c Should be deleted? -td
1358 Multiple rests are not merged if you create a score with more
1359 than one tagged section at the same place.
1363 @node Codificación del texto
1364 @subsection Codificación del texto
1365 @translationof Text encoding
1369 @cindex caracteres no ASCII
1371 LilyPond usa el conjunto de caracteres definido por el consorcio
1372 Unicode y la norma ISO/IEC 10646. Define un nombre único y un código
1373 para los conjuntos de caracteres que se utilizan en prácticamente
1374 todos los idiomas modernos y también en muchos otros. Unicode se
1375 puede implementar utilizando varios esquemas de codificación
1376 distintos. LilyPond usa la codificación UTF-8 (UTF son las siglas de
1377 @emph{Unicode Transformation Format}, o formato de transformación de
1378 Unicode) que representa todos los caracteres comunes de Latin en un
1379 solo byte, y representa otros caracteres usando un formato de longitud
1380 variable de hasta cuatro bytes.
1382 El aspecto visual real de los caracteres viene determinado por los
1383 glifos que se definen en las fuentes tipográficas concretas que se
1384 tengan disponibles: una fuente tipográfica define la asignación de un
1385 subconjunto de los códigos de Unicode a glifos. LilyPond usa la
1386 biblioteca Pango para representar y disponer tipográficamente textos
1389 LilyPond no realiza ninguna conversión en la codificación de la
1390 entrada. Esto significa que cualquier text, ya sea el título, la
1391 letra de la canción o una instrucción musical que contenga caracteres
1392 distintos a los del conjunto ASCII, se deben codificar en UTF-8. La
1393 forma más fácil de escribir dicho texto es utilizar un editor
1394 preparado para Unicode y guardar el archivo con la codificación UTF-8.
1395 Casi todos los editores modernos populares contemplan el UTF-8, por
1396 ejemplo lo hacen vim, Emacs, jEdit, y GEdit. Todos los sistemas MS
1397 Windows posteriores a NT usan Unicode como codificación de caracteres
1398 nativa, de manera que incluso el accesorio Bloc de Notas (Notepad)
1399 puede editar y guardar un archivo en el formato UTF-8. Una
1400 alternativa más funcional para Windows es BabelPad.
1402 Si un archivo de entrada que contiene un carácter que no es ASCII, no
1403 se guarda en el formato UTF-8, se genera el mensaje de error
1406 FT_Get_Glyph_Name () error: argumento inválido
1409 He aquí un ejemplo que muestra texto cirílico, hebreo y portugués:
1412 %c No verbatim here as the code does not display correctly in PDF
1414 bulgarian = \lyricmode {
1415 Жълтата дюля беше щастлива, че пухът, който цъфна, замръзна като гьон.
1419 hebrew = \lyricmode {
1420 זה כיף סתם לשמוע איך תנצח קרפד עץ טוב בגן.
1424 portuguese = \lyricmode {
1425 à vo -- cê uma can -- ção legal
1431 \addlyrics { \bulgarian }
1432 \addlyrics { \hebrew }
1433 \addlyrics { \portuguese }
1436 Para introducir un carácter aislado para el que se conoce el punto de
1437 código Unicode pero no está disponible en el editor que se está
1438 usando, use @code{\char ##xhhhh} o bien @code{\char #dddd} dentro de
1439 un bloque @code{\markup}, donde @code{hhhh} es el código hexadecimal
1440 del carácter en cuestión y @code{dddd} es su valor decimal
1441 correspondiente. Pueden omitirse los ceros iniciales, pero es
1442 costumbre indicar los cuatro caracteres en la representación
1443 hexadecimal (observe que @emph{no} debe utilizarse la codificación
1444 UTF-8 del punto de código Unicode después de @code{\char}, pues la
1445 codificación UTF-8 contiene bits adicionales que indican el número de
1446 octetos). Hay tablas de códigos Unicode y un índice de nombres de
1447 caracteres que da el punto de código en hexadecimal para cualquier
1448 carácter en el portal del Consorcio Unicode,
1449 @uref{http://www.unicode.org/}.
1452 Por ejemplo, tanto @code{\char ##x03BE} como @code{\char #958}
1453 insertan el carácter Unicode U+03BE, que tiene el nombre Unicode
1454 @qq{Letra griega Xi pequeña}.
1456 Se puede escribir de esta forma cualquier punto de código Unicode, y
1457 si todos los caracteres especiales se escriben en este formato no es
1458 necesario guardar el archivo de entrada en formato UTF-8. Por
1459 supuesto, debe estar instalada y estar disponible para LilyPond una
1460 fuente tipográfica que contenga codificados todos estos caracteres.
1462 El ejemplo siguiente muestra valores hexadecimales Unicode que se usan
1463 en cuatro lugares: en una llamada de ensayo, como texto de
1464 articulación, en la letra y como texto independiente bajo la
1467 @lilypond[quote,verbatim]
1470 c1 \mark \markup { \char ##x03EE }
1471 c1_\markup { \tiny { \char ##x03B1 " to " \char ##x03C9 } }
1473 \addlyrics { O \markup { \concat { Ph \char ##x0153 be! } } }
1475 \markup { "Copyright 2008--2010" \char ##x00A9 }
1478 @cindex copyright, símbolo de
1480 Para escribir el símbolo de copyright en la nota de créditos, utilice:
1484 copyright = \markup @{ \char ##x00A9 "2008" @}
1489 @node Presentar la notación de LilyPond
1490 @subsection Presentar la notación de LilyPond
1491 @translationof Displaying LilyPond notation
1493 @funindex \displayLilyMusic
1494 La impresión textual de una expresión musical en notación de LilyPond
1495 puede hacerse con la función musical @code{\displayLilyMusic} pero solamente
1496 mediante la línea de órdenes. Por ejemplo,
1500 \displayLilyMusic \transpose c a, @{ c4 e g a bes @}
1507 @{ a,4 cis e fis g @}
1510 De forma predeterminada, LilyPond imprime estos mensajes en la consola
1511 junto al resto de los mensajes de la compilación de LilyPond.
1512 Para discernir entre estos mensajes y
1513 guardar el resultado de @code{\display@{MATERIAL@}}, redireccione la
1514 salida hacia un archivo.
1517 lilypond archivo.ly >resultado.txt
1522 @node Controlar la salida
1523 @section Controlar la salida
1524 @translationof Controlling output
1527 * Extracción de fragmentos de música::
1528 * Saltar la música corregida::
1529 * Formatos de salida alternativos::
1530 * Sustituir la tipografía de la notación::
1533 @node Extracción de fragmentos de música
1534 @subsection Extracción de fragmentos de música
1535 @translationof Extracting fragments of music
1537 Es posible citar pequeños fragmentos de una partitura grande
1538 directamente a partir de la salida. Puede compararse con la
1539 separación de una pieza de una partitura, recortándola con tijeras.
1541 Esto se hace definiendo los compases que se deben recortar. Por
1542 ejemplo, la inclusión de la siguiente definición
1549 (make-rhythmic-location 5 1 2)
1550 (make-rhythmic-location 7 3 4)))
1555 extrae un fragmento empezando por la mitad del quinto compás y
1556 finalizando en el séptimo compás. El significado de @code{5 1 2} es:
1557 después de una blanca (1/2) en el compás 5, y el de @code{7 3 4}
1558 después de tres negras del compás 7.
1560 Se pueden definir más zonas de recorte añadiendo más parejas de
1561 definición de tiempo rhythmic-location a la lista.
1563 Para poder utilizar esta funcionalidad, LilyPond se debe invocar con
1564 la opción @code{-dclip-systems}. Los recortes aparecen en la salida
1565 como archivos EPS, y se convierten en PDF y PNG si estos formatos
1566 también están activados.
1568 Para ver más información sobre los formatos de salida, consulte
1569 @rprogram{Invocar a LilyPond}.
1572 @node Saltar la música corregida
1573 @subsection Saltar la música corregida
1574 @translationof Skipping corrected music
1576 @funindex skipTypesetting
1577 @funindex showFirstLength
1578 @funindex showLastLength
1580 Al escribir o copiar música, normalmente sólo es interesante de ver y
1581 corregir la música cercana al final (donde estamos añadiendo las
1582 notas). Para acelerar este proceso de corrección, es posible saltar
1583 la composición tipográfica de todos excepto unos pocos de los últimos
1584 compases. Esto se consigue poniendo
1587 showLastLength = R1*5
1592 en nuestro archivo fuente. Esto hará que se tracen sólo los últimos
1593 cinco compases (suponiendo un compás de 4/4) de cada una de las
1594 partituras @code{\score} del archivo de entrada. Para piezas largas,
1595 el tipografiado de únicamente una parte pequeña es con frecuencia un
1596 orden de magnitud más rápido que el de la obra completa. Si estamos
1597 trabajando sobre el principio de una partitura que ya hemos
1598 tipografiado (p.ej., para añadir una parte instrumental nueva),
1599 también puede ser útil la propiedad @code{showFirstLength}.
1601 Este mecanismo de pasar por alto partes de un partitura se puede
1602 controlar con un grano más fino mediante la propiedad
1603 @code{Score.skipTypesetting}. Cuando su valor está establecido, no se
1604 lleva a cabo ningún tipografiado en absoluto.
1606 Esta propiedad se usa también para controlar la salida al archivo
1607 MIDI. Observe que pasa por alto todos los eventos, incluidos el tempo
1608 y los cambios de instrumento. Está usted advertido.
1610 @lilypond[quote,fragment,ragged-right,verbatim]
1613 \set Score.skipTypesetting = ##t
1615 \set Score.skipTypesetting = ##f
1620 En música polifónica, @code{Score.skipTypesetting} afecta a todas las
1621 voces y pentagramas, ahorrando más tiempo incluso.
1623 @node Formatos de salida alternativos
1624 @subsection Formatos de salida alternativos
1625 @translationof Alternative output formats
1627 @cindex salida de gráficos de vector escalables
1629 @cindex salida de PostScript encapsulado
1631 @cindex PostScript encapsulado, salida de
1633 Los formatos de salida predeterminados para la partitura impresa son
1634 el formato de documento portátil (PDF) y PostScript (PS). Los
1635 formatos de salida Gráficos de vector escalables (SVG), PostScript
1636 encapsulado (EPS) y Gráficos de red portátiles (PNG) también están
1637 disponibles a través de opciones de la línea de órdenes, véase
1638 @rprogram{Opciones de la línea de órdenes para lilypond}.
1641 @node Sustituir la tipografía de la notación
1642 @subsection Sustituir la tipografía de la notación
1643 @translationof Replacing the notation font
1645 Gonville es una alternativa a la tipografía Feta que se utiliza en
1646 LilyPond y se puede descargar de:
1648 @uref{http://www.chiark.greenend.org.uk/~sgtatham/gonville/ ,http://www.chiark.greenend.org.uk/~sgtatham/gonville/}
1651 Aquí presentamos algunos compases de muestra tipografiados con la
1654 @c NOTE: these images are a bit big, but that's important
1655 @c for the font comparison. -gp
1656 @sourceimage{Gonville_after,,,}
1658 Aquí hay unos compases de muestra tipografiados en la fuente Feta de
1661 @sourceimage{Gonville_before,,,}
1663 @subsubheading Instrucciones de instalación para MacOS
1665 Descargue y extraiga el archivo zip. Copie la carpeta @code{lilyfonts}
1666 a @file{@var{SHARE_DIR}/lilypond/current}; para más información,
1667 consulte @rlearning{Otras fuentes de información}. Mueva la carpeta
1668 @code{fonts} existente a @code{fonts_orig} y mueva la carpeta
1669 @code{lilyfonts} a @code{fonts}. Sencillamente vuelva a mover
1670 @code{fonts_orig} a @code{fonts} para volver a la fuente Feta.
1673 Manual de aprendizaje:
1674 @rlearning{Otras fuentes de información}.
1678 Gonville no se puede usar para tipografiar notación de @q{Música
1679 Antigua}. Diríjase a la página web del autor para obtener más
1680 información sobre éste y otros asuntos, entre ellos el régimen de
1681 licencias de Gonville.
1685 @section Salida MIDI
1686 @translationof MIDI output
1691 El MIDI (Musical Instrument Digital Interface, Interfase Digital para
1692 Instrumentos Musicales) es un estándar para interconectar y controlar
1693 instrumentos musicales electrónicos. Un archivo o secuencia MIDI es
1694 una serie de notas dentro de un conjunto de pistas. No es un archivo
1695 de sonidos reales; se necesita un programa reproductor especial para
1696 traducir la serie de notas en sonidos de verdad.
1698 Cualquier música se puede convertir a archivos MIDI, de manera que
1699 podamos escuchar lo que hayamos introducido. Esto es muy conveniente
1700 para comprobar la corrección de la música; las octavas equivocadas o
1701 las alteraciones erróneas se ponen de relieve muy claramente al
1702 escuchar la salida MIDI.
1705 La salida MIDI reserva un canal por cada pentagrama, y otro para los
1706 ajustes globales. Por ello, el archivo MIDI no debe tener más de 15
1707 pautas (o 14 si no se usa la percusión). Otros pentagramas permanecen
1711 * Crear archivos MIDI::
1713 * ¿Qué sale por el MIDI?::
1714 * Repeticiones y MIDI::
1715 * Control de los matices en el MIDI::
1716 * Percusión en MIDI::
1719 @node Crear archivos MIDI
1720 @subsection Crear archivos MIDI
1721 @translationof Creating MIDI files
1723 Para crear un MIDI a partir de una pieza de música, escriba un bloque
1724 @code{\midi} en la partitura, por ejemplo:
1733 Si hay un bloque @code{\midi} dentro de un @code{\score} que no tenga
1734 ningún bloque @code{\layout}, solamente se producirá MIDI. Si se
1735 necesita una notación impresa, debe haber también un bloque
1746 Se traducen correctamente a la salida MIDI la altura y duración de las
1747 notas, las ligaduras de unión, matices y cambios de tempo. Las
1748 indicaciones dinámicas, crescendi y decrescendi se traducen a niveles
1749 de volumen MIDI. Las marcas dinámicas se traducen a una fracción fija
1750 del rango de volumen MIDI disponible. Los crescendi y decrescendi
1751 hacen que el volumen varía linealmente entre sus dos extremos. El
1752 efecto de las indicaciones dinámicas sobre la salida MIDI se puede
1753 eliminar por completo, véase @ref{El bloque MIDI}.
1755 El tempo inicial y los cambios de tempo posteriores se pueden
1756 especificar utilizando la instrucción @code{\tempo} dentro de la
1757 propia notación musical. Se reflejan en cambios de tempo en la salida
1758 MIDI. Esta instrucción normalmente hace que se imprima la indicación
1759 metronómica, pero esto se puede eliminar, véase @ref{Indicaciones metronómicas}.
1760 Más abajo se describe una forma alternativa de especificar el tempo
1761 MIDI inicial o global, véase @ref{El bloque MIDI}.
1763 Debido a ciertas limitaciones de Windows, la extensión predeterminada
1764 para los archivos MIDI en Windows es @code{.mid}. Otros sistemas
1765 operativos utilizan la extensión @code{.midi}. Si prefiere una
1766 extensión diferente, inserte la siguiente línea en el nivel jerárquico
1767 superior del archivo de entrada, antes del inicio de cualquier bloque
1768 @code{\book}, @code{\bookpart} o @code{\score}:
1771 #(ly:set-option 'midi-extension "midi")
1774 La línea anterior establece la extensión predeterminada para los
1775 archivos MIDI a @code{.midi}.
1777 De forma alternativa, esta opción se puede también proporcionar en la
1781 lilypond … -dmidi-extension=midi archivoLily.ly
1785 @unnumberedsubsubsec Nombres de instrumentos
1787 @cindex instrumento, nombres de
1788 @funindex Staff.midiInstrument
1790 El nombre del instrumento MIDI se establece mediante la propiedad
1791 @code{Staff.midiInstrument}. El nombre del instrumento se debe elegir
1792 de entre los que están en la lista que aparece en @ref{Instrumentos MIDI}.
1796 \set Staff.midiInstrument = #"glockenspiel"
1802 \new Staff \with @{midiInstrument = #"cello"@} @{
1807 Si el instrumento elegido no coincide exactamente con uno de los
1808 instrumentos de la lista de instrumentos MIDI, se usará el instrumento
1809 Piano de Cola (@code{"acoustic grand"}).
1813 @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
1814 {changing-midi-output-to-one-channel-per-voice.ly}
1818 @c In 2.11 the following no longer seems to be a problem -td
1820 Unterminated (de)crescendos will not render properly in the midi file,
1821 resulting in silent passages of music. The workaround is to explicitly
1822 terminate the (de)crescendo. For example,
1829 will not work properly but
1832 @{ a4\< b c d\!\f @}
1839 Los cambios del volumen MIDI sólo tienen lugar al principio de la
1840 nota, por lo que los crescendi y decrescendi no pueden afectar al
1841 volumen de una sola nota.
1843 No todos los reproductores de MIDI manejar adecuadamente los cambios de
1844 tempo de la salida MIDI. Entre los reproductores que se sabe que
1845 funcionan se encuentran el Reproductor de Medios de MS Windows y
1846 @uref{http://@/timidity@/.sourceforge@/.net/,timidity}.
1849 @node El bloque MIDI
1850 @subsection El bloque MIDI
1851 @translationof MIDI block
1855 Si se requiere una salida MIDI, debe aparecer un bloque @code{\midi}
1856 dentro de un bloque de partitura. Es análogo al bloque layout de
1857 diseño de página, pero algo más simple. Con frecuencia, el bloque
1858 @code{\midi} se deja vacío, pero puede contener reorganizaciones de
1859 contextos, definiciones de contexto nuevas o código para fijar valores
1860 de propiedades. Por ejemplo, en el ejemplo siguiente se establece el
1861 tempo inicial exportado al archivo MIDI sin hacer que se imprima una
1862 indicación de tempo:
1870 tempoWholesPerMinute = #(ly:make-moment 72 4)
1876 En este ejemplo, el tempo se establece a 72 pulsos de negra por
1877 minuto. Esta clase de especificación de tempo no puede tomar como
1878 argumento una figura con puntillo. Si necesitamos una figura con
1879 puntillo, dividimos la nota con puntillo en figuras más pequeñas. Por
1880 ejemplo, un tempo de 90 negras con puntillo por minuto se puede
1881 especificar como 270 corcheas por minuto:
1884 tempoWholesPerMinute = #(ly:make-moment 270 8)
1887 @cindex MIDI, definiciones de contexto
1889 Las definiciones de contexto siguen con precisión la misma sintaxis
1890 que la de un bloque @code{\layout}. Los módulos de traducción para el
1891 sonido reciben el nombre de ejecutantes. Los contextos para la salida
1892 MIDI se definen en @file{../@/ly/@/performer@/-init@/.ly}, véase
1893 @rlearning{Otras fuentes de información}. Por ejemplo, para eliminar
1894 el efecto de los matices de la salida MIDI, inserte las líneas
1895 siguientes en el bloque @code{\midi@{ @}}.
1902 \remove "Dynamic_performer"
1907 La salida MIDI se crea sólo cuando se incluye un bloque @code{\midi}
1908 dentro de un bloque de partitura definido con una instrucción
1913 @{ @dots{}notas@dots{} @}
1918 @node ¿Qué sale por el MIDI?
1919 @subsection ¿Qué sale por el MIDI?
1920 @translationof What goes into the MIDI output?
1922 @unnumberedsubsubsec Contemplado en el MIDI
1924 @cindex alturas en MIDI
1925 @cindex MIDI, alturas
1926 @cindex cuartos de tono en MIDI
1927 @cindex MIDI, cuartos de tono
1928 @cindex microtonos en MIDI
1929 @cindex MIDI, microtonos
1930 @cindex acordes, nombres de, en MIDI
1931 @cindex MIDI, nombres de
1932 @cindex duraciones en MIDI
1933 @cindex MIDI, duraciones
1936 Los siguientes elementos de notación se reflejan en la salida MIDI:
1940 @item Microtonos (véase @ref{Alteraciones accidentales}. La reproducción necesita un reproductor que contemple la curvatura de tono o @emph{pitch bend}.)
1941 @item Acordes escritos como nombres de acorde
1942 @item Ritmos escritos como duraciones de las notas, incluidos los grupos de valoración especial
1943 @item Trémolos escritos sin @q{@code{:}[@var{número}]}
1944 @item Ligaduras de unión
1945 @item Matices o indicaciones de dinámica
1946 @item Crescendi y decrescendi sobre varias notas
1947 @item Cambios de tempo insertados con una marca metronómica
1948 @item Letra de las canciones
1951 @unnumberedsubsubsec No contemplado en el MIDI
1953 @c TODO index as above
1955 Los siguientes elementos de notación no tienen ningún efecto sobre la
1959 @item Duraciones escritas como anotaciones, p.ej. el swing
1960 @item Cambios de tempo escritos como anotaciones sin marca de tempo
1961 @item Staccato y otras articulaciones y ornamentos
1962 @item Ligaduras de expresión y de fraseo
1963 @item Crescendi y decrescendi sobre una nota única
1964 @item Trémolos introducidos con @q{@code{:}[@var{número}]}
1966 @item Acordes microtonales
1970 @node Repeticiones y MIDI
1971 @subsection Repeticiones y MIDI
1972 @translationof Repeats in MIDI
1974 @cindex repeticiones, expandir
1975 @funindex \unfoldRepeats
1977 Con un poco de trucaje, se puede hacer que cualquier tipo de
1978 repetición esté presente en la salida MIDI. Esto se consigue mediante
1979 la aplicación de la función musical @code{\unfoldRepeats}. Esta
1980 función cambia todas las repeticiones a repeticiones desplegadas.
1982 @lilypond[quote,verbatim]
1984 \repeat tremolo 8 { c'32 e' }
1985 \repeat percent 2 { c''8 d'' }
1986 \repeat volta 2 { c'4 d' e' f' }
1995 Al crear un archivo de partitura que use @code{\unfoldRepeats} para el
1996 MIDI, es necesario hacer dos bloques @code{\score}: uno para el MIDI
1997 (con repeticiones desplegadas) y otro para la notación impresa (con
1998 repeticiones de volta --primera y segunda vez--, tremolo --trémolo--,
1999 y percent --repetición de compases--). Por ejemplo,
2007 \unfoldRepeats @var{..música..}
2013 @node Control de los matices en el MIDI
2014 @subsection Control de los matices en el MIDI
2015 @translationof Controlling MIDI dynamics
2017 La dinámica en el MIDI está implementada por medio del intérprete
2018 Dynamic_performer que reside de forma predeterminada dentro del
2019 contexto Voice. Es posible controlar el volumen MIDI general, el
2020 volumen relativo de los matices dinámicos y el volumen relativo de los
2021 distintos instrumentos.
2023 @unnumberedsubsubsec Indicaciones dinámicas
2025 Los matices o indicaciones de dinámica se traducen a una fracción fija
2026 del rango de volumen MIDI disponible. Las fracciones predeterminadas
2027 se extienden desde 0.25 para @notation{ppppp} hasta 0.95 para
2028 @notation{fffff}. El conjunto de indicaciones dinámicas y las
2029 fracciones asociadas pueden verse en @file{../@/scm/@/midi.scm}, véase
2030 @rlearning{Otras fuentes de información}. Este conjunto de fracciones
2031 se puede cambiar o extender proporcionando una función que toma como
2032 argumento una indicación dinámica y devuelve la fracción requerida, y
2033 estableciendo @code{Score.dynamicAbsoluteVolumeFunction} a esta
2036 Por ejemplo, si se requiere una indicación dinámica
2037 @notation{rinforzando}, @code{\rfz}, ésta no tiene ningún efecto
2038 predeterminado sobre el volumen MIDI, pues no está incluida en el
2039 conjunto predeterminado. De igual manera, si se define una indicación
2040 dinámica nueva con @code{make-dynamic-script}, ésta tampoco estará
2041 incluida en el conjunto predeterminado. El ejemplo siguiente muestra
2042 cómo hay que añadir el volumen MIDI para estas indicaciones dinámicas.
2043 La función Scheme establece la fracción a 0.9 si se encuentra una
2044 indicación dinámica rfz, y en caso contrario llama a la función
2047 @lilypond[verbatim,quote]
2048 #(define (myDynamics dynamic)
2049 (if (equal? dynamic "rfz")
2051 (default-dynamic-absolute-volume dynamic)))
2055 \set Staff.midiInstrument = #"cello"
2056 \set Score.dynamicAbsoluteVolumeFunction = #myDynamics
2068 Como alternativa, si se necesitara redefinir la tabla completa de
2069 fracciones, sería mejor usar el procedimiento
2070 @notation{default-dynamic-absolute-volume} que aparece en
2071 @file{../@/scm/@/midi.scm} y la tabla asociada como modelo. El último
2072 ejemplo de esta sección muestra cómo se puede hacer esto.
2074 @unnumberedsubsubsec Volumen maestro MIDI
2076 El volumen general máximo y mínimo de las indicaciones dinámicas de
2077 MIDI se controla estableciendo valores para las propiedades
2078 @code{midiMinimumVolume} y @code{midiMaximumVolume} en el nivel de
2079 @code{Score}. Estas propiedades tienen efecto solamente sobre las
2080 indicaciones dinámicas, por ello si queremos que tengan validez desde
2081 el comienzo de la partitura, se debe colocar allí una indicación de
2082 dinámica. La fracción que corresponde a cada indicación dinámica se
2083 modifica con esta fórmula:
2086 midiMinimumVolume + (midiMaximumVolume - midiMinimumVolume) * fracción
2089 En el ejemplo siguiente, el rango de intensidad dinámica del volumen
2090 general MIDI está limitado al intervalo desde 0.2 hasta 0.5.
2092 @lilypond[verbatim,quote]
2098 \set Staff.midiInstrument = #"flute"
2099 \new Voice \relative c''' {
2107 \set Staff.midiInstrument = #"clarinet"
2108 \new Voice \relative c'' {
2119 tempoWholesPerMinute = #(ly:make-moment 72 2)
2120 midiMinimumVolume = #0.2
2121 midiMaximumVolume = #0.5
2127 @unnumberedsubsubsec Balance entre instrumentos (i)
2129 Si las propiedades de volumen MIDI máximo y mínimo están establecidas
2130 en el contexto @code{Staff} se pueden controlar los volúmenes
2131 relativos de los instrumentos MIDI. Esto proporciona un ecualizador
2132 de instrumentos básico que puede realzar significativamente la calidad
2135 En este ejemplo se reduce el volumen del clarinete con relación al de
2136 la flauta. Debe haber una indicación dinámica en la primera nota de
2137 cada instrumento para que esto funcione correctamente.
2139 @lilypond[verbatim,quote]
2145 \set Staff.midiInstrument = #"flute"
2146 \set Staff.midiMinimumVolume = #0.7
2147 \set Staff.midiMaximumVolume = #0.9
2148 \new Voice \relative c''' {
2156 \set Staff.midiInstrument = #"clarinet"
2157 \set Staff.midiMinimumVolume = #0.3
2158 \set Staff.midiMaximumVolume = #0.6
2159 \new Voice \relative c'' {
2170 tempoWholesPerMinute = #(ly:make-moment 72 2)
2176 @unnumberedsubsubsec Balance entre instrumentos (ii)
2178 Si las propiedades de volumen MIDI máximo y mínimo no están
2179 establecidas, de forma predeterminada LilyPond aplica un pequeño grado
2180 de ecualización a algunos instrumentos. Los instrumentos y la
2181 ecualización que se aplica se muestra en la tabla
2182 @notation{instrument-equalizer-alist} en @file{../@/scm/@/midi.scm}.
2184 El ecualizador básico predeterminado se puede sustituir estableciendo
2185 @code{instrumentEqualizer} en el contexto @code{Score} a un
2186 procedimiento Scheme nuevo que acepte el nombre de un instrumento MIDI
2187 como único argumento y devuelva un par de fracciones que dan los
2188 volúmenes máximo y mínimo que se aplican a dicho instrumento. Esta
2189 sustitución se hace de la misma forma que mostramos para restablecer
2190 la fracción de volumen absoluto @code{dynamicAbsoluteVolumeFunction}
2191 al comienzo de esta sección. El ecualizador predeterminado,
2192 @notation{default-instrument-equalizer}, en
2193 @file{../@/scm/@/midi.scm}, muestra cómo se puede escribir tal
2196 El ejemplo siguiente establece los volúmenes relativos de la flauta y
2197 del clarinete a los mismos valores que el ejemplo anterior.
2199 @lilypond[verbatim,quote]
2200 #(define my-instrument-equalizer-alist '())
2202 #(set! my-instrument-equalizer-alist
2205 ("flute" . (0.7 . 0.9))
2206 ("clarinet" . (0.3 . 0.6)))
2207 my-instrument-equalizer-alist))
2209 #(define (my-instrument-equalizer s)
2210 (let ((entry (assoc s my-instrument-equalizer-alist)))
2219 \set Score.instrumentEqualizer = #my-instrument-equalizer
2220 \set Staff.midiInstrument = #"flute"
2221 \new Voice \relative c''' {
2229 \set Staff.midiInstrument = #"clarinet"
2230 \new Voice \relative c'' {
2241 tempoWholesPerMinute = #(ly:make-moment 72 2)
2248 @c Delete when satisfied this is adequately covered elsewhere -td
2250 @n ode Microtones in MIDI
2251 @s ubsection Microtones in MIDI
2253 @cindex microtones in MIDI
2255 Microtones consisting of half sharps and half flats are exported
2256 to the MIDI file and render correctly in MIDI players which support
2257 pitch bending. See @ref{Nombres de las notas en otros idiomas}. Here is
2258 an example showing all the half sharps and half flats. It can be
2259 copied out and compiled to test microtones in your MIDI player.
2261 @lilypond[verbatim,quote]
2278 @node Percusión en MIDI
2279 @subsection Percusión en MIDI
2280 @translationof Percussion in MIDI
2282 La notación de los instrumentos de percusión se realiza normalmente en
2283 un contexto @code{DrumStaff} y cuando se hace de esta forma se les da
2284 salida correctamente por el canal MIDI@tie{}10, pero ciertos
2285 instrumentos de percusión de altura determinada, como el xilófono,
2286 marimba, vibráfono, timbales, etc., se tratan como instrumentos
2287 @qq{normales} y la música para estos instrumentos se debe introducir
2288 en contextos de @code{Staff} normales, no en un contexto
2289 @code{DrumStaff}, para obtener la salida MIDI correcta.
2291 Ciertos sonidos de altura indeterminada que están incluidos en el
2292 estándar General MIDI, como el tom melódico, el tambor taiko, los
2293 tambores sintéticos, etc., no se pueden acceder a través del canal
2294 MIDI@tie{}10, por lo que la notación para dichos instrumentos se debe
2295 introducir también en un contexto normal de @code{Staff}, utilizando
2296 las alturas normales adecuadas.
2298 Muchos instrumentos de percusión no están incluidos dentro del
2299 estándar General MIDI, p.ej. las castañuelas. El método más
2300 fácil (aunque no satisfactorio) de producir una salida MIDI al
2301 escribir para estos instrumentos es sustituirlos por el sonido más
2302 parecido del conjunto estándar.
2304 @c TODO Expand with examples, and any other issues
2308 Debido a que el estándar General MIDI no contiene golpes de aro
2309 (@emph{rim shots}), para este propósito se utiliza en su lugar el
2310 golpe lateral de baqueta (@emph{sidestick}).