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