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