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