]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/es/user/input.itely
Merge branch 'lilypond/translation' of ssh://jomand@git.sv.gnu.org/srv/git/lilypond
[lilypond.git] / Documentation / es / user / input.itely
1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
2 @c This file is part of lilypond.tely
3 @ignore
4     Translation of GIT committish: 550152ed5d5015d13abf2af83b2e040f996a66a4
5
6     When revising a translation, copy the HEAD committish of the
7     version that you are working on.  See TRANSLATION for details.
8 @end ignore
9
10 @c \version "2.11.61"
11
12 @node General input and output
13 @chapter General input and output
14
15 Esta sección trata de asuntos relacionados con la entrada y salida
16 generales de LilyPond, más que con la notación específica.
17
18 @menu
19 * Input structure::
20 * Titles and headers::
21 * Working with input files::
22 * Controlling output::
23 * MIDI output::
24 @end menu
25
26
27 @node Input structure
28 @section Input structure
29
30 El formato principal de entrada para LilyPond son archivos de texto.
31 Por convenio, el nombre de estos archivos termina en @code{.ly}.
32
33 @menu
34 * Structure of a score::
35 * Multiple scores in a book::
36 * File structure::
37 @end menu
38
39
40 @node Structure of a score
41 @subsection Structure of a score
42
43 @funindex \score
44
45 Ub bloque @code{\score} debe contener una expresión musical única
46 delimitada por un par de llaves:
47
48 @example
49 \score @{
50 ...
51 @}
52 @end example
53
54 @c outer?
55 @warning{Sólo puede haber @strong{una} expresión musical dentro del
56 bloque @code{\score}, y @strong{debe} estar encerrada entre llaves.}
57
58 Esta expresión musical única puede tener cualquier tamaño, y puede
59 contener otras expresiones musicales hasta cualquier grado de
60 complejidad.  Todos los siguientes ejemplos son expresiones musicales:
61
62 @example
63 @{ c'4 c' c' c' @}
64 @end example
65
66 @lilypond[verbatim,quote]
67 {
68   { c'4 c' c' c'}
69   { d'4 d' d' d'}
70 }
71 @end lilypond
72
73 @lilypond[verbatim,quote]
74 <<
75   \new Staff { c'4 c' c' c' }
76   \new Staff { d'4 d' d' d' }
77 >>
78 @end lilypond
79
80 @example
81 @{
82   \new GrandStaff <<
83     \new StaffGroup <<
84       \new Staff @{ \flute @}
85       \new Staff @{ \oboe @}
86     >>
87     \new StaffGroup <<
88       \new Staff @{ \violinI @}
89       \new Staff @{ \violinII @}
90     >>
91   >>
92 @}
93 @end example
94
95 Los comentarios son una excepción a esta regla general (para ver otras
96 excepciones, consulte @ref{File structure}).  Tanto los comentarios de
97 una línea como los que están delimitados por @code{%@{ .. %@}} se
98 pueden escribir en cualquier lugar dentro del archivo de entrada.  Se
99 pueden escribir dentro o fuera del bloque @code{\score}, y dentro o
100 fuera de la expresión musical única dentro del bloque @code{\score}.
101
102 @seealso
103
104 Manual de aprendizaje:
105 @rlearning{Working on input files},
106 @rlearning{Music expressions explained},
107 @rlearning{Score is a (single) compound musical expression}.
108
109
110 @node Multiple scores in a book
111 @subsection Multiple scores in a book
112
113 @funindex \book
114 @cindex movimientos, varios
115
116 Un documento puede contener varias piezas de música y texto.  Son
117 ejemplos un libro de estudios o una parte orquestal con varios
118 movimientos.  Cada movimiento se introduce con un bloque
119 @code{\score}:
120
121 @example
122 \score @{
123   @var{..música..}
124 @}
125 @end example
126
127 y los textos se introducen con un bloque @code{\markup}:
128
129 @example
130 \markup @{
131   @var{..texto..}
132 @}
133 @end example
134
135 @funindex \book
136
137 Todos los movimientos y textos que aparecen en el mismo archivo
138 @code{.ly} se tipografían normalmente en la forma de un solo archivo
139 de salida.
140
141 @example
142 \score @{
143   @var{..}
144 @}
145 \markup @{
146   @var{..}
147 @}
148 \score @{
149   @var{..}
150 @}
151 @end example
152
153 Sin embargo, si queremos varios archivos de salida a partir del mismo
154 archivo @code{.ly}, podemos escribir varios bloques @code{\book},
155 donde cada uno de estos bloques @code{\book} dará como resultado un
156 archivo de salida distinto.  Si no especificamos ningún bloque
157 @code{\book} en el archivo,, LilyPond trata implícitamente todo el
158 archivo como un solo bloque @code{\book}, véase @ref{File structure}.
159 Una excepción importante se da dentro de los documentos de
160 lilypond-book, en los que tenemos que escribir explícitamente un
161 bloque @code{\book}, pues en caso contrario sólo aparecerá en la
162 salida el primer @code{\score} o @code{\markup}.
163
164 El encabezamiento de cada pieza se puede poner dentro del bloque
165 @code{\score}.  Antes de cada movimiento, se imprime el nombre de la
166 pieza (@code{piece}) extraído del encabezamiento.  El título del libro
167 entero se puede poner dentro del bloque @code{\book}, pero si no está
168 presente se inserta el encabezamiento @code{\header} que está al
169 principio del archivo.
170
171 @example
172 \header @{
173   title = "Ocho miniaturas"
174   composer = "Igor Stravinsky"
175 @}
176 \score @{
177   @dots{}
178   \header @{ piece = "Romanze" @}
179 @}
180 \markup @{
181    ..texto de la segunda estrofa..
182 @}
183 \markup @{
184    ..texto de la tercera estrofa..
185 @}
186 \score @{
187   @dots{}
188   \header @{ piece = "Menuetto" @}
189 @}
190 @end example
191
192
193 @node File structure
194 @subsection File structure
195
196 @funindex \paper
197 @funindex \midi
198 @funindex \layout
199 @funindex \header
200 @funindex \score
201 @funindex \book
202
203 Un archivo @code{.ly} puede contener cualquier número de expresions
204 del nivel superior, donde una expresión del nivel superior es una de
205 las siguientes posibilidades:
206
207 @itemize @bullet
208 @item
209 Una definición de salida, como @code{\paper}, @code{\midi} y
210 @code{\layout}.  Tal definición en el nivel más alto cambia los
211 ajustes predeterminados para todo el libro.  Si se introduce más de
212 una de estas definiciones del mismo tipo en el nivel más alto,
213 cualquier definición en una expresión posterior tiene prioridad.
214
215 @item
216 Una expresión directa de Scheme, como
217 @code{#(set-default-paper-size "a7" 'landscape)} o
218 @code{#(ly:set-option 'point-and-click #f)}.
219
220 @item
221 Un bloque @code{\header}.  Esto establece el bloque de encabezamiento
222 global.  Es el bloque que contiene las definiciones de los ajustes
223 para todo el libro, como el compositor, título, etc.
224
225 @item
226 Un bloque @code{\score}.  Esta partitura se reúne con otras partituras
227 del nivel superior, y se combina con ellas formando un @code{\book}
228 (libro) único.  Este comportamiento se puede cambiar estableciendo el
229 valor de la variable @code{toplevel-score-handler} en el nivel
230 superior.  El @emph{handler} predeterminado se define en el archivo de
231 inicio @file{../scm/@/lily@/.scm}.
232
233 @item
234 Un bloque @code{\book} combina lógicamente varios movimientos (es
235 decir, varios bloques @code{\score}) en un solo documento.  Si hay
236 varias partituras @code{\score}, se crea un solo archivo de salida
237 para cada bloque @code{\book}, en el que se concatenan todos los
238 movimientos correspondientes.  La únca razón para especificar
239 explícitamente bloques @code{\book} en un archivo de entrada
240 @code{.ly} es si queremos crear varios archivos de salida a partir de
241 un único archivo de entrada.  Una excepción se da dentro de los
242 documentos de lilypond-book, en los que tenemos que escribir
243 explícitamente un bloque @code{\book} si queremos tener más de una
244 única partitura @code{\score} o marcado @code{\markup} en el mismo
245 ejemplo.  Se puede cmbiar este comportamiento estableciendo el valor
246 de la variable @code{toplevel-book-handler} en el nivel superior.  El
247 @emph{handler} predeterminado se define en el archivo de inicio
248 @file{../scm/@/lily@/.scm}.
249
250 @item
251 Una expresión musical compuesta, como
252 @example
253 @{ c'4 d' e'2 @}
254 @end example
255
256 Esto añade la pieza al @code{\score} y la conforma dentro de un libro
257 único junto a todas las demás partituras @code{\score} y expresiones
258 musicales del nivel superior.  En otras palabras, un archivo que
259 contiene sólo la expresión musical anterior se traduce a
260
261 @example
262 \book @{
263   \score @{
264     \new Staff @{
265       \new Voice @{
266         @{ c'4 d' e'2 @}
267       @}
268     @}
269   @}
270         \layout @{ @}
271         \header @{ @}
272 @}
273 @end example
274
275 Se puede cambiar este comportamiento estableciendo el valor de la
276 bariable @code{toplevel-music-handler} en el nivel más alto.  El
277 @emph{handler} predeterminado se define en el archivo de inicio
278 @file{../scm/@/lily@/.scm}.
279
280 @item
281 Un texto de marcado, por ejemplo una estrofa
282 @example
283 \markup @{
284    2.  Estrofa dos, línea uno
285 @}
286 @end example
287
288 Los textos de marcado se colocan encima, en medio o debajo de las
289 partituras o expresiones musicales, según donde aparezcan escritos.
290
291 @cindex variables
292
293 @item
294 Una variable, como
295 @example
296 fulano = @{ c4 d e d @}
297 @end example
298
299 Esto se puede utilizar más tarde en el archivo escribiendo
300 @code{\fulano}.  El nombre de las variables ha de ser exclusivamente
301 alfabético; sin números, guiones ni barras bajas.
302
303 @end itemize
304
305 El ejemplo siguiente muestra tres cosas que se pueden introducir en el
306 nivel superior:
307
308 @example
309 \layout @{
310   % No justificar la salida
311   ragged-right = ##t
312 @}
313
314 \header @{
315    title = "Do-re-mi"
316 @}
317
318 @{ c'4 d' e2 @}
319 @end example
320
321 En cualquier punto del archivo se pueden introducir cualquiera de las
322 instrucciones léxicas siguientes:
323
324 @itemize
325 @item @code{\version}
326 @item @code{\include}
327 @item @code{\sourcefilename}
328 @item @code{\sourcefileline}
329 @item
330 Un comentario de una línea, determinado por un símbolo @code{%} al principio.
331
332 @item
333 Un comentario de varias líneas, delimitado por @code{%@{ .. %@}}.
334
335 @end itemize
336
337 @seealso
338
339 Manual de aprendizaje:
340 @rlearning{How LilyPond input files work}.
341
342
343 @node Titles and headers
344 @section Titles and headers
345
346 Casi toda la música impresa tiene un título y el nombre del
347 compositor; ciertas piezas tienen mucha más información.
348
349 @menu
350 * Creating titles::
351 * Custom titles::
352 * Reference to page numbers::
353 * Table of contents::
354 @end menu
355
356
357 @node Creating titles
358 @subsection Creating titles
359
360 Se crean títulos para cada uno de los bloques @code{\score} así como
361 para todo el archivo de entrada (o bloque @code{\book} (libro)).
362
363 El contenido de cada título se extrae a partir de los bloques
364 @code{\header} (cabecera).  El bloque de cabecera de un libro
365 contempla lo siguiente:
366
367 @table @code
368 @funindex dedicatoria
369 @item dedication
370 El dedicatario de la música, centrado en lo alto de la primera página.
371
372 @funindex title
373 @item title
374 El título de la música, centrado justo debajo de la
375 dedicatoria.
376
377 @funindex subtitle
378 @item subtitle
379 Subtítulo, centrado debajo del título.
380
381 @funindex subsubtitle
382 @item subsubtitle
383 Sub-subtítulo, centrado debajo del subtítulo.
384
385 @funindex poet
386 @item poet
387 Nombre del poeta, a la izquierda, debajo del subtítulo.
388
389 @funindex composer
390 @item composer
391 Nombre del compositor, a la derecha, debajo del subtítulo.
392
393 @funindex meter
394 @item meter
395 Texto de la medida, a la izquierda, debajo del poeta.
396
397 @funindex opus
398 @item opus
399 Nombre del Opus, a la derecha, debajo del compositor.
400
401 @funindex arranger
402 @item arranger
403 Nombre del arreglista, a la derecha, debajo del Opus.
404
405 @funindex instrument
406 @item instrument
407 Nombre del instrumento, centrado, debajo del arreglista.  También
408 aparece centrado en lo alto de cada página (aparte de la primera).
409
410 @funindex piece
411 @item piece
412 Nombre de la pieza, a la izquierda, debajo del instrumento.
413
414 @cindex página, saltos, forzar
415 @funindex breakbefore
416 @item breakbefore
417 Esto fuerza que el título comience sobre una página nueva (establézcalo a ##t o a ##f).
418
419 @funindex copyright
420 @item copyright
421 Aviso de Copyright, centrado en la parte inferior de la primera
422 página.  Para insertar el símbolo de copyright symbol, consulte
423 @ref{Text encoding}.
424
425 @funindex tagline
426 @item tagline
427 Cartel de propósito general en el pie de página, centrado al final de la última.
428
429 @end table
430
431 A continuación presentamos una demostración de todos los campos que
432 están disponibles.  Fíjese en que puede utilizar en la cabecera
433 cualquier instrucción de marcado de texto (Véase @ref{Formatting text}).
434
435 @lilypond[quote,verbatim,line-width=11.0\cm]
436 \paper {
437   line-width = 9.0\cm
438   paper-height = 10.0\cm
439 }
440
441 \book {
442   \header {
443     dedication = "dedicated to me"
444     title = \markup \center-column { "Title first line" "Title second line,
445 longer" }
446     subtitle = "the subtitle,"
447     subsubtitle = #(string-append "subsubtitle LilyPond version "
448 (lilypond-version))
449     poet = "Poet"
450     composer =  \markup \center-column { "composer" \small "(1847-1973)" }
451     texttranslator = "Text Translator"
452     meter = \markup { \teeny "m" \tiny "e" \normalsize "t" \large "e" \huge
453 "r" }
454     arranger = \markup { \fontsize #8.5 "a" \fontsize #2.5 "r" \fontsize
455 #-2.5 "r" \fontsize #-5.3 "a" \fontsize #7.5 "nger" }
456     instrument = \markup \bold \italic "instrument"
457     piece = "Piece"
458   }
459
460   \score {
461     { c'1 }
462     \header {
463       piece = "piece1"
464       opus = "opus1"
465     }
466   }
467   \markup {
468       and now...
469   }
470   \score {
471     { c'1 }
472     \header {
473       piece = "piece2"
474       opus = "opus2"
475     }
476   }
477 }
478 @end lilypond
479
480 Como se mostró anteriormente, puede usar varios bloques
481 @code{\header}.  Cuando los mismos campos aparecen en distintos
482 bloques, tiene validez el último en definirse.  A continuación un
483 breve ejemplo.
484
485 @example
486 \header @{
487   composer = "Compositor"
488 @}
489 \header @{
490   piece = "Pieza"
491 @}
492 \score @{
493   \new Staff @{ c'4 @}
494   \header @{
495     piece = "Otra pieza"  % sobreescribe a la anterior
496   @}
497 @}
498 @end example
499
500 Si define la cabecera @code{\header} dentro del bloque @code{\score},
501 por lo general se imprimirán solamente las cabeceras @code{piece} y
502 @code{opus}.  Fíjese en que la expresión musical debe aparecer antes
503 del @code{\header}.
504
505 @lilypond[quote,verbatim,line-width=11.0\cm]
506 \score {
507   { c'4 }
508   \header {
509     title = "title"  % not printed
510     piece = "piece"
511     opus = "opus"
512   }
513 }
514 @end lilypond
515
516 @funindex print-all-headers
517 @noindent
518 Se puede cambiar este comportamiento (e imprimir todas las cabeceras
519 cuando la cabecera @code{\header} está definida dentro del bloque
520 @code{\score}) mediante la utilización de
521
522 @example
523 \paper@{
524   print-all-headers = ##t
525 @}
526 @end example
527
528 @cindex copyright
529 @cindex tagline
530
531 El pie de página por omisión se encuentra vacío, excepto para la
532 primera página, en la que se inserta el campo de @code{copyright}
533 extraído del @code{\header}, y para la última página, en la que se
534 escribe el cartel @code{tagline} sacado del bloque @code{\header}.  La
535 línea por omisión para este cartel es @qq{Music engraving by LilyPond
536 (@var{version})}.@footnote{Las partituras bien tipografiadas son una
537 magnífica promoción para nosotros, así que por favor, si puede,
538 conserve intacta la línea del letrero.}
539
540 Las cabeceras se pueden quitar completamente estableciendo su valor a
541 falso.
542
543 @example
544 \header @{
545   tagline = ##f
546   composer = ##f
547 @}
548 @end example
549
550
551 @node Custom titles
552 @subsection Custom titles
553
554 Una opción más avanzada es cambiar las definiciones de las variables
555 siguientes dentro del bloque @code{\paper} block.  El archivo de
556 inicio @file{ly/titling-init.ly} ofrece un listado de la disposición
557 predeterminada.
558
559 @table @code
560 @funindex bookTitleMarkup
561 @item bookTitleMarkup
562   Es el título que se escribe en lo alto del documento de salida
563 completo.  Normalmente contiene el compositor y el título de la pieza.
564
565 @funindex scoreTitleMarkup
566 @item scoreTitleMarkup
567   Es el título que se coloca por encima de un bloque @code{\score}.
568 normalmente contiene el nombre del movimiento (campo @code{piece}).
569
570 @funindex oddHeaderMarkup
571 @item oddHeaderMarkup
572   Es el encabezamiento de las páginas de numeración impar.
573
574 @funindex evenHeaderMarkup
575 @item evenHeaderMarkup
576   Es el encabezamiento de las páginas de numeración par.  Si se deja
577   sin especificar, se usará el encabezamiento de las páginas impares.
578
579   De forma predeterminada, los encabezamientos se definen de tal forma
580 que el número de página está en el borde exterior, y el isntrumento
581 está centrado.
582
583 @funindex oddFooterMarkup
584 @item oddFooterMarkup
585   Es el pie de las páginas de numeración impar.
586
587 @funindex evenFooterMarkup
588 @item evenFooterMarkup
589   Es el pie de las páginas de numeración par.  Si se deja sin
590   especificar, se usará en su lugar el encabezamiento de las páginas
591   impares.
592
593   De forma predeterminada, el pie de página tiene el aviso de
594 copyright en la primera página, y el cartel @code{tagline} en la
595 última.
596 @end table
597
598
599 @cindex \paper
600 @cindex encabezamiento
601 @cindex header
602 @cindex pie
603 @cindex disposición de la página
604 @cindex títulos
605
606 La definición siguiente pone el título en el extremo izquierdo, y el
607 compositor en el extremo derecho sobre una única línea.
608
609 @verbatim
610 \paper {
611   bookTitleMarkup = \markup {
612    \fill-line {
613      \fromproperty #'header:title
614      \fromproperty #'header:composer
615    }
616   }
617 }
618 @end verbatim
619
620 @node Reference to page numbers
621 @subsection Reference to page numbers
622
623 Se puede marcar un lugar determinado de una partitura utilizando la
624 instrucción @code{\label} (etiqueta), bien en lo alto de la estructura
625 o bien dentro de la música.  Posteriormente se puede hacer referencia
626 a esta etiqueta dentro de un elemento de marcado, para obtener el
627 número de la página en que se encuentra la marca, usando la
628 instrucción de marcado @code{\page-ref}.
629
630 @lilypond[verbatim,line-width=11.0\cm]
631 \header { tagline = ##f }
632 \book {
633   \label #'firstScore
634   \score {
635     {
636       c'1
637       \pageBreak \mark A \label #'markA
638       c'
639     }
640   }
641
642   \markup { The first score begins on page \page-ref #'firstScore "0" "?" }
643   \markup { Mark A is on page \page-ref #'markA "0" "?" }
644 }
645 @end lilypond
646
647 La instrucción de marcado @code{\page-ref} toma tres argumentos:
648 @enumerate
649 @item la etiqueta, un símbolo de scheme, p.ej. @code{#'firstScore};
650 @item un elemento de marcado que se usará como medidor para estimar las dimensiones del marcado;
651 @item un elemento de marcado que se utilizará en sustitución del número de página si la etiqueta es desconocida.
652 @end enumerate
653
654 El motivo de que se necesite un medidor es que en el momento en que se
655 están interpretando los marcados, los saltos de página aún no se han
656 producido y por tanto los números de página no se conocen todavía.
657 Para sortear este inconveniente, la interpretación real del marcado se
658 retrasa hasta un momento posterior; sin embargo, las dimensiones del
659 marcado se tienen que conocer de antemano, así que se usa el medidor
660 para decidir estas dimensiones.  Si el libro tiene entre 10 y 99
661 páginas, el medidor puede ser "00", es decir, un número de dos
662 dígitos.
663
664 @predefined
665
666 @funindex \label
667 @code{\label}
668 @funindex \page-ref
669 @code{\page-ref}
670
671 @node Table of contents
672 @subsection Table of contents
673
674 Se puede insertar un índice general o tabla de contenidos utilizando
675 la instrucción @code{\markuplines \table-of-contents}.  Los elementos
676 que deben aparecer en la tabla de contenidos se introducen con la
677 instrucción @code{\tocItem}, que se puede usar en el nivel más alto de
678 la jerarquía del código, o dentro de una expresión musical.
679
680 @verbatim
681 \markuplines \table-of-contents
682 \pageBreak
683
684 \tocItem \markup "Primera partitura"
685 \score {
686   {
687     c'  % ...
688     \tocItem \markup "Un punto concreto dentro de la primera partitura"
689     d'  % ...
690   }
691 }
692
693 \tocItem \markup "Segunda partitura"
694 \score {
695   {
696     e' % ...
697   }
698 }
699 @end verbatim
700
701 Los elementos de marcado que se usan para dar formato al índice
702 general se encuentran definidos dentro del bloque @code{\paper}.  Los
703 elementos predeterminados son @code{tocTitleMarkup}, para dar formato
704 al título de la tabla, y @code{tocItemMarkup}, para aplicar formato a
705 los elementos del índice, que consisten en el título del elemento y el
706 número de página.  Estas variables se pueden cambiar por parte del
707 usuario:
708
709 @verbatim
710 \paper {
711   %% Traducir el título del índice al español:
712   tocTitleMarkup = \markup \huge \column {
713     \fill-line { \null "Índice general" \null }
714     \hspace #1
715   }
716   %% usar una fuente mayor
717   tocItemMarkup = \markup \large \fill-line {
718     \fromproperty #'toc:text \fromproperty #'toc:page
719   }
720 }
721 @end verbatim
722
723 Observe la forma en que nos referimos al texto y al número de página
724 del elemento de índice, dentro de la definición @code{tocItemMarkup}.
725
726 También se pueden definir nuevas instrucciones y elementos de
727 marcado para crear índices generales más eleborados:
728 @itemize
729 @item en primer lugar, defina una variable de marcado nueva dentro del bloque @code{\paper}
730 @item luego defina una función de música cuyo propósito es añadir un elemento al índice general
731 utilizando esta variable de marcado del bloque @code{\paper}.
732 @end itemize
733
734 En el ejemplo siguiente se define un estilo nuevo para introducir los
735 nombres de los actos de una ópera en el índice general:
736
737 @verbatim
738 \paper {
739   tocActMarkup = \markup \large \column {
740     \hspace #1
741     \fill-line { \null \italic \fromproperty #'toc:text \null }
742     \hspace #1
743   }
744 }
745
746 tocAct =
747 #(define-music-function (parser location text) (markup?)
748    (add-toc-item! 'tocActMarkup text))
749 @end verbatim
750
751 @lilypond[line-width=11.0\cm]
752 \header { tagline = ##f }
753 \paper {
754   tocActMarkup = \markup \large \column {
755     \hspace #1
756     \fill-line { \null \italic \fromproperty #'toc:text \null }
757     \hspace #1
758   }
759 }
760
761 tocAct =
762 #(define-music-function (parser location text) (markup?)
763    (add-toc-item! 'tocActMarkup text))
764
765 \book {
766   \markuplines \table-of-contents
767   \tocAct \markup { Atto Primo }
768   \tocItem \markup { Coro. Viva il nostro Alcide }
769   \tocItem \markup { Cesare. Presti omai l'Egizzia terra }
770   \tocAct \markup { Atto Secondo }
771   \tocItem \markup { Sinfonia }
772   \tocItem \markup { Cleopatra. V'adoro, pupille, saette d'Amore }
773   \markup \null
774 }
775 @end lilypond
776
777 @seealso
778
779 Archivos de inicio:
780 @file{ly/@/toc@/-init@/.ly}.
781
782 @predefined
783
784 @funindex \table-of-contents
785 @code{\table-of-contents}
786 @funindex \tocItem
787 @code{\tocItem}
788
789
790 @node Working with input files
791 @section Working with input files
792
793 @menu
794 * Including LilyPond files::
795 * Different editions from one source::
796 * Text encoding::
797 * Displaying LilyPond notation::
798 @end menu
799
800
801 @node Including LilyPond files
802 @subsection Including LilyPond files
803
804 @funindex \include
805 @cindex including files
806
807 Un proyecto grande se puede dividir en varios archivos.  Para
808 referirse a otro archivo, utilice
809
810 @example
811 \include "otroarchivo.ly"
812 @end example
813
814 La línea @code{\include "otroarchivo.ly"} equivale a pegar todo el
815 contenido de @file{otroarchivo.ly} en el archivo actual en el lugar en
816 que aparece el @code{\include}.  Por ejemplo, en un proyecto grande
817 podríamos querer archivos distintos para cada parte instrumental y
818 crear un archivo de @qq{partitura completa} que reúne los archivos
819 individuales de los instrumentos.  Normalmente el archivo incluido
820 define un cierto número de variables que a partir de entonces quedan
821 disponibles para poderlas utilizar en el archivo de la partitura
822 completa.  En los archivos incluidos se pueden marcar las secciones
823 etiquetadas para ayudar a hacerlas utilizables en distintos lugares de
824 la partitura, véase @ref{Different editions from one source}.
825
826 Los archivos que están en el directorio de trabajo actual se pueden
827 referenciar simplemente especificando el nombre depués de la
828 instrucción @code{\include}.  Los archivos en otros lugares se pueden
829 incluir proporcionando una referencia de ruta completa o una ruta
830 relativa (pero utilice la barra inclinada normal del UNIX, /, no la
831 barra invertida de DOS/Windows, \, como separador de directorio).  Por
832 ejemplo, si @file{material.ly} está situado un directorio por encima
833 del directorio de trabajo actual, utilice
834
835 @example
836 \include "../material.ly"
837 @end example
838
839 @noindent
840 o si los archivos de las partes orquestales incluidas están todos
841 situados en un subdirectorio llamado @file{partes} dentro del
842 directorio actual, use
843
844 @example
845 \include "partes/VI.ly"
846 \include "partes/VII.ly"
847 ... etc.
848 @end example
849
850 Los archivos de inclusión también pueden contener enunciados
851 @code{\include} a su vez.  Estos enunciados @code{\include} de segundo
852 nivel no se interpretan hasta que se incorporan al archivo principal,
853 por lo que los nombres de archivo que especifican deben ser relativos
854 al directorio que contiene el archivo principal, no al directorio que
855 contiene el archivo incluido.
856
857 También se pueden incluir archivos de un directorio que está en una
858 ruta de búsqueda especificada como opción al invocar a LilyPond desde
859 la línea de órdenes.  Los archivos incluidos se especifican usando
860 solamente su nombre de archivo.  Por ejemplo, para compilar mediante
861 este método un archivo @file{principal.ly} que incluye archivos
862 situados en un subdirectorio llamado @file{partes}, cambie al
863 directorio que contiene @file{principal.ly} e introduzca
864
865 @example
866 lilypond --include=partes principal.ly
867 @end example
868
869 y en @file{principal.ly} escriba
870
871 @example
872 \include "VI.ly"
873 \include "VII.ly"
874 ... etc.
875 @end example
876
877 Los archivos que se incluyen en muchas partituras se pueden poner en
878 el directorio de LilyPond @file{../ly} (la localización de este
879 directorio depende de la instalación: véase @rlearning{Other sources
880 of information}).  Estos archivos se pueden incluir sencillamente por
881 su nombre en un enunciado @code{\include}.  De esta forma se incluyen
882 los archivos dependientes del idioma como @file{english.ly}.
883
884 LilyPond incluye de forma predeterminada ciertos archivos cuando se
885 inicia el programa.  Estas inclusiones no son visibles para el
886 usuario, pero los archivos se pueden identificar ejecutando
887 @code{lilypond --verbose} desde la línea de órdenes.  Esto presentará
888 una lista de rutas y archivos que utiliza LilyPond, junto a muchas
889 otras indicaciones.  De forma alternativa, pueden verse explicaciones
890 sobre los archivos más importantes de este conjunto en
891 @rlearning{Other sources of information}.  Estos archivos se pueden
892 editar, pero los cambios realizados sobre ellos se perderán al
893 instalar una nueva versión de LilyPond.
894
895 Pueden verse ejemplos sencillos sobre el uso de @code{\include} en
896 @rlearning{Scores and parts}.
897
898 @seealso
899
900 Manual de aprendizaje:
901 @rlearning{Other sources of information},
902 @rlearning{Scores and parts}.
903
904 @knownissues
905
906 Si un archivo incluido recibe un nombre igual al de uno de los
907 archivos de instalación de LilyPond, el archivo que tiene prioridad es
908 el de los archivos de instalación de LilyPond.
909
910
911 @node Different editions from one source
912 @subsection Different editions from one source
913
914 Se encuentran disponibles varios mecanismos para facilitar la
915 producción de distintas versiones de una partitura a partir de la
916 misma fuente musical.  Las variables son quizá más útiles para
917 combinar secciones extensas de música y/o anotaciones de diversas
918 formas, mientras que las etiquetas son más útiles para seleccionar una
919 de entra varias secciones de música más cortas.  Cualquiera que sea el
920 método utilizado, la separación de la notación de la estructura de la
921 partitura hará que sea más fácil cambiar la estructura dejando intacta
922 la notación.
923
924 @menu
925 * Using variables::
926 * Using tags::
927 @end menu
928
929 @node Using variables
930 @unnumberedsubsubsec Using variables
931
932 @cindex variables, uso de las
933
934 Si las secciones de la música se definen dentro de variables, se
935 pueden reutilizar en distintas partes de la partitura, véase
936 @rlearning{Organizing pieces with variables}.  Por ejemplo, una
937 partitura vocal @notation{a cappella} con frecuencia incluye una
938 reducción de piano de las partes para ensayar que ees idéntica a la
939 música vocal, por lo que ésta sólo se tiene que escribir una vez.  Se
940 puede combinar sobre un solo pentagrama la música de dos variables,
941 véase @ref{Automatic part combining}.  He aquí un ejemplo:
942
943 @lilypond[verbatim,quote]
944 sopranoMusic = \relative c'' { a4 b c b8( a)}
945 altoMusic = \relative g' { e4 e e f }
946 tenorMusic = \relative c' { c4 b e d8( c) }
947 bassMusic = \relative c' { a4 gis a d, }
948 allLyrics = \lyricmode {King of glo -- ry }
949 <<
950   \new Staff = "Soprano" \sopranoMusic
951   \new Lyrics \allLyrics
952   \new Staff = "Alto" \altoMusic
953   \new Lyrics \allLyrics
954   \new Staff = "Tenor" {
955     \clef "treble_8"
956     \tenorMusic
957   }
958   \new Lyrics \allLyrics
959   \new Staff = "Bass" {
960     \clef "bass"
961     \bassMusic
962   }
963   \new Lyrics \allLyrics
964   \new PianoStaff <<
965     \new Staff = "RH" {
966       \set Staff.printPartCombineTexts = ##f
967       \partcombine
968       \sopranoMusic
969       \altoMusic
970     }
971     \new Staff = "LH" {
972       \set Staff.printPartCombineTexts = ##f
973       \clef "bass"
974       \partcombine
975       \tenorMusic
976       \bassMusic
977     }
978   >>
979 >>
980 @end lilypond
981
982 Se pueden producir partituras distintas que presenten sólo las partes
983 vocales o sólo la parte de piano, cambiando solamente los enunciados
984 estructurales, sin modificar la notación musical.
985
986 Para partituras extensas, las definiciones de variable se pueden poner
987 en archivos separados que se incluyen más tarde, véase @ref{Including
988 LilyPond files}.
989
990
991 @node Using tags
992 @unnumberedsubsubsec Using tags
993
994 @funindex \tag
995 @funindex \keepWithTag
996 @funindex \removeWithTag
997 @cindex etiqueta
998 @cindex manetener música etiquetada
999 @cindex quitar música etiquetada
1000
1001 La instrucción @code{\tag #'@var{parteA}} marca una expresión musical
1002 con el nombre @var{parteA}.  Las expresiones etoiquetadas de esta
1003 manera se pueden seleccionar o filtrar más tarde por su nombre, usando
1004 bien @code{\keepWithTag #'@var{nombre}} o bien @code{\removeWithTag
1005 #'@var{nombre}}.  El resultado de la aplicación de estos filtros a la
1006 música etiquetada es como sigue:
1007
1008 @multitable @columnfractions .5 .5
1009 @headitem Filtro
1010   @tab Resultado
1011 @item
1012 Música etiquetada precedida de @code{\keepWithTag #'@var{nombre}}
1013 @tab
1014 Se incluye la música no etiquetada y la música etiquetada con
1015 @var{nombre}; se excluye la música etiquetada con cualquier otro
1016 nombre de etiqueta.
1017 @item
1018 Música etiquetada precedida de @code{\removeWithTag #'@var{nombre}}
1019 @tab
1020 Se incluye la música no etiquetada y la música etiquetada con
1021 cualquier nombre de etiqueta distinto a @var{nombre}; se excluye la
1022 música etiquetada con @var{nombre}.
1023 @item
1024 Música etiquetada no precedida de @code{\keepWithTag} ni de
1025 @code{\removeWithTag}
1026 @tab Se incluye toda la música etiquetada y no etiquetada.
1027 @end multitable
1028
1029 Los argumentos de las instrucciones @code{\tag}, @code{\keepWithTag} y
1030 @code{\removeWithTag} deben ser un símbolo (como @code{#'partitura} o
1031 @code{#'parte}), seguido de una expresión musical.
1032
1033 En el ejemplo siguiente vemos dos versiones de una pieza musical, una
1034 que muestra trinos con la notación usual y otra con los trinos
1035 expandidos explícitamente:
1036
1037 @lilypond[verbatim,quote]
1038 music = \relative g' {
1039   g8. c32 d
1040   \tag #'trills {d8.\trill }
1041   \tag #'expand {\repeat unfold 3 {e32 d} }
1042   c32 d
1043  }
1044
1045 \score {
1046   \keepWithTag #'trills \music
1047 }
1048 \score {
1049   \keepWithTag #'expand \music
1050 }
1051 @end lilypond
1052
1053 @noindent
1054 De forma alternativa, a veces es más fácil excluir secciones de música:
1055
1056 @lilypond[verbatim,quote]
1057 music = \relative g' {
1058   g8. c32 d
1059   \tag #'trills {d8.\trill }
1060   \tag #'expand {\repeat unfold 3 {e32 d} }
1061   c32 d
1062  }
1063
1064 \score {
1065   \removeWithTag #'expand
1066   \music
1067 }
1068 \score {
1069   \removeWithTag #'trills
1070   \music
1071 }
1072 @end lilypond
1073
1074 El flitrado con etiquetas se puede aplicar a articulaciones, textos,
1075 etc. anteponiendo
1076
1077 @example
1078 -\tag #'@var{mi-etiqueta}
1079 @end example
1080
1081 a una articulación.  Por ejemplo, esto define una nota con una
1082 indicación opcional de digitación y una nota con una anotación
1083 condicional:
1084
1085 @example
1086 c1-\tag #'finger ^4
1087 c1-\tag #'warn ^"¡Ojo!"
1088 @end example
1089
1090 Se pueden poner varias etiquetas sobre expresiones con varias entradas
1091 de @code{\tag}:
1092
1093 @lilypond[quote,verbatim]
1094 music = \relative c'' {
1095   \tag #'a \tag #'both { a a a a }
1096   \tag #'b \tag #'both { b b b b }
1097 }
1098 <<
1099 \keepWithTag #'a \music
1100 \keepWithTag #'b \music
1101 \keepWithTag #'both \music
1102 >>
1103 @end lilypond
1104
1105 Se pueden aplicar varios filtros @code{\removeWithTag} a una sola
1106 expresión musical para quitar varias secciones etiquetadas con nombres
1107 distintos:
1108
1109 @lilypond[verbatim,quote]
1110 music = \relative c'' {
1111 \tag #'A { a a a a }
1112 \tag #'B { b b b b }
1113 \tag #'C { c c c c }
1114 \tag #'D { d d d d }
1115 }
1116 {
1117 \removeWithTag #'B
1118 \removeWithTag #'C
1119 \music
1120 }
1121 @end lilypond
1122
1123 Dos o más filtros @code{\keepWithTag} aplicados a una sola expresión
1124 musical producen la eliminación de @emph{todas} las secciones
1125 etiquetadas, porque el primer filtro quita todas las secciones
1126 etiquetadas excepto la que se nombra, y el segundo filtro elimina
1127 incluso esa sección etiquetada.
1128
1129 @seealso
1130
1131 Manual de aprendizaje:
1132 @rlearning{Organizing pieces with variables}.
1133
1134 Referencia de la notación:
1135 @ref{Automatic part combining},
1136 @ref{Including LilyPond files}.
1137
1138 @ignore
1139 @c This warning is more general than this placement implies.
1140 @c Rests are not merged whether or not they come from tagged sections.
1141 @c Should be deleted?  -td
1142
1143 @knownissues
1144
1145 Multiple rests are not merged if you create a score with more
1146 than one tagged section at the same place.
1147
1148 @end ignore
1149
1150 @node Text encoding
1151 @subsection Text encoding
1152
1153 LilyPond usa el conjunto de caracteres definido por el consorcio
1154 Unicode y la norma ISO/IEC 10646.  Define un nombre único y un código
1155 para los conjuntos de caracteres que se utilizan en prácticamente
1156 todos los idiomas modernos y también en muchos otros.  Unicode se
1157 puede implementar utilizando varios esquemas de codificación
1158 distintos.  LilyPond usa la codificación UTF-8 (UTF son las siglas de
1159 @emph{Unicode Transformation Format}, o formato de transformación de
1160 Unicode) que representa todos los caracteres comunes de Latin en un
1161 solo byte, y representa otros caracteres usando un formato de longitud
1162 variable de hasta cuatro bytes.
1163
1164 El aspecto visual real de los caracteres viene determinado por los
1165 glifos que se definen en las fuentes tipográficas concretas que se
1166 tengan disponibles: una fuente tipográfica define la asignación de un
1167 subconjunto de los códigos de Unicode a glifos.  LilyPond usa la
1168 biblioteca Pango para representar y disponer tipográficamente textos
1169 multilingües.
1170
1171 Lilypond no realiza ninguna conversión en la codificación de la
1172 entrada.  Esto significa que cualquier text, ya sea el título, la
1173 letra de la canción o una instrucción musical que contenga caracteres
1174 distintos a los del conjunto ASCII, se deben codificar en UTF-8.  La
1175 forma más fácil de escribir dicho texto es utilizar un editor
1176 preparado para Unicode y guardar el archivo con la codificación UTF-8.
1177 Casi todos los editores modernos populares contemplan el UTF-8, por
1178 ejemplo lo hacen vim, Emacs, jEdit, y GEdit.  Todos los sistemas MS
1179 Windows posteriores a NT usan Unicode como codificación de caracteres
1180 nativa, de manera que incluso el accesorio Bloc de Notas (Notepad)
1181 puede editar y guardar un archivo en el formato UTF-8.  Una
1182 alternativa más funcional para Windows es BabelPad.
1183
1184 Si un archivo de entrada que contiene un carácter que no es ASCII, no
1185 se guarda en el formato UTF-8, se genera el mensaje de error
1186
1187 @example
1188 FT_Get_Glyph_Name () error: argumento inválido
1189 @end example
1190
1191 He aquí un ejemplo que muestra texto cirílico, hebreo y portugués:
1192
1193 @lilypond[quote]
1194 %c No verbatim here as the code does not display correctly in PDF
1195 % Cyrillic
1196 bulgarian = \lyricmode {
1197   Жълтата дюля беше щастлива, че пухът, който цъфна, замръзна като гьон.
1198 }
1199
1200 % Hebrew
1201 hebrew = \lyricmode {
1202   זה כיף סתם לשמוע איך תנצח קרפד עץ טוב בגן.
1203 }
1204
1205 % Portuguese
1206 portuguese = \lyricmode {
1207   à vo -- cê uma can -- ção legal
1208 }
1209
1210 \relative  {
1211   c2 d e f g f e
1212 }
1213 \addlyrics { \bulgarian }
1214 \addlyrics { \hebrew }
1215 \addlyrics { \portuguese }
1216 @end lilypond
1217
1218 Para introducir un caracter aislado para el que se conoce la secuencia
1219 de escape de Unicode pero no está disponible en el editor que se está
1220 usando, escriba
1221
1222 @example
1223 #(ly:export (ly:wide-char->utf-8 #x03BE))
1224 @end example
1225
1226 donde en este ejemplo @code{x03BE} es el código hexadecimal del
1227 carácter Unicode U+03BE, que tiene el nombre Unicode @qq{Letra griega
1228 Xi pequeña}.  Cualquier código exadecimal de Unicode se puede
1229 sustituir de esta forma y si todos los caracteres especiales se
1230 introducen en eeste formato no es necesario guardar el archivo de
1231 entrada en el formato UTF-8.
1232
1233 @knownissues
1234
1235 El formato @code{ly:export} se puede usar en textos dentro de
1236 instrucciones @code{\mark} o @code{\markup} pero no en la letra de las
1237 canciones.
1238
1239
1240 @node Displaying LilyPond notation
1241 @subsection Displaying LilyPond notation
1242
1243 @funindex \displayLilyMusic
1244 La impresión textual de una expresión musical en notación de LilyPond
1245 puede hacerse usando la función musical @code{\displayLilyMusic}.  Por
1246 ejemplo,
1247
1248 @example
1249 @{
1250   \displayLilyMusic \transpose c a, @{ c e g a bes @}
1251 @}
1252 @end example
1253
1254 imprimirá
1255
1256 @example
1257 @{ a, cis e fis g @}
1258 @end example
1259
1260 De forma predeterminada, LilyPond imprime estos mensajes en la consola
1261 junto al resto de los mensajes.  Para discernir entre estos mensajes y
1262 guardar el resultado de @code{\display@{MATERIAL@}}, redireccione la
1263 salida hacia un archivo.
1264
1265 @c TODO What happens under Windows?
1266
1267 @example
1268 lilypond archivo.ly >resultado.txt
1269 @end example
1270
1271
1272
1273 @node Controlling output
1274 @section Controlling output
1275
1276 @menu
1277 * Extracting fragments of music::
1278 * Skipping corrected music::
1279 @end menu
1280
1281 @node Extracting fragments of music
1282 @subsection Extracting fragments of music
1283
1284 Es posible citar pequeños fragmentos de una partitura grande
1285 directamente a partir de la salida.  Puede compararse con la
1286 separación de una pieza de una partitura, recortándola con tijeras.
1287
1288 Esto se hace definiendo los compases que se deben recortar.  Por
1289 ejemplo, la inclusión de la siguiente definición
1290
1291 @verbatim
1292 \layout {
1293   clip-regions
1294   = #(list
1295       (cons
1296        (make-rhythmic-location 5 1 2)
1297        (make-rhythmic-location 7 3 4)))
1298 }
1299 @end verbatim
1300
1301 @noindent
1302 extrae un fragmento empezando por la mitad del quinto compás y
1303 finalizando en el séptimo compás.  El significado de @code{5 1 2} es:
1304 después de una blanca (1/2) en el compás 5, y el de @code{7 3 4}
1305 después de tres negras del compás 7.
1306
1307 Se pueden definir más zonas de recorte añadiendo más parejas de
1308 definición de tiempo rhythmic-location a la lista.
1309
1310 Para poder utilizar esta funcionalidad, LilyPond se debe invocar con
1311 la opción @code{-dclip-systems}.  Los recortes aparecen en la salida
1312 como archivos EPS, y se convierten en PDF y PNG si estos formatos
1313 también están activados.
1314
1315 Para ver más información sobre los formatos de salida, consulte
1316 @rprogram{Invoking lilypond}.
1317
1318
1319 @node Skipping corrected music
1320 @subsection Skipping corrected music
1321
1322 @funindex skipTypesetting
1323 @funindex showLastLength
1324
1325 Al escribir o copiar música, normalmente sólo es interesante de ver y
1326 corregir la música cercana al final (donde estams añadiendo las
1327 notas).  Para acelerar este proceso de corrección, es posible saltar
1328 la composición tipográfica de todos excepto unos pocos de los últimos
1329 compases.  Esto se consigue poniendo
1330
1331 @verbatim
1332 showLastLength = R1*5
1333 \score { ... }
1334 @end verbatim
1335
1336 @noindent
1337 en nuestro archivo fuente.  Esto hará que se tracens sólo los últimos
1338 cinco compases (suponniendo un compás de 4/4) de cada una de las
1339 partituras @code{\score} del archivo de entrada.  Para piezas largas,
1340 el tipografiado de únicamente una parte pequeña es con frecuencia un
1341 orden de magnitud más rápido que el de la obra completa.
1342
1343 Este mecanismo de pasar por alto partes de un partitura se puede
1344 controlar con un grano más fino mediante la propiedad
1345 @code{Score.skipTypesetting}.  Cuando su valor está establecido, no se
1346 lleva a cabo ningún tipografiado en absoluto.
1347
1348 Esta propiedad se usa también para controlar la salida al archivo
1349 MIDI.  Observe que pasa por alto todos los eventos, incluidos el tempo
1350 y los cambios de instrumento.  Está usted advertido.
1351
1352 @lilypond[quote,fragment,ragged-right,verbatim]
1353 \relative c'' {
1354   c8 d
1355   \set Score.skipTypesetting = ##t
1356   e e e e e e e e
1357   \set Score.skipTypesetting = ##f
1358   c d b bes a g c2 }
1359 @end lilypond
1360
1361 En música polifónica, @code{Score.skipTypesetting} afecta a todas las
1362 voces y pentagramas, ahorrando más tiempo incluso.
1363
1364
1365 @node MIDI output
1366 @section MIDI output
1367
1368 @cindex sonido
1369 @cindex MIDI
1370
1371 El MIDI (Musical Instrument Digital Interface, Interfase Digital para
1372 Instrumentos Musicales) es un estándar para interconectar y controlar
1373 instrumentos musicales electrónicos.  Un archivo o secuencia MIDI es
1374 una serie de notas dentro de un conjunto de pistas.  No es un archivoo
1375 de sonidos reales; se necesita un programa reproductor especial para
1376 traducir la serie de notas en sonidos de verdad.
1377
1378 Cualquier música se puede convertir a archivos MIDI, de manera que
1379 podamos escuchar lo que hayamos introducido.  Esto es muy conveniente
1380 para comprobar la corrección de la música; las octavas equivocadas o
1381 las alteraciones erróneas se ponen de relieve muy claramente al
1382 escuchar la salida MIDI.
1383
1384 @c TODO Check this
1385 La salida MIDI reserva un canal por cada pentagrama, y otro para los
1386 ajustes globales.  Por ello, el archivo MIDI no debe tener más de 15
1387 pautas (o 14 si no se usa la percusión).  Otros pentagramas permanecen
1388 en silencio.
1389
1390 @menu
1391 * Creating MIDI files::
1392 * MIDI block::
1393 * What goes into the MIDI output?::
1394 * Repeats in MIDI::
1395 * Controlling MIDI dynamics::
1396 * Percussion in MIDI::
1397 @end menu
1398
1399 @node Creating MIDI files
1400 @subsection Creating MIDI files
1401
1402 Para crear un MIDI a partir de una pieza de música, escriba un bloque
1403 @code{\midi} en la partitura, por ejemplo:
1404
1405 @example
1406 \score @{
1407   @var{...music...}
1408   \midi @{ @}
1409 @}
1410 @end example
1411
1412 If there is a @code{\midi} block in a @code{\score} with no
1413 @code{\layout} block, only MIDI output will be produced.  When
1414 notation is needed too, a @code{\layout} block must be also be
1415 present.
1416
1417 @example
1418 \score @{
1419   @var{...music...}
1420   \midi @{ @}
1421   \layout @{ @}
1422 @}
1423 @end example
1424
1425 Se traducen correctamente a la salida MIDI la altura y duración de las
1426 notas, las ligaduras de unión, matices y cambios de tempo.  Las
1427 indicaciones dinámicas, crescendi y decrescendi se traducen a niveles
1428 de volumen MIDI.  Las marcas dinámicas se traducen a una fracción fija
1429 del rango de volumen MIDI disponible.  Los crescendi y decrescendi
1430 hacen que el volumen varía linealmente entre sus dos extremos. El
1431 efecto de las indicaciones dinámicas sobre la salida MIDI se puede
1432 eliminar por completo, véase @ref{MIDI block}.
1433
1434 El tempo inicial y los cambios de tempo posteriores se pueden
1435 especificar utilizando la instrucción @code{\tempo} dentro de la
1436 propia notación musical.  Se reflejan en cambios de tempo en la salida
1437 MIDI.  Esta instrucción normalmente hace que se imprima la indicación
1438 metronómica, pero esto se puede eliminar, véase @ref{Metronome marks}.
1439 Más abajo se describe una forma alternativa de especificar el tempo
1440 MIDI inicial o global, véase @ref{MIDI block}.
1441
1442 @unnumberedsubsubsec Instrument names
1443
1444 @cindex instrumento, nombres de
1445 @funindex Staff.midiInstrument
1446
1447 El nombre del instrumento MIDI se establece mediante la propiedad
1448 @code{Staff.midiInstrument}.  El nombre del instrumento se debe elegir
1449 de entre los que están en la lista que aparece en @ref{MIDI
1450 instruments}.
1451
1452 @example
1453 \new Staff @{
1454   \set Staff.midiInstrument = "glockenspiel"
1455   @var{...notes...}
1456 @}
1457 @end example
1458
1459 @example
1460 \new Staff \with @{midiInstrument = "cello"@} @{
1461   @var{...notes...}
1462 @}
1463 @end example
1464
1465 Si el instrumento elegido no coincide exactamente con uno de los
1466 instrumentos de la lista de instrumentos MIDI, se usará el instrumento
1467 Piano de Cola (@code{"acoustic grand"}).
1468
1469 @snippets
1470
1471 @lilypondfile[verbatim,lilyquote,ragged-right,texidoc,doctitle]
1472 {changing-midi-output-to-one-channel-per-voice.ly}
1473
1474 @knownissues
1475
1476 @c In 2.11 the following no longer seems to be a problem -td
1477 @ignore
1478 Unterminated (de)crescendos will not render properly in the midi file,
1479 resulting in silent passages of music.  The workaround is to explicitly
1480 terminate the (de)crescendo.  For example,
1481
1482 @example
1483 @{ a\< b c d\f @}
1484 @end example
1485
1486 @noindent
1487 will not work properly but
1488
1489 @example
1490 @{ a\< b c d\!\f @}
1491 @end example
1492
1493 @noindent
1494 will.
1495 @end ignore
1496
1497 Los cambios del volumen MIDI sólo tienen lugar al principio de la
1498 nota, por lo que los crescendi y decrescendi no pueden afectar al
1499 volumen de una sola nota.
1500
1501 No todos los repoductores de MIDI manejar adecuadamente los cambios de
1502 tempo de la salida MIDI.  Entre los reproductores que se sabe que
1503 funcionan se encuentran el Reproductor de Medios de MS Windows y
1504 @uref{http://@/timidity@/.sourceforge@/.net/,timidity}.
1505
1506
1507 @node MIDI block
1508 @subsection MIDI block
1509
1510 @cindex bloque MIDI
1511
1512 Si se requiere una salida MIDI, debe aparecer un bloque @code{\midi}
1513 dentro de un bloque de partitura.  Es análogo al bloque layout de
1514 diseño de página, pero algo maś simple.  Con frecuencia, el bloque
1515 @code{\midi} se deja vacío, pero puede contener reorganizaciones de
1516 contextos, definiciones de contexto nuevas o código para fijar valores
1517 de propiedades.  Por ejemplo, en el ejemplo siguiente se establece el
1518 tempo inicial exportado alarchivo MIDI sin hacer que se imprima una
1519 indicación de tempo:
1520
1521 @example
1522 \score @{
1523   @var{...música...}
1524   \midi @{
1525     \context @{
1526       \Score
1527       tempoWholesPerMinute = #(ly:make-moment 72 4)
1528     @}
1529   @}
1530 @}
1531 @end example
1532
1533 En este ejemplo, el tempo se establece a 72 pulsos de negra por
1534 minuto.  Esta clase de especificación de tempo no puede tomar como
1535 argumento una figura con puntillo.  Si necesitamos una figura con
1536 puntillo, dividimos la nota con puntillo en figuras más pequeñas.  Por
1537 ejemplo, un tempo de 90 negras con puntillo por minuto se puede
1538 especificar como 270 corcheas por minuto:
1539
1540 @example
1541 tempoWholesPerMinute = #(ly:make-moment 270 8)
1542 @end example
1543
1544 @cindex MIDI, definiciones de contexto
1545
1546 Las definiciones de contexto siguen con precisión la misma sintaxis
1547 que la de un bloque @code{\layout}.  Los módulos de traducción para el
1548 sonido reciben el nombre de ejecutantes.  Los contextos para la salida
1549 MIDI se definen en @file{../ly/@/performer@/-init@/.ly}, véase
1550 @rlearning{Other sources of information}.  Por ejemplo, para eliminar
1551 el efecto de los matices de la salida MIDI, inserte las líneas
1552 siguientes en el bloque @code{\midi@{ @}}.
1553
1554 @example
1555 \midi @{
1556   ...
1557   \context @{
1558     \Voice
1559     \remove "Dynamic_performer"
1560   @}
1561 @}
1562 @end example
1563
1564 La salida MIDI se crea sólo cuando se incluye un bloque @code{\midi}
1565 dentro de un bloque de partitura definido con una instrucción
1566 @code{\score}.  Si se sitúa dentro de un contexto de partitura
1567 instanciado explícitamente (es decir, dentro de un bloque @code{\new
1568 Score}) el archivo no funciona.  Para resolverlo, encierre las
1569 instrucciones @code{\new Score} y @code{\midi} dentro de un bloque
1570 @code{\score}.
1571
1572 @example
1573 \score @{
1574   \new Score @{ @dots{}notas@dots{} @}
1575   \midi @{ @}
1576 @}
1577 @end example
1578
1579 @node What goes into the MIDI output?
1580 @subsection What goes into the MIDI output?
1581
1582 @unnumberedsubsubsec Supported in MIDI
1583
1584 @cindex alturas en MIDI
1585 @cindex MIDI, alturas
1586 @cindex cuartos de tono en MIDI
1587 @cindex MIDI, cuartos de tono
1588 @cindex microtonos en MIDI
1589 @cindex MIDI, microtonos
1590 @cindex acordes, nombres de, en MIDI
1591 @cindex MIDI, nombres de
1592 @cindex duraciones en MIDI
1593 @cindex MIDI, duraciones
1594 @c TODO etc
1595
1596 Los siguientes elementos de notación se reflejan en la salida MIDI:
1597
1598 @itemize
1599 @item Alturas
1600 @item Cuartos de tono (véase @ref{Accidentals}. La reproducción necesita un reproductor que contemple la curvatura de tono o @emph{pitch bend}.)
1601 @item Chords entered as chord names
1602 @item Rhythms entered as note durations, including tuplets
1603 @item Tremolos entered without @q{@code{:}[@var{number}]}
1604 @item Ties
1605 @item Dynamic marks
1606 @item Crescendi, decrescendi over multiple notes
1607 @item Tempo changes entered with a tempo marking
1608 @end itemize
1609
1610 @unnumberedsubsubsec Unsupported in MIDI
1611
1612 @c TODO index as above
1613
1614 Los siguientes elementos de notación no tienen ningún efecto sobre la
1615 salida MIDI:
1616
1617 @itemize
1618 @item Duraciones escritas como anotaciones, p.ej. el swing
1619 @item Cambios de tempo escritos como anotacioens sin marca de tempo
1620 @item Staccato y otras articulaciones y ornamentos
1621 @item Ligaduras de expresión y de fraseo
1622 @item Crescendi y decrescendi sobre una nota única
1623 @item Trémolos introducidos con @q{@code{:}[@var{número}]}
1624 @item Bajo cifrado
1625 @c TODO Check Lyrics
1626 @item Letra de las canciones
1627 @end itemize
1628
1629
1630 @node Repeats in MIDI
1631 @subsection Repeats in MIDI
1632
1633 @cindex repeticiones, expandir
1634 @funindex \unfoldRepeats
1635
1636 Con un poco de trucaje, se puede hacer que cualquier tipo de
1637 repetición esté presente en la salida MIDI.  Esto se consigue mediante
1638 la aplicación de la función musical @code{\unfoldRepeats}.  Esta
1639 función cambia todas las repeticiones a repeticiones desplegadas.
1640
1641 @lilypond[quote,verbatim,fragment,line-width=8.0\cm]
1642 \unfoldRepeats {
1643   \repeat tremolo 8 {c'32 e' }
1644   \repeat percent 2 { c''8 d'' }
1645   \repeat volta 2 {c'4 d' e' f'}
1646   \alternative {
1647     { g' a' a' g' }
1648     {f' e' d' c' }
1649   }
1650 }
1651 \bar "|."
1652 @end lilypond
1653
1654 Al crear un archivo de partitura que use @code{\unfoldRepeats} para el
1655 MIDI, es necesario hacer dos bloques @code{\score}: uno para el MIDI
1656 (con repeticiones desplegadas) y otro para la notación impresa (con
1657 repeticiones de volta --primera y segunda vez--, tremolo --trémolo--,
1658 y percent --repetición de compases--).  Por ejemplo,
1659
1660 @example
1661 \score @{
1662   @var{..música..}
1663   \layout @{ .. @}
1664 @}
1665 \score @{
1666   \unfoldRepeats @var{..música..}
1667   \midi @{ .. @}
1668 @}
1669 @end example
1670
1671
1672 @node Controlling MIDI dynamics
1673 @subsection Controlling MIDI dynamics
1674
1675 La dinámica en el MIDI está implementada por medio del intérprete
1676 Dynamic_performer que reside de forma predeterminada dentro del
1677 contexto Voice.  Es posible controlar el volumen MIDI general, el
1678 volumen relativo de los matices dinámicos y el volumen relativo de los
1679 distintos instrumentos.
1680
1681 @unnumberedsubsubsec Dynamic marks
1682
1683 Los matices o indicaciones de dinámica se traducen a una fracción fija
1684 del rango de volumen MIDI disponible.  Las fracciones predeterminadas
1685 se extienden desde 0.25 para @notation{ppppp} hasta 0.95 para
1686 @notation{fffff}.  El conjunto de indicaciones dinámicas y las
1687 fracciones asociadas pueden verse en @file{../scm/midi.scm}, véase
1688 @rlearning{Other sources of information}.  Este conjunto de fracciones
1689 se puede cmbiar o extender proporcionando una función que toma como
1690 argumento una indicación dinámica y devuelve la fracción requerida, y
1691 estableciendo @code{Score.dynamicAbsoluteVolumeFunction} a esta
1692 función.
1693
1694 Por ejemplo, si se requiere una indicación dinámica
1695 @notation{rinforzando}, @code{\rfz}, ésta no tiene ningún efecto
1696 predeterminado sobre el voumen MIDI, pues no está incluida en el
1697 conjunto predeterminado.  De igual manera, si se define una indicación
1698 dinámica nueva con @code{make-dynamic-script}, ésta tampoco estará
1699 incluida en el conjunto predeterminado.  El ejemplo siguiente muestra
1700 cómo hay que añadir el volumen MIDI para estas indicaciones dinámicas.
1701 La función Scheme establece la fracción a 0.9 si se encuentra una
1702 indicación dinámica rfz, y en caso contrario llama a la función
1703 predeterminada.
1704
1705 @lilypond[verbatim,quote]
1706 #(define (myDynamics dynamic)
1707     (if (equal? dynamic "rfz")
1708       0.9
1709       (default-dynamic-absolute-volume dynamic)))
1710
1711 \score {
1712   \new Staff {
1713     \set Staff.midiInstrument = "cello"
1714     \set Score.dynamicAbsoluteVolumeFunction = #myDynamics
1715     \new Voice {
1716        \relative c'' {
1717          a\pp b c-\rfz
1718        }
1719     }
1720   }
1721   \layout {}
1722   \midi {}
1723 }
1724 @end lilypond
1725
1726 Como alternativa, si se necesitara redefinir la tabla completa de
1727 fracciones, sería mejor usar el procedimiento
1728 @notation{default-dynamic-absolute-volume} que aparece en
1729 @file{../scm/midi.scm} y la tabla asociada como modelo.  El último
1730 ejemplo de esta sección muestra cómo se puede hacer esto.
1731
1732 @unnumberedsubsubsec Overall MIDI volume
1733
1734 El volumen general máximo y mínimo de las indicaciones dinámicas de
1735 MIDI se controla estableciendo valores para las propiedades
1736 @code{midiMinimumVolume} y @code{midiMaximumVolume} en el nivel de
1737 @code{Score}.  Estas propiedades tienen efecto solamente sobre las
1738 indicaciones dinámicas, por ello si queremos que tengan validez desde
1739 el comienzo de la partitura, se debe colocar allí una indicación de
1740 dinámica.  La fracción que corresponde a cada indicación dinámica se
1741 modifica con esta fórmula:
1742
1743 @example
1744 midiMinimumVolume + (midiMaximumVolume - midiMinimumVolume) * fracción
1745 @end example
1746
1747 En el ejemplo siguiente, el rango de intensidad dinámica del volumen
1748 general MIDI está limitado al intervalo desde 0.2 hasta 0.5.
1749
1750 @lilypond[verbatim,quote]
1751 \score {
1752   <<
1753     \new Staff {
1754       \key g \major
1755       \time 2/2
1756       \set Staff.midiInstrument = #"flute"
1757       \new Voice \relative c''' {
1758         r2 g\mp g fis ~
1759         fis4 g8 fis e2 ~
1760         e4 d8 cis d2
1761       }
1762     }
1763     \new Staff {
1764       \key g \major
1765       \set Staff.midiInstrument = #"clarinet"
1766       \new Voice \relative c'' {
1767         b1\p a2. b8 a
1768         g2. fis8 e
1769         fis2 r
1770       }
1771     }
1772   >>
1773   \layout { }
1774   \midi {
1775     \context {
1776       \Score
1777       tempoWholesPerMinute = #(ly:make-moment 72 2)
1778       midiMinimumVolume = #0.2
1779       midiMaximumVolume = #0.5
1780     }
1781   }
1782 }
1783 @end lilypond
1784
1785 @unnumberedsubsubsec Equalizing different instruments (i)
1786
1787 Si las propiedades de volumen MIDI máximo y mínimo están establecidas
1788 en el contexto @code{Staff} se pueden controlar los volúmenes
1789 relativos de los instrumentos MIDI.  Esto proporciona un ecualizador
1790 de instrumentos básico que puede realzar significativamente la calidad
1791 de la salida MIDI.
1792
1793 En este ejemplo se reduce el volumen del clarinete con relación al de
1794 la flauta.  Debe haber una indicación dinámica en la primera nota de
1795 cada instrumento para que esto funcione correctamente.
1796
1797 @lilypond[verbatim,quote]
1798 \score {
1799   <<
1800     \new Staff {
1801       \key g \major
1802       \time 2/2
1803       \set Staff.midiInstrument = #"flute"
1804       \set Staff.midiMinimumVolume = #0.7
1805       \set Staff.midiMaximumVolume = #0.9
1806       \new Voice \relative c''' {
1807         r2 g\mp g fis ~
1808         fis4 g8 fis e2 ~
1809         e4 d8 cis d2
1810       }
1811     }
1812     \new Staff {
1813       \key g \major
1814       \set Staff.midiInstrument = #"clarinet"
1815       \set Staff.midiMinimumVolume = #0.3
1816       \set Staff.midiMaximumVolume = #0.6
1817       \new Voice \relative c'' {
1818         b1\p a2. b8 a
1819         g2. fis8 e
1820         fis2 r
1821       }
1822     }
1823   >>
1824   \layout { }
1825   \midi {
1826     \context {
1827       \Score
1828       tempoWholesPerMinute = #(ly:make-moment 72 2)
1829     }
1830   }
1831 }
1832 @end lilypond
1833
1834 @unnumberedsubsubsec Equalizing different instruments (ii)
1835
1836 Si las propiedades de volumen MIDI máximo y mínimo no están
1837 establecidas, de forma predeterminada LilyPond aplica un pequeño grado
1838 de ecualización a algunos instrumentos.  Los instrumentos y la
1839 ecualización que se aplica se muestra en la tabla
1840 @notation{instrument-equalizer-alist} en @file{../scm/midi.scm}.
1841
1842 El ecualizador básico predeterminado se puede sustituir estableciendo
1843 @code{instrumentEqualizer} en el contexto @code{Score} a un
1844 procedimiento Scheme nuevo que acepte el nombre de un instrumento MIDI
1845 como único argumento y devuelva un par de fracciones que dan los
1846 volúmenes máximo y mínimo que se aplican a dicho instrumento.  Esta
1847 sustitución se hace de la misma forma que mostramos para reestablecer
1848 la fracción de volumen absoluto @code{dynamicAbsoluteVolumeFunction}
1849 al comienzo de esta sección.  El ecualizador predeterminado,
1850 @notation{default-instrument-equalizer}, en @file{../scm/midi.scm},
1851 muestra cómo se puede escribir tal procedimiento.
1852
1853 El ejemplo siguiente establece los volúmenes relativos de la flauta y
1854 del clarinete a los mismos valores que el ejemplo anterior.
1855
1856 @lilypond[verbatim,quote]
1857 #(define my-instrument-equalizer-alist '())
1858
1859 #(set! my-instrument-equalizer-alist
1860   (append
1861     '(
1862       ("flute" . (0.7 . 0.9))
1863       ("clarinet" . (0.3 . 0.6)))
1864     my-instrument-equalizer-alist))
1865
1866 #(define (my-instrument-equalizer s)
1867   (let ((entry (assoc s my-instrument-equalizer-alist)))
1868     (if entry
1869       (cdr entry))))
1870
1871 \score {
1872   <<
1873     \new Staff {
1874       \key g \major
1875       \time 2/2
1876       \set Score.instrumentEqualizer = #my-instrument-equalizer
1877       \set Staff.midiInstrument = #"flute"
1878       \new Voice \relative c''' {
1879         r2 g\mp g fis ~
1880         fis4 g8 fis e2 ~
1881         e4 d8 cis d2
1882       }
1883     }
1884     \new Staff {
1885       \key g \major
1886       \set Staff.midiInstrument = #"clarinet"
1887       \new Voice \relative c'' {
1888         b1\p a2. b8 a
1889         g2. fis8 e
1890         fis2 r
1891       }
1892     }
1893   >>
1894   \layout { }
1895   \midi {
1896     \context {
1897       \Score
1898       tempoWholesPerMinute = #(ly:make-moment 72 2)
1899     }
1900   }
1901 }
1902 @end lilypond
1903
1904 @ignore
1905 @c Delete when satisfied this is adequately covered elsewhere -td
1906
1907 @n ode Microtones in MIDI
1908 @s ubsection Microtones in MIDI
1909
1910 @cindex microtones in MIDI
1911
1912 Microtones consisting of half sharps and half flats are exported
1913 to the MIDI file and render correctly in MIDI players which support
1914 pitch bending.  See @ref{Note names in other languages}.  Here is
1915 an example showing all the half sharps and half flats.  It can be
1916 copied out and compiled to test microtones in your MIDI player.
1917
1918 @lilypond[verbatim,quote]
1919 \score {
1920   \relative c' {
1921     c cih cis cisih
1922     d dih ees eeh
1923     e eih f fih
1924     fis fisih g gih
1925     gis gisih a aih
1926     bes beh b bih
1927   }
1928   \layout {}
1929   \midi {}
1930 }
1931 @end lilypond
1932 @end ignore
1933
1934
1935 @node Percussion in MIDI
1936 @subsection Percussion in MIDI
1937
1938 La notación de los instrumentos de percusión se realiza normalmente en
1939 un contexto @code{DrumStaff} y cuando se hace de esta forma se les da
1940 salida correctamente por el canal MIDI@tie{}10, pero ciertos
1941 instrumentos de percusión de altura determinada, como el xilófono,
1942 marimba, vibráfono, timbales, etc., se tratan como instrumentos
1943 @qq{normales} y la música para estos instrumentos se debe introducir
1944 en contestos de @code{Staff} normales, no en un contexto
1945 @code{DrumStaff}, para obtener la salida MIDI correcta.
1946
1947 Ciertos sonidos de altura indeterminada que están incluidos en el
1948 estándar General MIDI, como el tom melódico, el tambor taiko, los
1949 tambores sintéticos, etc., no se pueden acceder a través del canal
1950 MIDI@tie{}10, por lo que la notación para dichos instrumentos se debe
1951 introducir también en un contexto normal de @code{Staff}, utilizando
1952 las alturas normales adecuadas.
1953
1954 Muchos instrumentos de percusión no están incluidos dentro del
1955 estándar General MIDI standard, p.ej. las castañuelas.  El método más
1956 fácil (aunque no satisfactorio) de producir una salida MIDI al
1957 escribir para estos instrumentos es sustituirlos por el sonido más
1958 parecido del conjunto estándar.
1959
1960 @c TODO Expand with examples, and any other issues
1961
1962 @knownissues
1963
1964 Debido a que el estándar General MIDI no contiene golpes de aro
1965 (@emph{rim shots}), para este propósito se utiliza en su lugar el
1966 golpe lateral de baqueta (@emph{sidestick}).