]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/es/notation/input.itely
Doc-es: fix repeated word.
[lilypond.git] / Documentation / es / notation / input.itely
1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
2
3 @ignore
4     Translation of GIT committish: c610645cc9a77cba1a2798280965db142d649ac5
5
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..
9 @end ignore
10
11 @c \version "2.15.32"
12
13 @node Entrada y salida generales
14 @chapter Entrada y salida generales
15 @translationof General input and output
16
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.
19
20 @menu
21 * Estructura del código de entrada::
22 * Títulos y cabeceras::
23 * Trabajar sobre los archivos de entrada::
24 * Controlar la salida::
25 * Salida MIDI::
26 * Extraer información musical::
27 @end menu
28
29
30 @node Estructura del código de entrada
31 @section Estructura del código de entrada
32 @translationof Input structure
33
34 El formato principal de entrada para LilyPond son archivos de texto.
35 Por convenio, el nombre de estos archivos termina en @file{.ly}.
36
37 @menu
38 * Estructura de una partitura::
39 * Varias partituras en un libro::
40 * Varios archivos de salida a partir de uno de entrada::
41 * Nombres de los archivos de salida::
42 * Estructura del archivo::
43 @end menu
44
45
46 @node Estructura de una partitura
47 @subsection Estructura de una partitura
48 @translationof Structure of a score
49
50 @funindex \score
51
52 Un bloque @code{\score} debe contener una expresión musical única
53 delimitada por un par de llaves:
54
55 @example
56 \score @{
57 ...
58 @}
59 @end example
60
61 @c outer?
62 @warning{Sólo puede haber @strong{una} expresión musical dentro del
63 bloque @code{\score}, y @strong{debe} estar encerrada entre llaves.}
64
65 Esta expresión musical única puede tener cualquier tamaño, y puede
66 contener otras expresiones musicales hasta cualquier grado de
67 complejidad.  Todos los siguientes ejemplos son expresiones musicales:
68
69 @example
70 @{ c'4 c' c' c' @}
71 @end example
72
73 @lilypond[verbatim,quote]
74 {
75   { c'4 c' c' c' }
76   { d'4 d' d' d' }
77 }
78 @end lilypond
79
80 @lilypond[verbatim,quote]
81 <<
82   \new Staff { c'4 c' c' c' }
83   \new Staff { d'4 d' d' d' }
84 >>
85 @end lilypond
86
87 @example
88 @{
89   \new GrandStaff <<
90     \new StaffGroup <<
91       \new Staff @{ \flute @}
92       \new Staff @{ \oboe @}
93     >>
94     \new StaffGroup <<
95       \new Staff @{ \violinI @}
96       \new Staff @{ \violinII @}
97     >>
98   >>
99 @}
100 @end example
101
102 Los comentarios son una excepción a esta regla general (para ver otras
103 excepciones, consulte @ref{Estructura del archivo}).  Tanto los comentarios de
104 una línea como los que están delimitados por @code{%@{ .. %@}} se
105 pueden escribir en cualquier lugar dentro del archivo de entrada.  Se
106 pueden escribir dentro o fuera del bloque @code{\score}, y dentro o
107 fuera de la expresión musical única dentro del bloque @code{\score}.
108
109 Recuerde que incluso dentro de un archivo que contenga solamente un
110 bloque @code{\score}, éste se encuentra incluido implícitamente dentro
111 de un bloque @code{\book}.  Un bloque @code{\book} dentro de un
112 archivo fuente produce al menos un archivo de salida, y de forma
113 predeterminada el nombre del archivo de salida que se produce está
114 derivado del nombre del archivo de entrada, de forma que
115 @file{fandangoforelephants.ly} da como resultado
116 @file{fandangoforelephants.pdf}.
117
118 (Para ver más detalles acerca de los bloques @code{\book}, consulte
119 @ref{Varias partituras en un libro}, @ref{Varios archivos de salida a
120 partir de uno de entrada} y @ref{Estructura del archivo}.)
121
122 @seealso
123 Manual de aprendizaje:
124 @rlearning{Trabajar sobre los archivos de entrada},
125 @rlearning{Explicación de las expresiones musicales},
126 @rlearning{La partitura es una (única) expresión musical compuesta}.
127
128
129 @node Varias partituras en un libro
130 @subsection Varias partituras en un libro
131 @translationof Multiple scores in a book
132
133 @funindex \book
134 @cindex movimientos, varios
135
136 Un documento puede contener varias piezas de música y texto.  Son
137 ejemplos un libro de estudios o una parte orquestal con varios
138 movimientos.  Cada movimiento se introduce con un bloque
139 @code{\score}:
140
141 @example
142 \score @{
143   @var{..música..}
144 @}
145 @end example
146
147 y los textos se introducen con un bloque @code{\markup}:
148
149 @example
150 \markup @{
151   @var{..texto..}
152 @}
153 @end example
154
155 @funindex \book
156
157 Todos los movimientos y textos que aparecen en el mismo archivo
158 @file{.ly} se tipografían normalmente en la forma de un solo archivo
159 de salida.
160
161 @example
162 \score @{
163   @var{..}
164 @}
165 \markup @{
166   @var{..}
167 @}
168 \score @{
169   @var{..}
170 @}
171 @end example
172
173 Una excepción importante se da dentro de los documentos de
174 lilypond-book, en los que tenemos que escribir explícitamente un
175 bloque @code{\book}, pues en caso contrario sólo aparecerá en la
176 salida el primer @code{\score} o @code{\markup}.
177
178 El encabezamiento de cada pieza se puede poner dentro del bloque
179 @code{\score}.  Antes de cada movimiento, se imprime el nombre de la
180 pieza (@code{piece}) extraído del encabezamiento.  El título del libro
181 entero se puede poner dentro del bloque @code{\book}, pero si no está
182 presente se inserta el encabezamiento @code{\header} que está al
183 principio del archivo.
184
185 @example
186 \header @{
187   title = "Ocho miniaturas"
188   composer = "Igor Stravinsky"
189 @}
190 \score @{
191   @dots{}
192   \header @{ piece = "Romanze" @}
193 @}
194 \markup @{
195    ..texto de la segunda estrofa..
196 @}
197 \markup @{
198    ..texto de la tercera estrofa..
199 @}
200 \score @{
201   @dots{}
202   \header @{ piece = "Menuetto" @}
203 @}
204 @end example
205
206 @funindex \bookpart
207
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
212 @code{\header}.
213
214 @example
215 \bookpart @{
216   \header @{
217     title = "Título del libro"
218     subtitle = "Primera parte"
219   @}
220   \score @{ @dots{} @}
221   @dots{}
222 @}
223 \bookpart @{
224   \header @{
225     subtitle = "Segunda parte"
226   @}
227   \score @{ @dots{} @}
228   @dots{}
229 @}
230 @end example
231
232
233 @node Varios archivos de salida a partir de uno de entrada
234 @subsection Varios archivos de salida a partir de uno de entrada
235 @translationof Multiple output files from one input file
236
237 Si queremos varios archivos de salida a partir del mismo archivo
238 @file{.ly}, podemos escribir varios bloques @code{\book}, donde cada
239 uno de estos bloques @code{\book} dará como resultado un archivo de
240 salida distinto.  Si no especificamos ningún bloque @code{\book} en el
241 archivo, LilyPond trata implícitamente todo el archivo como un solo
242 bloque @code{\book}, véase @ref{Estructura del archivo}.
243
244 Al producir varios archivos a partir de un solo archivo fuente,
245 Lilypond se asegura de que ninguno de los archivos de salida de ningún
246 bloque @code{\book} sobreescribe el archivo de salida producido por un
247 @code{\book} anterior del mismo archivo de entrada.
248
249 Lo hace añadiendo un sufijo al nombre de la salida para cada libro
250 @code{\book} que utiliza el nombre del archivo de salida
251 predeterminado, derivado del archivo fuente de entrada.
252
253 El comportamiento predeterminado es añadir un sufijo con el número de
254 versión para cada nombre que pueda coincidir; así:
255
256 @example
257 \book @{
258   \score @{ @dots{} @}
259   \layout @{ @dots{} @}
260 @}
261 \book @{
262   \score @{ @dots{} @}
263   \layout @{ @dots{} @}
264 @}
265 \book @{
266   \score @{ @dots{} @}
267   \layout @{ @dots{} @}
268 @}
269 @end example
270
271 en el archivo fuente @file{eightminiatures.ly}, produce
272
273 @itemize
274 @item
275 @file{eightminiatures.pdf},
276 @item
277 @file{eightminiatures-1.pdf} y
278 @item
279 @file{eightminiatures-2.pdf}.
280 @end itemize
281
282
283 @node Nombres de los archivos de salida
284 @subsection Nombres de los archivos de salida
285 @translationof Output file names
286
287 @funindex \bookOutputSuffix
288 @funindex \bookOutputName
289
290 Lilypond le ofrece unos mecanismos que le permiten controlar los
291 nombres de archivo que se utilizan por parte de los diversos motores
292 finales al producir los archivos de salida.
293
294 En la sección anterior vimos cómo Lilypond evita las coincidencias de
295 nombres al producir varias salidas a partir de un único archivo fuente
296 de entrada.  También podemos especificar nuestros propios sufijos para
297 cada bloque @code{\book}, de manera que podemos producir, por ejemplo,
298 archivos con los nombres @file{eightminiatures-Romanze.pdf},
299 @file{eightminiatures-Menuetto.pdf} y
300 @file{eightminiatures-Nocturne.pdf} añadiendo una declaración
301 @code{\bookOutputSuffix} dentro de cada bloque @code{\book}.
302
303 @example
304 \book @{
305   \bookOutputSuffix "Romanze"
306   \score @{ @dots{} @}
307   \layout @{ @dots{} @}
308 @}
309 \book @{
310   \bookOutputSuffix "Menuetto"
311   \score @{ @dots{} @}
312   \layout @{ @dots{} @}
313 @}
314 \book @{
315   \bookOutputSuffix "Nocturne"
316   \score @{ @dots{} @}
317   \layout @{ @dots{} @}
318 @}
319 @end example
320
321 También podemos especificar un nombre de archivo de salida diferente
322 para cada bloque @code{book}, mediante la utilización de declaraciones
323 @code{\bookOutputName}:
324
325 @example
326 \book @{
327   \bookOutputName "Romanze"
328   \score @{ @dots{} @}
329   \layout @{ @dots{} @}
330 @}
331 \book @{
332   \bookOutputName "Menuetto"
333   \score @{ @dots{} @}
334   \layout @{ @dots{} @}
335 @}
336 \book @{
337   \bookOutputName "Nocturne"
338   \score @{ @dots{} @}
339   \layout @{ @dots{} @}
340 @}
341 @end example
342
343 El código anterior produce los siguientes archivos de salida:
344
345 @itemize
346 @item
347 @file{Romanze.pdf},
348 @item
349 @file{Menuetto.pdf} y
350 @item
351 @file{Nocturne.pdf}.
352 @end itemize
353
354
355 @node Estructura del archivo
356 @subsection Estructura del archivo
357 @translationof File structure
358
359 @funindex \paper
360 @funindex \midi
361 @funindex \layout
362 @funindex \header
363 @funindex \score
364 @funindex \book
365 @funindex \bookpart
366
367 Un archivo @file{.ly} puede contener cualquier número de expresiones
368 del nivel superior, donde una expresión del nivel superior es una de
369 las siguientes posibilidades:
370
371 @itemize
372 @item
373 Una definición de salida, como @code{\paper}, @code{\midi} y
374 @code{\layout}.  Tal definición en el nivel más alto cambia los
375 ajustes predeterminados para todo el libro.  Si se introduce más de
376 una de estas definiciones del mismo tipo en el nivel más alto,
377 cualquier definición en una expresión posterior tiene prioridad.
378
379 @item
380 Una expresión directa de Scheme, como
381 @code{#(set-default-paper-size "a7" 'landscape)} o
382 @code{#(ly:set-option 'point-and-click #f)}.
383
384 @item
385 Un bloque @code{\header}.  Esto establece el bloque de encabezamiento
386 global.  Es el bloque que contiene las definiciones de los ajustes
387 para todo el libro, como el compositor, título, etc.
388
389 @item
390 Un bloque @code{\score}.  Esta partitura se reúne con otras partituras
391 del nivel superior, y se combina con ellas formando un @code{\book}
392 (libro) único.  Este comportamiento se puede cambiar estableciendo el
393 valor de la variable @code{toplevel-score-handler} en el nivel
394 superior.  El @emph{handler} predeterminado se define en el archivo de
395 inicio @file{../scm/lily.scm}.
396
397 @item
398 Un bloque @code{\book} combina lógicamente varios movimientos (es
399 decir, varios bloques @code{\score}) en un solo documento.  Si hay
400 varias partituras @code{\score}, se crea un solo archivo de salida
401 para cada bloque @code{\book}, en el que se concatenan todos los
402 movimientos correspondientes.  La única razón para especificar
403 explícitamente bloques @code{\book} en un archivo de entrada
404 @file{.ly} es si queremos crear varios archivos de salida a partir de
405 un único archivo de entrada.  Una excepción se da dentro de los
406 documentos de lilypond-book, en los que tenemos que escribir
407 explícitamente un bloque @code{\book} si queremos tener más de una
408 única partitura @code{\score} o marcado @code{\markup} en el mismo
409 ejemplo.  Se puede cambiar este comportamiento estableciendo el valor
410 de la variable @code{toplevel-book-handler} en el nivel superior.  El
411 @emph{handler} predeterminado se define en el archivo de inicio
412 @file{../scm/lily.scm}.
413
414 @item
415 Un bloque @code{\bookpart}.  Un libro puede dividirse en varias
416 partes, utilizando bloques @code{\bookpart}, con objeto de facilitar
417 la inserción de saltos de página o usar distintos ajustes de
418 @code{\paper} en las distintas partes.
419
420 @item
421 Una expresión musical compuesta, como
422 @example
423 @{ c'4 d' e'2 @}
424 @end example
425
426 Esto añade la pieza al @code{\score} y la conforma dentro de un libro
427 único junto a todas las demás partituras @code{\score} y expresiones
428 musicales del nivel superior.  En otras palabras, un archivo que
429 contiene sólo la expresión musical anterior se traduce a
430
431 @example
432 \book @{
433   \score @{
434     \new Staff @{
435       \new Voice @{
436         @{ c'4 d' e'2 @}
437       @}
438     @}
439     \layout @{ @}
440   @}
441   \paper @{ @}
442   \header @{ @}
443 @}
444 @end example
445
446 Se puede cambiar este comportamiento estableciendo el valor de la
447 variable @code{toplevel-music-handler} en el nivel más alto.  El
448 @emph{handler} predeterminado se define en el archivo de inicio
449 @file{../scm/lily.scm}.
450
451 @item
452 Un texto de marcado, por ejemplo una estrofa
453 @example
454 \markup @{
455    2.  Estrofa dos, línea uno
456 @}
457 @end example
458
459 Los textos de marcado se colocan encima, en medio o debajo de las
460 partituras o expresiones musicales, según donde aparezcan escritos.
461
462 @cindex variables
463
464 @item
465 Una variable, como
466 @example
467 fulano = @{ c4 d e d @}
468 @end example
469
470 Esto se puede utilizar más tarde en el archivo escribiendo
471 @code{\fulano}.  El nombre de las variables ha de ser exclusivamente
472 alfabético; sin números, guiones ni barras bajas.
473
474 @end itemize
475
476 El ejemplo siguiente muestra tres cosas que se pueden introducir en el
477 nivel superior:
478
479 @example
480 \layout @{
481   % No justificar la salida
482   ragged-right = ##t
483 @}
484
485 \header @{
486    title = "Do-re-mi"
487 @}
488
489 @{ c'4 d' e2 @}
490 @end example
491
492 En cualquier punto del archivo se pueden introducir cualquiera de las
493 instrucciones léxicas siguientes:
494
495 @itemize
496 @item @code{\version}
497 @item @code{\include}
498 @item @code{\sourcefilename}
499 @item @code{\sourcefileline}
500 @item
501 Un comentario de una línea, determinado por un símbolo @code{%} al principio.
502
503 @item
504 Un comentario de varias líneas, delimitado por @code{%@{ .. %@}}.
505
506 @end itemize
507
508 @cindex espacios en blanco
509
510 Por lo general se ignoran los espacios entre elementos del flujo de
511 entrada, y se pueden omitir o aumentar tranquilamente para mejorar la
512 legibilidad.  Sin embargo, los espacios se deben utilizar siempre para
513 evitar errores, en las siguientes situaciones:
514
515 @itemize
516 @item Alrededor de todas y cada una de las llaves curvas de apertura y cierre.
517 @item A continuación de las instrucciones y variables, es decir, todos los elementos
518 que comienzan con un signo @code{\} de barra invertida.
519 @item A continuación de todo elemento que se deba interpretar como expresión
520 de Scheme, es decir, todo elemento que comience por un signo@tie{}@code{#}.
521 @item Para separar los elementos de una expresión de Scheme.
522 @item Dentro de @code{lyricmode} para separar todos los términos de las instrucciones
523 @code{\override} y @code{\set}.  Concretamente, hay que usar espacios
524 alrededor del punto y el signo igual en instrucciones como
525 @code{\override Score . LyricText #'font-size = #5} y antes y después
526 de la instrucción completa.
527
528 @end itemize
529
530 @seealso
531 Manual de aprendizaje:
532 @rlearning{Cómo funcionan los archivos de entrada de LilyPond}.
533
534
535 @node Títulos y cabeceras
536 @section Títulos y cabeceras
537 @translationof Titles and headers
538
539 Casi toda la música impresa tiene un título y el nombre del
540 compositor; ciertas piezas tienen mucha más información.
541
542 @menu
543 * Crear títulos cabeceras y pies de página::
544 * Cabeceras pies y títulos personalizados::
545 * Crear notas al pie::
546 * Referencia a números de página::
547 * Índice general::
548 @end menu
549
550
551 @node Crear títulos cabeceras y pies de página
552 @subsection Crear títulos, cabeceras y pies de página
553 @translationof Creating titles headers and footers
554
555 @menu
556 * Explicación de los bloques de títulos::
557 * Presentación predeterminada de los bloques de título del libro y la partitura::
558 * Disposición predeterminada de las cabeceras y pies de página::
559 @end menu
560
561
562 @node Explicación de los bloques de títulos
563 @unnumberedsubsubsec Explicación de los bloques de títulos
564 @translationof Title blocks explained
565
566 @c TODO: figure out how \bookpart titles work
567
568 Existen dos clases de bloques de títulos: el bloque principal de
569 títulos que aparece encima del primer bloque @code{\score} de un
570 libro, y los bloques individuales de título que aparecen dentro de
571 cada bloque @code{\score}.  Los campos de texto para los dos tipos de
572 bloque se introducen mediante un bloque @code{\header}.
573
574 Si el libro tiene una única partitura, el bloque @code{\header} se
575 puede situar dentro o fuera del bloque @code{\score}.
576
577 @warning{Recuerde que al añadir un bloque @bs{}@code{header} dentro de
578 un bloque @bs{}@code{score}, la expresión musical debe aparecer antes
579 del bloque @bs{}@code{header}.}
580
581 @lilypond[papersize=a5,quote,verbatim,noragged-right]
582 \header {
583   title = "SUITE I."
584   composer = "J. S. Bach."
585 }
586
587 \score {
588   \new Staff \relative g, {
589     \clef bass
590     \key g \major
591     \repeat unfold 2 { g16( d' b') a b d, b' d, } |
592     \repeat unfold 2 { g,16( e' c') b c e, c' e, } |
593   }
594   \header {
595     piece = "Prélude."
596   }
597 }
598
599 \score {
600   \new Staff \relative b {
601     \clef bass
602     \key g \major
603     \partial 16 b16 |
604     <g, d' b'~>4 b'16 a( g fis) g( d e fis) g( a b c) |
605     d16( b g fis) g( e d c) b(c d e) fis( g a b) |
606   }
607   \header {
608     piece = "Allemande."
609   }
610 }
611 @end lilypond
612
613 Los campos de texto extraídos del bloque prinicipal de título de un
614 libro se pueden imprimir en todos los bloques @code{\score}, o
615 suprimirse manualmente:
616
617 @lilypond[papersize=a5,quote,verbatim,noragged-right]
618 \book {
619   \paper {
620     print-all-headers = ##t
621   }
622   \header {
623     title = "DAS WOHLTEMPERIRTE CLAVIER"
624     subtitle = "TEIL I"
625     % Do not display the tagline for this book
626     tagline = ##f
627   }
628   \markup { \vspace #1 }
629   \score {
630     \new PianoStaff <<
631       \new Staff { s1 }
632       \new Staff { \clef "bass" s1 }
633     >>
634     \header {
635       title = "PRAELUDIUM I"
636       opus = "BWV 846"
637       % Do not display the subtitle for this score
638       subtitle = ##f
639     }
640   }
641   \score {
642     \new PianoStaff <<
643       \new Staff { s1 }
644       \new Staff { \clef "bass" s1 }
645     >>
646     \header {
647       title = "FUGA I"
648       subsubtitle = "A 4 VOCI"
649       opus = "BWV 846"
650       % Do not display the subtitle for this score
651       subtitle = ##f
652     }
653   }
654 }
655 @end lilypond
656
657 @seealso
658 Referencia de la notación:
659 @ref{Estructura del archivo},
660 @ref{Personalización de los bloques de título}.
661
662
663 @node Presentación predeterminada de los bloques de título del libro y la partitura
664 @unnumberedsubsubsec Presentación predeterminada de los bloques de título del libro y la partitura
665 @translationof Default layout of book and score title blocks
666
667 La disposición y formato de los bloques de título están controlados
668 por medio de dos variables de @code{\paper}: @code{bookTitleMarkup}
669 para el bloque de título @code{\header} principal y
670 @code{scoreTitleMarkup} para los bloques @code{\header} individuales
671 dentro de un bloque @code{\score}.
672
673 @lilypond[papersize=a6,quote,verbatim,noragged-right]
674 \header {
675   % The following fields are centered
676   dedication = "Dedication"
677   title = "Title"
678   subtitle = "Subtitle"
679   subsubtitle = "Subsubtitle"
680   instrument = "Instrument"
681
682   % The following fields are left-aligned on the left side
683   poet = "Poet"
684   meter = "Meter"
685
686   % The following fields are right-aligned on the right side
687   composer = "Composer"
688   arranger = "Arranger"
689 }
690
691 \score {
692   { s1 }
693   \header {
694     % The following fields are placed at opposite ends of the same line
695     piece = "Piece"
696     opus = "Opus"
697   }
698 }
699 @end lilypond
700
701 @c Is the bit about \null markups true? -mp
702
703 Los campos de texto que se dejan sin establecer dentro de un bloque
704 @code{\header} se sustituyen por elementos de marcado nulos
705 @code{\null} de manera que no ocupen espacio innecesariamente.
706
707 Los ajustes predeterminados para @code{scoreTitleMarkup} sitúan los
708 campos de texto @code{piece} y @code{opus} en extremos opuestos de la
709 misma línea.
710
711 @cindex breakbefore
712
713 Utilice la variable @code{breakbefore} dentro de un bloque
714 @code{\header} que está propiamente dentro de un bloque @code{\score}
715 para hacer que los títulos del bloque @code{\header} del nivel
716 superior aparezcan ocupando toda la primera página, empezando la
717 música (definida en el bloque @code{\score}) en la página siguiente.
718
719 @lilypond[papersize=a8landscape,verbatim,noragged-right]
720 \book {
721   \header {
722     title = "This is my Title"
723     subtitle = "This is my Subtitle"
724     copyright = "This is the bottom of the first page"
725   }
726   \score {
727     \repeat unfold 4 { e'' e'' e'' e'' }
728     \header {
729       piece = "This is the Music"
730       breakbefore = ##t
731     }
732   }
733 }
734 @end lilypond
735
736 @seealso
737 Manual de aprendizaje:
738 @rlearning{Cómo funcionan los archivos de entrada de LilyPond}
739
740 Referencia de la notación:
741 @ref{Estructura del archivo}.
742
743 Archivos de inicio:
744 @file{ly/titling-init.ly}.
745
746
747 @node Disposición predeterminada de las cabeceras y pies de página
748 @unnumberedsubsubsec Disposición predeterminada de las cabeceras y pies de página
749 @translationof Default layout of headers and footers
750
751 Las @emph{cabeceras} y los @emph{pies} de página son líneas de texto
752 que aparecen en la parte más alta y en la más baja de las páginas
753 separadas del texto principal de un libro.  Se controlan mediante las
754 siguientes variables de @code{\paper}:
755
756 @itemize
757 @item @code{oddHeaderMarkup} (marcado de cabecera impar)
758 @item @code{evenHeaderMarkup} (marcado de cabecera par)
759 @item @code{oddFooterMarkup} (marcado de pie impar)
760 @item @code{evenFooterMarkup} (marcado de pie par)
761 @end itemize
762
763 Estas variables de marcado sólo pueden acceder a los campos de texto
764 extraídos de bloques @code{\header} del nivel superior (que se aplican
765 a todas las partituras del libro) y se definen en el archivo
766 @file{ly/titling-init.ly}.  De forma predeterminada:
767
768 @itemize
769
770 @item
771 los números de página se sitúan automáticamente en el extremo superior
772 izquierdo (si es par) o superior derecho (si es impar), a partir de la
773 segunda página.
774
775 @item
776 el campo de texto @code{instrument} se sitúa en el centro en cada
777 página, a partir de la segunda página.
778
779 @item
780 el texto de @code{copyright} se centra en la parte baja de la primera
781 página.
782
783 @item
784 la línea @code{tagline} se centra al final de la última página, y
785 debajo del texto de @code{copyright} si sólo hay una página.
786
787 @end itemize
788
789 @lilypond[papersize=a8landscape]
790 \book {
791   \score {
792     \relative c' {
793       c4 d e f
794     }
795   }
796 }
797 @end lilypond
798
799 La línea de etiqueta tagline predeterminada se puede cambiar añadiendo un campo
800 @code{tagline} en el bloque @code{\header} del nivel superior.
801
802 @lilypond[papersize=a8landscape,verbatim]
803 \book {
804   \header {
805     tagline = "... music notation for Everyone"
806   }
807   \score {
808     \relative c' {
809       c4 d e f
810     }
811   }
812 }
813 @end lilypond
814
815 Para eliminar la línea @code{tagline}, establezca su valor a
816 @code{##f}.
817
818
819 @node Cabeceras pies y títulos personalizados
820 @subsection Cabeceras, pies y títulos personalizados
821 @translationof Custom headers footers and titles
822
823 @c TODO: somewhere put a link to header spacing info
824 @c       (you'll have to explain it more in NR 4).
825
826 @menu
827 * Formateo personalizado del texto de los bloques de título::
828 * Personalización de los bloques de título::
829 * Disposición personalizada de cabeceras y pies de página::
830 @end menu
831
832
833 @node Formateo personalizado del texto de los bloques de título
834 @unnumberedsubsubsec Formateo personalizado del texto de los bloques de título
835 @translationof Custom text formatting for title blocks
836
837 Se pueden usar instrucciones @code{\markup} estándar para personalizar
838 el texto de cualquier cabecera, pie o título dentro del bloque
839 @code{\header}.
840
841 @lilypond[quote,verbatim,noragged-right]
842 \score {
843   { s1 }
844   \header {
845     piece = \markup { \fontsize #4 \bold "PRAELUDIUM I" }
846     subtitle = \markup { \italic "(Excerpt)" }
847   }
848 }
849 @end lilypond
850
851 @seealso
852 Referencia de la notación:
853 @ref{Formatear el texto}.
854
855
856 @node Personalización de los bloques de título
857 @unnumberedsubsubsec Personalización de los bloques de título
858 @translationof Custom layout for title blocks
859
860 Las instrucciones @code{\markup} dentro del bloque @code{\header} son
861 útiles para dar un formato simple al texto, pero no permiten un
862 control preciso sobre la colocación de los títulos.  Para personalizar
863 la colocación de los campos de texto, use una o las dos variables de
864 @code{\paper} siguientes:
865
866 @itemize
867 @item @code{bookTitleMarkup} (marcado de título del libro)
868 @item @code{scoreTitleMarkup} (marcado de título de la partitura)
869 @end itemize
870
871 Estas variables de marcado se estudian en
872 @ref{Presentación predeterminada de los bloques de título del libro y la partitura}.
873
874 Los ajustes predeterminados para @code{scoreTitleMarkup} tal y como
875 están definidos en el archivo @file{ly/titling-init.ly} son:
876
877 @example
878 scoreTitleMarkup = \markup @{ \column @{
879   \on-the-fly #print-all-headers @{ \bookTitleMarkup \hspace #1 @}
880   \fill-line @{
881     \fromproperty #'header:piece
882     \fromproperty #'header:opus
883   @}
884 @}
885 @}
886 @end example
887
888 Esto sitúa los campos de texto @code{piece} y @code{opus} en extremos
889 opuestos de la misma línea:
890
891 @lilypond[quote,verbatim,noragged-right]
892 \score {
893   { s1 }
894   \header {
895     piece = "PRAELUDIUM I"
896     opus = "BWV 846"
897   }
898 }
899 @end lilypond
900
901 Este ejemplo redefine @code{scoreTitleMarkup} de manera que el campo
902 de texto @code{piece} aparece centrado y en un tipo de letra grande y
903 en negrita.
904
905 @lilypond[papersize=a5,quote,verbatim,noragged-right]
906 \book {
907   \paper {
908     indent = 0\mm
909     scoreTitleMarkup = \markup {
910       \fill-line {
911         \null
912         \fontsize #4 \bold \fromproperty #'header:piece
913         \fromproperty #'header:opus
914       }
915     }
916   }
917   \header { tagline = ##f }
918   \score {
919     { s1 }
920     \header {
921       piece = "PRAELUDIUM I"
922       opus = "BWV 846"
923     }
924   }
925 }
926 @end lilypond
927
928 Los campos de texto reservados normalmente para el bloque principal de
929 título se pueden insertar dentro de los bloques de título de las
930 partituras individuales con la variable @code{print-all-headers}
931 establecida dentro del bloque @code{\paper}.  Una desventaja de la
932 utilización de este método es que los campos de texto que están
933 orientados específicamente para el bloque @code{\header} del nivel
934 superior han de suprimirse manualmente en cada uno de los bloques
935 @code{\score}.  Véase @ref{Explicación de los bloques de títulos}.
936
937 Para evitarlo, añada el campo de texto deseado a la definición de
938 @code{scoreTitleMarkup}.  En el ejemplo siguiente, el campo de texto
939 @code{composer} (asociado normalmente con @code{bookTitleMarkup}) se
940 añade a @code{scoreTitleMarkup}, permitiendo que cada partitura
941 muestre un compositor diferente:
942
943 @lilypond[papersize=a5,quote,verbatim,noragged-right]
944 \book {
945   \paper {
946     indent = 0\mm
947     scoreTitleMarkup = \markup {
948       \fill-line {
949         \null
950         \fontsize #4 \bold \fromproperty #'header:piece
951         \fromproperty #'header:composer
952       }
953     }
954   }
955   \header { tagline = ##f }
956   \score {
957     { s1 }
958     \header {
959       piece = "MENUET"
960       composer = "Christian Petzold"
961     }
962   }
963   \score {
964     { s1 }
965     \header {
966       piece = "RONDEAU"
967       composer = "François Couperin"
968     }
969   }
970 }
971 @end lilypond
972
973 También podemos crear nuestros propios campos de texto personalizados,
974 y referirnos a ellos en la definición del elemento de marcado.
975
976 @lilypond[papersize=a5,quote,verbatim,noragged-right]
977 \book {
978   \paper {
979     indent = 0\mm
980     scoreTitleMarkup = \markup {
981       \fill-line {
982         \null
983         \override #`(direction . ,UP) {
984           \dir-column {
985             \center-align \fontsize #-1 \bold
986               \fromproperty #'header:mycustomtext %% User-defined field
987             \center-align \fontsize #4 \bold
988               \fromproperty #'header:piece
989           }
990         }
991         \fromproperty #'header:opus
992       }
993     }
994   }
995   \header { tagline = ##f }
996   \score {
997     { s1 }
998     \header {
999       piece = "FUGA I"
1000       mycustomtext = "A 4 VOCI" %% User-defined field
1001       opus = "BWV 846"
1002     }
1003   }
1004 }
1005 @end lilypond
1006
1007 @seealso
1008 Referencia de la notación:
1009 @ref{Explicación de los bloques de títulos}.
1010
1011
1012 @node Disposición personalizada de cabeceras y pies de página
1013 @unnumberedsubsubsec Disposición personalizada de cabeceras y pies de página
1014 @translationof Custom layout for headers and footers
1015
1016 @c can make-header and make-footer be removed from
1017 @c paper-defaults-init.ly? -mp
1018
1019 Las instrucciones @code{\markup} dentro del bloque @code{\header} son
1020 de utilidad para dar formato al texto de una manera sencilla, pero no
1021 permiten un control preciso sobre la colocación de las cabeceras y los
1022 pies de página.  Para personalizar la colocación de los campos de
1023 texto, use una o más de las siguientes variables de @code{\paper}:
1024
1025 @itemize
1026 @item @code{oddHeaderMarkup} (marcado de encabezamiento impar)
1027 @item @code{evenHeaderMarkup} (marcado de encabezamiento par)
1028 @item @code{oddFooterMarkup} (marcado de pie de página impar)
1029 @item @code{evenFooterMarkup} (marcado de pie de página par)
1030 @end itemize
1031
1032 El ejemplo siguiente centra los números de página en la parte baja de
1033 las páginas.  En primer lugar, los ajustes predeterminados para
1034 @code{oddHeaderMarkup} y @code{evenHeaderMarkup} se eliminan
1035 definiéndolos como un marcado @emph{nulo}.  Después de esto, se
1036 redefine @code{oddFooterMarkup} con el número de página centrado.
1037 Finalmente, @code{evenFooterMarkup} recibe la misma disposición
1038 definiéndola como @code{\oddFooterMarkup}:
1039
1040 @lilypond[papersize=a8,quote,verbatim,noragged-right]
1041 \book {
1042   \paper {
1043     print-page-number = ##t
1044     print-first-page-number = ##t
1045     oddHeaderMarkup = \markup \null
1046     evenHeaderMarkup = \markup \null
1047     oddFooterMarkup = \markup {
1048       \fill-line {
1049         \on-the-fly #print-page-number-check-first
1050         \fromproperty #'page:page-number-string
1051       }
1052     }
1053     evenFooterMarkup = \oddFooterMarkup
1054   }
1055   \score {
1056     \new Staff { s1 \break s1 \break s1 }
1057   }
1058 }
1059 @end lilypond
1060
1061 @seealso
1062 Referencia de la notación:
1063 @ref{Explicación de los bloques de títulos},
1064 @ref{Presentación predeterminada de los bloques de título del libro y la partitura}.
1065
1066
1067 @node Crear notas al pie
1068 @subsection Crear notas al pie
1069 @translationof Creating footnotes
1070
1071 Se pueden crear dos tipos de notas al pie: automáticas y manuales.
1072
1073 @menu
1074 * Panorámica de las notas al pie::
1075 * Notas al pie automáticas::
1076 * Notas al pie manuales::
1077 @end menu
1078
1079
1080 @node Panorámica de las notas al pie
1081 @unnumberedsubsubsec Panorámica de las notas al pie
1082 @translationof Footnotes overview
1083
1084 Las notas al pie automáticas crean indicadores numéricos
1085 incrementales; las notas al pie manuales, en cambio, permiten crear un
1086 indicador personalizado. Se pueden anotar todos los grobs (objetos
1087 gráficos), elementos @code{\markup} del nivel superior y las notas de
1088 los acordes.
1089
1090 El orden en que se dibuja cada grob determina el orden en que se crean
1091 los indicadores (y por tanto las notas al pie) durante la compilación.
1092
1093
1094 @node Notas al pie automáticas
1095 @unnumberedsubsubsec Notas al pie automáticas
1096 @translationof Automatic footnotes
1097
1098 Las notas al pie automáticas aceptan tres argumentos; el @var{Objeto de
1099 presentación} que anotar, la posición @samp{(x . y)} del indicador y un
1100 elemento de @code{\markup} que aparecerá en la nota, en la parte
1101 inferior de la página.
1102
1103 La instrucción @code{\footnote} debe ir @emph{antes} del grob
1104 al que se adjunta la nota al pie:
1105
1106 @lilypond[verbatim,quote,ragged-right,papersize=a8]
1107 \book {
1108   \header { tagline = ##f }
1109   \relative c' {
1110     \footnote #'(0.5 . -2) #'NoteHead
1111       \markup { The first note }
1112     a'4 b8
1113     \footnote #'(0.5 . 1) #'NoteHead
1114       \markup { The third note }
1115     e c4 d4
1116   }
1117 }
1118 @end lilypond
1119
1120 Para anotar las notas de un acorde, la instrucción
1121 @code{\footnote} debe ir @emph{después} de la nota a la que se
1122 quiere adjuntar la nota al pie como un @code{TextScript}:
1123
1124 @lilypond[verbatim,quote,ragged-right,papersize=a8]
1125 \book {
1126   \header { tagline = ##f }
1127   \relative c' {
1128     <
1129     c-\footnote #'(1 . -1.25) "Here is a C"
1130     es-\footnote #'(2 . -0.25) \markup { \italic "An E-flat" }
1131     g-\footnote #'(2 . 3) \markup { \bold "This is a G" }
1132     >1
1133   }
1134 }
1135 @end lilypond
1136
1137 @warning{Cuando las notas al pie tienen la misma posición vertical, se
1138 imprimen en orden de descendencia: cuando más alta es la nota al pie,
1139 más arriba está en la lista.}
1140
1141 He aquí unos ejemplos más de grobs con notas al pie, que
1142 muestran también la posición relativa de las notas respecto de la
1143 línea informativa y la línea de copyright.
1144
1145 @lilypond[verbatim,quote,ragged-right,papersize=a8]
1146 \book {
1147   \header { copyright = \markup { "Copyright 1970" } }
1148   \relative c' {
1149     \footnote #'(-3 . 0) #'DynamicText
1150       \markup { \bold Forte }
1151
1152     \footnote #'(0 . 1.5) #'Slur
1153       \markup { A slur }
1154     a'4\f(
1155
1156     \footnote #'(0 . -2) #'Beam
1157       \markup { Beam }
1158     b8)[ e]
1159
1160     \footnote #'(1 . -1) #'Stem
1161       \markup  { \teeny { This is a stem } }
1162     c4
1163
1164     \footnote #'(0 . 0.5) #'AccidentalCautionary
1165       \markup \italic { A cautionary accidental }
1166
1167     \footnote #'(0.5 . -0.5) #'TextScript
1168       \markup \italic { Slow Down }
1169     dis?4_"rit."
1170   }
1171 }
1172 @end lilypond
1173
1174 Para los elementos @code{\markup} del nivel superior, se requiere el
1175 uso de la instrucción @code{\auto-footnote}:
1176
1177 @lilypond[verbatim,quote,ragged-right,papersize=a8]
1178 \book {
1179   \header { tagline = ##f }
1180   \markup { \auto-footnote "A simple tune" \italic "By me" }
1181   \relative c' {
1182     a'4 b8 e c4 d
1183   }
1184 }
1185 @end lilypond
1186
1187
1188 @node Notas al pie manuales
1189 @unnumberedsubsubsec Notas al pie manuales
1190 @translationof Manual footnotes
1191
1192 @cindex notas al pie manuales
1193
1194 Las notas al pie manuales toman cuatro argumentos;
1195 el @var{objeto de presentación} que se va a anotar,
1196 la posición @samp{(x . y)} del indicador, y dos instrucciones
1197 @code{\markup}; la primera es el indicador adjunto a la nota o grob, y
1198 la segunda es la nota al pie, en la parte inferior de la página.
1199
1200 Como las notas al pie automáticas, las instrucciones
1201 @code{\footnote} manuales deben ir @emph{antes} del grob
1202 que la nota al pie está anotando y adjuntada como un
1203 @code{TextScript}:
1204
1205 @lilypond[verbatim,quote,ragged-right,papersize=a8]
1206 \book {
1207   \header { tagline = ##f }
1208   \relative c' {
1209     a'4-\footnote
1210           "1" #'(0.5 . -2) #'NoteHead \markup { \italic "1. The first note" }
1211     b8
1212     e-\footnote
1213           \markup { \bold "2" } #'(0.5 . 1) #'NoteHead "2. The second note"
1214     c4
1215     d\p-\footnote "3" #'(0.5 . -1) #'DynamicText "3. Piano"
1216   }
1217 }
1218 @end lilypond
1219
1220 Para anotar notas de acordes con notas al pie manuales:
1221
1222 @lilypond[verbatim,quote,ragged-right,papersize=a8]
1223 \book {
1224   \header { tagline = ##f }
1225   \relative c' {
1226     <
1227     c-\footnote "1" #'(1 . -1.25) "1. C"
1228     es-\footnote
1229        \markup { \bold "b" } #'(2 . -0.25) "b. E-flat"
1230     g-\footnote "3" #'(2 . 3) \markup { \italic "iii. G" }
1231     >1
1232   }
1233 }
1234 @end lilypond
1235
1236 @warning {Cuando las notas al pie tienen la misma posición vertical, las
1237 anotaciones se imprimen en orden de descendencia; cuanto más alta es
1238 la nota al pie, más arriba está en la lista.}
1239
1240 He aquí algunos ejemplos de grobs anotados manualmente, mostrando
1241 también la posición relativa de las notas al pie respecto a la línea
1242 informativa a la de copyright:
1243
1244 @lilypond[verbatim,quote,ragged-right,papersize=a8]
1245 \book {
1246   \header { tagline = ##f }
1247   \relative c' {
1248     \footnote
1249       \markup { \teeny 1 } #'(-3 . 0) #'DynamicText
1250       \markup { 1. \bold Forte }
1251
1252     \footnote
1253       \markup { \teeny b } #'(0 . 1.5) #'Slur
1254       \markup { b. A slur }
1255     a'4\f(
1256
1257     \footnote
1258       \markup { \teeny 3 } #'(0 . -2) #'Beam
1259       \markup { 3. Beam }
1260     b8)[ e]
1261
1262     \footnote
1263       \markup { 4 } #'(1 . -1) #'Stem
1264       \markup  { \bold 4. { This is a stem } }
1265     c4
1266
1267     \footnote
1268       \markup \concat \teeny { "sharp (v)" }
1269           #'(0 . 0.5) #'AccidentalCautionary
1270       \markup \italic { v. A cautionary accidental }
1271
1272     \footnote
1273       \markup \concat \teeny { "a" } #'(0.5 . -0.5) #'TextScript
1274       \markup \italic { a. Slow Down }
1275     dis?4_"rit."
1276
1277     \breathe
1278     \footnote
1279       \markup { \teeny \musicglyph #"rests.4" }
1280           #'(1.5 . -0.25) #'BreathingSign
1281       \markup { \null }
1282   }
1283 }
1284 @end lilypond
1285
1286 Para anotar manualmente un elemento @code{\markup} del nivel superior:
1287
1288 @lilypond[verbatim,quote,ragged-right,papersize=a8]
1289 \book {
1290   \header { tagline = ##f }
1291   \markup { "A simple tune" \footnote "*" \italic "* By me" }
1292   \relative c' {
1293     a'4 b8 e c4 d4
1294   }
1295 }
1296 @end lilypond
1297
1298 @seealso
1299 Manual de aprendizaje:
1300 @rlearning{Objetos e interfaces}.
1301
1302 Referencia de la notación:
1303 @ref{Globos de ayuda},
1304 @ref{Disposición de la página},
1305 @ref{Indicaciones de texto},
1306 @ref{Guiones de texto},
1307 @ref{Títulos y cabeceras}.
1308
1309 Referencia de funcionamiento interno:
1310 @rinternals{FootnoteEvent},
1311 @rinternals{FootnoteItem},
1312 @rinternals{FootnoteSpanner},
1313 @rinternals{Footnote_engraver}.
1314
1315 @knownissues
1316 Varias notas al pie en la misma página solo pueden ir apiladas unas
1317 sobre otras, y no se pueden imprimir en la misma línea.  Las notas al
1318 pie no se pueden adjuntar a elementos de silencio multicompás
1319 @code{MultiMeasureRests}, y pueden colisionar con el objeto
1320 @code{Staff}, objetos de @code{\markup} y otras anotaciones
1321 @code{footnote}.  Cuando use una cualquiera de las instrucciones
1322 @code{footnote} se requiere un bloque @code{\paper} que contenga
1323 @code{footnote-auto-number = ##f}.
1324
1325
1326 @node Referencia a números de página
1327 @subsection Referencia a números de página
1328 @translationof Reference to page numbers
1329
1330 Un lugar determinado de una partitura puede señalizarse usando la
1331 instrucción @code{\label} (etiqueta), ya sea en el nivel superior o
1332 dentro de la música.  Podemos referirnos a esta etiqueta más tarde
1333 dentro de un elemento de marcado, para obtener el número de la página
1334 en la que se sitúa el punto señalizado, usando la instrucción de
1335 marcado @code{\page-ref}.
1336
1337 @lilypond[verbatim]
1338 \header { tagline = ##f }
1339 \book {
1340   \label #'firstScore
1341   \score {
1342     {
1343       c'1
1344       \pageBreak \mark A \label #'markA
1345       c'1
1346     }
1347   }
1348   \markup { The first score begins on page \page-ref #'firstScore "0" "?" }
1349   \markup { Mark A is on page \page-ref #'markA "0" "?" }
1350 }
1351 @end lilypond
1352
1353 La instrucción de marcado @code{\page-ref} toma tres argumentos:
1354 @enumerate
1355 @item la etiqueta, un símbolo de scheme, p.ej. @code{#'firstScore};
1356 @item un elemento de marcado que se usará como medidor para estimar las dimensiones del marcado;
1357 @item un elemento de marcado que se utilizará en sustitución del número de página si la etiqueta es desconocida.
1358 @end enumerate
1359
1360 El motivo de que se necesite un medidor es que en el momento en que se
1361 están interpretando los marcados, los saltos de página aún no se han
1362 producido y por tanto los números de página no se conocen todavía.
1363 Para sortear este inconveniente, la interpretación real del marcado se
1364 retrasa hasta un momento posterior; sin embargo, las dimensiones del
1365 marcado se tienen que conocer de antemano, así que se usa el medidor
1366 para decidir estas dimensiones.  Si el libro tiene entre 10 y 99
1367 páginas, el medidor puede ser "00", es decir, un número de dos
1368 dígitos.
1369
1370 @predefined
1371 @funindex \label
1372 @code{\label},
1373 @funindex \page-ref
1374 @code{\page-ref}.
1375 @endpredefined
1376
1377
1378 @node Índice general
1379 @subsection Índice general
1380 @translationof Table of contents
1381
1382 Se puede insertar un índice general o tabla de contenidos utilizando
1383 la instrucción @code{\markuplist \table-of-contents}.  Los elementos
1384 que deben aparecer en la tabla de contenidos se introducen con la
1385 instrucción @code{\tocItem}, que se puede usar en el nivel más alto de
1386 la jerarquía del código, o dentro de una expresión musical.
1387
1388 @verbatim
1389 \markuplist \table-of-contents
1390 \pageBreak
1391
1392 \tocItem \markup "Primera partitura"
1393 \score {
1394   {
1395     c'4  % ...
1396     \tocItem \markup "Un punto concreto dentro de la primera partitura"
1397     d'4  % ...
1398   }
1399 }
1400
1401 \tocItem \markup "Segunda partitura"
1402 \score {
1403   {
1404     e'4 % ...
1405   }
1406 }
1407 @end verbatim
1408
1409 Los elementos de marcado que se usan para dar formato al índice
1410 general se encuentran definidos dentro del bloque @code{\paper}.  Los
1411 elementos predeterminados son @code{tocTitleMarkup}, para dar formato
1412 al título de la tabla, y @code{tocItemMarkup}, para aplicar formato a
1413 los elementos del índice, que consisten en el título del elemento y el
1414 número de página.  Estas variables se pueden cambiar por parte del
1415 usuario:
1416
1417 @verbatim
1418 \paper {
1419   %% Traducir el título del índice al español:
1420   tocTitleMarkup = \markup \huge \column {
1421     \fill-line { \null "Índice general" \null }
1422     \hspace #1
1423   }
1424   %% usar una fuente mayor
1425   tocItemMarkup = \markup \large \fill-line {
1426     \fromproperty #'toc:text \fromproperty #'toc:page
1427   }
1428 }
1429 @end verbatim
1430
1431 Observe la forma en que nos referimos al texto y al número de página
1432 del elemento de índice, dentro de la definición @code{tocItemMarkup}.
1433
1434 También se pueden definir nuevas instrucciones y elementos de
1435 marcado para crear índices generales más elaborados:
1436 @itemize
1437 @item en primer lugar, defina una variable de marcado nueva dentro del bloque @code{\paper}
1438 @item luego defina una función de música cuyo propósito es añadir un elemento al índice general
1439 utilizando esta variable de marcado del bloque @code{\paper}.
1440 @end itemize
1441
1442 En el ejemplo siguiente se define un estilo nuevo para introducir los
1443 nombres de los actos de una ópera en el índice general:
1444
1445 @verbatim
1446 \paper {
1447   tocActMarkup = \markup \large \column {
1448     \hspace #1
1449     \fill-line { \null \italic \fromproperty #'toc:text \null }
1450     \hspace #1
1451   }
1452 }
1453
1454 tocAct =
1455 #(define-music-function (parser location text) (markup?)
1456    (add-toc-item! 'tocActMarkup text))
1457 @end verbatim
1458
1459 @lilypond[line-width=11.0\cm]
1460 \header { tagline = ##f }
1461 \paper {
1462   tocActMarkup = \markup \large \column {
1463     \hspace #1
1464     \fill-line { \null \italic \fromproperty #'toc:text \null }
1465     \hspace #1
1466   }
1467 }
1468
1469 tocAct =
1470 #(define-music-function (parser location text) (markup?)
1471    (add-toc-item! 'tocActMarkup text))
1472
1473 \book {
1474   \markuplist \table-of-contents
1475   \tocAct \markup { Atto Primo }
1476   \tocItem \markup { Coro. Viva il nostro Alcide }
1477   \tocItem \markup { Cesare. Presti omai l'Egizzia terra }
1478   \tocAct \markup { Atto Secondo }
1479   \tocItem \markup { Sinfonia }
1480   \tocItem \markup { Cleopatra. V'adoro, pupille, saette d'Amore }
1481   \markup \null
1482 }
1483 @end lilypond
1484
1485 Se pueden añadir puntos de relleno entre un elemento y su número de página:
1486
1487 @lilypond[verbatim,quote]
1488 \header { tagline = ##f }
1489 \paper {
1490   tocItemMarkup = \tocItemWithDotsMarkup
1491 }
1492
1493 \book {
1494   \markuplist \table-of-contents
1495   \tocItem \markup { Allegro }
1496   \tocItem \markup { Largo }
1497   \markup \null
1498 }
1499 @end lilypond
1500
1501 @seealso
1502 Archivos de inicio:
1503 @file{ly/toc-init.ly}.
1504
1505 @predefined
1506 @funindex \table-of-contents
1507 @code{\table-of-contents},
1508 @funindex \tocItem
1509 @code{\tocItem}.
1510 @endpredefined
1511
1512
1513 @node Trabajar sobre los archivos de entrada
1514 @section Trabajar sobre los archivos de entrada
1515 @translationof Working with input files
1516
1517 @menu
1518 * Inclusión de archivos de LilyPond::
1519 * Distintas ediciones a partir de una misma fuente::
1520 * Caracteres especiales::
1521 @end menu
1522
1523
1524 @node Inclusión de archivos de LilyPond
1525 @subsection Inclusión de archivos de LilyPond
1526 @translationof Including LilyPond files
1527
1528 @funindex \include
1529 @cindex including files
1530
1531 Un proyecto grande se puede dividir en varios archivos.  Para
1532 referirse a otro archivo, utilice
1533
1534 @example
1535 \include "otroarchivo.ly"
1536 @end example
1537
1538 La línea @code{\include "otroarchivo.ly"} equivale a pegar todo el
1539 contenido de @file{otroarchivo.ly} en el archivo actual en el lugar en
1540 que aparece el @code{\include}.  Por ejemplo, en un proyecto grande
1541 podríamos querer archivos distintos para cada parte instrumental y
1542 crear un archivo de @qq{partitura completa} que reúne los archivos
1543 individuales de los instrumentos.  Normalmente el archivo incluido
1544 define un cierto número de variables que a partir de entonces quedan
1545 disponibles para poderlas utilizar en el archivo de la partitura
1546 completa.  En los archivos incluidos se pueden marcar las secciones
1547 etiquetadas para ayudar a hacerlas utilizables en distintos lugares de
1548 la partitura, véase @ref{Distintas ediciones a partir de una misma fuente}.
1549
1550 Los archivos que están en el directorio de trabajo actual se pueden
1551 referenciar simplemente especificando el nombre después de la
1552 instrucción @code{\include}.  Los archivos en otros lugares se pueden
1553 incluir proporcionando una referencia de ruta completa o una ruta
1554 relativa (pero utilice la barra inclinada normal del UNIX, /, no la
1555 barra invertida de DOS/Windows, \, como separador de directorio).  Por
1556 ejemplo, si @file{material.ly} está situado un directorio por encima
1557 del directorio de trabajo actual, utilice
1558
1559 @example
1560 \include "../material.ly"
1561 @end example
1562
1563 @noindent
1564 o si los archivos de las partes orquestales incluidas están todos
1565 situados en un subdirectorio llamado @file{partes} dentro del
1566 directorio actual, use
1567
1568 @example
1569 \include "partes/VI.ly"
1570 \include "partes/VII.ly"
1571 ... etc.
1572 @end example
1573
1574 Los archivos de inclusión también pueden contener enunciados
1575 @code{\include} a su vez.  De forma predeterminada, estos enunciados
1576 @code{\include} de segundo nivel no se interpretan hasta que se
1577 incorporan al archivo principal, por lo que los nombres de archivo que
1578 especifican deben ser relativos al directorio que contiene el archivo
1579 principal, no al directorio que contiene el archivo incluido.  Sin
1580 embargo, este comportamiento se puede modificar pasando la opción
1581 @option{-drelative-includes} en la línea de órdenes (o mediante la
1582 adición de @code{#(ly:set-option 'relative-includes #t)} al principio
1583 del archivo principal de entrada).  Con el valor de
1584 @code{relative-includes} establecido, la ruta de cada instrucción
1585 @code{\include} se considera relativa al archivo que contiene dicha
1586 instrucción.  Este comportamiento es el recomendado y se convertirá en
1587 el comportamiento predeterminado en una versión futura de lilypond.
1588
1589 También se pueden incluir archivos de un directorio que está en una
1590 ruta de búsqueda especificada como opción al invocar a LilyPond desde
1591 la línea de órdenes.  Los archivos incluidos se especifican usando
1592 solamente su nombre de archivo.  Por ejemplo, para compilar mediante
1593 este método un archivo @file{principal.ly} que incluye archivos
1594 situados en un subdirectorio llamado @file{partes}, cambie al
1595 directorio que contiene @file{principal.ly} e introduzca
1596
1597 @example
1598 lilypond --include=partes principal.ly
1599 @end example
1600
1601 y en @file{principal.ly} escriba
1602
1603 @example
1604 \include "VI.ly"
1605 \include "VII.ly"
1606 ... etc.
1607 @end example
1608
1609 Los archivos que se incluyen en muchas partituras se pueden poner en
1610 el directorio de LilyPond @file{../ly} (la localización de este
1611 directorio depende de la instalación: véase
1612 @rlearning{Otras fuentes de información}).  Estos archivos se pueden
1613 incluir sencillamente por su nombre en un enunciado @code{\include}.
1614 De esta forma se incluyen los archivos dependientes del idioma como
1615 @file{espanol.ly}.
1616
1617 LilyPond incluye de forma predeterminada ciertos archivos cuando se
1618 inicia el programa.  Estas inclusiones no son visibles para el
1619 usuario, pero los archivos se pueden identificar ejecutando
1620 @code{lilypond --verbose} desde la línea de órdenes.  Esto presentará
1621 una lista de rutas y archivos que utiliza LilyPond, junto a muchas
1622 otras indicaciones.  De forma alternativa, pueden verse explicaciones
1623 sobre los archivos más importantes de este conjunto en
1624 @rlearning{Otras fuentes de información}.  Estos archivos se pueden
1625 editar, pero los cambios realizados sobre ellos se perderán al
1626 instalar una nueva versión de LilyPond.
1627
1628 Pueden verse ejemplos sencillos sobre el uso de @code{\include} en
1629 @rlearning{Partituras y particellas}.
1630
1631 @seealso
1632 Manual de aprendizaje:
1633 @rlearning{Otras fuentes de información},
1634 @rlearning{Partituras y particellas}.
1635
1636 @knownissues
1637 Si un archivo incluido recibe un nombre igual al de uno de los
1638 archivos de instalación de LilyPond, el archivo que tiene prioridad es
1639 el de los archivos de instalación de LilyPond.
1640
1641
1642 @node Distintas ediciones a partir de una misma fuente
1643 @subsection Distintas ediciones a partir de una misma fuente
1644 @translationof Different editions from one source
1645
1646 Se pueden usar varios métodos para generar la producción de distintas
1647 versiones de una partitura a partir de la misma fuente musical.  Las
1648 variables son quizá el más útil para combinar secciones extensas de
1649 música y/o anotaciones.  Las etiquetas son más útiles para seleccionar
1650 una sección de entre varias secciones de música alternativas, más
1651 cortas, y se pueden usar también para dividir piezas de música en
1652 distintos trozos.
1653
1654 Cualquiera que sea el método utilizado, la separación de la notación
1655 de la estructura de la partitura hará que sea más fácil cambiar la
1656 estructura dejando intacta la notación.
1657
1658 @menu
1659 * Uso de las variables::
1660 * Uso de etiquetas::
1661 * Uso de ajustes globales::
1662 @end menu
1663
1664 @node Uso de las variables
1665 @unnumberedsubsubsec Uso de las variables
1666 @translationof Using variables
1667
1668 @cindex variables, uso de las
1669
1670 Si las secciones de la música se definen dentro de variables, se
1671 pueden reutilizar en distintas partes de la partitura, véase
1672 @rlearning{Organizar las piezas mediante variables}.  Por ejemplo, una
1673 partitura vocal @notation{a cappella} con frecuencia incluye una
1674 reducción de piano de las partes para ensayar que es idéntica a la
1675 música vocal, por lo que ésta sólo se tiene que escribir una vez.  Se
1676 puede combinar sobre un solo pentagrama la música de dos variables,
1677 véase @ref{Combinación automática de las partes}.  He aquí un ejemplo:
1678
1679 @lilypond[verbatim,quote]
1680 sopranoMusic = \relative c'' { a4 b c b8( a) }
1681 altoMusic = \relative g' { e4 e e f }
1682 tenorMusic = \relative c' { c4 b e d8( c) }
1683 bassMusic = \relative c' { a4 gis a d, }
1684 allLyrics = \lyricmode {King of glo -- ry }
1685 <<
1686   \new Staff = "Soprano" \sopranoMusic
1687   \new Lyrics \allLyrics
1688   \new Staff = "Alto" \altoMusic
1689   \new Lyrics \allLyrics
1690   \new Staff = "Tenor" {
1691     \clef "treble_8"
1692     \tenorMusic
1693   }
1694   \new Lyrics \allLyrics
1695   \new Staff = "Bass" {
1696     \clef "bass"
1697     \bassMusic
1698   }
1699   \new Lyrics \allLyrics
1700   \new PianoStaff <<
1701     \new Staff = "RH" {
1702       \set Staff.printPartCombineTexts = ##f
1703       \partcombine
1704       \sopranoMusic
1705       \altoMusic
1706     }
1707     \new Staff = "LH" {
1708       \set Staff.printPartCombineTexts = ##f
1709       \clef "bass"
1710       \partcombine
1711       \tenorMusic
1712       \bassMusic
1713     }
1714   >>
1715 >>
1716 @end lilypond
1717
1718 Se pueden producir partituras distintas que presenten sólo las partes
1719 vocales o sólo la parte de piano, cambiando solamente los enunciados
1720 estructurales, sin modificar la notación musical.
1721
1722 Para partituras extensas, las definiciones de variable se pueden poner
1723 en archivos separados que se incluyen más tarde, véase @ref{Inclusión de archivos de LilyPond}.
1724
1725
1726 @node Uso de etiquetas
1727 @unnumberedsubsubsec Uso de etiquetas
1728 @translationof Using tags
1729
1730 @funindex \tag
1731 @funindex \keepWithTag
1732 @funindex \removeWithTag
1733 @funindex \pushToTag
1734 @funindex \appendToTag
1735 @cindex etiqueta
1736 @cindex mantener música etiquetada
1737 @cindex quitar música etiquetada
1738 @cindex división en música etiquetada
1739
1740 La instrucción @code{\tag #'@var{parteA}} marca una expresión musical
1741 con el nombre @var{parteA}.  Las expresiones etiquetadas de esta
1742 manera se pueden seleccionar o filtrar más tarde por su nombre, usando
1743 bien @code{\keepWithTag #'@var{nombre}} o bien @code{\removeWithTag
1744 #'@var{nombre}}.  El resultado de la aplicación de estos filtros a la
1745 música etiquetada es como sigue:
1746
1747 @multitable @columnfractions .5 .5
1748 @headitem Filtro
1749   @tab Resultado
1750 @item
1751 Música etiquetada precedida de @code{\keepWithTag #'@var{nombre}}
1752 @tab
1753 Se incluye la música no etiquetada y la música etiquetada con
1754 @var{nombre}; se excluye la música etiquetada con cualquier otro
1755 nombre de etiqueta.
1756 @item
1757 Música etiquetada precedida de @code{\removeWithTag #'@var{nombre}}
1758 @tab
1759 Se incluye la música no etiquetada y la música etiquetada con
1760 cualquier nombre de etiqueta distinto a @var{nombre}; se excluye la
1761 música etiquetada con @var{nombre}.
1762 @item
1763 Música etiquetada no precedida de @code{\keepWithTag} ni de
1764 @code{\removeWithTag}
1765 @tab Se incluye toda la música etiquetada y no etiquetada.
1766 @end multitable
1767
1768 Los argumentos de las instrucciones @code{\tag}, @code{\keepWithTag} y
1769 @code{\removeWithTag} deben ser un símbolo (como @code{#'partitura} o
1770 @code{#'parte}), seguido de una expresión musical.
1771
1772 En el ejemplo siguiente vemos dos versiones de una pieza musical, una
1773 que muestra trinos con la notación usual y otra con los trinos
1774 expandidos explícitamente:
1775
1776 @lilypond[verbatim,quote]
1777 music = \relative g' {
1778   g8. c32 d
1779   \tag #'trills { d8.\trill }
1780   \tag #'expand { \repeat unfold 3 { e32 d } }
1781   c32 d
1782  }
1783
1784 \score {
1785   \keepWithTag #'trills \music
1786 }
1787 \score {
1788   \keepWithTag #'expand \music
1789 }
1790 @end lilypond
1791
1792 @noindent
1793 De forma alternativa, a veces es más fácil excluir secciones de música:
1794
1795 @lilypond[verbatim,quote]
1796 music = \relative g' {
1797   g8. c32 d
1798   \tag #'trills { d8.\trill }
1799   \tag #'expand {\repeat unfold 3 { e32 d } }
1800   c32 d
1801  }
1802
1803 \score {
1804   \removeWithTag #'expand
1805   \music
1806 }
1807 \score {
1808   \removeWithTag #'trills
1809   \music
1810 }
1811 @end lilypond
1812
1813 El filtrado con etiquetas se puede aplicar a articulaciones, textos,
1814 etc. anteponiendo
1815
1816 @example
1817 -\tag #'@var{mi-etiqueta}
1818 @end example
1819
1820 a una articulación.  Por ejemplo, esto define una nota con una
1821 indicación opcional de digitación y una nota con una anotación
1822 condicional:
1823
1824 @example
1825 c1-\tag #'finger ^4
1826 c1-\tag #'warn ^"¡Ojo!"
1827 @end example
1828
1829 Se pueden poner varias etiquetas sobre expresiones con varias entradas
1830 de @code{\tag}:
1831
1832 @lilypond[quote,verbatim]
1833 music = \relative c'' {
1834   \tag #'a \tag #'both { a4 a a a }
1835   \tag #'b \tag #'both { b4 b b b }
1836 }
1837 <<
1838 \keepWithTag #'a \music
1839 \keepWithTag #'b \music
1840 \keepWithTag #'both \music
1841 >>
1842 @end lilypond
1843
1844 Se pueden aplicar varios filtros @code{\removeWithTag} a una sola
1845 expresión musical para quitar varias secciones etiquetadas con nombres
1846 distintos:
1847
1848 @lilypond[verbatim,quote]
1849 music = \relative c'' {
1850 \tag #'A { a4 a a a }
1851 \tag #'B { b4 b b b }
1852 \tag #'C { c4 c c c }
1853 \tag #'D { d4 d d d }
1854 }
1855 {
1856 \removeWithTag #'B
1857 \removeWithTag #'C
1858 \music
1859 }
1860 @end lilypond
1861
1862 Dos o más filtros @code{\keepWithTag} aplicados a una sola expresión
1863 musical producen la eliminación de @emph{todas} las secciones
1864 etiquetadas, porque el primer filtro quita todas las secciones
1865 etiquetadas excepto la que se nombra, y el segundo filtro elimina
1866 incluso esa sección etiquetada.
1867
1868 A vecespodemos desear dividir la música en un determinado lugar dentro
1869 de una expresión musical existente.  Podemos usar @code{\pushToTag} y
1870 @code{\appendToTag} para añadir material delante o al final de los
1871 @code{elements} de una construcción musical existente.  No toda
1872 construcción musical tiene la parte @code{elements}, pero las músicas
1873 secuenciaes y simultáneas son dos apuestas seguras:
1874
1875 @lilypond[verbatim,quote]
1876 test = { \tag #'here { \tag #'here <<c''>> } }
1877
1878 {
1879   \pushToTag #'here c'
1880   \pushToTag #'here e'
1881   \pushToTag #'here g' \test
1882   \appendToTag #'here c'
1883   \appendToTag #'here e'
1884   \appendToTag #'here g' \test
1885 }
1886 @end lilypond
1887
1888 Las dos instrucciones admiten una etiqueta, el material que dividir en
1889 cada ocurrencia de la etiqueta, y la expresión etiquetada.  Las
1890 instrucciones aseguran que se copia todo lo que cambian, de forma que
1891 el código original @code{\test} retiene su significado.
1892
1893 @seealso
1894 Manual de aprendizaje:
1895 @rlearning{Organizar las piezas mediante variables}.
1896
1897 Referencia de la notación:
1898 @ref{Combinación automática de las partes},
1899 @ref{Inclusión de archivos de LilyPond}.
1900
1901 @ignore
1902 @c This warning is more general than this placement implies.
1903 @c Rests are not merged whether or not they come from tagged sections.
1904 @c Should be deleted?  -td
1905
1906 @knownissues
1907 Multiple rests are not merged if you create a score with more
1908 than one tagged section at the same place.
1909
1910 @end ignore
1911
1912 @node Uso de ajustes globales
1913 @unnumberedsubsubsec Uso de ajustes globales
1914 @translationof Using global settings
1915
1916 @cindex include-settings
1917
1918 Se pueden incluir ajustes globales a partir de un archivo distinto:
1919
1920 @example
1921 lilypond -dinclude-settings=MIS_AJUSTES.ly MI_PARTITURA.ly
1922 @end example
1923
1924 En archivos diferentes se pueden almacenar  grupos de ajustes como
1925 el tamaño de la página o las fuentes tipográficas.  Ello permite
1926 hacer diferentes ediciones de la mism a partitura así como aplicar
1927 ajustes estándar a muchas partituras, simplemente por medio de la
1928 especificación del archivo de ajustes adecuado.
1929
1930 Esta técnica también funciona bien con el uso de hojas de estilo,
1931 como se estudia en @rlearning{Hojas de estilo}.
1932
1933 @seealso
1934 Manual de aprendizaje:
1935 @rlearning{Organizar las piezas mediante variables},
1936 @rlearning{Hojas de estilo}.
1937
1938 Referencia de la notación:
1939 @ref{Inclusión de archivos de LilyPond}.
1940
1941
1942 @node Caracteres especiales
1943 @subsection Caracteres especiales
1944 @translationof Special characters
1945
1946 @cindex caracteres especiales
1947 @cindex caracteres no ASCII
1948
1949 @menu
1950 * Codificación del texto::
1951 * Unicode::
1952 * Alias de ASCII::
1953 @end menu
1954
1955
1956 @node Codificación del texto
1957 @unnumberedsubsubsec Codificación del texto
1958 @translationof Text encoding
1959
1960 @cindex UTF-8
1961
1962 LilyPond usa el conjunto de caracteres definido por el consorcio
1963 Unicode y la norma ISO/IEC 10646.  Define un nombre único y un código
1964 para los conjuntos de caracteres que se utilizan en prácticamente
1965 todos los idiomas modernos y también en muchos otros.  Unicode se
1966 puede implementar utilizando varios esquemas de codificación
1967 distintos.  LilyPond usa la codificación UTF-8 (UTF son las siglas de
1968 @emph{Unicode Transformation Format}, o formato de transformación de
1969 Unicode) que representa todos los caracteres comunes de Latin en un
1970 solo byte, y representa otros caracteres usando un formato de longitud
1971 variable de hasta cuatro bytes.
1972
1973 El aspecto visual real de los caracteres viene determinado por los
1974 glifos que se definen en las fuentes tipográficas concretas que se
1975 tengan disponibles: una fuente tipográfica define la asignación de un
1976 subconjunto de los códigos de Unicode a glifos.  LilyPond usa la
1977 biblioteca Pango para representar y disponer tipográficamente textos
1978 multilingües.
1979
1980 LilyPond no realiza ninguna conversión en la codificación de la
1981 entrada.  Esto significa que cualquier text, ya sea el título, la
1982 letra de la canción o una instrucción musical que contenga caracteres
1983 distintos a los del conjunto ASCII, se deben codificar en UTF-8.  La
1984 forma más fácil de escribir dicho texto es utilizar un editor
1985 preparado para Unicode y guardar el archivo con la codificación UTF-8.
1986 Casi todos los editores modernos populares contemplan el UTF-8, por
1987 ejemplo lo hacen vim, Emacs, jEdit, y GEdit.  Todos los sistemas MS
1988 Windows posteriores a NT usan Unicode como codificación de caracteres
1989 nativa, de manera que incluso el accesorio Bloc de Notas (Notepad)
1990 puede editar y guardar un archivo en el formato UTF-8.  Una
1991 alternativa más funcional para Windows es BabelPad.
1992
1993 Si un archivo de entrada que contiene un carácter que no es ASCII, no
1994 se guarda en el formato UTF-8, se genera el mensaje de error
1995
1996 @example
1997 FT_Get_Glyph_Name () error: argumento inválido
1998 @end example
1999
2000 He aquí un ejemplo que muestra texto cirílico, hebreo y portugués:
2001
2002 @lilypond[quote]
2003 %c No verbatim here as the code does not display correctly in PDF
2004 % Cyrillic
2005 bulgarian = \lyricmode {
2006   Жълтата дюля беше щастлива, че пухът, който цъфна, замръзна като гьон.
2007 }
2008
2009 % Hebrew
2010 hebrew = \lyricmode {
2011   זה כיף סתם לשמוע איך תנצח קרפד עץ טוב בגן.
2012 }
2013
2014 % Portuguese
2015 portuguese = \lyricmode {
2016   à vo -- cê uma can -- ção legal
2017 }
2018
2019 \relative c' {
2020   c2 d e f g f e
2021 }
2022 \addlyrics { \bulgarian }
2023 \addlyrics { \hebrew }
2024 \addlyrics { \portuguese }
2025 @end lilypond
2026
2027
2028 @node Unicode
2029 @unnumberedsubsubsec Unicode
2030
2031 @cindex Unicode
2032
2033 Para introducir un carácter aislado para el que se conoce el punto de
2034 código Unicode pero no está disponible en el editor que se está
2035 usando, use @code{\char ##xhhhh} o bien @code{\char #dddd} dentro de
2036 un bloque @code{\markup}, donde @code{hhhh} es el código hexadecimal
2037 del carácter en cuestión y @code{dddd} es su valor decimal
2038 correspondiente.  Pueden omitirse los ceros iniciales, pero es
2039 costumbre indicar los cuatro caracteres en la representación
2040 hexadecimal (observe que @emph{no} debe utilizarse la codificación
2041 UTF-8 del punto de código Unicode después de @code{\char}, pues la
2042 codificación UTF-8 contiene bits adicionales que indican el número de
2043 octetos).  Hay tablas de códigos Unicode y un índice de nombres de
2044 caracteres que da el punto de código en hexadecimal para cualquier
2045 carácter en el portal del Consorcio Unicode,
2046 @uref{http://www.unicode.org/}.
2047
2048 Por ejemplo, tanto @code{\char ##x03BE} como @code{\char #958}
2049 insertan el carácter Unicode U+03BE, que tiene el nombre Unicode
2050 @qq{Letra griega Xi pequeña}.
2051
2052 Se puede escribir de esta forma cualquier punto de código Unicode, y
2053 si todos los caracteres especiales se escriben en este formato no es
2054 necesario guardar el archivo de entrada en formato UTF-8.  Por
2055 supuesto, debe estar instalada y estar disponible para LilyPond una
2056 fuente tipográfica que contenga codificados todos estos caracteres.
2057
2058 El ejemplo siguiente muestra valores hexadecimales Unicode que se usan
2059 en cuatro lugares: en una llamada de ensayo, como texto de
2060 articulación, en la letra y como texto independiente bajo la
2061 partitura:
2062
2063 @lilypond[quote,verbatim]
2064 \score {
2065   \relative c'' {
2066     c1 \mark \markup { \char ##x03EE }
2067     c1_\markup { \tiny { \char ##x03B1 " to " \char ##x03C9 } }
2068   }
2069   \addlyrics { O \markup { \concat { Ph \char ##x0153 be! } } }
2070 }
2071 \markup { "Copyright 2008--2012" \char ##x00A9 }
2072 @end lilypond
2073
2074 @cindex copyright, símbolo de
2075
2076 Para escribir el símbolo de copyright en la nota de créditos, utilice:
2077
2078 @example
2079 \header @{
2080   copyright = \markup @{ \char ##x00A9 "2008" @}
2081 @}
2082 @end example
2083
2084
2085 @node Alias de ASCII
2086 @unnumberedsubsubsec Alias de ASCII
2087 @translationof ASCII aliases
2088
2089 Se puede incluir una lista de alias de ASCII para caracteres
2090 especiales:
2091
2092 @lilypond[quote,verbatim]
2093 \paper {
2094   #(include-special-characters)
2095 }
2096
2097 \markup "&flqq; &ndash; &OE;uvre incomplète&hellip; &frqq;"
2098
2099 \score {
2100   \new Staff { \repeat unfold 9 a'4 }
2101   \addlyrics {
2102     This is al -- so wor -- kin'~in ly -- rics: &ndash;_&OE;&hellip;
2103   }
2104 }
2105
2106 \markup \column {
2107   "The replacement can be disabled:"
2108   "&ndash; &OE; &hellip;"
2109   \override #'(replacement-alist . ()) "&ndash; &OE; &hellip;"
2110 }
2111 @end lilypond
2112
2113 También podemos hacer nuestros propios alias, ya sea de forma global:
2114
2115 @lilypond[quote,verbatim]
2116 \paper {
2117   #(add-text-replacements!
2118     '(("100" . "hundred")
2119       ("dpi" . "dots per inch")))
2120 }
2121 \markup "A 100 dpi."
2122 @end lilypond
2123
2124 o local:
2125
2126 @lilypond[quote,verbatim]
2127 \markup \replace #'(("100" . "hundred")
2128                     ("dpi" . "dots per inch")) "A 100 dpi."
2129 @end lilypond
2130
2131 @seealso
2132 Referencia de la notación:
2133 @ref{Lista de caracteres especiales}.
2134
2135 Archivos instalados:
2136 @file{ly/text-replacements.ly}.
2137
2138
2139 @node Controlar la salida
2140 @section Controlar la salida
2141 @translationof Controlling output
2142
2143 @menu
2144 * Extracción de fragmentos de música::
2145 * Saltar la música corregida::
2146 * Formatos de salida alternativos::
2147 * Sustituir la tipografía de la notación::
2148 @end menu
2149
2150
2151 @node Extracción de fragmentos de música
2152 @subsection Extracción de fragmentos de música
2153 @translationof Extracting fragments of music
2154
2155 Es posible citar pequeños fragmentos de una partitura grande
2156 directamente a partir de la salida.  Puede compararse con la
2157 separación de una pieza de una partitura, recortándola con tijeras.
2158
2159 Esto se hace definiendo los compases que se deben recortar.  Por
2160 ejemplo, la inclusión de la siguiente definición
2161
2162 @verbatim
2163 \layout {
2164   clip-regions
2165   = #(list
2166       (cons
2167        (make-rhythmic-location 5 1 2)
2168        (make-rhythmic-location 7 3 4)))
2169 }
2170 @end verbatim
2171
2172 @noindent
2173 extrae un fragmento empezando por la mitad del quinto compás y
2174 finalizando en el séptimo compás.  El significado de @code{5 1 2} es:
2175 después de una blanca (1/2) en el compás 5, y el de @code{7 3 4}
2176 después de tres negras del compás 7.
2177
2178 Se pueden definir más zonas de recorte añadiendo más parejas de
2179 definición de tiempo rhythmic-location a la lista.
2180
2181 Para poder utilizar esta funcionalidad, LilyPond se debe invocar con
2182 la opción @option{-dclip-systems}.  Los recortes aparecen en la salida
2183 como archivos EPS, y se convierten en PDF y PNG si estos formatos
2184 también están activados.
2185
2186 Para ver más información sobre los formatos de salida, consulte
2187 @rprogram{Invocar a LilyPond}.
2188
2189
2190 @node Saltar la música corregida
2191 @subsection Saltar la música corregida
2192 @translationof Skipping corrected music
2193
2194 @funindex skipTypesetting
2195 @funindex showFirstLength
2196 @funindex showLastLength
2197
2198 Al escribir o copiar música, normalmente sólo es interesante de ver y
2199 corregir la música cercana al final (donde estamos añadiendo las
2200 notas).  Para acelerar este proceso de corrección, es posible saltar
2201 la composición tipográfica de todos excepto unos pocos de los últimos
2202 compases.  Esto se consigue poniendo
2203
2204 @verbatim
2205 showLastLength = R1*5
2206 \score { ... }
2207 @end verbatim
2208
2209 @noindent
2210 en nuestro archivo fuente.  Esto hará que se tracen sólo los últimos
2211 cinco compases (suponiendo un compás de 4/4) de cada una de las
2212 partituras @code{\score} del archivo de entrada.  Para piezas largas,
2213 el tipografiado de únicamente una parte pequeña es con frecuencia un
2214 orden de magnitud más rápido que el de la obra completa.  Si estamos
2215 trabajando sobre el principio de una partitura que ya hemos
2216 tipografiado (p.ej., para añadir una parte instrumental nueva),
2217 también puede ser útil la propiedad @code{showFirstLength}.
2218
2219 Este mecanismo de pasar por alto partes de un partitura se puede
2220 controlar con un grano más fino mediante la propiedad
2221 @code{Score.skipTypesetting}.  Cuando su valor está establecido, no se
2222 lleva a cabo ningún tipografiado en absoluto.
2223
2224 Esta propiedad se usa también para controlar la salida al archivo
2225 MIDI.  Observe que pasa por alto todos los eventos, incluidos el tempo
2226 y los cambios de instrumento.  Está usted advertido.
2227
2228 @lilypond[quote,relative=2,ragged-right,verbatim]
2229 c8 d
2230 \set Score.skipTypesetting = ##t
2231 e8 e e e e e e e
2232 \set Score.skipTypesetting = ##f
2233 c8 d b bes a g c2
2234 @end lilypond
2235
2236 En música polifónica, @code{Score.skipTypesetting} afecta a todas las
2237 voces y pentagramas, ahorrando más tiempo incluso.
2238
2239
2240 @node Formatos de salida alternativos
2241 @subsection Formatos de salida alternativos
2242 @translationof Alternative output formats
2243
2244 @cindex salida de gráficos de vector escalables
2245 @cindex SVG, salida
2246 @cindex salida de PostScript encapsulado
2247 @cindex EPS, salida
2248 @cindex PostScript encapsulado, salida de
2249
2250 Los formatos de salida predeterminados para la partitura impresa son
2251 el formato de documento portátil (PDF) y PostScript (PS).  Los
2252 formatos de salida Gráficos de vector escalables (SVG), PostScript
2253 encapsulado (EPS) y Gráficos de red portátiles (PNG) también están
2254 disponibles a través de opciones de la línea de órdenes, véase
2255 @rprogram{Opciones básicas de la línea de órdenes para LilyPond}.
2256
2257
2258 @node Sustituir la tipografía de la notación
2259 @subsection Sustituir la tipografía de la notación
2260 @translationof Replacing the notation font
2261
2262 Gonville es una alternativa a la tipografía Feta que se utiliza en
2263 LilyPond y se puede descargar de:
2264 @example
2265 @uref{http://www.chiark.greenend.org.uk/~sgtatham/gonville/ ,http://www.chiark.greenend.org.uk/~sgtatham/gonville/}
2266 @end example
2267
2268 Aquí presentamos algunos compases de muestra tipografiados con la
2269 fuente Gonville:
2270
2271 @c NOTE: these images are a bit big, but that's important
2272 @c       for the font comparison.  -gp
2273 @sourceimage{Gonville_after,,,}
2274
2275 Aquí hay unos compases de muestra tipografiados en la fuente Feta de
2276 LilyPond:
2277
2278 @sourceimage{Gonville_before,,,}
2279
2280 @subsubheading Instrucciones de instalación para MacOS
2281
2282 Descargue y extraiga el archivo zip. Copie la carpeta @code{lilyfonts}
2283 a @file{@var{SHARE_DIR}/lilypond/current}; para más información,
2284 consulte @rlearning{Otras fuentes de información}.  Renombre la carpeta
2285 @code{fonts} existente a @code{fonts_orig} y la carpeta
2286 @code{lilyfonts} a @code{fonts}.  Para volver a la fuente Feta,
2287 invierta el proceso.
2288
2289 @seealso
2290 Manual de aprendizaje:
2291 @rlearning{Otras fuentes de información}.
2292
2293 @knownissues
2294
2295 Gonville no se puede usar para tipografiar notación de @q{Música
2296 Antigua} y es probable que cualquier nuevo glifo en versiones
2297 posteriores de LilyPond no existan en la familia
2298 tipográfica Gonville.  Diríjase a la página web del autor para obtener más
2299 información sobre éste y otros asuntos, entre ellos el régimen de
2300 licencias de Gonville.
2301
2302
2303 @node Salida MIDI
2304 @section Salida MIDI
2305 @translationof MIDI output
2306
2307 @cindex sonido
2308 @cindex MIDI
2309
2310 El MIDI (Musical Instrument Digital Interface, Interfase Digital para
2311 Instrumentos Musicales) es un estándar para interconectar y controlar
2312 instrumentos musicales electrónicos.  Un archivo o secuencia MIDI es
2313 una serie de notas dentro de un conjunto de pistas.  No es un archivo
2314 de sonidos reales; se necesita un programa reproductor especial para
2315 traducir la serie de notas en sonidos de verdad.
2316
2317 Cualquier música se puede convertir a archivos MIDI, de manera que
2318 podamos escuchar lo que hayamos introducido.  Esto es muy conveniente
2319 para comprobar la corrección de la música; las octavas equivocadas o
2320 las alteraciones erróneas se ponen de relieve muy claramente al
2321 escuchar la salida MIDI.
2322
2323 La salida estándar de MIDI es un poco primitiva; de forma opcional, se
2324 encuentra disponible una salida MIDI mejorada y mucho más realista,
2325 por medio de @ref{El script Articulate}.
2326
2327 La salida MIDI reserva un canal por cada pentagrama, y reserva
2328 el canal 10 para la percusión.  Sólo hay 16 canales MIDI por cada
2329 dispositivo, por lo que si la partitura tiene más de 15 pautas, los
2330 canales MIDI se reutilizarán.
2331
2332 @menu
2333 * Crear archivos MIDI::
2334 * El bloque MIDI::
2335 * ¿Qué sale por el MIDI?::
2336 * Repeticiones y MIDI::
2337 * Control de los matices en el MIDI::
2338 * Percusión en MIDI::
2339 * El script Articulate::
2340 @end menu
2341
2342
2343 @node Crear archivos MIDI
2344 @subsection Crear archivos MIDI
2345 @translationof Creating MIDI files
2346
2347 Para crear un MIDI a partir de una pieza de música, escriba un bloque
2348 @code{\midi} en la partitura, por ejemplo:
2349
2350 @example
2351 \score @{
2352   @var{...música...}
2353   \midi @{ @}
2354 @}
2355 @end example
2356
2357 Si hay un bloque @code{\midi} dentro de un @code{\score} que no tenga
2358 ningún bloque @code{\layout}, solamente se producirá MIDI.  Si se
2359 necesita una notación impresa, debe haber también un bloque
2360 @code{\layout}:
2361
2362 @example
2363 \score @{
2364   @var{...música...}
2365   \midi @{ @}
2366   \layout @{ @}
2367 @}
2368 @end example
2369
2370 Se traducen correctamente a la salida MIDI la altura y duración de las
2371 notas, las ligaduras de unión, matices y cambios de tempo.  Las
2372 indicaciones dinámicas, crescendi y decrescendi se traducen a niveles
2373 de volumen MIDI.  Las marcas dinámicas se traducen a una fracción fija
2374 del rango de volumen MIDI disponible.  Los crescendi y decrescendi
2375 hacen que el volumen varía linealmente entre sus dos extremos. El
2376 efecto de las indicaciones dinámicas sobre la salida MIDI se puede
2377 eliminar por completo, véase @ref{El bloque MIDI}.
2378
2379 El tempo inicial y los cambios de tempo posteriores se pueden
2380 especificar utilizando la instrucción @code{\tempo} dentro de la
2381 propia notación musical.  Se reflejan en cambios de tempo en la salida
2382 MIDI.  Esta instrucción normalmente hace que se imprima la indicación
2383 metronómica, pero esto se puede eliminar, véase @ref{Indicaciones metronómicas}.
2384 Más abajo se describe una forma alternativa de especificar el tempo
2385 MIDI inicial o global, véase @ref{El bloque MIDI}.
2386
2387 Debido a ciertas limitaciones de Windows, la extensión predeterminada
2388 para los archivos MIDI en Windows es @code{.mid}. Otros sistemas
2389 operativos utilizan la extensión @code{.midi}.  Si prefiere una
2390 extensión diferente, inserte la siguiente línea en el nivel jerárquico
2391 superior del archivo de entrada, antes del inicio de cualquier bloque
2392 @code{\book}, @code{\bookpart} o @code{\score}:
2393
2394 @example
2395 #(ly:set-option 'midi-extension "midi")
2396 @end example
2397
2398 La línea anterior establece la extensión predeterminada para los
2399 archivos MIDI a @code{.midi}.
2400
2401 De forma alternativa, esta opción se puede también proporcionar en la
2402 línea de órdenes:
2403
2404 @example
2405 lilypond … -dmidi-extension=midi archivoLily.ly
2406 @end example
2407
2408
2409 @unnumberedsubsubsec Nombres de instrumentos
2410
2411 @cindex instrumento, nombres de
2412 @funindex Staff.midiInstrument
2413
2414 El nombre del instrumento MIDI se establece mediante la propiedad
2415 @code{Staff.midiInstrument}.  El nombre del instrumento se debe elegir
2416 de entre los que están en la lista que aparece en @ref{Instrumentos MIDI}.
2417
2418 @example
2419 \new Staff @{
2420   \set Staff.midiInstrument = #"glockenspiel"
2421   @var{...notes...}
2422 @}
2423 @end example
2424
2425 @example
2426 \new Staff \with @{midiInstrument = #"cello"@} @{
2427   @var{...notes...}
2428 @}
2429 @end example
2430
2431 Si el instrumento elegido no coincide exactamente con uno de los
2432 instrumentos de la lista de instrumentos MIDI, se usará el instrumento
2433 Piano de Cola (@code{"acoustic grand"}).
2434
2435 @snippets
2436
2437 @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
2438 {changing-midi-output-to-one-channel-per-voice.ly}
2439
2440 @knownissues
2441
2442 @c In 2.11 the following no longer seems to be a problem -td
2443 @ignore
2444 Unterminated (de)crescendos will not render properly in the midi file,
2445 resulting in silent passages of music.  The workaround is to explicitly
2446 terminate the (de)crescendo.  For example,
2447
2448 @example
2449 @{ a4\< b c d\f @}
2450 @end example
2451
2452 @noindent
2453 will not work properly but
2454
2455 @example
2456 @{ a4\< b c d\!\f @}
2457 @end example
2458
2459 @noindent
2460 will.
2461 @end ignore
2462
2463 Los cambios del volumen MIDI sólo tienen lugar al principio de la
2464 nota, por lo que los crescendi y decrescendi no pueden afectar al
2465 volumen de una sola nota.
2466
2467 No todos los reproductores de MIDI manejar adecuadamente los cambios de
2468 tempo de la salida MIDI.  Entre los reproductores que se sabe que
2469 funcionan se encuentran el Reproductor de Medios de MS Windows y
2470 @uref{http://@/timidity@/.sourceforge@/.net/,timidity}.
2471
2472
2473 @node El bloque MIDI
2474 @subsection El bloque MIDI
2475 @translationof MIDI block
2476
2477 @cindex bloque MIDI
2478
2479 Si se requiere una salida MIDI, debe aparecer un bloque @code{\midi}
2480 dentro de un bloque de partitura.  Es análogo al bloque layout de
2481 diseño de página, pero algo más simple.  Con frecuencia, el bloque
2482 @code{\midi} se deja vacío, pero puede contener reorganizaciones de
2483 contextos, definiciones de contexto nuevas o código para fijar valores
2484 de propiedades.  Por ejemplo, en el ejemplo siguiente se establece el
2485 tempo inicial exportado al archivo MIDI sin hacer que se imprima una
2486 indicación de tempo:
2487
2488 @example
2489 \score @{
2490   @var{...música...}
2491   \midi @{
2492     \tempo 4 = 72
2493   @}
2494 @}
2495 @end example
2496
2497 En este ejemplo, el tempo se establece a 72 pulsos de negra por
2498 minuto.  @code{\tempo} is actually a music command for
2499 setting properties during the interpretation of music: in the
2500 context of output definitions like a @code{\midi} block, as a matter of
2501 courtesy those are reinterpreted as if they were context modifications.
2502
2503 @cindex MIDI, definiciones de contexto
2504
2505 Las definiciones de contexto siguen con precisión la misma sintaxis
2506 que la de un bloque @code{\layout}.  Los módulos de traducción para el
2507 sonido reciben el nombre de ejecutantes.  Los contextos para la salida
2508 MIDI se definen en @file{../ly/performer-init.ly}, véase
2509 @rlearning{Otras fuentes de información}.  Por ejemplo, para eliminar
2510 el efecto de los matices de la salida MIDI, inserte las líneas
2511 siguientes en el bloque @code{\midi@{ @}}.
2512
2513 @example
2514 \midi @{
2515   ...
2516   \context @{
2517     \Voice
2518     \remove "Dynamic_performer"
2519   @}
2520 @}
2521 @end example
2522
2523 La salida MIDI se crea sólo cuando se incluye un bloque @code{\midi}
2524 dentro de un bloque de partitura definido con una instrucción
2525 @code{\score}.
2526
2527 @example
2528 \score @{
2529   @{ @dots{}notas@dots{} @}
2530   \midi @{ @}
2531 @}
2532 @end example
2533
2534
2535 @node ¿Qué sale por el MIDI?
2536 @subsection ¿Qué sale por el MIDI?
2537 @translationof What goes into the MIDI output?
2538
2539 @unnumberedsubsubsec Contemplado en el MIDI
2540
2541 @cindex alturas en MIDI
2542 @cindex MIDI, alturas
2543 @cindex cuartos de tono en MIDI
2544 @cindex MIDI, cuartos de tono
2545 @cindex microtonos en MIDI
2546 @cindex MIDI, microtonos
2547 @cindex acordes, nombres de, en MIDI
2548 @cindex MIDI, nombres de
2549 @cindex duraciones en MIDI
2550 @cindex MIDI, duraciones
2551 @cindex Articlulate, scripts
2552 @cindex MIDI, articulaciones
2553 @cindex articulaciones en MIDI
2554 @cindex trinos en MIDI
2555 @cindex grupetos en MIDI
2556 @cindex rallentando en MIDI
2557 @cindex accelerando en MIDI
2558 @c TODO etc
2559
2560 Los siguientes elementos de notación se reflejan en la salida MIDI:
2561
2562 @itemize
2563 @item Alturas
2564 @item Microtonos (véase @ref{Alteraciones accidentales}. La reproducción necesita un reproductor que contemple la curvatura de tono o @emph{pitch bend}.)
2565 @item Acordes escritos como nombres de acorde
2566 @item Ritmos escritos como duraciones de las notas, incluidos los grupos de valoración especial
2567 @item Trémolos escritos sin @q{@code{:}[@var{número}]}
2568 @item Ligaduras de unión
2569 @item Matices o indicaciones de dinámica
2570 @item Crescendi y decrescendi sobre varias notas
2571 @item Cambios de tempo insertados con una marca metronómica
2572 @item Letra de las canciones
2573 @end itemize
2574
2575 Utilizando @ref{El script Articulate}, a la lista anterior se añaden
2576 una serie de elementos:
2577
2578 @itemize
2579 @item Articulaciones (ligaduras de expresión, picados, etc)
2580 @item Trinos, mordentes circulares
2581 @item Rallentando y accelerando
2582 @end itemize
2583
2584
2585 @unnumberedsubsubsec No contemplado en el MIDI
2586
2587 @c TODO index as above
2588
2589 Los siguientes elementos de notación no tienen ningún efecto sobre la
2590 salida MIDI, a no ser que utilicemos @ref{El script Articulate}:
2591
2592 @itemize
2593 @item Duraciones escritas como anotaciones, p.ej. el swing
2594 @item Cambios de tempo escritos como anotaciones sin marca de tempo
2595 @item Staccato y otras articulaciones y ornamentos
2596 @item Ligaduras de expresión y de fraseo
2597 @item Crescendi y decrescendi sobre una nota única
2598 @item Trémolos introducidos con @q{@code{:}[@var{número}]}
2599 @item Bajo cifrado
2600 @item Acordes microtonales
2601 @end itemize
2602
2603
2604 @node Repeticiones y MIDI
2605 @subsection Repeticiones y MIDI
2606 @translationof Repeats in MIDI
2607
2608 @cindex repeticiones, expandir
2609 @funindex \unfoldRepeats
2610
2611 Con un poco de trucaje, se puede hacer que cualquier tipo de
2612 repetición esté presente en la salida MIDI.  Esto se consigue mediante
2613 la aplicación de la función musical @code{\unfoldRepeats}.  Esta
2614 función cambia todas las repeticiones a repeticiones desplegadas.
2615
2616 @lilypond[quote,verbatim]
2617 \unfoldRepeats {
2618   \repeat tremolo 8 { c'32 e' }
2619   \repeat percent 2 { c''8 d'' }
2620   \repeat volta 2 { c'4 d' e' f' }
2621   \alternative {
2622     { g' a' a' g' }
2623     { f' e' d' c' }
2624   }
2625 }
2626 \bar "|."
2627 @end lilypond
2628
2629 En partituras con varias voces, el desplegado de las repeticiones en
2630 la salida MIDI solo se produce correctamente si @emph{todas y cada
2631 una} de las voces incluye las repeticiones de manera completa y
2632 explícita.
2633
2634 Al crear un archivo de partitura que use @code{\unfoldRepeats} para el
2635 MIDI, es necesario hacer dos bloques @code{\score}: uno para el MIDI
2636 (con repeticiones desplegadas) y otro para la notación impresa (con
2637 repeticiones de volta --primera y segunda vez--, tremolo --trémolo--,
2638 y percent --repetición de compases--).  Por ejemplo,
2639
2640 @example
2641 \score @{
2642   @var{..música..}
2643   \layout @{ .. @}
2644 @}
2645 \score @{
2646   \unfoldRepeats @var{..música..}
2647   \midi @{ .. @}
2648 @}
2649 @end example
2650
2651
2652 @node Control de los matices en el MIDI
2653 @subsection Control de los matices en el MIDI
2654 @translationof Controlling MIDI dynamics
2655
2656 La dinámica en el MIDI está implementada por medio del intérprete
2657 Dynamic_performer que reside de forma predeterminada dentro del
2658 contexto Voice.  Es posible controlar el volumen MIDI general, el
2659 volumen relativo de los matices dinámicos y el volumen relativo de los
2660 distintos instrumentos.
2661
2662 @unnumberedsubsubsec Indicaciones dinámicas
2663
2664 Los matices o indicaciones de dinámica se traducen a una fracción fija
2665 del rango de volumen MIDI disponible.  Las fracciones predeterminadas
2666 se extienden desde 0.25 para @notation{ppppp} hasta 0.95 para
2667 @notation{fffff}.  El conjunto de indicaciones dinámicas y las
2668 fracciones asociadas pueden verse en @file{../scm/midi.scm}, véase
2669 @rlearning{Otras fuentes de información}.  Este conjunto de fracciones
2670 se puede cambiar o extender proporcionando una función que toma como
2671 argumento una indicación dinámica y devuelve la fracción requerida, y
2672 estableciendo @code{Score.dynamicAbsoluteVolumeFunction} a esta
2673 función.
2674
2675 Por ejemplo, si se requiere una indicación dinámica
2676 @notation{rinforzando}, @code{\rfz}, ésta no tiene ningún efecto
2677 predeterminado sobre el volumen MIDI, pues no está incluida en el
2678 conjunto predeterminado.  De igual manera, si se define una indicación
2679 dinámica nueva con @code{make-dynamic-script}, ésta tampoco estará
2680 incluida en el conjunto predeterminado.  El ejemplo siguiente muestra
2681 cómo hay que añadir el volumen MIDI para estas indicaciones dinámicas.
2682 La función Scheme establece la fracción a 0.9 si se encuentra una
2683 indicación dinámica rfz, y en caso contrario llama a la función
2684 predeterminada.
2685
2686 @lilypond[verbatim,quote]
2687 #(define (myDynamics dynamic)
2688     (if (equal? dynamic "rfz")
2689       0.9
2690       (default-dynamic-absolute-volume dynamic)))
2691
2692 \score {
2693   \new Staff {
2694     \set Staff.midiInstrument = #"cello"
2695     \set Score.dynamicAbsoluteVolumeFunction = #myDynamics
2696     \new Voice {
2697       \relative c'' {
2698         a4\pp b c-\rfz
2699       }
2700     }
2701   }
2702   \layout {}
2703   \midi {}
2704 }
2705 @end lilypond
2706
2707 Como alternativa, si se necesitara redefinir la tabla completa de
2708 fracciones, sería mejor usar el procedimiento
2709 @notation{default-dynamic-absolute-volume} que aparece en
2710 @file{../scm/midi.scm} y la tabla asociada como modelo.  El último
2711 ejemplo de esta sección muestra cómo se puede hacer esto.
2712
2713 @unnumberedsubsubsec Volumen maestro MIDI
2714
2715 El volumen general máximo y mínimo de las indicaciones dinámicas de
2716 MIDI se controla estableciendo valores para las propiedades
2717 @code{midiMinimumVolume} y @code{midiMaximumVolume} en el nivel de
2718 @code{Score}.  Estas propiedades tienen efecto solamente sobre las
2719 indicaciones dinámicas, por ello si queremos que tengan validez desde
2720 el comienzo de la partitura, se debe colocar allí una indicación de
2721 dinámica.  La fracción que corresponde a cada indicación dinámica se
2722 modifica con esta fórmula:
2723
2724 @example
2725 midiMinimumVolume + (midiMaximumVolume - midiMinimumVolume) * fracción
2726 @end example
2727
2728 En el ejemplo siguiente, el rango de intensidad dinámica del volumen
2729 general MIDI está limitado al intervalo desde 0.2 hasta 0.5.
2730
2731 @lilypond[verbatim,quote]
2732 \score {
2733   <<
2734     \new Staff {
2735       \key g \major
2736       \time 2/2
2737       \set Staff.midiInstrument = #"flute"
2738       \new Voice \relative c''' {
2739         r2 g\mp g fis~
2740         fis4 g8 fis e2~
2741         e4 d8 cis d2
2742       }
2743     }
2744     \new Staff {
2745       \key g \major
2746       \set Staff.midiInstrument = #"clarinet"
2747       \new Voice \relative c'' {
2748         b1\p a2. b8 a
2749         g2. fis8 e
2750         fis2 r
2751       }
2752     }
2753   >>
2754   \layout {}
2755   \midi {
2756     \tempo 2 = 72
2757     \context {
2758       \Score
2759       midiMinimumVolume = #0.2
2760       midiMaximumVolume = #0.5
2761     }
2762   }
2763 }
2764 @end lilypond
2765
2766 @unnumberedsubsubsec Balance entre instrumentos (i)
2767
2768 Si las propiedades de volumen MIDI máximo y mínimo están establecidas
2769 en el contexto @code{Staff} se pueden controlar los volúmenes
2770 relativos de los instrumentos MIDI.  Esto proporciona un ecualizador
2771 de instrumentos básico que puede realzar significativamente la calidad
2772 de la salida MIDI.
2773
2774 En este ejemplo se reduce el volumen del clarinete con relación al de
2775 la flauta.  Debe haber una indicación dinámica en la primera nota de
2776 cada instrumento para que esto funcione correctamente.
2777
2778 @lilypond[verbatim,quote]
2779 \score {
2780   <<
2781     \new Staff {
2782       \key g \major
2783       \time 2/2
2784       \set Staff.midiInstrument = #"flute"
2785       \set Staff.midiMinimumVolume = #0.7
2786       \set Staff.midiMaximumVolume = #0.9
2787       \new Voice \relative c''' {
2788         r2 g\mp g fis~
2789         fis4 g8 fis e2~
2790         e4 d8 cis d2
2791       }
2792     }
2793     \new Staff {
2794       \key g \major
2795       \set Staff.midiInstrument = #"clarinet"
2796       \set Staff.midiMinimumVolume = #0.3
2797       \set Staff.midiMaximumVolume = #0.6
2798       \new Voice \relative c'' {
2799         b1\p a2. b8 a
2800         g2. fis8 e
2801         fis2 r
2802       }
2803     }
2804   >>
2805   \layout {}
2806   \midi {
2807     \tempo 2 = 72
2808   }
2809 }
2810 @end lilypond
2811
2812 @unnumberedsubsubsec Balance entre instrumentos (ii)
2813
2814 Si las propiedades de volumen MIDI máximo y mínimo no están
2815 establecidas, de forma predeterminada LilyPond aplica un pequeño grado
2816 de ecualización a algunos instrumentos.  Los instrumentos y la
2817 ecualización que se aplica se muestra en la tabla
2818 @notation{instrument-equalizer-alist} en @file{../scm/midi.scm}.
2819
2820 El ecualizador básico predeterminado se puede sustituir estableciendo
2821 @code{instrumentEqualizer} en el contexto @code{Score} a un
2822 procedimiento Scheme nuevo que acepte el nombre de un instrumento MIDI
2823 como único argumento y devuelva un par de fracciones que dan los
2824 volúmenes máximo y mínimo que se aplican a dicho instrumento.  Esta
2825 sustitución se hace de la misma forma que mostramos para restablecer
2826 la fracción de volumen absoluto @code{dynamicAbsoluteVolumeFunction}
2827 al comienzo de esta sección.  El ecualizador predeterminado,
2828 @notation{default-instrument-equalizer}, en
2829 @file{../scm/midi.scm}, muestra cómo se puede escribir tal
2830 procedimiento.
2831
2832 El ejemplo siguiente establece los volúmenes relativos de la flauta y
2833 del clarinete a los mismos valores que el ejemplo anterior.
2834
2835 @lilypond[verbatim,quote]
2836 #(define my-instrument-equalizer-alist '())
2837
2838 #(set! my-instrument-equalizer-alist
2839   (append
2840     '(
2841       ("flute" . (0.7 . 0.9))
2842       ("clarinet" . (0.3 . 0.6)))
2843     my-instrument-equalizer-alist))
2844
2845 #(define (my-instrument-equalizer s)
2846   (let ((entry (assoc s my-instrument-equalizer-alist)))
2847     (if entry
2848       (cdr entry))))
2849
2850 \score {
2851   <<
2852     \new Staff {
2853       \key g \major
2854       \time 2/2
2855       \set Score.instrumentEqualizer = #my-instrument-equalizer
2856       \set Staff.midiInstrument = #"flute"
2857       \new Voice \relative c''' {
2858         r2 g\mp g fis~
2859         fis4 g8 fis e2~
2860         e4 d8 cis d2
2861       }
2862     }
2863     \new Staff {
2864       \key g \major
2865       \set Staff.midiInstrument = #"clarinet"
2866       \new Voice \relative c'' {
2867         b1\p a2. b8 a
2868         g2. fis8 e
2869         fis2 r
2870       }
2871     }
2872   >>
2873   \layout { }
2874   \midi {
2875     \tempo 2 = 72
2876   }
2877 }
2878 @end lilypond
2879
2880 @ignore
2881 @c Delete when satisfied this is adequately covered elsewhere -td
2882
2883 @n ode Microtones in MIDI
2884 @s ubsection Microtones in MIDI
2885
2886 @cindex microtones in MIDI
2887
2888 Microtones consisting of half sharps and half flats are exported
2889 to the MIDI file and render correctly in MIDI players which support
2890 pitch bending.  See @ref{Nombres de las notas en otros idiomas}.  Here is
2891 an example showing all the half sharps and half flats.  It can be
2892 copied out and compiled to test microtones in your MIDI player.
2893
2894 @lilypond[verbatim,quote]
2895 \score {
2896   \relative c' {
2897     c4 cih cis cisih
2898     d4 dih ees eeh
2899     e4 eih f fih
2900     fis4 fisih g gih
2901     gis4 gisih a aih
2902     bes4 beh b bih
2903   }
2904   \layout {}
2905   \midi {}
2906 }
2907 @end lilypond
2908 @end ignore
2909
2910
2911 @node Percusión en MIDI
2912 @subsection Percusión en MIDI
2913 @translationof Percussion in MIDI
2914
2915 La notación de los instrumentos de percusión se realiza normalmente en
2916 un contexto @code{DrumStaff} y cuando se hace de esta forma se les da
2917 salida correctamente por el canal MIDI@tie{}10, pero ciertos
2918 instrumentos de percusión de altura determinada, como el xilófono,
2919 marimba, vibráfono, timbales, etc., se tratan como instrumentos
2920 @qq{normales} y la música para estos instrumentos se debe introducir
2921 en contextos de @code{Staff} normales, no en un contexto
2922 @code{DrumStaff}, para obtener la salida MIDI correcta.
2923
2924 Ciertos sonidos de altura indeterminada que están incluidos en el
2925 estándar General MIDI, como el tom melódico, el tambor taiko, los
2926 tambores sintéticos, etc., no se pueden acceder a través del canal
2927 MIDI@tie{}10, por lo que la notación para dichos instrumentos se debe
2928 introducir también en un contexto normal de @code{Staff}, utilizando
2929 las alturas normales adecuadas.
2930
2931 Muchos instrumentos de percusión no están incluidos dentro del
2932 estándar General MIDI, p.ej. las castañuelas.  El método más
2933 fácil (aunque no satisfactorio) de producir una salida MIDI al
2934 escribir para estos instrumentos es sustituirlos por el sonido más
2935 parecido del conjunto estándar.
2936
2937 @c TODO Expand with examples, and any other issues
2938
2939 @knownissues
2940
2941 Debido a que el estándar General MIDI no contiene golpes de aro
2942 (@emph{rim shots}), para este propósito se utiliza en su lugar el
2943 golpe lateral de baqueta (@emph{sidestick}).
2944
2945
2946 @node El script Articulate
2947 @subsection El script Articulate
2948 @translationof The Articulate script
2949
2950 Es posible obtener una salida MIDI más real si se utiliza el script
2951 Articulate.  Éste trata de tener en cuenta las articulaciones
2952 (ligaduras de expresión, picados, etc), mediante la sustitución de las
2953 notas con secuencias musicales de silencios y notas escaladas en el
2954 tiempo de forma apropiada.  También trata de desplegar los trinos,
2955 grupetos circulares, etc. y responder a las indicaciones de
2956 rallentando y accelerando.
2957
2958 Para utilizar el script Articulate, tenemos que incluirlo al principio
2959 de nuestro archivo de entrada:
2960
2961 @example
2962 \include "articulate.ly"
2963 @end example
2964
2965 y en la sección @code{\score}, hacer lo siguiente:
2966
2967 @example
2968 \unfoldRepeats \articulate <<
2969         resto de la partitura...
2970 >>
2971 @end example
2972
2973 Después de alterar el código de entrada de esta manera el resultado
2974 visual se altera profundamente, pero el bloque @code{\midi} estándar
2975 produce un archivo MIDI mejorado.
2976
2977 Si bien no es esencial para que funcione el script Articulate, podemos
2978 insertar la instrucción @code{\unfoldRepeats} según aparece en el
2979 ejemplo anterior, dado que habilita la ejecución de abreviaturas tales
2980 como los @notation{trinos}.
2981
2982 @knownissues
2983
2984 Articulate acorta los acordes, y ciertos fragmentos de música
2985 (especialmente la música de órgano) es posible que suene peor.
2986
2987
2988 @node Extraer información musical
2989 @section Extraer información musical
2990 @translationof Extracting musical information
2991
2992 Además de crear un resultado visual y MIDI,
2993 LilyPond es capaz de presentar información
2994 musical en forma de texto.
2995
2996 @menu
2997 * Impresión del código de notación de LilyPond::
2998 * Impresión de las expresiones musicales de Scheme::
2999 * Guardar los eventos musicales en un archivo::
3000 @end menu
3001
3002
3003 @node Impresión del código de notación de LilyPond
3004 @subsection Displaying LilyPond notation
3005 @translationof Displaying LilyPond notation
3006
3007 @funindex \displayLilyMusic
3008 La impresión textual de una expresión musical en notación de LilyPond
3009 puede hacerse con la función musical @code{\displayLilyMusic}.
3010 Para ver el resultado, lo más usual es llamar a LilyPond
3011 mediante la línea de órdenes.  Por ejemplo,
3012
3013 @example
3014 @{
3015   \displayLilyMusic \transpose c a, @{ c4 e g a bes @}
3016 @}
3017 @end example
3018
3019 imprime lo siguiente:
3020
3021 @example
3022 @{ a,4 cis e fis g @}
3023 @end example
3024
3025 De forma predeterminada, LilyPond imprime estos mensajes en la consola
3026 junto al resto de los mensajes de la compilación de LilyPond.
3027 Para discernir entre estos mensajes y
3028 guardar el resultado de @code{\display@{MATERIAL@}}, redireccione la
3029 salida hacia un archivo.
3030
3031 @example
3032 lilypond archivo.ly >resultado.txt
3033 @end example
3034
3035
3036 @node Impresión de las expresiones musicales de Scheme
3037 @subsection Impresión de las expresiones musicales de Scheme
3038 @translationof Displaying scheme music expressions
3039
3040 Véase @rextend{Presentación de las expresiones musicales}.
3041
3042
3043 @node Guardar los eventos musicales en un archivo
3044 @subsection Guardar los eventos musicales en un archivo
3045 @translationof Saving music events to a file
3046
3047 Los eventos musicales se pueden guardar en un archivo pentagrama a
3048 pentagrama mediante la inclusión de un archivo en nuestra partitura
3049 principal.
3050
3051 @example
3052 \include "event-listener.ly"
3053 @end example
3054
3055 De esta forma se crean uno o más archivos llamados
3056 @file{FILENAME-STAFFNAME.notes} ó @file{FILENAME-unnamed-staff.notes}
3057 para cada pentagrama.  Observe que si tiene más de un pentagrama sin
3058 nombre, los eventos de todos los pentagramas se mezclarán entre sí
3059 dentro del mismo archivo.  El resultado tiene el aspecto siguiente:
3060
3061 @example
3062 0.000   note     57       4   p-c 2 12
3063 0.000   dynamic  f
3064 0.250   note     62       4   p-c 7 12
3065 0.500   note     66       8   p-c 9 12
3066 0.625   note     69       8   p-c 14 12
3067 0.750   rest     4
3068 0.750   breathe
3069 @end example
3070
3071 La sintaxis consiste en una línea delimitada por caracteres de
3072 tabulación, con dos campos fijos en cada línea seguidos de parámetros
3073 opcionales.
3074
3075 @example
3076 @var{tiempo}  @var{tipo}  @var{...parámetros...}
3077 @end example
3078
3079 Esta información se puede leer fácilmente por parte de otros programas
3080 como guiones de Python, y pueden ser muy útiles para aquellos
3081 investigadores que desean realizar un análisis musical o hacer
3082 experimientos de reproducción con LilyPond.
3083
3084 @knownissues
3085 No todos los eventos musicales de lilypond están contemplados por
3086 @file{event-listener.ly}.  Se pretende que sea una @qq{prueba de
3087 concepto} bien realizada.  Si algunos eventos que quiere ver no
3088 aparecen incluidos, copie @file{event-listener.ly} en su carpeta de
3089 lilypond y modifique el archivo de forma que produzca la información
3090 que desea.