]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/es/notation/spacing.itely
Doc-es: update Spacing.
[lilypond.git] / Documentation / es / notation / spacing.itely
1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
2
3 @ignore
4     Translation of GIT committish: 44099a932d98a8757b27ee92f9b0533170b516e3
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.13.36"
12
13 @node Problemas de espaciado
14 @chapter Problemas de espaciado
15 @translationof Spacing issues
16
17 La disposición global sobre el papel viene determinada por tres
18 factores: el diseño de página, los saltos de línea y el espaciado.
19 Estos factores influyen entre sí.  La elección de uno u otro espaciado
20 determina qué densidad termina teniendo cada sistema de música.  Esto
21 influye en el lugar en que se eligen los saltos de línea y, en último
22 término, en el número de páginas que tiene una partitura.
23
24 Considerado globalmente, este proceso se produce en cuatro fases: en
25 primer lugar se eligen unas distancias elásticas o @q{muelles},
26 basados en la duración de las figuras.  Se prueban todas las
27 combinaciones de saltos de línea posibles, y para cada una de ellas se
28 calcula una puntuación de @q{maldad}.  Después se hace una estimación
29 de la altura de cada uno de los posibles sistemas.  Finalmente se
30 selecciona una combinación de saltos de página y de línea de tal forma
31 que ni el espaciado horizontal ni el vertical estén demasiado
32 estrechos ni estirados.
33
34 Los ajustes que influyen en la disposición se pueden agrupar en dos
35 bloques.  El bloque @code{\paper @{...@}} se sitúa fuera de los
36 bloques @code{\score @{...@}} y contiene ajustes relacionados con el
37 documento como un todo.  El bloque @code{\layout @{...@}} se sitúa
38 dentro de un bloque @code{\score @{...@}} y contiene ajustes para
39 dicha partitura en concreto.  Si sólo tiene un bloque @code{\score
40 @{...@}}, los dos tienen el mismo efecto.  En general las
41 instrucciones que se muestran en este capítulo se pueden poner en
42 cualquiera de los dos.
43
44 @menu
45 * El papel y las páginas::
46 * Disposición de la música::
47 * Saltos::
48 * Espaciado vertical::
49 * Espaciado horizontal::
50 * Encajar la música en menos páginas::
51 @end menu
52
53
54 @node El papel y las páginas
55 @section El papel y las páginas
56 @translationof Paper and pages
57
58 Esta sección se ocupa de los límites que definen la zona del papel en
59 que se puede imprimir la música.
60
61 @menu
62 * Tamaño del papel::
63 * Formateo de las páginas::
64 @end menu
65
66
67 @node Tamaño del papel
68 @subsection Tamaño del papel
69 @translationof Paper size
70
71 @cindex papel, tamaño del
72 @cindex página, tamaño de la
73
74 Existen dos funciones para cambiar el tamaño del papel:
75 @code{set-default-paper-size} (establecer tamaño de página
76 predeterminado) y @code{set-paper-size} (establecer tamaño de página).
77 @code{set-default-paper-size} se debe poner en el ámbito del nivel
78 superior, y @code{set-paper-size} se debe poner en un bloque
79 @code{\paper}:
80
81 @example
82 #(set-default-paper-size "a4")
83 @end example
84
85 @example
86 \paper @{
87   #(set-paper-size "a4")
88 @}
89 @end example
90
91 @noindent
92 @code{set-default-paper-size} establece el tamaño de todas las
93 páginas, mientras que @code{set-paper-size} establece sólo el tamaño
94 de las páginas a las que se aplica el bloque @code{\paper}.  Por
95 ejemplo, si el bloque @code{\paper} está al principio del archivo,
96 aplica el tamaño de papel a todas las páginas.  Si el bloque
97 @code{\paper} está dentro de un bloque @code{\book}, entonces el
98 tamaño del papel sólo se aplica a ese libro.
99
100 Se encuentran disponibles los tamaños de papel más comunes, entre
101 ellos @code{a4}, @code{letter}, @code{legal} y @code{11x17} (conocido
102 también como tabloide). Están contemplados muchos más tamaños de papel
103 de forma predeterminada.  Para ver más detalles, consulte
104 @file{scm/@/paper@/.scm} y busque la definición de @code{paper-alist}.
105
106 @c TODO add a new appendix for paper sizes (auto-generated) -pm
107
108 @warning{El tamaño predeterminado del papel es @code{a4}.}
109
110 Se pueden añadir tamaños adicionales editando la definición de
111 @code{paper-alist} en el archivo de inicio @file{scm/@/paper@/.scm},
112 aunque se sobreescribirán en la siguiente reinstalación del programa.
113
114 @cindex orientación
115 @cindex apaisado
116 @cindex horizontal, papel
117
118 Si se añade el símbolo @code{'landscape} (apaisado) como argumento a
119 @code{set-default-paper-size}, las páginas se giran 90 grados y se
120 establece en consonancia una mayor longitud de las líneas.
121
122 @example
123 #(set-default-paper-size "a6" 'landscape)
124 @end example
125
126 Al establecer el tamaño del papel se ajustan un cierto número de
127 variables del @code{\paper}, tales como los márgenes.  Para utilizar
128 un tamaño de página determinado con variables de @code{\paper}
129 alteradas, establezca el tamaño de página antes de dar valores a las
130 variables.
131
132
133 @seealso
134 Archivos instalados:
135 @file{scm/@/paper@/.scm}.
136
137 Fragmentos de código:
138 @rlsr{Spacing}.
139
140
141 @node Formateo de las páginas
142 @subsection Formateo de las páginas
143 @translationof Page formatting
144
145 @funindex \paper
146
147 Los márgenes, encabezamientos y pies de página y otras variables de
148 diseño de página se establecen automáticamente de acuerdo con el
149 tamaño del papel.
150
151 El valor predeterminado de los márgenes está accesible en el archivo
152 @file{ly/@/paper@/-defaults@/-init@/.ly}.  Estos valores se aplican al
153 tamaño predeterminado del papel (A4, a no ser que se especifique de
154 otra forma) y se escalan adecuadamente para otros tamaños del papel.
155
156 Esta sección relaciona y describe cierto número de variables del papel
157 que se pueden alterar.
158
159 @menu
160 * Dimensiones verticales fijas::
161 * Dimensiones verticales flexibles::
162 * Dimensiones horizontales::
163 * Otras variables de diseño de página::
164 @end menu
165
166
167 @node Dimensiones verticales fijas
168 @unnumberedsubsubsec Dimensiones verticales fijas
169 @translationof Fixed vertical dimensions
170
171 @table @code
172 @item paper-height
173 @funindex paper-height
174
175 Altura de la página.  Valor predeterminado: altura del tamaño actual
176 del papel.  Para ver más detalles, consulte @ref{Tamaño del papel}.
177
178 @item top-margin
179 @funindex top-margin
180
181 Margen entre el extremo superior de la página y la parte superior del
182 área imprimible.  Valor predeterminado: @code{5\mm}.
183
184 @item bottom-margin
185 @funindex bottom-margin
186
187 Margen entre el extremo inferior del área imprimible y la parte
188 inferior de la página.  Valor predeterminado: @code{6\mm}.
189 @end table
190
191
192 @node Dimensiones verticales flexibles
193 @unnumberedsubsubsec Dimensiones verticales flexibles
194 @translationof Flexible vertical dimensions
195
196 En casi todos los casos es preferible que las distancias verticales
197 entre ciertos elementos (como márgenes, títulos, sistemas y las
198 distintas partituras) sean flexibles, de manera que se amplíen y
199 compriman adecuadamente dependiendo de la situación.  Están
200 disponibles un cierto número de variables del bloque @code{\paper}
201 (relacionadas más abajo) para realizar un ajuste fino del
202 comportamiento de estas dimensiones frente a su ampliación o
203 compresión.
204
205 Observe que las variables de @code{\paper} que se estudian en esta
206 sección no controlan el espaciado de los pentagramas que están dentro
207 de los sistemas individuales.  El espaciado dentro de los sistemas se
208 controla por medio de propiedades de grob, con ajustes que se escriben
209 normalmente dentro de un bloque @code{\score}, y no dentro del bloque
210 @code{\paper}.  Véase @ref{Espaciado vertical entre sistemas}.
211
212
213 @subsubheading Esctructura de las listas-A de espaciado para las variables de @code{\paper}
214
215 Cada una de estas variables es una lista-A (lista asociativa) que
216 contiene cuatro @emph{claves}:
217
218 @itemize
219 @item @code{padding} (relleno):
220 mínimo espacio vertical vacío necesario entre dos elementos, medido en
221 espacios de pentagrama.  Se puede pensar como la altura mínima de un
222 rectángulo invisible que abarca desde el punto más a la izquierda
223 hasta el situado más a la derecha de los elementos combinados.
224
225 @item @code{space} (espacio):
226 distancia vertical predeterminada, medida en espacios de pentagrama,
227 entre los @emph{puntos de referencia} de los dos elementos, cuando no
228 resulte ninguna colisión, y no se produzca ninguna ampliación o
229 compresión.  El punto de referencia de un elemento de marcado (de
230 título o del nivel jerárquico superior) es su punto más alto, y el
231 punto de referencia de un sistema es la línea central del pentagrama
232 más cercano.  Los valores de @code{space} menores de @code{padding} o
233 de @code{minimum-distance} no son significativos, porque la distancia
234 resultante nunca será menor de @code{padding} o de
235 @code{minimum-distance}.
236
237 @item @code{minimum-distance} (distancia mínima):
238 la distancia vertical mínima requerida, medida en espacios de
239 pentagrama, entre los puntos de referencia de los dos elementos,
240 cuando se produce una compresión.  Los valores de
241 @code{minimum-distance} menores de @code{padding} no son
242 significativos, porque la distancia resultante nunca será menor de
243 @code{padding}.
244
245 @item @code{stretchability} (ampliabilidad):
246 medida sin unidades de la propensión relativa de esta dimensión a
247 ampliarse.  Si es cero, la distancia no se ampliará (a no ser que
248 resultasen colisiones).  Si es positiva, la significación del valor de
249 ampliabilidad de una dimensión concreta depende solamente de su
250 relación con los valores de @code{stretchability} de las otras
251 dimensiones.  Por ejemplo, si una dimensión tiene el doble de
252 @code{stretchability} que otra, se ampliará con el doble de facilidad.
253 Los valores deben ser no negativos y finitos.  El valor @code{+inf.0}
254 desencadena un error de programación y se ignora, pero se puede usar
255 @code{1.0e7} para un muelle casi infinitamente ampliable.  Si no se
256 fija un valor, el valor predeterminado se establece a @code{space}.
257 Observe que la propensión de la dimensión a @emph{comprimirse} no se
258 puede establecer directamente por el usuario y es igual a
259 (@code{space}@tie{}@minus{}@tie{}@code{minimum-distance}).
260 @end itemize
261
262 Si una página tiene un margen inferior no justificado, la distancia
263 resultante es la mayor de:
264
265 @itemize
266 @item @code{space},
267 @item @code{minimum-distance}, y
268 @item @code{padding} más la menor distancia necesaria para eliminar las colisiones.
269 @end itemize
270
271 Los métodos específicos para la modificación de las listas-A se
272 estudian en @ref{Modificación de las listas-A}.  Las variables de
273 dimensión de @code{\paper} verticales flexibles sólo se pueden fijar
274 dentro de un bloque @code{\paper}.  El siguiente ejemplo muestra las
275 dos formas en que pueden modificarse estas listas-A:
276
277 @example
278 \paper @{
279   % actualización individual de un valor de clave
280   system-system-spacing #'space = #8
281
282   % redefinición completa de una variable
283   score-system-spacing =
284     #'((padding . 1)
285        (space . 12)
286        (minimum-distance . 6)
287        (stretchability . 12))
288 @}
289 @end example
290
291 Los ajustes predeterminados de inicio para estas variables están
292 definidos en el archivo @file{ly/paper-defaults-init.ly}.
293
294
295 @subsubheading Variables de dimensión de @code{\paper} verticales flexibles
296
297 Los nombres de estas variables siguen el formato
298 @code{@var{superior}-@var{inferior}-spacing}, donde
299 @code{@var{superior}} e @code{@var{inferior}} son los elementos que
300 van a ser espaciados.  Cada distancia se mide entre los puntos de
301 referencia de los dos elementos: el punto de referencia de un elemento
302 de marcado (de título o de nivel superior) es su punto más alto, y el
303 punto de referencia de un sistema es la línea central de pentagrama
304 más cercano.  Observe que en estos nombres de variable, el término
305 @q{@code{markup}} se refiere tanto a @emph{elementos de marcado de
306 título} (@code{bookTitleMarkup} o @code{scoreTitleMarkup}) como a
307 @emph{elementos de marcado del nivel superior} (véase @ref{Estructura
308 del archivo}).
309
310 @table @code
311 @item markup-system-spacing
312 @funindex markup-system-spacing
313
314 distancia entre un elemento de marcado (de título o del nivel
315 superior) y el sistema que le sigue.
316
317 @item score-markup-spacing
318 @funindex score-markup-spacing
319
320 distancia entre el último sistema de una partitura y el elemento de
321 marcado (de título o del nivel superior) que le sigue.
322
323 @item score-system-spacing
324 @funindex score-system-spacing
325
326 distancia entre el último sistema de una partitura y el primer sistema
327 de la partitura que le sigue, cuando no existe ningún elemento de
328 marcado (de título o del nivel superior) entre ellos.
329
330 @item system-system-spacing
331 @funindex system-system-spacing
332
333 distancia entre dos sistemas dentro de la misma partitura.
334
335 @item markup-markup-spacing
336 @funindex markup-markup-spacing
337
338 distancia entre dos elementos de marcado (de título o del nivel
339 superior).
340
341 @item last-bottom-spacing
342 @funindex last-bottom-spacing
343
344 distancia desde el último sistema o elemento de marcado del nivel
345 superior en una página, hasta la parte inferior de la zona imprimible
346 (es decir, el extremo superior del margen inferior).
347
348 @item top-system-spacing
349 @funindex top-system-spacing
350
351 distancia desde la parte superior de la zona imprimible (es decir, el
352 extremo inferior del margen superior) hasta el primer sistema de una
353 página, cuando no hay ningún elemento de marcado (de título o del
354 nivel superior) entre los dos.
355
356 @item top-markup-spacing
357 @funindex top-markup-spacing
358
359 distancia desde el extremo superior de la zona imprimible (es decir,
360 el extremo inferior del margen superior) hasta el primer elemento de
361 marcado (de título o del nivel superior) sobre una página, cuando no
362 hay ningún sistema entre los dos.
363 @end table
364
365
366 @snippets
367
368 El encabezamiento y el pie se crean por parte de las funciones
369 @code{make-footer} y @code{make-header}, definidas dentro de
370 @code{\paper}.  Las implementaciones predeterminadas están en
371 @file{ly/paper-defaults.ly} y en @file{ly/titling-init.ly}.
372
373 El diseño de la página en sí está realizado por dos funciones dentro
374 del bloque @code{\paper}, @code{page-music-height} y
375 @code{page-make-stencil}.  El primero informa al algoritmo de saltos
376 de línea de la cantidad de espacio que está disponible en una página,
377 y el último crea la propia página dado el sistema que poner sobre
378 ella.
379
380 Se pueden definir valores del bloque @code{\paper} en Scheme.  En tal
381 caso, @code{mm}, @code{in}, @code{pt}, y @code{cm} son variables que
382 están definidas en @file{paper-defaults.ly} con valores en milímetros.
383 Por ello el valor @w{@code{2 cm}} se debe multiplicar en el siguiente ejemplo:
384
385 @example
386 \paper @{
387  #(define bottom-margin (* 2 cm))
388 @}
389 @end example
390
391
392 Ejemplo:
393
394 @example
395 \paper @{
396   paper-width = 2\cm
397   top-margin = 3\cm
398   bottom-margin = 3\cm
399   ragged-last-bottom = ##t
400 @}
401 @end example
402
403 Este segundo ejemplo centra los números de página en la parte baja del
404 papel.
405
406 @example
407 \paper @{
408   print-page-number = ##t
409   print-first-page-number = ##t
410   oddHeaderMarkup = \markup \fill-line @{ " " @}
411   evenHeaderMarkup = \markup \fill-line @{ " " @}
412   oddFooterMarkup = \markup @{ \fill-line @{
413      \bold \fontsize #3 \on-the-fly #print-page-number-check-first
414      \fromproperty #'page:page-number-string @} @}
415   evenFooterMarkup = \markup @{ \fill-line @{
416      \bold \fontsize #3 \on-the-fly #print-page-number-check-first
417      \fromproperty #'page:page-number-string @} @}
418 @}
419 @end example
420
421 @seealso
422 Referencia de la notación:
423 @ref{Espaciado vertical entre sistemas}.
424
425 Fragmentos de código:
426 @rlsr{Spacing}.
427
428
429 @node Dimensiones horizontales
430 @unnumberedsubsubsec Dimensiones horizontales
431 @translationof Horizontal dimensions
432
433
434 Existe un cierto número de variables que determinan las dimensiones
435 horizontales de una página:
436
437 @table @code
438
439 @item binding-offset
440 @funindex binding-offset
441
442 Se aumenta la cantidad @code{inner-margin} para asegurar que el
443 encuadernado no va a tapar nada.  Sólo funciona con @code{two-sided}
444 establecido al valor verdadero.  Valor predeterminado: @code{0}.
445
446 @item horizontal-shift
447 @funindex horizontal-shift
448
449 Medida en que todos los sistemas (incluidos los títulos de cabecera y
450 los separadores de sistemas) se desplazan a la derecha.
451 Predeterminado: @code{0.0}.
452
453 @item indent
454 @funindex indent
455
456 Nivel de sangrado para el primer sistema de una partitura.  Valor
457 predeterminado: @code{15\mm}.
458
459 @item inner-margin
460 @funindex inner-margin
461
462 Margen que tienen todas las páginas en el lado interior si son parte
463 de un libro.  Sólo funciona con @code{two-sided} establecido al valor
464 verdadero.  Valor predeterminado: @code{10\mm}.
465
466 @item left-margin
467 @funindex left-margin
468
469 El margen entre el límite izquierdo del papel y el comienzo de los
470 sistemas.  Predeterminado: @code{10\mm}.
471
472 @item line-width
473 @funindex line-width
474
475 Ancho de los sistemas.  Predeterminado: @code{paper-width} menos
476 @code{left-margin} y @code{right-margin}.
477
478 @item outer-margin
479 @funindex outer-margin
480
481 Margen que todas las páginas tienen en la parte exterior si son parte
482 de un libro.  Sólo funciona con @code{two-sided} establecido al valor
483 verdadero.  Valor predeterminado: @code{20\mm}.
484
485 @item paper-width
486 @funindex paper-width
487
488 Ancho de la página.  Predeterminado: la anchura del tamaño actual del
489 papel.  Para ver más detalles, consulte @ref{Tamaño del papel}.
490
491 @item right-margin
492 @funindex right-margin
493
494 Margen entre el borde derecho de la página y el final de cada sistema.
495 Valor predeterminado: @code{10\mm}.
496
497 @item short-indent
498 @funindex short-indent
499
500 Nivel de sangrado para todos los sistemas de una partitura excepto el
501 primero.  Predeterminado: @code{0}.
502
503 @end table
504
505 Si hay valores sin ajustar, se toman los predeterminados.  Se ajusta
506 su valor exacto, dependiendo del tamaño de papel especificado.  Por el
507 momento, los siguientes valores se ven afectados por este escalado:
508
509 @itemize
510 @item @var{left-margin}
511 @item @var{right-margin}
512 @item @var{top-margin}
513 @item @var{bottom-margin}
514 @item @var{head-separation}
515 @item @var{foot-separation}
516 @item @var{indent}
517 @item @var{short-indent}
518 @end itemize
519
520 Los ajustes para @code{line-width}, @code{left-margin},
521 @code{right-margin} y @code{paper-width} dependen entre sí, pero no
522 tienen que especificarse completamente.
523
524 @example
525 \paper @{
526   left-margin = 30\mm
527 @}
528 @end example
529
530 En este ejemplo, sólo se establece un valor para @code{left-margin}.
531 El valor de @code{right-margin} sigue siendo el predeterminado,
532 @code{line-width} se calcula automáticamente.
533
534 @example
535 \paper @{
536   line-width = 150\mm
537 @}
538 @end example
539
540 Aquí @code{left-margin} y @code{right-margin} se ajustan al mismo
541 valor.  Por tanto, @code{line-width} se sustrae de @code{paper-width}
542 y se divide entre dos.  Esto significa que los sistemas se imprimen
543 centrados en la página, si sólo se especifica @code{line-width}.
544
545 Tienen lugar algunas comprobaciones para asegurar que los valores se
546 establecen correctamente.  Si los valores no encajasen o los sistemas
547 se fueran a salir de la página, se imprime una advertencia y se
548 establecen los valores predeterminados.
549
550 @example
551 \paper @{
552   paper-width = 210\mm
553   left-margin = 20\mm
554   right-margin = 30\mm
555   line-width = 100\mm
556 @}
557 @end example
558
559 Estas comprobaciones se pueden evitar estableciendo
560 @code{check-consistency} al valor falso.
561
562 @example
563 \paper @{
564   paper-width = 210\mm
565   left-margin = 20\mm
566   line-width = 200\mm
567   check-consistency = ##f
568 @}
569 @end example
570
571 @warning{Si @code{paper-width} se ajusta manualmente,
572 @code{line-width}, @code{left-margin}, @code{indent} y
573 @code{short-indent} podrían tener que ajustarse también.}
574
575 @seealso
576 Fragmentos de código:
577 @rlsr{Spacing}.
578
579
580
581 @node Otras variables de diseño de página
582 @unnumberedsubsubsec Otras variables de diseño de página
583 @translationof Other layout variables
584
585 Estas variables se pueden usar para ajustar el diseño de la página en
586 general.
587
588 @table @code
589
590 @item auto-first-page-number
591 @funindex auto-first-page-number
592
593 El algoritmo de división de páginas está afectado por el hecho de que
594 el número de la primera página sea par o impar.  Si está establecido
595 al valor verdadero, el algoritmo de división de páginas decide si
596 comenzar con un número par o impar.  Esto hace que el número de la
597 primera página se quede como está, o que se aumente en una unidad.
598 Predeterminado: @code{##f}.
599
600 @ignore
601
602 FIXME: this variable is used, but I don't know what it does. -pm
603 @item blank-after-score-page-force
604 @funindex blank-after-score-page-force
605
606 Default: @code{2}.
607
608 @end ignore
609
610 @item blank-last-page-force
611 @funindex blank-last-page-force
612
613 Penalización por terminar la partitura en una página de numeración
614 impar.  Predeterminado: @code{0}.
615
616 @item blank-page-force
617 @funindex blank-page-force
618
619 Penalización por tener una página en blanco en medio de una partitura.
620 Esto no se usa por parte de @code{ly:optimal-breaking} porque éste
621 nunca considera la posibilidad de tener páginas en blanco en mitad de
622 una partitura.  Predeterminado: @code{5}.
623
624 @item check-consistency
625 @funindex check-consistency
626
627 Si es verdadero, comprobar si @code{left-margin}, @code{right-margin}
628 y @code{line-width} encajan entre sí.  También asegurar que su
629 combinación no excede del @code{paper-width} disponible.  Valor
630 predeterminado: @code{##t}.
631
632 @item first-page-number
633 @funindex first-page-number
634
635 Valor del número de la primera página.  Predeterminado: @code{#1}.
636
637 @item max-systems-per-page
638 @funindex max-systems-per-page
639
640 Máximo número de sistemas que tendrán cabida en una página.  Está
641 contemplado por el momento solamente por parte del algoritmo
642 @code{ly:optimal-breaking}.  Predeterminado: no establecido.
643
644 @item min-systems-per-page
645 @funindex min-systems-per-page
646
647 Mínimo número de sistemas que habrá en una página.  Puede hacer que
648 las páginas se llenen en exceso si se establece a un valor grande.
649 Por el momento solamente está contemplado por parte del algoritmo
650 @code{ly:optimal-breaking}.  Predeterminado: no establecido.
651
652 @item page-breaking-system-system-spacing
653 @funindex page-breaking-system-system-spacing
654
655 Engaña al divisor de páginas para que crea que
656 @code{system-system-spacing} está establecido a algo distinto de lo
657 que está realmente.  Por ejemplo, si
658 @code{page-breaking-system-system-spacing #'padding} se establece a algo
659 mucho mayor que @code{system-system-spacing #'padding}, entonces
660 el divisor de páginas colocará menos sistemas en cada página.
661 Predeterminado: no establecido.
662
663 @item page-count
664 @funindex page-count
665
666 Número de páginas que usar para una partitura. Predeterminado: sin
667 fijar.
668
669 @item page-limit-inter-system-space
670 @funindex page-limit-inter-system-space
671
672 Si tiene un valor verdadero, limita el espacio entre los sistemas de
673 una página en la que sobra mucho espacio.  Predeterminado: @code{##f}.
674 Para ver más detalles, consulte @ref{Espaciado vertical entre sistemas}.
675
676 @item page-limit-inter-system-space-factor
677 @funindex page-limit-inter-system-space-factor
678
679 Factor usado por @code{page-limit-inter-system-space}.
680 Predeterminado: @code{1.4}.  Para ver más detalles, consulte
681 @ref{Espaciado vertical entre sistemas}.
682
683 @item page-spacing-weight
684 @funindex page-spacing-weight
685
686 Importancia relativa del espacio (vertical) de las páginas y el
687 espaciado (horizontal) de las líneas.  Los valores altos hacen que el
688 espaciado de la página tenga más importancia.  Predeterminado:
689 @code{#10}.
690
691 @item print-all-headers
692 @funindex print-all-headers
693
694 Si está establecido a un valor verdadero, imprime todas las cabeceras
695 para cada una de las @code{\score} en la salida impresa.  Normalmente
696 sólo se imprimen las variables de encabezamiento de pieza y opus.
697 Predeterminado: @code{##f}.
698
699 @item print-first-page-number
700 @funindex print-first-page-number
701
702 Si está establecido a un valor verdadero, se imprime un número de
703 página en la primera página.  Predeterminado: @code{##f}.
704
705 @item print-page-number
706 @funindex print-page-number
707
708 Si está establecido a un valor falso, no se imprimen los números de
709 página.  Predeterminado: @code{##t}.
710
711 @item ragged-bottom
712 @funindex ragged-bottom
713
714 Si está establecido a un valor verdadero, los sistemas no ocuparán
715 verticalmente toda la altura de la página.  Esto no afecta a la última
716 página.  Predeterminado: @code{##f}.
717
718 Esto se debería establecer al valor verdadero para piezas que tienen
719 sólo dos o tres sistemas por página, por ejemplo partituras
720 orquestales.
721
722 @item ragged-last
723 @funindex ragged-last
724
725 Si está establecido a un valor verdadero, el último sistema de la
726 partitura no llenará la anchura de la línea.  En su lugar, el último
727 sistema termina en su longitud horizontal natural.  Predeterminado:
728 @code{##f}.
729
730 @item ragged-last-bottom
731 @funindex ragged-last-bottom
732
733 Si está establecido a un valor falso, los sistemas se repartirán
734 verticalmente por toda la última página.  Predeterminado: @code{##t}.
735
736 Las piezas que llenan generosamente dos o más páginas deberían tener
737 esto establecido al valor verdadero.
738
739 También afecta a la última página de las partes de libro, es decir,
740 partes de un libro que se han creado con bloques @code{\bookpart}.
741
742 @item ragged-right
743 @funindex ragged-right
744
745 Si está establecido a un valor verdadero, los sistemas no llenarán el
746 ancho de línea disponible.  En su lugar, los sistemas terminan en su
747 longitud horizontal natural.  Predeterminado: @code{##f}.
748
749 Si la partitura sólo tiene un sistema, el valor predeterminado es
750 @code{##t}.
751
752 @item system-separator-markup
753 @funindex system-separator-markup
754
755 Objeto de marcado que se inserta entre los sistemas.  Se suele usar
756 para partituras orquestales.  Predeterminado: sin establecer.
757
758 Se ofrece la instrucción de marcado @code{\slashSeparator} como un
759 valor predeterminado apropiado, por ejemplo
760
761 @lilypond[quote,ragged-right]
762 #(set-default-paper-size "a6" 'landscape)
763 \book {
764   \score {
765     \relative c' { c1 \break c1 }
766   }
767   \paper {
768     system-separator-markup = \slashSeparator
769   }
770 }
771 @end lilypond
772
773 @item system-count
774 @funindex system-count
775
776 Cantidad de sistemas que usar por parte de la partitura.
777 Predeterminado: sin establecer.
778
779 @item systems-per-page
780 @funindex systems-per-page
781
782 Número de sistemas que se deben colocar en cada página.  Está
783 contemplado solamente por parte del algoritmo
784 @code{ly:optimal-breaking} por el momento.  Predeterminado: no
785 establecido.
786
787 @item two-sided
788 @funindex two-sided
789
790 @cindex encuadernación
791 @cindex margen de encuadernación
792
793 Si es verdadero, usar @code{inner-margin}, @code{outer-margin} y
794 @code{binding-offset} para determinad los márgenes dependiendo de si
795 el número de página es par o impar.  Esto sobreescribe a
796 @code{left-margin} y a @code{right-margin}.  Valor predeterminado:
797 @code{##f}.
798
799 @end table
800
801
802 @seealso
803 Fragmentos de código:
804 @rlsr{Spacing}.
805
806
807 @knownissues
808
809 El encabezamiento de página predeterminado pone el número de página y
810 el campo @code{instrument} del bloque @code{\header} sobre la misma
811 línea.
812
813 Los títulos de cabecera (tomados de la sección @code{\header@{@}}) se
814 tratan como un sistema, por lo que @code{ragged-bottom} y
815 @code{ragged-last-bottom} añaden espacio entre los títulos y el primer
816 sistema de la partitura.
817
818
819 @node Disposición de la música
820 @section Disposición de la música
821 @translationof Music layout
822
823 @menu
824 * Establecer el tamaño del pentagrama::
825 * Disposición de la partitura::
826 @end menu
827
828
829 @node Establecer el tamaño del pentagrama
830 @subsection Establecer el tamaño del pentagrama
831 @translationof Setting the staff size
832
833 @cindex tipografía, establecer tamaño de
834 @cindex pentagrama, establecer tamaño de
835 @funindex layout file
836
837 El @strong{tamaño de pentagrama} predeterminado se establece en 20
838 puntos.  Esto se puede modificar de dos maneras:
839
840 Para establecer globalmente el tamaño del pentagrama para todas las
841 partituras de un archivo (o en un bloque @code{book}, para ser
842 exactos), utilice @code{set-global-staff-size}.
843
844 @example
845 #(set-global-staff-size 14)
846 @end example
847
848 @noindent
849 Esto establece el tamaño global predeterminado a una altura de
850 pentagrama de 14pt y escala todas las tipografías según corresponda.
851
852 Para establecer el tamaño del pentagrama de forma individual para cada
853 partitura, use
854 @example
855 \score@{
856   ...
857   \layout@{
858   #(layout-set-staff-size 15)
859   @}
860 @}
861 @end example
862
863 La fuente tipográfica Feta ofrece símbolos musicales a ocho tamaños
864 distintos.  Cada fuente tipográfica está afinada para un tamaño de
865 pentagrama distinto: a un tamaño menor la tipografía se vuelve más
866 pesada, para que coincida con las líneas de pentagrama relativamente
867 más gruesas.  Los tamaños de tipografía recomendados están
868 relacionados en la tabla siguiente:
869
870 @quotation
871 @multitable @columnfractions .15 .2 .22 .2
872
873 @item @b{nombre de la fuente}
874 @tab @b{altura del pentagrama (pt)}
875 @tab @b{altura del pentagrama (mm)}
876 @tab @b{usos}
877
878 @item feta11
879 @tab 11.22
880 @tab 3.9
881 @tab partituras de bolsillo
882
883 @item feta13
884 @tab 12.60
885 @tab 4.4
886 @tab
887
888 @item feta14
889 @tab 14.14
890 @tab 5.0
891 @tab
892
893 @item feta16
894 @tab 15.87
895 @tab 5.6
896 @tab
897
898 @item feta18
899 @tab 17.82
900 @tab 6.3
901 @tab cancioneros
902
903 @item feta20
904 @tab 20
905 @tab 7.0
906 @tab particellas estándar
907
908 @item feta23
909 @tab 22.45
910 @tab 7.9
911 @tab
912
913 @item feta26
914 @tab 25.2
915 @tab 8.9
916 @tab
917 @c modern rental material?
918
919 @end multitable
920 @end quotation
921
922 Estas tipografías están disponibles en cualquier tamaño.  La propiedad
923 de contexto @code{fontSize} y la propiedad de disposición
924 @code{staff-space} (en @rinternals{StaffSymbol}) se pueden usar para
925 afinar el tamaño de los pentagramas individuales.  Los tamaños de
926 pentagrama individuales están en relación al tamaño global.
927
928
929 @seealso
930 Referencia de la notación:
931 @ref{Seleccionar el tamaño de la tipografía para la notación}.
932
933 Fragmentos de código:
934 @rlsr{Spacing}.
935
936
937 @knownissues
938
939 @code{layout-set-staff-size} no cambia la distancia entre las líneas
940 del pentagrama.
941
942
943 @node Disposición de la partitura
944 @subsection Disposición de la partitura
945 @translationof Score layout
946
947 @funindex \layout
948
949 Mientras que @code{\paper} contiene ajustes relativos al formato de
950 página del documento completo, @code{\layout} contiene ajustes para la
951 disposición específica de cada partitura.
952
953 @example
954 \layout @{
955   indent = 2.0\cm
956   \context @{ \Staff
957     \override VerticalAxisGroup #'minimum-Y-extent = #'(-6 . 6)
958   @}
959   \context @{ \Voice
960     \override TextScript #'padding = #1.0
961     \override Glissando #'thickness = #3
962   @}
963 @}
964 @end example
965
966
967 @seealso
968 Referencia de la notación:
969 @ref{Cambiar los valores por omisión de los contextos}.
970
971 Fragmentos de código:
972 @rlsr{Spacing}.
973
974
975 @node Saltos
976 @section Saltos
977 @translationof Breaks
978
979 @menu
980 * Saltos de línea::
981 * Saltos de página::
982 * Saltos de página óptimos::
983 * Paso de página óptimo::
984 * Saltos de página mínimos::
985 * Saltos de línea explícitos::
986 * Utilizar una voz adicional para los saltos de línea::
987 @end menu
988
989
990 @node Saltos de línea
991 @subsection Saltos de línea
992 @translationof Line breaking
993
994 @cindex saltos de línea
995 @cindex línea, saltos de
996
997 Normalmente los saltos de línea se determinan automáticamente. Se
998 eligen de forma que las líneas no aparezcan demasiado apretadas ni
999 demasiado sueltas, y que las líneas consecutivas tengan una densidad
1000 similar.  Ocasionalmente podemos querer sobreescribir los saltos
1001 automáticos; podemos hacerlo especificando @code{\break}. Esto fuerza
1002 un salto de línea en ese punto.  Sin embargo, los saltos de línea sólo
1003 pueden suceder al final de los compases @q{completos}, es decir, donde
1004 no queda ninguna nota o grupo especial @q{colgando} por encima de la
1005 línea divisoria.  Si queremos poner un salto de línea donde no hay
1006 línea divisoria, podemos forzar una barra de compás invisible
1007 introduciendo @code{\bar ""}, aunque de nuevo no deben quedar notas
1008 colgando en ninguno de los pentagramas en este punto, o se ignorarán.
1009
1010 La instrucción opuesta, @code{\noBreak}, prohíbe un salto de línea en
1011 la barra divisoria en que se inserta.
1012
1013 Los ajustes más básicos que influyen sobre el espaciado de las líneas
1014 son @code{indent} y @code{line-width}. Se establecen dentro del bloque
1015 @code{\layout}.  Controlan el sangrado de la primera línea de música,
1016 y la longitud de las líneas.
1017
1018 Si se establece @code{ragged-right} a verdadero en el bloque
1019 @code{\layout}, los sistemas terminan en su longitud horizontal
1020 natural, en lugar de distribuirse horizontalmente para llenar toda la
1021 línea. Esto es de utilidad para fragmentos cortos, y para efectuar una
1022 comprobación de lo apretado que es el espaciado natural.
1023
1024 @c TODO Check and add para on default for ragged-right
1025
1026 La opción @code{ragged-last} es similar a @code{ragged-right}, pero
1027 afecta sólo a la última línea de la pieza.
1028
1029 @example
1030 \layout @{
1031 indent = #0
1032 line-width = #150
1033 ragged-last = ##t
1034 @}
1035 @end example
1036
1037
1038
1039 @cindex saltos de línea normales
1040 @cindex música de cuatro compases por línea
1041
1042 Para saltos de línea a intervalos regulares utilice @code{\break}
1043 separado mediante desplazamientos con @code{\skip} y repetidos con
1044 @code{\repeat}.  Por ejemplo, esto haría que los 28 compases
1045 siguientes (suponiendo un compás de 4/4) se dividan cada cuatro
1046 compases, y sólo en dichos lugares:
1047
1048 @example
1049 << \repeat unfold 7 @{
1050          s1 \noBreak s1 \noBreak
1051          s1 \noBreak s1 \break @}
1052    @emph{the real music}
1053 >>
1054 @end example
1055
1056 @c TODO Check this
1057 Una configuración de división de líneas se puede guardar como archivo
1058 @code{.ly} automáticamente.  Ello permite que alineaciones verticales
1059 se estiren para que encajen en las páginas durante una segunda
1060 ejecución del proceso de formateo.  Esta posibilidad es bastante
1061 novedosa y difícil.  Hay más detalles disponibles en @rlsr{Spacing}.
1062
1063
1064 @predefined
1065 @funindex \break
1066 @code{\break},
1067 @funindex \noBreak
1068 @code{\noBreak}.
1069 @endpredefined
1070
1071
1072 @seealso
1073 Referencia de funcionamiento interno:
1074 @rinternals{LineBreakEvent}.
1075
1076 Fragmentos de código:
1077 @rlsr{Spacing}.
1078
1079
1080 @knownissues
1081
1082 Sólo pueden ocurrir saltos de línea si hay una @q{buena} línea
1083 divisoria.  Una nota colgando de una línea divisoria no es adecuada,
1084 como
1085
1086 @lilypond[quote,ragged-right,relative=2,verbatim]
1087 c4 c2 << c2 {s4 \break } >>  % this does nothing
1088 c2 c4 |           % a break here would work
1089 c4 c2 c4 ~ \break % as does this break
1090 c4 c2 c4
1091 @end lilypond
1092
1093 Esto se puede evitar eliminando el grabador
1094 @code{Forbid_line_break_engraver}.  Observe que los saltos de línea
1095 forzados manualmente se tienen que añadir en paralelo con la música.
1096
1097 @lilypond[quote,ragged-right,verbatim]
1098 \new Voice \with {
1099   \remove Forbid_line_break_engraver
1100 } {
1101   c4 c2 << c2 {s4 \break } >>  % now the break is allowed
1102   c2 c4
1103 }
1104 @end lilypond
1105
1106 De forma parecida, los saltos de línea están prohibidos normalmente
1107 cuando las barras cruzan a las líneas divisorias.  Este comportamiento
1108 se puede modificar con el establecimiento de @code{\override Beam
1109 #'breakable = ##t}.
1110
1111
1112 @node Saltos de página
1113 @subsection Saltos de página
1114 @translationof Page breaking
1115
1116 Se puede sobreescribir el mecanismo predeterminado de salto de página
1117 insertando instrucciones @code{\pageBreak} o @code{\noPageBreak}.
1118 Estas instrucciones son análogas a @code{\break} y @code{\noBreak}.
1119 Se deben insertar en una línea divisoria.  Estas instrucciones fuerzan
1120 y prohíben, respectivamente, la eventualidad de un salto de página.
1121 Por supuesto, la instrucción @code{\pageBreak} también fuerza un salto
1122 de línea.
1123
1124 Las instrucciones @code{\pageBreak} y @code{\noPageBreak} también se
1125 pueden insertar en el nivel más alto, entre las partituras y los
1126 elementos de marcado situados en el nivel superior.
1127
1128 Hay ajustes análogos a @code{ragged-right} y @code{ragged-last} que
1129 tienen el mismo efecto sobre el espaciado vertical:
1130 @code{ragged-bottom} y @code{ragged-last-bottom}.  Si están
1131 establecidos a @code{##t} los sistemas de todas las páginas o sólo de
1132 la última página, respectivamente, no se verán justificados
1133 verticalmente.
1134
1135 Para ver más detalles, consulte @ref{Espaciado vertical}.
1136
1137 Los saltos de página se calculan por medio de la función
1138 @code{page-breaking}.  LilyPond ofrece tres algoritmos para el cómputo
1139 de los saltos de página: @code{ly:optimal-breaking},
1140 @code{ly:page-turn-breaking} y @code{ly:minimal-breaking}.  El
1141 predeterminado es @code{ly:optimal-breaking}, pero el valor se puede
1142 cambiar en el bloque @code{\paper}:
1143
1144 @example
1145 \paper@{
1146   #(define page-breaking ly:page-turn-breaking)
1147 @}
1148 @end example
1149
1150 @funindex \bookpart
1151
1152 Cuando un libro tiene muchas partituras y páginas, puede ser difícil
1153 resolver el problema de los saltos de página, necesitando mucha
1154 memoria y prolongados tiempos de procesamiento.  Para facilitar el
1155 proceso de división en páginas, se usan los bloques @code{\bookpart}
1156 para dividir el libro en varias partes: los saltos de página se
1157 producen de manera independiente en cada parte.  También se pueden
1158 usar diferentes funciones de división en páginas para las distintas
1159 partes del libro.
1160
1161 @example
1162 \bookpart @{
1163   \header @{
1164     subtitle = "Prefacio"
1165   @}
1166   \paper @{
1167      %% En una parte que consiste en texto principalmente,
1168      %% puede ser preferible ly:minimal-breaking
1169      #(define page-breaking ly:minimal-breaking)
1170   @}
1171   \markup @{ @dots{} @}
1172   @dots{}
1173 @}
1174 \bookpart @{
1175   %% En esta parte, consistente en música, se usa la función
1176   %% óptima predeterminada de saltos de página.
1177   \header @{
1178     subtitle = "Primer movimiento"
1179   @}
1180   \score @{ @dots{} @}
1181   @dots{}
1182 @}
1183 @end example
1184
1185
1186 @predefined
1187 @funindex \pageBreak
1188 @code{\pageBreak},
1189 @funindex \noPageBreak
1190 @code{\noPageBreak}.
1191 @endpredefined
1192
1193
1194 @seealso
1195 Fragmentos de código:
1196 @rlsr{Spacing}.
1197
1198
1199 @node Saltos de página óptimos
1200 @subsection Saltos de página óptimos
1201 @translationof Optimal page breaking
1202
1203 @funindex ly:optimal-breaking
1204
1205 La función @code{ly:optimal-breaking} es el método predeterminado de
1206 LilyPond para determinar los saltos de página.  Intenta hallar una
1207 división de páginas que haga mínimos el apretujamiento y la
1208 distensión, tanto horizontal como verticalmente.  A diferencia de
1209 @code{ly:page-turn-breaking}, no tiene un concepto de los pasos de
1210 página.
1211
1212
1213 @seealso
1214 Fragmentos de código:
1215 @rlsr{Spacing}.
1216
1217
1218 @node Paso de página óptimo
1219 @subsection Paso de página óptimo
1220 @translationof Optimal page turning
1221
1222 @funindex ly:page-turn-breaking
1223
1224 Con frecuencia es necesario encontrar una configuración de división de
1225 páginas de manera que haya un silencio al final de una página de cada
1226 dos.  De esta forma, el músico puede pasar la página sin perder notas.
1227 La función @code{ly:page-turn-breaking} trata de encontrar una
1228 división de páginas que haga mínimos el apretujamiento y el
1229 estiramiento, pero con la restricción añadida de que sólo se permite
1230 introducir vueltas de página en los lugares especificados.
1231
1232 Hay dos etapas en el uso de esta función de división de páginas.  En
1233 primer lugar debemos habilitarlo en el bloque @code{\paper}, como se
1234 explicó en @ref{Saltos de página}.  Entonces debemos decirle a la función
1235 dónde nos gustaría permitir los saltos de página.
1236
1237 Hay dos formas de conseguir la segunda tarea.  Primero, podemos
1238 especificar manualmente cada uno de los pasos de página potenciales,
1239 insertando @code{\allowPageTurn} en nuestro archivo de entrada en los
1240 lugares adecuados.
1241
1242 Si esto es demasiado tedioso, podemos añadir un grabador
1243 @code{Page_turn_engraver} a un contexto Staff o Voice.  El grabador
1244 @code{Page_turn_engraver} analizará el contexto en busca de secciones
1245 sin notas (observe que no busca silencios, sino la ausencia de notas.
1246 Se hace así para que la polifonía en un solo pentagrama con silencios
1247 en una de las voces no arruine la labor del grabador
1248 @code{Page_turn_engraver}).  Cuando encuentra una sección sin notas
1249 suficientemente larga, el grabador @code{Page_turn_engraver} inserta
1250 un @code{\allowPageTurn} en la última barra de compás de dicha
1251 sección, a no ser que haya una barra @q{especial} de compás (como una
1252 doble barra), en cuyo caso se insertará el @code{\allowPageTurn} en la
1253 última barra @q{especial} de compás de la sección.
1254
1255 @funindex minimumPageTurnLength
1256 El grabador @code{Page_turn_engraver} lee la propiedad de contexto
1257 @code{minimumPageTurnLength} para determinar qué longitud debe tener
1258 una sección sin notas antes de que se considere la posibilidad de un
1259 paso de página.  El valor predeterminado para
1260 @code{minimumPageTurnLength} es @code{#(ly:make-moment 1 1)}.  Si
1261 quiere inhabilitar las vueltas de página, puede establecerlo a algún
1262 valor muy grande.
1263
1264 @example
1265 \new Staff \with @{ \consists "Page_turn_engraver" @}
1266 @{
1267   a4 b c d |
1268   R1 | % a page turn will be allowed here
1269   a4 b c d |
1270   \set Staff.minimumPageTurnLength = #(ly:make-moment 5 2)
1271   R1 | % a page turn will not be allowed here
1272   a4 b r2 |
1273   R1*2 | % a page turn will be allowed here
1274   a1
1275 @}
1276 @end example
1277
1278 @funindex minimumRepeatLengthForPageTurn
1279 El grabador @code{Page_turn_engraver} detecta las repeticiones de
1280 primera y segunda vez.  Sólo permite un pase de página durante la
1281 repetición si hay suficiente tiempo al principio y al final de la
1282 repetición para volver a pasar la página hacia atrás. El grabador
1283 @code{Page_turn_engraver} también puede inhabilitar los pasos de
1284 página si la repetición es muy corta.  Si establecemos la propiedad de
1285 contexto @code{minimumRepeatLengthForPageTurn} entonces el grabador
1286 @code{Page_turn_engraver} sólo permitirá los pases de página en las
1287 repeticiones cuya duración sea mayor que este valor.
1288
1289 Las instrucciones de paso de página, @code{\pageTurn},
1290 @code{\noPageTurn} y @code{\allowPageTurn}, se pueden usar también en
1291 el nivel más elevado del código, entre las partituras y los elementos
1292 de marcado del nivel superior.
1293
1294
1295 @predefined
1296 @funindex \pageTurn
1297 @code{\pageTurn},
1298 @funindex \noPageTurn
1299 @code{\noPageTurn},
1300 @funindex \allowPageTurn
1301 @code{\allowPageTurn}.
1302 @endpredefined
1303
1304
1305 @seealso
1306 Fragmentos de código:
1307 @rlsr{Spacing}.
1308
1309
1310 @knownissues
1311
1312 Sólo debería haber un grabador @code{Page_turn_engraver} dentro de una
1313 partitura.  Si hay más de uno, se interferirán entre sí.
1314
1315
1316 @node Saltos de página mínimos
1317 @subsection Saltos de página mínimos
1318 @translationof Minimal page breaking
1319
1320 @funindex ly:minimal-breaking
1321
1322 La función @code{ly:minimal-breaking} efectúa unos cálculos mínimos
1323 para determinar los saltos de página: completa una página con tantos
1324 sistemas como sea posible antes de continuar con la siguiente.  Así,
1325 puede preferirse para partituras con muchas páginas, donde las otras
1326 funciones de salto de página pueden resultar demasiado lentas o ávidas
1327 de memoria, o con una gran cantidad de textos.  Se habilita utilizando:
1328
1329 @example
1330 \paper @{
1331   #(define page-breaking ly:minimal-breaking)
1332 @}
1333 @end example
1334
1335
1336 @seealso
1337 Fragmentos de código:
1338 @rlsr{Spacing}.
1339
1340
1341 @node Saltos de línea explícitos
1342 @subsection Saltos de línea explícitos
1343 @translationof Explicit breaks
1344
1345 Lily a veces rechaza las instrucciones @code{\break} y
1346 @code{\pageBreak} explícitas.  Hay dos instrucciones para
1347 sobreescribir este comportamiento:
1348
1349 @example
1350 \override NonMusicalPaperColumn #'line-break-permission = ##f
1351 \override NonMusicalPaperColumn #'page-break-permission = ##f
1352 @end example
1353
1354 Cuando se sobreescribe el valor de @code{line-break-permission} a
1355 falso, Lily inserta saltos de línea en las instrucciones @code{\break}
1356 explícitas y en ningún otro lugar. Cuando se sobreescribe el valor de
1357 @code{page-break-permission} a falso, Lily inserta saltos de página en
1358 las instrucciones @code{\pageBreak} explícitas y en ningún otro lugar.
1359
1360 @lilypond[quote,verbatim]
1361 \paper {
1362   indent = #0
1363   ragged-right = ##t
1364   ragged-bottom = ##t
1365 }
1366
1367 \score {
1368   \new Staff {
1369     \repeat unfold 2 { c'8 c'8 c'8 c'8 } \break
1370     \repeat unfold 4 { c'8 c'8 c'8 c'8 } \break
1371     \repeat unfold 6 { c'8 c'8 c'8 c'8 } \break
1372     \repeat unfold 8 { c'8 c'8 c'8 c'8 } \pageBreak
1373     \repeat unfold 8 { c'8 c'8 c'8 c'8 } \break
1374     \repeat unfold 6 { c'8 c'8 c'8 c'8 } \break
1375     \repeat unfold 4 { c'8 c'8 c'8 c'8 } \break
1376     \repeat unfold 2 { c'8 c'8 c'8 c'8 }
1377     }
1378   \layout {
1379     \context {
1380       \Score
1381       \override NonMusicalPaperColumn #'line-break-permission = ##f
1382       \override NonMusicalPaperColumn #'page-break-permission = ##f
1383     }
1384   }
1385 }
1386 @end lilypond
1387
1388
1389 @seealso
1390 Fragmentos de código:
1391 @rlsr{Spacing}.
1392
1393
1394 @node Utilizar una voz adicional para los saltos de línea
1395 @subsection Utilizar una voz adicional para los saltos de línea
1396 @translationof Using an extra voice for breaks
1397
1398 La información sobre saltos de línea y de página suele aparecer
1399 directamente entremezclado dentro del código de notas.
1400
1401 @example
1402 \score @{
1403   \new Staff @{
1404     \repeat unfold 2 @{ c'4 c'4 c'4 c'4 @}
1405     \break
1406     \repeat unfold 3 @{ c'4 c'4 c'4 c'4 @}
1407   @}
1408 @}
1409 @end example
1410
1411 Esto hace sencillas de introducir a las instrucciones @code{\break} y
1412 @code{\pageBreak}, pero mezcla la escritura de música con información
1413 que especifica cómo se debe disponer la música sobre la página.
1414 Podemos mantener la introducción de música y la información de saltos
1415 de línea y de página en dos lugares separados mediante la introducción
1416 de una voz adicional que contenga los saltos.  Esta voz adicional
1417 contiene solamente desplazamientos o @q{skips} junto con los
1418 @code{\break}, @code{pageBreak} y otras informaciones sobre la
1419 disposición de los saltos.
1420
1421 @lilypond[quote,verbatim]
1422 \score {
1423   \new Staff <<
1424     \new Voice {
1425       s1 * 2 \break
1426       s1 * 3 \break
1427       s1 * 6 \break
1428       s1 * 5 \break
1429     }
1430     \new Voice {
1431       \repeat unfold 2 { c'4 c'4 c'4 c'4 }
1432       \repeat unfold 3 { c'4 c'4 c'4 c'4 }
1433       \repeat unfold 6 { c'4 c'4 c'4 c'4 }
1434       \repeat unfold 5 { c'4 c'4 c'4 c'4 }
1435     }
1436   >>
1437 }
1438 @end lilypond
1439
1440 Este patrón resulta especialmente útil cuando se sobreescribe
1441 @code{line-break-system-details} y las otras útiles (pero largas)
1442 propiedades de @code{NonMusicalPaperColumnGrob}, como se explica en
1443 @ref{Espaciado vertical}.
1444
1445 @lilypond[quote,verbatim]
1446 \score {
1447   \new Staff <<
1448     \new Voice {
1449       \overrideProperty "Score.NonMusicalPaperColumn"
1450         #'line-break-system-details #'((Y-offset . 0))
1451       s1 * 2 \break
1452
1453       \overrideProperty "Score.NonMusicalPaperColumn"
1454         #'line-break-system-details #'((Y-offset . 35))
1455       s1 * 3 \break
1456
1457       \overrideProperty "Score.NonMusicalPaperColumn"
1458         #'line-break-system-details #'((Y-offset . 70))
1459       s1 * 6 \break
1460
1461       \overrideProperty "Score.NonMusicalPaperColumn"
1462         #'line-break-system-details #'((Y-offset . 105))
1463       s1 * 5 \break
1464     }
1465     \new Voice {
1466       \repeat unfold 2 { c'4 c'4 c'4 c'4 }
1467       \repeat unfold 3 { c'4 c'4 c'4 c'4 }
1468       \repeat unfold 6 { c'4 c'4 c'4 c'4 }
1469       \repeat unfold 5 { c'4 c'4 c'4 c'4 }
1470     }
1471   >>
1472 }
1473 @end lilypond
1474
1475
1476 @seealso
1477 Referencia de la notación:
1478 @ref{Espaciado vertical}.
1479
1480 Fragmentos de código:
1481 @rlsr{Spacing}.
1482
1483
1484 @node Espaciado vertical
1485 @section Espaciado vertical
1486 @translationof Vertical spacing
1487
1488 @cindex espaciado vertical
1489 @cindex vertical, espaciado
1490
1491 El espaciado vertical está controlado por tres factores: la cantidad
1492 de espacio disponible (es decir, el tamaño del papel y los márgenes),
1493 la separación entre los sistemas, y la separación entre los
1494 pentagramas dentro de un sistema.
1495
1496 @menu
1497 * Espaciado vertical dentro de un sistema::
1498 * Espaciado vertical entre sistemas::
1499 * Posicionamiento explícito de los pentagramas y los sistemas::
1500 * Evitar las colisiones verticales::
1501 @end menu
1502
1503
1504 @node Espaciado vertical dentro de un sistema
1505 @subsection Espaciado vertical dentro de un sistema
1506 @translationof Vertical spacing inside a system
1507
1508 @cindex distancia entre pentagramas
1509 @cindex pentagrama, distancia entre los
1510 @cindex espacio entre pentagramas
1511 @cindex espacio dentro de los sistemas
1512
1513 La altura de cada sistema se determina en dos fases.  Primero, todos
1514 los pentagramas se disponen según la cantidad de espacio vacío
1515 disponible.  Después, las líneas que no son pautas (p.ej. la letra o
1516 los nombres de acorde) se distribuyen entre las pautas.
1517
1518 @unnumberedsubsubsec Espaciado entre los pentagramas
1519 El espaciado entre los pentagramas se controla mediante la propiedad
1520 @var{next-staff-spacing} del grob @var{VerticalAxisGroup}.  Esta
1521 propiedad es una lista-A de cuatro elementos: @var{space},
1522 @var{minimum-distance}, @var{padding} y @var{stretchability}:
1523 @itemize
1524 @item
1525 @var{space} es el tamaño del espacio ensanchable entre la línea media
1526 de un pentagrama hasta la línea media del pentagrama siguiente.
1527
1528 @item
1529 @var{minimum-distance} proporciona un límite inferior sobre la
1530 distancia final entre la línea central de un pentagrama hasta la línea
1531 central del pentagrama siguiente.  Esto es, si una página tiene muchos
1532 sistemas y necesita comprimirse, la distancia desde este pentagrama
1533 hasta el siguiente nunca se comprimirá a menos de
1534 @var{minimum-distance}.
1535
1536 @item
1537 @var{padding} es la cantidad de espacio vacío que debe estar presente
1538 entre el final de un pentagrama y el principio del siguiente.  Se
1539 diferencia de @var{minimum-distance} en que el efecto de @var{padding}
1540 depende de la altura de los objetos que están sobre el pentagrama.
1541 Por ejemplo, es más probable que @var{padding} entre en efecto para
1542 pentagramas que tienen notas muy agudas por encima de la pauta.
1543
1544 @item
1545 @var{stretchability} controla la propensión del espacio ensanchable a
1546 ampliarse cuando lo hace el sistema.  Los valores grandes producen que
1547 un sistema se amplíe más, mientras que un valor de cero evita que el
1548 espacio se amplíe en absoluto.  Si se deja sin establecer, el valor
1549 predeterminado de @var{stretchability} será @code{space -
1550 minimum-distance}.
1551 @end itemize
1552
1553 @lilypond[verbatim]
1554 #(set-global-staff-size 16)
1555 \new StaffGroup <<
1556   % Since space is small and there is no minimum-distance, the distance
1557   % between this staff and the next will be determined by padding.
1558   \new Staff \with {
1559     \override VerticalAxisGroup #'next-staff-spacing =
1560       #'((space . 1) (padding . 1))
1561   }
1562   { \clef bass c, }
1563   % Since space is small and nothing sticks out very far, the distance
1564   % between this staff and the next will be determined by minimum-distance.
1565   \new Staff \with {
1566     \override VerticalAxisGroup #'next-staff-spacing =
1567       #'((space . 1) (minimum-distance . 12))
1568   }
1569   { \clef bass c, }
1570   % By setting padding to a negative value, staves can be made to collide.
1571   \new Staff \with {
1572     \override VerticalAxisGroup #'next-staff-spacing =
1573       #'((space . 4) (padding . -10))
1574   }
1575   { \clef bass c, }
1576   \new Staff { \clef bass c, }
1577 >>
1578 @end lilypond
1579
1580
1581 En partituras grandes como las orquestales, es común colocar los
1582 pentagramas en grupos.  El espacio entre los grupos suele ser mayor
1583 que el espacio que hay entre los pentagramas dentro del mismo grupo.
1584 Este espacio se puede manipular con el grob @var{StaffGrouper}: el
1585 valor predeterminado de @var{next-staff-spacing} para
1586 @var{VerticalAxisGroup} es una función de @q{callback} que opera por
1587 el procedimiento de buscar un grob @var{StaffGrouper} que contenga al
1588 pentagrama.  Si encuentra un grob @var{StaffGrouper} y el pentagrama
1589 en cuestión está en mitad de un grupo, lee la propiedad
1590 @var{between-staff-spacing} de @var{StaffGrouper} y la devuelve.  Si
1591 el pentagrama en cuestión es el último de un grupo, la función de
1592 @q{callback} lee la propiedad @var{after-last-staff-spacing} de
1593 @var{StaffGrouper} y la devuelve.  Si no encuentra un grob
1594 @var{StaffGrouper}, lee @var{default-next-staff-spacing} a partir de
1595 su @var{VerticalAxisGroup} y lo devuelve.
1596
1597 @lilypond[verbatim]
1598 #(set-global-staff-size 16)
1599 <<
1600   \new PianoStaff \with {
1601     \override StaffGrouper #'between-staff-spacing #'space = #1
1602     \override StaffGrouper #'between-staff-spacing #'padding = #0
1603     \override StaffGrouper #'after-last-staff-spacing #'space = #20
1604   }
1605   <<
1606     \new Staff c'1
1607     \new Staff c'1
1608   >>
1609
1610   \new StaffGroup \with {
1611     \override StaffGrouper #'between-staff-spacing #'space = #1
1612     \override StaffGrouper #'between-staff-spacing #'padding = #0
1613   }
1614   <<
1615     \new Staff c'1
1616     \new Staff c'1
1617   >>
1618 >>
1619 @end lilypond
1620
1621
1622 @unnumberedsubsubsec Espaciado de las líneas que no son pautas
1623
1624 Después de que se han determinado las posiciones de los pentagramas,
1625 se distribuyen las líneas que no son pautas entre los pentagramas.
1626 Cada una de esas líneas tiene una propiedad @var{staff-affinity} que
1627 controla su alineamiento vertical.  Por ejemplo:
1628
1629 @example
1630 \new Lyrics \with @{ \override VerticalAxisGroup #'staff-affinity = #DOWN @}
1631 @end example
1632
1633 @noindent
1634 crea un contexto de letra que se situará junto al pentagrama que tiene
1635 por debajo.  El establecimiento de @var{staff-affinity} a algo que no
1636 sea un número (@code{#f}, por ejemplo) hace que la línea se trate como
1637 si fuera una pauta.  De forma recíproca, el establecimiento de
1638 @var{staff-affinity} para un pentagrama hace que se le trate como si
1639 no fuera una pauta.
1640
1641 Las líneas que no son pautas admiten tres propiedades para controlar
1642 su espaciado.  Cada una de estas propiedades es una lista-A del mismo
1643 formato que @var{next-staff-spacing}, véase más arriba.
1644 @itemize
1645 @item
1646 Si la línea más cercana en la dirección de @var{staff-affinity} es una
1647 pauta, entonces @var{inter-staff-spacing} da el espacio entre la línea
1648 que no es una pauta y la pauta.  Si @var{staff-affinity} es
1649 @code{CENTER}, entonces se usa @var{inter-staff-spacing} para las dos
1650 direcciones.
1651
1652 @item
1653 Si línea más cercana en la dirección de @var{staff-affinity} no es una
1654 pauta, entonces @var{inter-loose-line-spacing} da el espaciado entre
1655 las dos líneas que no son pautas.
1656
1657 @item
1658 Si la línea más cercana en la dirección opuesta a @var{staff-affinity}
1659 es una pauta, entonces @var{non-affinity-spacing} da el espacio entre
1660 la línea que no es una pauta y la pauta.  esto se puede usar, por
1661 ejemplo, para requerir una cantidad de relleno mínima entre una línea
1662 de letra y el pentagrama a que no pertenece.
1663 @end itemize
1664
1665 @lilypond[verbatim]
1666 #(set-global-staff-size 16)
1667 \layout {
1668   \context {
1669     \Lyrics
1670     % By default, Lyrics are placed close together.  Here, we allow them to
1671     % be stretched more widely.
1672     \override VerticalAxisGroup
1673       #'inter-loose-line-spacing #'stretchability = #1000
1674   }
1675 }
1676
1677 \new StaffGroup
1678 <<
1679   \new Staff \with {
1680     \override VerticalAxisGroup #'next-staff-spacing = #'((space . 30)) }
1681     { c'1 }
1682   \new Lyrics \with {
1683     \override VerticalAxisGroup #'staff-affinity = #UP }
1684     \lyricmode { up }
1685   \new Lyrics \with {
1686     \override VerticalAxisGroup #'staff-affinity = #CENTER }
1687     \lyricmode { center }
1688   \new Lyrics \with {
1689     \override VerticalAxisGroup #'staff-affinity = #DOWN }
1690     \lyricmode { down }
1691   \new Staff
1692     { c'1 }
1693 >>
1694 @end lilypond
1695
1696 @seealso
1697 Fragmentos de código:
1698 @rlsr{Spacing}.
1699
1700 @c @lsr{spacing,page-spacing.ly},
1701 @c @lsr{spacing,alignment-vertical-spacing.ly}.
1702
1703 Referencia de funcionamiento interno:
1704 @rinternals{VerticalAxisGroup},
1705 @rinternals{VerticalAlignment},
1706 @rinternals{Axis_group_engraver}.
1707
1708 @knownissues
1709 Las líneas adyacentes que no son pentagramas debieran tener valores de
1710 @var{staff-affinity} no crecientes desde arriba hasta abajo.  Por
1711 ejemplo, el comportamiento de
1712 @example
1713 <<
1714   \new Staff c
1715   \new Lyrics \with @{ \override VerticalAxisGroup #'staff-affinity = #DOWN @}
1716   \new Lyrics \with @{ \override VerticalAxisGroup #'staff-affinity = #UP @}
1717   \new Staff c
1718 >>
1719 @end example
1720 es indeterminado.
1721
1722 Una línea que no es una pauta, al final de un sistema, debiera tener
1723 establecido @var{staff-affinity} al valor @code{UP}.  De forma
1724 similar, una línea que no es una pauta al principio de un sistema
1725 debiera tener @var{staff-affinity} establecido al valor @code{DOWN}.
1726
1727 @node Espaciado vertical entre sistemas
1728 @subsection Espaciado vertical entre sistemas
1729 @translationof Vertical spacing between systems
1730
1731 Los mecanismos que controlan el espaciado entre sistemas son similares
1732 a los que controlan el espaciado dentro de un sistema (véase
1733 @ref{Espaciado vertical dentro de un sistema}).  La diferencia
1734 principal es que las variables para controlar el espaciado entre
1735 sistemas se establece dentro del bloque @code{\paper} en lugar de
1736 hacerlo como propiedades de grob.  Estas variables del bloque paper
1737 son @var{system-system-spacing}, @var{score-system-spacing},
1738 @var{markup-system-spacing}, @var{score-markup-spacing},
1739 @var{markup-markup-spacing}, @var{top-system-spacing},
1740 @var{top-markup-spacing} y @var{last-bottom-spacing}.  Observe que
1741 estas variables ignoran las líneas que nos son pautas.  Por ejemplo,
1742 @var{system-system-spacing} controla el espaciado desde la línea
1743 media del pentagrama inferior de un sistema hasta la línea del
1744 pentagrama superior del sistema siguiente, tanto si hay letra debajo
1745 del sistema superior como si no.  Consulte @ref{Dimensiones
1746 verticales flexibles} para ver una descripción de cada una
1747 de dichas variables.
1748
1749 Aún hay otras dos variables del bloque @code{\paper} que afectan al
1750 espaciado vertical: si @var{ragged-bottom} está ajustado a @code{##t},
1751 ninguna página se amplía (lo que significa que no se ampliará ni el
1752 espacio entre sistemas ni el espacio dentro de los sistemas).  Si el
1753 valor de @var{ragged-last-bottom} se ajusta a @code{##t} entonces la
1754 última página no se amplía.
1755
1756 @seealso
1757 Fragmentos de código:
1758 @rlsr{Spacing}.
1759
1760
1761 @node Posicionamiento explícito de los pentagramas y los sistemas
1762 @subsection Posicionamiento explícito de los pentagramas y los sistemas
1763 @translationof Explicit staff and system positioning
1764
1765 Una forma de entender los ajustes de @code{VerticalAxisGroup} y de
1766 @code{\paper} que se explicaron en las dos secciones anteriores es
1767 como una colección de distintos ajustes que conciernen principalmente
1768 a la cantidad de relleno vertical que adquieren los distintos
1769 pentagramas y sistemas al ocupar la página.
1770
1771 Es posible abordar el problema del espaciado vertical de una forma
1772 distinta utilizando @code{NonMusicalPaperColumn
1773 #'line-break-system-details}.  Donde los ajustes de
1774 @code{VerticalAxisGroup} y de @code{\paper} especifican el relleno
1775 vertical, @code{NonMusicalPaperColumn #'line-break-system-details}
1776 especifica las posiciones verticales exactas en la página.
1777
1778 @code{NonMusicalPaperColumn #'line-break-system-details} acepta una
1779 lista asociativa de tres ajustes distintos:
1780
1781 @itemize
1782 @item @code{X-offset}
1783 @item @code{Y-offset}
1784 @item @code{alignment-distances}
1785 @end itemize
1786
1787 Las sobreescrituras de los objetos gráficos, entre ellas las de
1788 @code{NonMusicalPaperColumn} que aparece más abajo, pueden ocurrir en
1789 tres lugares distintos dentro de un archivo de entrada:
1790
1791 @itemize
1792 @item directamente en medio de las notas
1793 @item en un bloque @code{\context}
1794 @item en el bloque @code{\with}
1795 @end itemize
1796
1797 Cuando sobreescribimos @code{NonMusicalPaperColumn}, usamos la
1798 instrucción @code{\override} usual en los bloques @code{\context} y en
1799 el bloque @code{\with}.  Por otra parte, cuando sobreescribimos
1800 @code{NonMusicalPaperColumn} en medio de las notas, debemos usar la
1801 instrucción especial @code{\overrideProperty}.  He aquí algunas
1802 sobreescrituras de @code{NonMusicalPaperColumn} de ejemplo con la
1803 instrucción especial @code{\overrideProperty}:
1804
1805 @example
1806 \overrideProperty NonMusicalPaperColumn
1807   #'line-break-system-details #'((X-offset . 20))
1808
1809 \overrideProperty NonMusicalPaperColumn
1810   #'line-break-system-details #'((Y-offset . 40))
1811
1812 \overrideProperty NonMusicalPaperColumn
1813   #'line-break-system-details #'((X-offset . 20) (Y-offset . 40))
1814
1815 \overrideProperty NonMusicalPaperColumn
1816   #'line-break-system-details #'((alignment-distances . (15)))
1817
1818 \overrideProperty NonMusicalPaperColumn
1819   #'line-break-system-details #'((X-offset . 20) (Y-offset . 40)
1820                                  (alignment-distances . (15)))
1821 @end example
1822
1823 Para entender cómo funciona cada uno de los distintos ajustes,
1824 empezamos observando un ejemplo que no incluye absolutamente ninguna
1825 sobreescritura.
1826
1827 @c \book { } is required in these examples to ensure the spacing
1828 @c overrides can be seen between systems. -np
1829
1830 @lilypond[quote]
1831 \header { tagline = ##f }
1832 \paper { left-margin = 0\mm }
1833 \book {
1834   \score {
1835     <<
1836       \new Staff <<
1837         \new Voice {
1838           s1*5 \break
1839           s1*5 \break
1840           s1*5 \break
1841         }
1842         \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
1843       >>
1844       \new Staff {
1845         \repeat unfold 15 { d'4 d' d' d' }
1846       }
1847     >>
1848   }
1849 }
1850 @end lilypond
1851
1852 Esta partitura mantiene aislada la información de los saltos de línea
1853 y de página en una voz dedicada a ello.  Esta técnica de crear una voz
1854 de saltos ayuda a mantener separada de la escritura de notas conforme
1855 el ejemplo se vuelve más complicado.  Consulte @ref{Utilizar una voz adicional para los saltos de línea}.
1856
1857 Los saltos explícitos dividen la música de forma regular en seis
1858 compases por línea.  El espaciado vertical es el resultado de los
1859 ajustes predeterminados de LilyPond.  Para establecer explícitamente
1860 el punto de origen vertical de cada sistema, podemos establecer el par
1861 @code{Y-offset} en el atributo @code{line-break-system-details} del
1862 grob (objeto gráfico) @code{NonMusicalPaperColumn}:
1863
1864 @lilypond[quote]
1865 \header { tagline = ##f }
1866 \paper { left-margin = 0\mm }
1867 \book {
1868   \score {
1869     <<
1870       \new Staff <<
1871         \new Voice {
1872           \overrideProperty #"Score.NonMusicalPaperColumn"
1873             #'line-break-system-details #'((Y-offset . 0))
1874           s1*5 \break
1875           \overrideProperty #"Score.NonMusicalPaperColumn"
1876             #'line-break-system-details #'((Y-offset . 40))
1877           s1*5 \break
1878           \overrideProperty #"Score.NonMusicalPaperColumn"
1879             #'line-break-system-details #'((Y-offset . 80))
1880           s1*5 \break
1881         }
1882         \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
1883       >>
1884       \new Staff {
1885         \repeat unfold 15 { d'4 d' d' d' }
1886       }
1887     >>
1888   }
1889 }
1890 @end lilypond
1891
1892 Observe que @code{line-break-system-details} toma una lista asociativa
1893 de una cantidad de valores potencialmente elevada, pero aquí sólo
1894 fijamos un valor.  Observe también que aquí la propiedad
1895 @code{Y-offset} determina la posición vertical exacta sobre la página
1896 en la que se trazará cada uno de los nuevos sistemas.
1897
1898 Ahora que hemos establecido explícitamente el punto de origen vertical
1899 de cada sistema, podemos también establecer manualmente
1900 las distancias verticales entre
1901 los pentagramas dentro de cada sistema.  Lo hacemos
1902 usando la subpropiedad @code{alignment-distances} de
1903 @code{line-break-system-details}.
1904
1905 @lilypond[quote]
1906 \header { tagline = ##f }
1907 \paper { left-margin = 0\mm }
1908 \book {
1909   \score {
1910     <<
1911       \new Staff <<
1912         \new Voice {
1913           \overrideProperty #"Score.NonMusicalPaperColumn"
1914             #'line-break-system-details #'((Y-offset . 20)
1915                                            (alignment-distances . (15)))
1916           s1*5 \break
1917           \overrideProperty #"Score.NonMusicalPaperColumn"
1918             #'line-break-system-details #'((Y-offset . 60)
1919                                            (alignment-distances . (15)))
1920           s1*5 \break
1921           \overrideProperty #"Score.NonMusicalPaperColumn"
1922             #'line-break-system-details #'((Y-offset . 100)
1923                                            (alignment-distances . (15)))
1924           s1*5 \break
1925         }
1926         \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
1927       >>
1928       \new Staff {
1929         \repeat unfold 15 { d'4 d' d' d' }
1930       }
1931     >>
1932   }
1933 }
1934 @end lilypond
1935
1936 Observe que aquí asignamos dos valores distintos al atributo
1937 @code{line-break-system-details} del grob
1938 @code{NonMusicalPaperColumn}.  Aunque el atributo alist de
1939 @code{line-break-system-details} acepta muchos parámetros de espaciado
1940 adicionales (entre ellos, por ejemplo, un par @code{X-offset}
1941 correspondiente), sólo tenemos que establecer el desplazamiento
1942 @code{Y-offset} y los pares @code{alignment-distances} para controlar el
1943 punto de origen vertical de cada sistema y pentagrama.  Finalmente,
1944 observe que @code{alignment-distances} especifica el posicionamiento
1945 vertical de los pentagramas pero no de los grupos de pentagramas.
1946
1947 @lilypond[quote]
1948 \header { tagline = ##f }
1949 \paper { left-margin = 0\mm }
1950 \book {
1951   \score {
1952     <<
1953       \new Staff <<
1954         \new Voice {
1955           \overrideProperty #"Score.NonMusicalPaperColumn"
1956             #'line-break-system-details #'((Y-offset . 0)
1957                                            (alignment-distances . (30 10)))
1958           s1*5 \break
1959           \overrideProperty #"Score.NonMusicalPaperColumn"
1960             #'line-break-system-details #'((Y-offset . 60)
1961                                            (alignment-distances . (10 10)))
1962           s1*5 \break
1963           \overrideProperty #"Score.NonMusicalPaperColumn"
1964             #'line-break-system-details #'((Y-offset . 100)
1965                                            (alignment-distances . (10 30)))
1966           s1*5 \break
1967         }
1968         \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
1969       >>
1970       \new StaffGroup <<
1971         \new Staff { \repeat unfold 15 { d'4 d' d' d' } }
1972         \new Staff { \repeat unfold 15 { e'4 e' e' e' } }
1973       >>
1974     >>
1975   }
1976 }
1977 @end lilypond
1978
1979 Algunos puntos que tener en cuenta:
1980
1981 @itemize
1982 @item Al usar @code{alignment-distances}, la letra
1983 y otras líneas que no son pautas, no cuentan como un pentagrama.
1984
1985 @item Las unidades de los números que se pasan a @code{X-offset},
1986 @code{Y-offset} y @code{alignment-distances} se interpretan como
1987 múltiplos de la distancia entre líneas de pentagrama adyacentes.  Los
1988 valores positivos mueven a los pentagramas y a la letra hacia arriba,
1989 los valores negativos mueven los pentagramas y la letra hacia abajo.
1990
1991 @item A causa de que los ajustes a @code{NonMusicalPaperColumn #'line-break-system-details}
1992 dados aquí permiten el posicionamiento de pentagramas y sistemas en
1993 cualquier lugar de la página, es posible violar los márgenes o los
1994 límites del papel, o incluso imprimir pentagramas o sistemas unos
1995 encima de otros.  Esto se evitaría pasando a los diferentes ajustes
1996 unos valores razonables.
1997 @end itemize
1998
1999
2000 @seealso
2001 Fragmentos de código:
2002 @rlsr{Spacing}.
2003
2004
2005 @node Evitar las colisiones verticales
2006 @subsection Evitar las colisiones verticales
2007 @translationof Vertical collision avoidance
2008
2009 @funindex outside-staff-priority
2010 @funindex outside-staff-padding
2011 @funindex outside-staff-horizontal-padding
2012
2013 Podemos decir intuitivamente que algunos objetos de la notación
2014 musical pertenecen al pentagrama y otros se sitúan fuera del
2015 pentagrama.  Entre los objetos que pertenecen al exterior del
2016 pentagrama están las marcas de ensayo, las marcas textuales y las
2017 indicaciones de dinámica (en lo sucesivo, les llamaremos objetos fuera
2018 del pentagrama).  La regla de LilyPond para la colocación vertical de
2019 los objetos fuera del pentagrama es ponerlos tan cerca del pentagrama
2020 como sea posible pero no tan próximos como para que choquen con otro
2021 objeto.
2022
2023 LilyPond utiliza la propiedad @code{outside-staff-priority} para
2024 determinar si un grob es un objeto fuera del pentagrama: si
2025 @code{outside-staff-priority} es un número, el grob es un objeto fuera
2026 del pentagrama.  Además, @code{outside-staff-priority} informa a
2027 LilyPond en qué orden se debe situar los objetos.
2028
2029 En primer lugar, LilyPond sitúa todos los objetos que no pertenecen al
2030 exterior del pentagrama.  Después ordena los objetos fuera del
2031 pentagrama de acuerdo a su prioridad @code{outside-staff-priority} (en
2032 orden creciente).  LilyPond toma los objetos fuera del pentagrama uno
2033 a uno y los coloca de forma que no choquen con ningún objeto que ya
2034 haya sido colocado.  Esto es, si dos grobs fuera del pentagrama
2035 compiten por el mismo espacio, el que tiene la prioridad
2036 @code{outside-staff-priority} más baja se colocará más próximo al
2037 pentagrama.
2038
2039 @lilypond[quote,ragged-right,relative=2,verbatim]
2040 c4_"Text"\pp
2041 r2.
2042 \once \override TextScript #'outside-staff-priority = #1
2043 c4_"Text"\pp % this time the text will be closer to the staff
2044 r2.
2045 % by setting outside-staff-priority to a non-number,
2046 % we disable the automatic collision avoidance
2047 \once \override TextScript #'outside-staff-priority = ##f
2048 \once \override DynamicLineSpanner #'outside-staff-priority = ##f
2049 c4_"Text"\pp % now they will collide
2050 @end lilypond
2051
2052 El relleno vertical entre un objeto fuera del pentagrama y los grobs
2053 posicionados previamente se puede controlar con
2054 @code{outside-staff-padding}.
2055
2056 @lilypond[quote,ragged-right,relative=2,verbatim]
2057 \once \override TextScript #'outside-staff-padding = #0
2058 a'^"This text is placed very close to the note"
2059 \once \override TextScript #'outside-staff-padding = #3
2060 c^"This text is padded away from the previous text"
2061 c^"This text is placed close to the previous text"
2062 @end lilypond
2063
2064 De forma predeterminada, los objetos fuera del pentagrama se colocan
2065 sólo para evitar una colisión horizontal con los grobs posicionados
2066 previamente.  Esto puede llevar a situaciones en las que los objetos
2067 se colocan muy próximos entre sí en el sentido horizontal.  El espacio
2068 vertical entre pentagramas se puede fijar también de manera que los
2069 objetos fuera del pentagrama se sitúen de forma intercalada.  El
2070 establecimiento del relleno horizontal
2071 @code{outside-staff-horizontal-padding} ocasiona que un objeto se
2072 desplace verticalmente para que tal situación no ocurra.
2073
2074 @lilypond[quote,ragged-right,relative=2,verbatim]
2075 % the markup is too close to the following note
2076 c4^"Text"
2077 c4
2078 c''2
2079 % setting outside-staff-horizontal-padding fixes this
2080 R1
2081 \once \override TextScript #'outside-staff-horizontal-padding = #1
2082 c,,4^"Text"
2083 c4
2084 c''2
2085 @end lilypond
2086
2087
2088 @seealso
2089 Fragmentos de código:
2090 @rlsr{Spacing}.
2091
2092
2093 @node Espaciado horizontal
2094 @section Espaciado horizontal
2095 @translationof Horizontal spacing
2096
2097 @cindex horizontal, espaciado
2098 @cindex espaciado horizontal
2099
2100 @menu
2101 * Panorámica del espaciado horizontal::
2102 * Área de espaciado nueva::
2103 * Cambiar el espaciado horizontal::
2104 * Longitud de la línea::
2105 * Notación proporcional::
2106 @end menu
2107
2108
2109 @node Panorámica del espaciado horizontal
2110 @subsection Panorámica del espaciado horizontal
2111 @translationof Horizontal spacing overview
2112
2113 El motor de espaciado traduce las diferencias en las duraciones a
2114 distancias ampliables (@q{muelles}) de distintas longitudes.  Las
2115 duraciones más largas reciben un espacio mayor y las duraciones más
2116 cortas reciben menos.  Las duraciones más breves reciben un espacio de
2117 tamaño fijo (que se controla mediante @code{shortest-duration-space}
2118 en el objeto @rinternals{SpacingSpanner}).  Cuanto más larga es la
2119 duración, más espacio recibe: al doblar una duración se añade un
2120 espacio de tamaño fijo (este tamaño se controla mediante
2121 @code{spacing-increment}) a la nota.
2122
2123 Por ejemplo, la pieza siguiente contiene numerosas blancas, negras y
2124 corcheas; la corchea va seguida de un ancho de cabeza de blanca (ACB).
2125 La negra va seguida de 2 ACB, la blanca por 3 ACB, etc.
2126
2127 @lilypond[quote,verbatim,relative=1]
2128 c2 c4. c8 c4. c8 c4. c8 c8
2129 c8 c4 c4 c4
2130 @end lilypond
2131
2132 Normalmente, el valor de @code{spacing-increment} está establecido en
2133 1.2 espacios de pentagrama, lo que es aproximadamente el ancho de una
2134 cabeza, y @code{shortest-duration-space} está establecido en 2.0, lo
2135 que significa que la nota más breve recibe 2.4 espacios de pentagrama
2136 (2.0 multiplicado por el @code{spacing-increment}) de espacio
2137 horizontal.  Este espacio se cuenta a partir del borde izquierdo del
2138 símbolo, de manera que las notas más breves van seguidas generalmente
2139 por un espacio de 1 ACB.
2140
2141 Si siguiésemos el procedimiento anterior exactamente, entonces la
2142 adición de una sola fusa a una partitura que usa corcheas y
2143 semicorcheas, aumentaría enormemente la anchura de la partitura
2144 completa.  La nota más breve ya no es la semicorchea, sino la fusa,
2145 añadiendo así 1 ACB a cada una de las notas.  Para evitarlo, la
2146 duración más breve a efectos de espaciado no es la nota más breve de
2147 la partitura, sino la que ocurre con más frecuencia.
2148
2149 La duración más breve que es más común se determina de la siguiente
2150 manera: en cada compás se determina la duración más breve.  La menor
2151 duración más común se toma como base para el espaciado, habiendo
2152 estipulado que esta duración menor siempre debe ser igual o menor que
2153 una corchea.  La duración más breve se imprime cuando se ejecuta
2154 @code{lilypond} con la opción @code{--verbose}.
2155
2156 Estas duraciones también se pueden personalizar.  Si establecemos la
2157 @code{common-shortest-duration} en @rinternals{SpacingSpanner},
2158 entonces éste establece la duración base para el espaciado.  La
2159 duración máxima para esta base (normalmente una corchea), se fija a
2160 través de @code{base-shortest-duration}.
2161
2162 @funindex common-shortest-duration
2163 @funindex base-shortest-duration
2164 @funindex stem-spacing-correction
2165 @funindex spacing
2166
2167 Las notas que son aún más breves que la nota común más breve van
2168 seguidas por un espacio proporcional a su duración en relación con la
2169 nota común más breve.  Así pues, si fuésemos a añadir tan sólo algunas
2170 semicorcheas al ejemplo anterior, irían seguidas por medio ACB:
2171
2172 @lilypond[quote,verbatim,relative=2]
2173 c2 c4. c8 c4. c16[ c] c4. c8 c8 c8 c4 c4 c4
2174 @end lilypond
2175
2176
2177 En el @emph{Ensayo sobre grabado musical automatizado},
2178 se explicó que las
2179 direcciones de las plicas influyen en el espaciado
2180 (véase @ressay{Espaciado óptico}).  Esto se controla
2181 con la propiedad @code{stem-spacing-correction} en el objeto
2182 @rinternals{NoteSpacing}.  Estos se generan para cada uno de los
2183 contextos de @rinternals{Voice}.  El objeto @code{StaffSpacing}
2184 (generado en el contexto de @rinternals{Staff}) contiene la misma
2185 propiedad para controlar el espaciado de las líneas de plica o
2186 divisorias.  El ejemplo siguiente muestra estas correcciones, una vez
2187 con los valores predeterminados y otra con correcciones exageradas:
2188
2189 @lilypond[quote,ragged-right]
2190 {
2191   c'4 e''4 e'4 b'4 |
2192   b'4 e''4 b'4 e''4 |
2193   \override Staff.NoteSpacing #'stem-spacing-correction = #1.5
2194   \override Staff.StaffSpacing #'stem-spacing-correction = #1.5
2195   c'4 e''4 e'4 b'4 |
2196   b'4 e''4 b'4 e''4 |
2197 }
2198 @end lilypond
2199
2200 Está contemplada la notación proporcional; consulte @ref{Notación proporcional}.
2201
2202
2203 @seealso
2204 Fragmentos de código:
2205 @rlsr{Spacing}.
2206
2207 Referencia de funcionamiento interno:
2208 @rinternals{SpacingSpanner},
2209 @rinternals{NoteSpacing},
2210 @rinternals{StaffSpacing},
2211 @rinternals{NonMusicalPaperColumn}.
2212
2213
2214 @knownissues
2215
2216 No existe ningún mecanismo conveniente para sobreescribir el espaciado
2217 manualmente.  Se puede usar el siguiente rodeo para insertar espacio
2218 adicional en una partitura, ajustando el valor del relleno en la
2219 medida necesaria.
2220
2221 @example
2222  \override Score.NonMusicalPaperColumn #'padding = #10
2223 @end example
2224
2225 No existe ningún rodeo para disminuir la magnitud de la separación.
2226
2227
2228 @node Área de espaciado nueva
2229 @subsection Área de espaciado nueva
2230 @translationof New spacing area
2231
2232 Se pueden iniciar secciones nuevas con diferentes parámetros de
2233 espaciado, con @code{newSpacingSection}.  Esto es útil cuando hay
2234 secciones que tienen distinta noción de las notas largas y cortas.
2235
2236 En el ejemplo siguiente, el cambio de compás introduce una sección
2237 nueva, y por ello las semicorcheas se separan de manera más amplia.
2238
2239 @lilypond[relative=1,verbatim,quote]
2240 \time 2/4
2241 c4 c8 c
2242 c8 c c4 c16[ c c8] c4
2243 \newSpacingSection
2244 \time 4/16
2245 c16[ c c8]
2246 @end lilypond
2247
2248 La instrucción @code{\newSpacingSection} crea un nuevo objeto
2249 @code{SpacingSpanner}, y de ahí que se puedan usar nuevas
2250 instrucciones de sobreescritura @code{\override} en dicho punto.
2251
2252
2253 @seealso
2254 Fragmentos de código:
2255 @rlsr{Spacing}.
2256
2257 Referencia de funcionamiento interno:
2258 @rinternals{SpacingSpanner}.
2259
2260
2261 @node Cambiar el espaciado horizontal
2262 @subsection Cambiar el espaciado horizontal
2263 @translationof Changing horizontal spacing
2264
2265 Se puede alterar el espaciado horizontal con la propiedad
2266 @code{base-shortest-duration}.  Aquí compararemos la misma música, una
2267 vez sin alterar la propiedad, y luego alterándola.  Los valores
2268 mayores de @code{ly:make-moment} producen música más pequeña.  Observe
2269 que @code{ly:make-moment} construye una duración, por lo que @code{1
2270 4} es una duración mayor que @code{1 16}.
2271
2272 @lilypond[verbatim,line-width=12\cm]
2273 \score {
2274   \relative c'' {
2275     g4 e e2 | f4 d d2 | c4 d e f | g4 g g2 |
2276     g4 e e2 | f4 d d2 | c4 e g g | c,1 |
2277     d4 d d d | d4 e f2 | e4 e e e | e4 f g2 |
2278     g4 e e2 | f4 d d2 | c4 e g g | c,1 |
2279   }
2280 }
2281 @end lilypond
2282
2283 @lilypond[verbatim,line-width=12\cm]
2284 \score {
2285   \relative c'' {
2286     g4 e e2 | f4 d d2 | c4 d e f | g4 g g2 |
2287     g4 e e2 | f4 d d2 | c4 e g g | c,1 |
2288     d4 d d d | d4 e f2 | e4 e e e | e4 f g2 |
2289     g4 e e2 | f4 d d2 | c4 e g g | c,1 |
2290   }
2291   \layout {
2292     \context {
2293       \Score
2294       \override SpacingSpanner
2295         #'base-shortest-duration = #(ly:make-moment 1 16)
2296     }
2297   }
2298 }
2299 @end lilypond
2300
2301
2302 @snippets
2303
2304 De forma predeterminada, el espaciado en los grupos de valoración
2305 especial depende de varios factores ajenos a la duración (como
2306 alteraciones, cambios de clave, etc.).  Para pasar por alto estos
2307 símbolos y forzar un espaciado de duraciones iguales uniforme, use
2308 @code{Score.SpacingSpanner #'uniform-stretching}.  Esta propiedad sólo
2309 puede cambiarse al principio de la partitura:
2310
2311 @lilypond[quote,ragged-right,verbatim]
2312 \score {
2313   <<
2314     \new Staff {
2315       \times 4/5 {
2316         c8 c8 c8 c8 c8
2317       }
2318       c8 c8 c8 c8
2319     }
2320     \new Staff {
2321       c8 c8 c8 c8
2322       \times 4/5 {
2323         c8 c8 c8 c8 c8
2324       }
2325     }
2326   >>
2327   \layout {
2328     \context {
2329       \Score
2330       \override SpacingSpanner #'uniform-stretching = ##t
2331     }
2332   }
2333 }
2334 @end lilypond
2335
2336 Cuando se establece @code{strict-note-spacing}, las notas se separan
2337 sin tener en cuenta las claves, líneas divisorias ni notas de adorno:
2338
2339 @lilypond[quote,ragged-right,relative=2,verbatim]
2340 \override Score.SpacingSpanner #'strict-note-spacing = ##t
2341 \new Staff { c8[ c \clef alto c \grace { c16[ c] } c8 c c]  c32[ c32] }
2342 @end lilypond
2343
2344
2345 @seealso
2346 Fragmentos de código:
2347 @rlsr{Spacing}.
2348
2349
2350 @node Longitud de la línea
2351 @subsection Longitud de la línea
2352 @translationof Line length
2353
2354 @cindex saltos de página
2355 @cindex página, saltos de
2356
2357 @funindex indent
2358 @funindex line-width
2359 @funindex ragged-right
2360 @funindex ragged-last
2361
2362 @c Although line-width can be set in \layout, it should be set in paper
2363 @c block, to get page layout right.
2364 @c Setting indent in \paper block makes not much sense, but it works.
2365
2366 @c Bit verbose and vague, use examples?
2367 Los ajustes más básicos que influyen en el espaciado son @code{indent}
2368 y @code{line-width}.  Se definen en el bloque @code{\layout}.
2369 Controlan el sangrado de la primera línea de música y la longitud de
2370 las líneas.
2371
2372 Si se fija un valor verdadero para @code{ragged-right} en el bloque
2373 @code{\layout}, entonces los sistemas terminan en su longitud
2374 horizontal natural, en lugar de repartirse horizontalmente hasta
2375 llenar toda la línea.  Esto es útil para fragmentos cortos, y para
2376 comprobar qué tan apretado es el espaciado natural.
2377 El valor normal predeterminado es falso, pero si la partitura
2378 tiene un solo sistema, el valor predeterminado es verdadero.
2379
2380
2381 @cindex diseño de página
2382 @cindex página, disposición de la
2383 @cindex vertical, espaciado
2384
2385 La opción @code{ragged-last} es similar a @code{ragged-right}, pero
2386 afecta sólo a la última línea de la pieza.  No se efectúa ninguna
2387 restricción sobre dicha línea.  El resultado es similar al formateo de
2388 los párrafos de texto.  En un párrafo, la última línea sencillamente
2389 ocupa su longitud horizontal natural.
2390 @c Note that for text there are several options for the last line.
2391 @c While Knuth TeX uses natural length, lead typesetters use the same
2392 @c stretch as the previous line.  eTeX uses \lastlinefit to
2393 @c interpolate between both these solutions.
2394
2395 @example
2396 \layout @{
2397   indent = #0
2398   line-width = #150
2399   ragged-last = ##t
2400 @}
2401 @end example
2402
2403
2404 @seealso
2405 Fragmentos de código:
2406 @rlsr{Spacing}.
2407
2408
2409 @node Notación proporcional
2410 @subsection Notación proporcional
2411 @translationof Proportional notation
2412
2413 LilyPond contempla la notación proporcional, un tipo de espaciado
2414 horizontal en el que cada nota consume una medida horizontal que
2415 equivale exactamente a su duración rítmica.  Este tipo de espaciado
2416 proporcional es comparable al espaciado horizontal hecho sobre un
2417 papel milimetrado.  Ciertas partituras del finales del s.XX y
2418 principios del s.XXI utilizan notación proporcional para clarificar
2419 relaciones rítmicas complejas o para facilitar la colocación de líneas
2420 cronométricas u otros gráficos directamente en la partitura.
2421
2422 LilyPond contempla cinco ajustes distintos para la notación
2423 proporcional, que se pueden usar solos o combinados:
2424
2425 @itemize
2426 @item @code{proportionalNotationDuration}
2427 @item @code{uniform-stretching}
2428 @item @code{strict-note-spacing}
2429 @item @code{\remove Separating_line_group_engraver}
2430 @item @code{\override PaperColumn #'used = ##t}
2431 @end itemize
2432
2433 En los ejemplos que siguen, exploramos el uso de estos cinco ajustes
2434 de la notación proporcional y examinamos la forma en que interactúan.
2435
2436 Comenzamos con el siguiente ejemplo de un solo compás, que usa un
2437 espaciado clásico sin justificación por la derecha.
2438
2439 @lilypond[quote,verbatim,ragged-right]
2440 \score {
2441   <<
2442     \new RhythmicStaff {
2443       c'2
2444       c'16 c'16 c'16 c'16
2445       \times 4/5 {
2446         c'16 c'16 c'16 c'16 c'16
2447       }
2448     }
2449   >>
2450 }
2451 @end lilypond
2452
2453 Observe que la blanca que inicia el compás ocupa mucho menos de la
2454 mitad de todo el espacio horizontal del compás.  De forma similar, las
2455 semicorcheas y el cinquillo de semicorcheas con que finaliza el compás
2456 ocupan en conjunto mucho más de la mitad de todo el espacio horizontal
2457 del compás.
2458
2459 En el grabado clásico, este espaciado puede ser exactamente el que
2460 deseamos porque podemos tomar prestado el espacio horizontal de la
2461 blanca y conservar el espacio horizontal a lo largo del compás como un
2462 todo.
2463
2464 Por otro lado, si queremos insertar una línea de tiempo graduada o
2465 algún otro gráfico encima o debajo de la partitura, necesitamos la
2466 notación proporcional.  Se activa la notación proporcional con el
2467 ajuste @code{proportionalNotationDuration}.
2468
2469 @lilypond[quote,verbatim,ragged-right]
2470 \score {
2471   <<
2472     \new RhythmicStaff {
2473       c'2
2474       c'16 c'16 c'16 c'16
2475       \times 4/5 {
2476         c'16 c'16 c'16 c'16 c'16
2477       }
2478     }
2479   >>
2480  \layout {
2481     \context {
2482       \Score
2483       proportionalNotationDuration = #(ly:make-moment 1 20)
2484     }
2485   }
2486 }
2487 @end lilypond
2488
2489 La blanca al principio del compás y las notas rápidas de la segunda
2490 mitad del compás ocupan ahora cantidades iguales de espacio
2491 horizontal.  Podríamos colocar una línea de tiempo graduada o un
2492 gráfico encima o debajo de este ejemplo.
2493
2494 El ajuste @code{proportionalNotationDuration} es un ajuste de contexto
2495 que reside en @code{Score}.  Recordemos que los ajustes de contexto
2496 aparecen en uno de tres posibles lugares del archivo de entrada: en un
2497 bloque @code{\with}, en un bloque @code{\context}, o directamente
2498 entre la música precedido por la instrucción @code{\set}.  Como con
2499 todos los ajustes de contexto, el usuario puede elegir en cuál de los
2500 tres lugares diferentes prefiere establecer el valor de
2501 @code{proportionalNotationDuration}.
2502
2503 El ajuste @code{proportionalNotationDuration} acepta un solo
2504 argumento, que es la duración de referencia contra el que se aplica el
2505 espaciado de toda la música.  La función Scheme de LilyPond
2506 @code{make-moment} acepta dos argumentos: un numerador y un
2507 denominador que, juntos, expresan una cierta fracción de redonda.  La
2508 llamada @code{#(ly:make-moment 1 20)}, por tanto, produce una duración
2509 de referencia de una nota de un veinteavo de redonda (semicorcheas de
2510 cinquillo).  Son también posibles valores como
2511 @code{#(ly:make-moment 1 16)},
2512 @code{#(ly:make-moment 1 8)} y @code{#(ly:make-moment 3 97)}.
2513
2514 ¿Cómo seleccionamos la duración correcta de referencia para pasarla a
2515 @code{proportionalNotationDuration}?  Normalmente mediante un proceso
2516 de ensayo y error, comenzando con una duración cercana a la más rápida
2517 (o más breve) duración de la pieza.  Las duraciones de referencia más
2518 pequeñas aplican un espaciado más suelto; las duraciones de referencia
2519 más largas aplican un espaciado más apretado.
2520
2521 @lilypond[quote,verbatim,ragged-right]
2522 \score {
2523   <<
2524     \new RhythmicStaff {
2525       c'2
2526       c'16 c'16 c'16 c'16
2527       \times 4/5 {
2528         c'16 c'16 c'16 c'16 c'16
2529       }
2530     }
2531   >>
2532   \layout {
2533     \context {
2534       \Score
2535       proportionalNotationDuration = #(ly:make-moment 1 8)
2536     }
2537   }
2538 }
2539
2540 \score {
2541   <<
2542     \new RhythmicStaff {
2543       c'2
2544       c'16 c'16 c'16 c'16
2545       \times 4/5 {
2546         c'16 c'16 c'16 c'16 c'16
2547       }
2548     }
2549   >>
2550   \layout {
2551     \context {
2552       \Score
2553       proportionalNotationDuration = #(ly:make-moment 1 16)
2554     }
2555   }
2556 }
2557
2558 \score {
2559   <<
2560     \new RhythmicStaff {
2561       c'2
2562       c'16 c'16 c'16 c'16
2563       \times 4/5 {
2564         c'16 c'16 c'16 c'16 c'16
2565       }
2566     }
2567   >>
2568   \layout {
2569     \context {
2570       \Score
2571       proportionalNotationDuration = #(ly:make-moment 1 32)
2572     }
2573   }
2574 }
2575 @end lilypond
2576
2577 Observe que una duración de referencia demasiado grande (como la
2578 corchea, en el ejemplo de arriba) produce un espaciado excesivamente
2579 apretado y puede ser causa de colisiones entre las cabezas de nota.
2580 Observe también que la notación proporcional en general ocupa más
2581 espacio horizontal que el espaciado clásico.  El espaciado
2582 proporcional aporta claridad rítmica a expensas del espacio
2583 horizontal.
2584
2585 Ahora veremos cómo espaciar de forma óptima grupos de valoración
2586 especial que se superponen.
2587
2588 Empezamos por examinar qué le ocurre a nuestro ejemplo original, con
2589 espaciado clásico, cuando añadimos un segundo pentagrama con un tipo
2590 diferente de grupo especial.
2591
2592 @lilypond[quote,verbatim,ragged-right]
2593 \score {
2594   <<
2595     \new RhythmicStaff {
2596       c'2
2597       c'16 c'16 c'16 c'16
2598       \times 4/5 {
2599         c'16 c'16 c'16 c'16 c'16
2600       }
2601     }
2602     \new RhythmicStaff {
2603       \times 8/9 {
2604         c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8
2605       }
2606     }
2607   >>
2608 }
2609 @end lilypond
2610
2611 El espaciado es defectuoso porque las notas regularmente espaciadas
2612 del pentagrama inferior no se amplían de manera uniforme.  Los grabados
2613 clásicos incluyen muy pocos tresillos complejos y así las reglas del
2614 grabado clásico pueden generar este tipo de resultado.  El
2615 establecimiento de @code{proportionalNotationDuration} lo
2616 soluciona.
2617
2618 @lilypond[quote,verbatim,ragged-right]
2619 \score {
2620   <<
2621     \new RhythmicStaff {
2622       c'2
2623       c'16 c'16 c'16 c'16
2624       \times 4/5 {
2625         c'16 c'16 c'16 c'16 c'16
2626       }
2627     }
2628     \new RhythmicStaff {
2629       \times 8/9 {
2630         c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8
2631       }
2632     }
2633   >>
2634   \layout {
2635     \context {
2636       \Score
2637       proportionalNotationDuration = #(ly:make-moment 1 20)
2638     }
2639   }
2640 }
2641 @end lilypond
2642
2643
2644 Pero si observamos con mucho cuidado podremos ver que las notas de la
2645 segunda mitad del 9-illo están espaciadas de forma ligeramente más
2646 ancha que las de la primera mitad del 9-illo.  Para asegurar una
2647 ampliación uniforme, activamos @code{uniform-stretching}, que es una
2648 propiedad de @code{SpacingSpanner}.
2649
2650 @lilypond[quote,verbatim,ragged-right]
2651 \score {
2652   <<
2653     \new RhythmicStaff {
2654       c'2
2655       c'16 c'16 c'16 c'16
2656       \times 4/5 {
2657         c'16 c'16 c'16 c'16 c'16
2658       }
2659     }
2660     \new RhythmicStaff {
2661       \times 8/9 {
2662         c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8
2663       }
2664     }
2665   >>
2666   \layout {
2667     \context {
2668       \Score
2669       proportionalNotationDuration = #(ly:make-moment 1 20)
2670       \override SpacingSpanner #'uniform-stretching = ##t
2671     }
2672   }
2673 }
2674 @end lilypond
2675
2676 Nuestro ejemplo de dos pentagramas ahora está espaciado exactamente,
2677 nuestras relaciones rítmicas son visualmente claras, y podemos incluir
2678 una línea de tiempo graduada o un gráfico, si queremos.
2679
2680 Observe que el paquete de notación proporcional de LilyPond espera que
2681 todas las partituras proporcionales establezcan el atributo
2682 @code{uniform-stretching} de @code{SpacingSpanner} al valor ##t.  El
2683 establecimiento de @code{proportionalNotationDuration} sin ajustar
2684 también el atributo @code{uniform-stretching} de @code{SpacingSpanner}
2685 al valor ##t causará, por ejemplo, que los desplazamientos
2686 (@code{skips}) consuman una cantidad de espacio horizontal incorrecta.
2687
2688 El @code{SpacingSpanner} es un grob abstracto que reside en el
2689 contexto de @code{Score}. Como con nuestros ajustes de
2690 @code{proportionalNotationDuration}, las sobreescrituras al
2691 @code{SpacingSpanner} sólo pueden ocurrir en uno de estos tres lugares
2692 dentro del archivo de entrada: en el bloque @code{\with}, en el bloque
2693 @code{\context} o directamente dentro de la escritura de notas.
2694
2695 De manera predeterminada, sólo hay un @code{SpacingSpanner} por
2696 @code{Score}.  Esto supone que, por omisión, @code{uniform-stretching}
2697 está activado para la partitura completa o desactivado para la
2698 partitura completa.  Sin embargo, podemos sobreescribir este
2699 comportamiento y activar distintas posibilidades de espaciado en
2700 distintos lugares de la partitura.  Lo hacemos con la instrucción
2701 @code{\newSpacingSection}.  Consulte @ref{Área de espaciado nueva} para más
2702 información.
2703
2704 A continuación examinamos los efectos del grabador
2705 @code{Separating_line_group_engraver} y veremos por qué las partituras
2706 proporcionales con frecuencia eliminan este grabador.  El ejemplo
2707 siguiente muestra que hay una pequeña cantidad de espacio
2708 @qq{preparatorio} justo antes de la primera nota de cada sistema.
2709
2710 @lilypond[quote,verbatim,ragged-right]
2711 \paper {
2712   indent = #0
2713 }
2714
2715 \new Staff {
2716   c'1
2717   \break
2718   c'1
2719 }
2720 @end lilypond
2721
2722
2723 Esta cantidad de espacio preparatorio es la misma ya sea después de
2724 una indicación de compás, una armadura o una clave.  El grabador
2725 @code{Separating_line_group_engraver} es responsable de este espacio.
2726 La eliminación de @code{Separating_line_group_engraver} reduce este
2727 espacio a cero.
2728
2729 @lilypond[quote,verbatim,ragged-right]
2730 \paper {
2731   indent = #0
2732 }
2733
2734 \new Staff \with {
2735   \remove Separating_line_group_engraver
2736 } {
2737   c'1
2738   \break
2739   c'1
2740 }
2741 @end lilypond
2742
2743 Los elementos no musicales como la indicación de compás, la armadura,
2744 la clave y las alteraciones son problemáticos en notación
2745 proporcional.  Ninguno de estos elementos tiene duración rítmica.
2746 Pero todos ellos consumen espacio horizontal.  Las distintas
2747 partituras proporcionales abordan este problema de distinta manera.
2748
2749 Sería posible evitar los problemas de espaciado con las armaduras,
2750 simplemente evitando tenerlas.  Esta es una opción válida pues casi
2751 todas las partituras proporcionales son música contemporánea.  Lo
2752 mismo puede valer para las indicaciones de compás, especialmente para
2753 las partituras que incluyen una línea de tiempo graduada u otro
2754 gráfico.  Pero estas partituras son excepcionales y casi todas las
2755 partituras proporcionales incluyen al menos unas pocas indicaciones de
2756 compás.  Las claves y las alteraciones son aún más esenciales.
2757
2758 Así pues ¿qué estrategias existen para el espaciado de los elementos
2759 no musicales en un contexto proporcional?  Una buena opción es la
2760 propiedad @code{strict-note-spacing} de @code{SpacingSpanner}.
2761 Compare las dos partituras siguientes:
2762
2763 @lilypond[quote,verbatim,ragged-right]
2764 \new Staff {
2765   \set Score.proportionalNotationDuration = #(ly:make-moment 1 16)
2766   c''8
2767   c''8
2768   c''8
2769   \clef alto
2770   d'8
2771   d'2
2772 }
2773
2774 \new Staff {
2775   \set Score.proportionalNotationDuration = #(ly:make-moment 1 16)
2776   \override Score.SpacingSpanner #'strict-note-spacing = ##t
2777   c''8
2778   c''8
2779   c''8
2780   \clef alto
2781   d'8
2782   d'2
2783 }
2784 @end lilypond
2785
2786 Las dos partituras son proporcionales, pero el espaciado de la
2787 primera es muy suelto a causa del cambio de clave. Sin embargo, el
2788 espaciado de la segunda partitura se mantiene estricto, porque
2789 @code{strict-note-spacing} está activado.  La activación de
2790 @code{strict-note-spacing} hace que el ancho de las indicaciones de
2791 compás, armaduras, cambios de clave y alteraciones no tomen parte en
2792 el algoritmo de espaciado.
2793
2794 Además de los ajustes dados aquí, hay otros que aparecen con
2795 frecuencia en las partituras proporcionales.  Entre ellos están:
2796
2797 @itemize
2798 @item @code{\override SpacingSpanner #'strict-grace-spacing = ##t}
2799 @item @code{tupletFullLength = ##t}
2800 @item @code{\override Beam #'breakable = ##t}
2801 @item @code{\override Glissando #'breakable = ##t}
2802 @item @code{\override TextSpanner #'breakable = ##t}
2803 @item @code{\remove Forbid_line_break_engraver in the Voice context}
2804 @end itemize
2805
2806 Estos ajustes dan a las notas de adorno un espaciado estricto,
2807 extienden los corchetes de grupo especial para que marquen tanto los
2808 puntos de comienzo como de final, y permiten que los elementos de
2809 extensión se dividan entre los sistemas y las páginas.  Consulte las
2810 partes respectivas del manual para ver estos ajustes relacionados.
2811
2812
2813 @seealso
2814 Referencia de la notación:
2815 @ref{Área de espaciado nueva}.
2816
2817 Fragmentos de código:
2818 @rlsr{Spacing}.
2819
2820
2821 @node Encajar la música en menos páginas
2822 @section Encajar la música en menos páginas
2823 @translationof Fitting music onto fewer pages
2824
2825 En ocasiones, podemos terminar con uno o dos pentagramas en una
2826 segunda página (o tercera, o cuarta...).  Es fastidioso, especialmente
2827 cuando vemos que las páginas anteriores parecen tener espacio de
2828 sobra.
2829
2830 Al investigar los problemas de disposición, una herramienta de valor
2831 incalculable es @code{annotate-spacing}.  Esta instrucción imprime los
2832 valores de un cierto número de variables de espaciado; para ver más
2833 detalles consulte la sección siguiente, @ref{Mostrar el espaciado}.
2834
2835 @menu
2836 * Mostrar el espaciado::
2837 * Cambiar el espaciado::
2838 @end menu
2839
2840
2841 @node Mostrar el espaciado
2842 @subsection Mostrar el espaciado
2843 @translationof Displaying spacing
2844
2845 @cindex espaciado, presentación del
2846 @funindex annotate-spacing
2847
2848 Para presentar gráficamente las dimensiones de las variables de
2849 disposición vertical que pueden verse alteradas por el formato de la
2850 página, establezca @code{annotate-spacing} en el bloque @code{\paper}:
2851
2852 @c need to have \book{} otherwise we get the separate systems. -hwn
2853 @lilypond[verbatim,quote]
2854 #(set-default-paper-size "a6" 'landscape)
2855 \book {
2856   \score { { c4 } }
2857   \paper { annotate-spacing = ##t }
2858 }
2859 @end lilypond
2860
2861
2862 @noindent
2863 Todas las dimensiones de disposición se muestran en espacios de
2864 pentagrama, independientemente de las unidades especificadas en los
2865 bloques @code{\paper} o @code{\layout}. En el ejemplo anterior,
2866 @code{paper-height} tiene un valor de 59.75 @code{staff-spaces}
2867 (espacios de pentagrama), y el @code{staff-size} (tamaño del
2868 pentagrama) es de 20 puntos, el valor predeterminado. Observe que:
2869
2870 @multitable {1 staff-space} {staff-size)/4 * (25.4/72.27) mm}
2871
2872 @item 1 punto
2873 @tab = (25.4/72.27) mm
2874
2875 @item 1 staff-space
2876 @tab = (@code{staff-size})/4 pts
2877 @item
2878 @tab = (@code{staff-size})/4 * (25.4/72.27) mm
2879
2880 @end multitable
2881
2882 @noindent
2883 En este caso, un @code{staff-space} equivale aproximadamente a
2884 1.757mm.  Así, la medida @code{paper-height} de 59.75
2885 @code{staff-spaces} equivale a 105 milímetros, la altura de una hoja
2886 @code{a6} en orientación apaisada.  Las parejas (@var{a},@var{b}) son
2887 intervalos, donde @var{a} es el límite inferior y @var{b} es el límite
2888 superior del intervalo.
2889
2890
2891 @seealso
2892 Referencia de la notación:
2893 @ref{Establecer el tamaño del pentagrama}.
2894
2895 Fragmentos de código:
2896 @rlsr{Spacing}.
2897
2898
2899 @node Cambiar el espaciado
2900 @subsection Cambiar el espaciado
2901 @translationof Changing spacing
2902
2903 La salida de @code{annotate-spacing} revela las dimensiones verticales
2904 con gran detalle.  Para ver más detalles acerca de la modificación de
2905 los márgenes y otras variables de diseño de la página, consulte
2906 @ref{Formateo de las páginas}.
2907
2908 Aparte de los márgenes, hay algunas otras opciones para ahorrar espacio:
2909
2910 @itemize
2911 @item
2912 Forzar los sistemas para que se junten lo más posible entre sí (de
2913 forma que quepan la mayor cantidad de ellos en la página) y al mismo
2914 tiempo estén espaciados de forma que no exista un espacio vacío en la
2915 parte baja del papel.
2916
2917 @example
2918 \paper @{
2919   system-system-spacing = #'((padding . 0) (space . 0.1))
2920   ragged-last-bottom = ##f
2921   ragged-bottom = ##f
2922 @}
2923 @end example
2924
2925 @item
2926 Forzar el número de sistemas.  Puede ser de utilidad de dos formas.
2927 Si tan sólo se establece un valor, incluso el mismo valor que el
2928 número de sistemas que se están trazando de forma predeterminada, ello
2929 ocasionará a veces que se traten de introducir más sistemas en cada
2930 página, pues en este caso se omite un paso en que se produce una
2931 estimación, dando así un encaje mejor en cada página.  Asimismo, el
2932 forzar una reducción neta en el número de sistemas puede producir el
2933 ahorro de una página adicional.  Por ejemplo, si la disposición
2934 predeterminada tiene 11 sistemas, la asignación siguiente fuerza una
2935 disposición con 10 sistemas.
2936
2937 @example
2938 \paper @{
2939   system-count = #10
2940 @}
2941 @end example
2942
2943 @item
2944 Evitar (o reducir en número) los objetos que aumentan el tamaño
2945 vertical de un sistema.  Por ejemplo, las repeticiones de primera y
2946 segunda vez (o repeticiones con finales alternativos) necesitan
2947 espacio adicional.  Si estas repeticiones se reparten a lo largo de
2948 dos sistemas, ocupan más espacio que un sistema con las casillas de
2949 repetición y otro sistema sin ellas.  Por ejemplo, las indicaciones
2950 dinámicas que se @q{salen} de un sistema se pueden acercar al
2951 pentagrama:
2952
2953 @lilypond[verbatim,quote,relative=1]
2954 e4 c g\f c
2955 e4 c g-\tweak #'X-offset #-2.7 -\tweak #'Y-offset #2.5 \f c
2956 @end lilypond
2957
2958 @item
2959 Alterar el espaciado horizontal por medio de @code{SpacingSpanner}.
2960 Para ver más detalles, consulte @ref{Cambiar el espaciado horizontal}.  El
2961 ejemplo siguiente ilustra el espaciado predeterminado:
2962
2963 @lilypond[verbatim,quote]
2964 \score {
2965   \relative c'' {
2966     g4 e e2 |
2967     f4 d d2 |
2968     c4 d e f |
2969     g4 g g2 |
2970     g4 e e2 |
2971   }
2972 }
2973 @end lilypond
2974
2975 @noindent
2976 El ejemplo siguiente modifica @code{common-shortest-duration} de un
2977 valor de @code{1/4} (negra) a @code{1/2} (blanca).  La negra es la
2978 nota más común y la más breve del ejemplo, por lo que al agrandar esta
2979 duración se produce un efecto de @q{apretujamiento}:
2980
2981 @lilypond[verbatim,quote]
2982 \score {
2983   \relative c'' {
2984     g4 e e2 |
2985     f4 d d2 |
2986     c4 d e f |
2987     g4 g g2 |
2988     g4 e e2 |
2989   }
2990   \layout {
2991     \context {
2992       \Score
2993       \override SpacingSpanner
2994         #'common-shortest-duration = #(ly:make-moment 1 2)
2995     }
2996   }
2997 }
2998 @end lilypond
2999
3000 @noindent
3001 La propiedad @code{common-shortest-duration} no se puede modificar de
3002 manera dinámica, por lo que se debe situar siempre dentro de un
3003 bloque @code{\context} de forma que se aplique a la partitura
3004 completa.
3005
3006 @end itemize
3007
3008
3009 @seealso
3010 Referencia de la notación:
3011 @ref{Formateo de las páginas},
3012 @ref{Cambiar el espaciado horizontal}.
3013
3014 Fragmentos de código:
3015 @rlsr{Spacing}.