]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/es/notation/spacing.itely
Merge branch 'master' into translation
[lilypond.git] / Documentation / es / notation / spacing.itely
1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
2
3 @ignore
4     Translation of GIT committish: 232de3305dd5262822fd1e081ddd52581319f4ce
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.17.6"
12
13 @ignore
14 GDP TODO list
15 This block comment is copied here to ease comparation of
16 original and its translation.
17
18 Negative numbers are allowed:
19 > Are you sure? The following works well
20 > \paper{
21 >   first-page-number = -2
22 > }
23 > and prints page number -1 on the second page, for example.
24
25
26 In 5.2.1 the @refbugs (line 495 in spacing.itely on master) it
27 states:
28
29 "@code{layout-set-staff-size} does not change the distance between
30 the
31 staff lines."
32
33 Could we add a sentence:
34 "Use instead the pair               fontSize = #@var{N}
35             \override StaffSymbol.staff-space = #(magstep
36 @var{N})
37 inside the Staff context to change the size of the font and the
38 distance between
39 staff lines accordingly."
40
41 Actually I found, that the @internalsref{StaffSymbol} at line 481
42 sends to an incomplete
43 documentation.  The property staff-space is not explained here.  I
44 thought Y-extent might be of
45 help, but it is in turn explained by x-space which again is
46 missing from the list.  Who has the
47 knowledge to fix this?
48
49
50 Clarify
51 http://code.google.com/p/lilypond/issues/detail?id=68
52
53 @end ignore
54
55
56 @node Problemas de espaciado
57 @chapter Problemas de espaciado
58 @translationof Spacing issues
59
60 La disposición global sobre el papel viene determinada por tres
61 factores: el diseño de página, los saltos de línea y el espaciado.
62 Estos factores influyen entre sí.  La elección de uno u otro espaciado
63 determina qué densidad termina teniendo cada sistema de música.  Esto
64 influye en el lugar en que se eligen los saltos de línea y, en último
65 término, en el número de páginas que tiene una partitura.
66
67 Considerado globalmente, este proceso se produce en cuatro fases: en
68 primer lugar se eligen unas distancias elásticas o @q{muelles},
69 basados en la duración de las figuras.  Se prueban todas las
70 combinaciones de saltos de línea posibles, y para cada una de ellas se
71 calcula una puntuación de @q{maldad}.  Después se hace una estimación
72 de la altura de cada uno de los posibles sistemas.  Finalmente se
73 selecciona una combinación de saltos de página y de línea de tal forma
74 que ni el espaciado horizontal ni el vertical estén demasiado
75 estrechos ni estirados.
76
77 Hay dos tipos de bloques que pueden contener ajustes de disposición:
78 @code{\paper @{@dots{}@}} y @code{\layout @{@dots{}@}}.  El bloque
79 @code{\paper} contiene ajustes de disposición de la página que se
80 espera sean los mismos para todas las partituras de un libro, como la
81 altura de la hoja o si se imprimen los números de página, etc.  Véase
82 @ref{Disposición de la página}.  El bloque @code{\layout} contiene
83 ajustes de disposición de la partitura, como el número de sistemas que
84 utilizar, o la separación entre grupos de pentagramas, etc.  Véase
85 @ref{Disposición de la partitura}.
86
87 @menu
88 * Disposición de la página::
89 * Disposición de la partitura::
90 * Saltos::
91 * Espaciado vertical::
92 * Espaciado horizontal::
93 * Encajar la música en menos páginas::
94 @end menu
95
96
97 @node Disposición de la página
98 @section Disposición de la página
99 @translationof Page layout
100
101 Esta sección estudia las opciones de disposición de la página para el
102 bloque @code{\paper}.
103
104 @menu
105 * El bloque \paper::
106 * Tamaño del papel y escalado automático::
107 * Variables de espaciado de \paper verticales fijas::
108 * Variables de espaciado de \paper verticales flexibles::
109 * Variables de espaciado de \paper horizontales::
110 * Otras variables de \paper::
111 @end menu
112
113
114 @node El bloque \paper
115 @subsection El bloque @code{\paper}
116 @translationof The \paper block
117
118 El bloque @code{\paper} puede aparecer dentro de un bloque
119 @code{\book}, pero no dentro de un bloque @code{\score}.  Los ajustes
120 de un bloque @code{\paper} se aplican a todo el libro, que puede
121 comprender varias partituras.  Entre los ajustes que pueden aparecer
122 dentro de un bloque @code{\paper} están los siguientes:
123
124 @itemize
125
126 @item
127 la función de Scheme @code{set-paper-size},
128
129 @item
130 variables de @code{\paper} utilizadas para personalizar la disposición
131 de la página, y
132
133 @item
134 definiciones de marcado utilizadas para personalizar la disposición de
135 los encabezamientos, pies y títulos.
136
137 @end itemize
138
139 La función @code{set-paper-size} se estudia en la sección siguiente,
140 @ref{Tamaño del papel y escalado automático}.  Las variables de
141 @code{\paper} que se ocupan de la disposición de la página
142 se estudian en secciones posteriores.  Las definiciones de elementos
143 de marcado que se encargan de los encabezamientos, pies y títulos se
144 estudian en @ref{Títulos encabezamientos y pies de página personalizados}.
145
146 Casi todas las variables de @code{\paper} funcionan solamente dentro
147 de un bloque @code{\paper}.  Las pocas que funcionan también en un
148 bloque @code{\layout} están relacionadas en @ref{El bloque \layout}.
149
150 Excepto cuando se especifica lo contrario, todas las variables de
151 @code{\paper} que corresponden a distancias sobre la página se miden
152 en milímetros, a no ser que el usuario especifique unas unidades
153 diferentes.  Por ejemplo, la declaración siguiente
154 establece el margen superior @code{top-margin} a diez milímetros:
155
156 @example
157 \paper @{
158   top-margin = 10
159 @}
160 @end example
161
162 Para fijarlo en @code{0.5} pulgadas, utilice el sufijo de unidades
163 @code{\in}:
164
165 @example
166 \paper @{
167   top-margin = 0.5\in
168 @}
169 @end example
170
171 Los sufijos de unidades que están disponibles son @code{\mm},
172 @code{\cm}, @code{\in} y @code{\pt}.  Estas unidades son valores
173 simples para convertir a partir de milímetros; están definidos en
174 @file{ly/paper-defaults-init.ly}.  Por claridad, al usar milímetros,
175 se suele escribir el sufijo @code{\mm} aunque no es necesario
176 técnicamente.
177
178 También es posible definir valores de @code{\paper} utilizando Scheme.
179 El equivalente de Scheme del ejemplo anterior es:
180
181 @example
182 \paper @{
183   #(define top-margin (* 0.5 in))
184 @}
185 @end example
186
187 @seealso
188 Referencia de la notación:
189 @ref{Tamaño del papel y escalado automático},
190 @ref{Títulos encabezamientos y pies de página personalizados},
191 @ref{El bloque \layout}.
192
193 Archivos instalados:
194 @file{ly/paper-defaults-init.ly}.
195
196
197 @node Tamaño del papel y escalado automático
198 @subsection Tamaño del papel y escalado automático
199 @translationof Paper size and automatic scaling
200
201 @cindex tamaño del papel
202 @cindex tamaño de la página
203
204 @funindex \paper
205
206 @menu
207 * Fijar el tamaño del papel::
208 * Escalado automático al tamaño del papel::
209 @end menu
210
211
212 @node Fijar el tamaño del papel
213 @unnumberedsubsubsec Fijar el tamaño del papel
214 @translationof Setting paper size
215
216 @q{A4} es el valor predeterminado si no se establece ningún tamaño de
217 página explícitamente.  Sin embargo, existen dos funciones que se
218 pueden usar para modificarlo: @code{set-default-paper-size},
219
220 @example
221 #(set-default-paper-size "quarto")
222 @end example
223
224 que siempre se debe colocar en el ámbito superior, y
225 @code{set-paper-size},
226
227 @example
228 \paper @{
229   #(set-paper-size "tabloid")
230 @}
231 @end example
232
233 que se debe colocar siempre dentro de un bloque @code{\paper}.
234
235 Si se usa la función @code{set-default-paper-size} en el ámbito
236 superior jerárquico, debe ir antes de cualquier bloque @code{\paper}.
237 @code{set-default-paper-size} establece el tamaño de todas las
238 páginas, mientras que @code{set-paper-size} establece sólo el tamaño
239 de las páginas a las que se aplica el bloque @code{\paper}.  Por
240 ejemplo, si el bloque @code{\paper} está al principio del archivo,
241 aplica el tamaño de papel a todas las páginas.  Si el bloque
242 @code{\paper} está dentro de un bloque @code{\book}, entonces el
243 tamaño del papel sólo se aplica a ese libro.
244
245 Cuando se usa la función @code{set-paper-size}, se debe colocar
246 @emph{antes} de cualquier otra función que se utilice dentro del mismo
247 bloque @code{\paper}.  Véase @ref{Escalado automático al tamaño del
248 papel}.
249
250 Los tamaños de página están definidos en el archivo
251 @file{scm/paper.scm}, y aunque es posible añadir tamaños
252 personalizados, se sobreescribirán en las actualizaciones del software
253 posteriores.  La lista de todos los tamaños de papel disponibles
254 está en @ref{Tamaños de página predefinidos}.
255
256 @c An appendix entry exists for paper sizes but is not auto-generated
257
258 Se puede usar la siguiente instrucción en el archivo para añadir un
259 tamaño de página personalizado que se puede usar después con
260 @code{set-default-paper-size} o con @code{set-paper-size} según
261 convenga,
262
263 @example
264 #(set! paper-alist (cons '("mi tamaño" . (cons (* 15 in) (* 3 in))) paper-alist))
265
266 \paper @{
267   #(set-paper-size "mi tamaño")
268 @}
269 @end example
270
271 Se puede usar cualquiera de las unidades @code{in} (pulgadas),
272 @code{cm} (centímetros) o @code{mm} (milímetros).
273
274 @cindex papel, tamaño, orientación
275 @cindex página, orientación de la
276 @cindex papel, tamaño, apaisado
277
278 Si se añade el símbolo @code{'landscape} a la función del tamaño de la
279 página, el papel se gira 90 grados y se establece adecuadamente la
280 anchura de las líneas.
281
282 @example
283 #(set-default-paper-size "a6" 'landscape)
284 @end example
285
286 Se pueden intercambiar las dimensiones del papel @emph{sin que la
287 impresión resulte girada} (como cuando se imprime en tamaño tarjeta
288 postal, o al crear gráficos para su inclusión en lugar de un documento
289 independiente) añadiendo @samp{landscape} después del nombre del
290 propio tamaño del papel:
291
292 @example
293 #(set-default-paper-size "a6landscape")
294 @end example
295
296 Cuando el tamaño del papel termina de forma explícita con
297 @samp{landscape} o con @samp{portrait}, la presencia de un símbolo
298 @code{'landscape} @emph{solamente} afecta a la orientación de la
299 impresión, no a las dimensiones del papel que se usan para la
300 disposición.
301
302 @seealso
303 Referencia de la notación:
304 @ref{Escalado automático al tamaño del papel},
305 @ref{Tamaños de página predefinidos}.
306
307 Archivos instalados:
308 @file{scm/paper.scm}.
309
310
311 @node Escalado automático al tamaño del papel
312 @unnumberedsubsubsec Escalado automático al tamaño del papel
313 @translationof Automatic scaling to paper size
314
315 Si se cambia el tamaño del papel con una de las funciones de Scheme
316 (@code{set-default-paper-size} o @code{set-paper-size}), los valores
317 de algunas variables de @code{\paper} se escalan automáticamente al
318 nuevo tamaño.  Para sortear el escalado automático para una variable
319 determinada, fije el valor de la variable después de establecer el
320 tamaño del papel.  Observe que el escalado automático no se activa
321 mediante el ajuste de las variables
322 @code{paper-height} o de @code{paper-width},
323 incluso aunque @code{paper-width} puede influir sobre otros valores
324 (esto es distinto al escalado y se estudia más abajo).  Las funciones
325 @code{set-default-paper-size} y @code{set-paper-size} se describen en
326 @ref{Fijar el tamaño del papel}.
327
328 Las dimensiones verticales afectadas por el escalado automático son
329 @code{top-margin} y @code{bottom-margin}
330 (véase @ref{Variables de espaciado de \paper verticales fijas}).
331 Las dimensiones
332 horizontales afectadas por el escalado automático son
333 @code{left-margin}, @code{right-margin}, @code{inner-margin},
334 @code{outer-margin}, @code{binding-offset}, @code{indent} y
335 @code{short-indent} (véase
336 @ref{Variables de espaciado de \paper horizontales}).
337
338 Los valores predeterminados para estas dimensiones están fijados en el
339 archivo @file{ly/paper-defaults-init.ly}, usando variables internas
340 llamadas @code{top-margin-default}, @code{bottom-margin-default}, etc.
341 Estos son los valores que resultan del tamaño predeterminado del papel
342 @code{a4}.  Como referencia, con el papel @code{a4} la altura
343 @code{paper-height} es @code{297\mm} y la anchura @code{paper-width}
344 es @code{210\mm}.
345
346 @seealso
347 Referencia de la notación:
348 @ref{Variables de espaciado de \paper verticales fijas},
349 @ref{Variables de espaciado de \paper horizontales}.
350
351 Archivos de inicio:
352 @file{ly/paper-defaults-init.ly},
353 @file{scm/paper.scm}.
354
355
356 @node Variables de espaciado de \paper verticales fijas
357 @subsection Variables de espaciado de @code{\paper} verticales fijas
358 @translationof Fixed vertical spacing \paper variables
359
360 @warning{Algunas dimensiones de @code{@bs{}paper} se escalan
361 automáticamente al tamaño del papel, lo que puede llevar a un
362 comportamiento no esperado.  Véase @ref{Escalado automático al tamaño
363 del papel}.}
364
365 Los valores predeterminados (previos al escalado) están definidos en
366 el archivo @file{ly/paper-defaults-init.ly}.
367
368 @table @code
369 @item paper-height (altura del papel)
370 @funindex paper-height
371
372 Altura de la página, no fijada de forma predeterminada.  Observe que
373 el escalado automático de algunas dimensiones verticales no resulta
374 afectado por esto.
375
376 @item top-margin (margen superior)
377 @funindex top-margin
378
379 Margen entre el extremo superior de la página y la parte superior de
380 la zona imprimible.  Si se modifica el tamaño del papel, el valor
381 predeterminado de esta dimensión se escala de acuerdo con ello.
382
383 @item bottom-margin (margen inferior)
384 @funindex bottom-margin
385
386 Margen entre la parte inferior de la zona imprimible y el extremo
387 inferior de la página.  Si se modifica el tamaño del papel, se escala
388 de acuerdo con ello el valor predeterminado de esta dimensión.
389
390 @item ragged-bottom (sin justificar por abajo)
391 @funindex ragged-bottom
392
393 Si se fija al valor verdadero, los sistemas no se reparten
394 verticalmente hasta abajo de la página.  Esto no afecta a la última
395 página.  Se debe fijar a verdadero para piezas que sólo tienen dos o
396 tres sistemas por página, como por ejemplo las partituras orquestales.
397
398 @item ragged-last-bottom (sin justificar la última por abajo)
399 @funindex ragged-last-bottom
400
401 Si se establece al valor falso, los sistemas se reparten verticalmente
402 hasta abajo de la última página.  Las piezas que llenan sobradamente
403 dos o más páginas deben tener este valor fijado a falso.  También
404 afecta a la última página de las partes de libro, es decir, partes de
405 un libro creadas con bloques @code{\bookpart}.
406
407 @end table
408
409 @seealso
410 Referencia de la notación:
411 @ref{Escalado automático al tamaño del papel}.
412
413 Archivos de inicio:
414 @file{ly/paper-defaults-init.ly}.
415
416 Fragmentos de código:
417 @rlsr{Spacing}.
418
419 @knownissues
420 Los títulos (extraídos del bloque @code{\header}) se tratan como
421 sistemas, así pues @code{ragged-bottom} y @code{ragged-last-bottom}
422 aumentan la separación entre los títulos y el primer sistema de la
423 partitura.
424
425 Los tamaños de papel definidos explícitamente
426 sobreescriben cualquier ajuste de los márgenes
427 superior o inferior definidos por el usuario.
428
429
430 @node Variables de espaciado de \paper verticales flexibles
431 @subsection Variables de espaciado de @code{\paper} verticales flexibles
432 @translationof Flexible vertical spacing \paper variables
433
434 En casi todos los casos es preferible que las distancias verticales
435 entre ciertos elementos (como márgenes, títulos, sistemas y las
436 distintas partituras) sean flexibles, de manera que se amplíen y
437 compriman adecuadamente dependiendo de la situación.  Están
438 disponibles un cierto número de variables del bloque @code{\paper}
439 (relacionadas más abajo) para realizar un ajuste fino del
440 comportamiento de estas dimensiones frente a su ampliación o
441 compresión.
442
443 Observe que las variables de @code{\paper} que se estudian en esta
444 sección no controlan el espaciado de los pentagramas que están dentro
445 de los sistemas individuales.  El espaciado dentro de los sistemas se
446 controla por medio de propiedades de grob, con ajustes que se escriben
447 normalmente dentro de un bloque @code{\score} o @code{\layout}, y no
448 dentro del bloque @code{\paper}.
449 Véase @ref{Espaciado vertical flexible dentro de los sistemas}.
450
451 @menu
452 * Estructura de las listas-A de espaciado vertical flexible::
453 * Lista de variables de espaciado de \paper verticales flexibles::
454 @end menu
455
456
457 @node Estructura de las listas-A de espaciado vertical flexible
458 @unnumberedsubsubsec Estructura de las listas-A de espaciado vertical flexible
459 @translationof Structure of flexible vertical spacing alists
460
461 Cada una de las variables de espaciado de @code{\paper} flexibles es
462 una lista-A (lista asociativa) que contiene cuatro @emph{claves}:
463
464 @itemize
465
466 @item
467 @code{basic-distance} (distancia básica):
468 distancia vertical, medida en espacios de pentagrama, entre los
469 @emph{puntos de referencia} de los dos elementos, cuando no resulte
470 ninguna colisión, y no se produzca ninguna ampliación o compresión.
471 El punto de referencia de un elemento de marcado (de título o del
472 nivel jerárquico superior) es su punto más alto, y el punto de
473 referencia de un sistema es el centro vertical del @code{StaffSymbol}
474 más cercano (incluso si se trata de una línea que no es un pentagrama,
475 como un contexto @code{Lyrics}).  Los valores de @code{distancia básica} menores
476 de @code{padding} o de @code{minimum-distance} no son significativos,
477 porque la distancia resultante nunca será menor de @code{padding} o de
478 @code{minimum-distance}.
479
480 @item
481 @code{minimum-distance} (distancia mínima):
482 la distancia vertical mínima permitida, medida en espacios de
483 pentagrama, entre los puntos de referencia de los dos elementos,
484 cuando se produce una compresión.  Los valores de
485 @code{minimum-distance} menores de @code{padding} no son
486 significativos, porque la distancia resultante nunca será menor de
487 @code{padding}.
488
489 @c TODO: explain skylines somewhere and xref to it from here.
490
491 @item
492 @code{padding} (relleno):
493 mínimo espacio vertical vacío necesario entre los rectángulos
494 circundantes (o las líneas de horizonte) de los dos elementos,
495 medido en espacios de pentagrama.
496
497 @item
498 @code{stretchability} (ampliabilidad):
499 medida sin unidades de la propensión relativa de esta dimensión a
500 ampliarse.  Si es cero, la distancia no se ampliará (a no ser que
501 resultasen colisiones).  Si es positiva, la significación del valor de
502 ampliabilidad de una dimensión concreta depende solamente de su
503 relación con los valores de @code{stretchability} de las otras
504 dimensiones.  Por ejemplo, si una dimensión tiene el doble de
505 @code{stretchability} que otra, se ampliará con el doble de facilidad.
506 Los valores deben ser no negativos y finitos.  El valor @code{+inf.0}
507 desencadena un error de programación y se ignora, pero se puede usar
508 @code{1.0e7} para un muelle casi infinitamente ampliable.  Si no se
509 fija un valor, el valor predeterminado se establece a @code{basic-distance}.
510 Observe que la propensión de la dimensión a @emph{comprimirse} no se
511 puede establecer directamente por el usuario y es igual a
512 (@code{basic-distance}@tie{}@minus{}@tie{}@code{minimum-distance}).
513
514 @end itemize
515
516 Si una página tiene un margen inferior no justificado, la distancia
517 resultante es la mayor de:
518
519 @itemize
520
521 @item
522 @code{basic-distance},
523
524 @item
525 @code{minimum-distance}, y
526
527 @item
528 @code{padding} más la menor distancia necesaria
529 para eliminar las colisiones.
530
531 @end itemize
532
533 Para partituras de varias páginas con la parte inferior
534 no justificada en la última página, ésta usará el mismo
535 espaciado que la página anterior
536 siempre y cuando haya espacio suficiente para ello.
537
538 Los métodos específicos para la modificación de las listas-A se
539 estudian en @ref{Modificación de las listas-A}.  El siguiente ejemplo
540 muestra las dos formas en que pueden modificarse estas listas-A.  La
541 primera declaración actualiza un par clave-valor individualmente, y la
542 segunda redefine la variable completamente:
543
544 @example
545 \paper @{
546   system-system-spacing #'basic-distance = #8
547   score-system-spacing =
548     #'((basic-distance . 12)
549        (minimum-distance . 6)
550        (padding . 1)
551        (stretchability . 12))
552 @}
553 @end example
554
555
556 @node Lista de variables de espaciado de \paper verticales flexibles
557 @unnumberedsubsubsec Lista de variables de espaciado de @code{\paper} verticales flexibles
558 @translationof List of flexible vertical spacing \paper variables
559
560 Los nombres de estas variables siguen el formato
561 @code{@var{superior}-@var{inferior}-spacing}, donde
562 @code{@var{superior}} e @code{@var{inferior}} son los elementos que
563 van a ser espaciados.  Cada distancia se mide entre los puntos de
564 referencia de los dos elementos (véase más arriba la descripción de la
565 estructura de la lista-A).  Observe que en estos nombres de variable,
566 el término @q{@code{markup}} se refiere tanto a @emph{elementos de
567 marcado de título} (@code{bookTitleMarkup} o @code{scoreTitleMarkup})
568 como a @emph{elementos de marcado del nivel superior} (véase
569 @ref{Estructura del archivo}).  Todas las distancias se miden en
570 espacios de pentagrama.
571
572 Los ajustes predeterminados están definidos en el archivo
573 @file{ly/paper-defaults-init.ly}.
574
575 @c TODO: Where do headers/footers fit in? -mp
576
577 @table @code
578 @item markup-system-spacing
579 @funindex markup-system-spacing
580
581 distancia entre un elemento de marcado (de título o del nivel
582 superior) y el sistema que le sigue.
583
584 @item score-markup-spacing
585 @funindex score-markup-spacing
586
587 distancia entre el último sistema de una partitura y el elemento de
588 marcado (de título o del nivel superior) que le sigue.
589
590 @item score-system-spacing
591 @funindex score-system-spacing
592
593 distancia entre el último sistema de una partitura y el primer sistema
594 de la partitura que le sigue, cuando no existe ningún elemento de
595 marcado (de título o del nivel superior) entre ellos.
596
597 @item system-system-spacing
598 @funindex system-system-spacing
599
600 distancia entre dos sistemas dentro de la misma partitura.
601
602 @item markup-markup-spacing
603 @funindex markup-markup-spacing
604
605 distancia entre dos elementos de marcado (de título o del nivel
606 superior).
607
608 @item last-bottom-spacing
609 @funindex last-bottom-spacing
610
611 distancia desde el último sistema o elemento de marcado del nivel
612 superior en una página, hasta la parte inferior de la zona imprimible
613 (es decir, el extremo superior del margen inferior).
614
615 @item top-system-spacing
616 @funindex top-system-spacing
617
618 distancia desde la parte superior de la zona imprimible (es decir, el
619 extremo inferior del margen superior) hasta el primer sistema de una
620 página, cuando no hay ningún elemento de marcado (de título o del
621 nivel superior) entre los dos.
622
623 @item top-markup-spacing
624 @funindex top-markup-spacing
625
626 distancia desde el extremo superior de la zona imprimible (es decir,
627 el extremo inferior del margen superior) hasta el primer elemento de
628 marcado (de título o del nivel superior) sobre una página, cuando no
629 hay ningún sistema entre los dos.
630 @end table
631
632 @seealso
633 Referencia de la notación:
634 @ref{Espaciado vertical flexible dentro de los sistemas}.
635
636 Archivos de inicio:
637 @file{ly/paper-defaults-init.ly}.
638
639 Fragmentos de código:
640 @rlsr{Spacing}.
641
642
643 @node Variables de espaciado de \paper horizontales
644 @subsection Variables de espaciado de \paper horizontales
645 @translationof Horizontal spacing \paper variables
646
647 @warning{Algunas dimensiones de @code{@bs{}paper} se escalan
648 automáticamente al tamaño del papel, lo que puede dar lugar a un
649 comportamiento distinto al esperado.  Véase
650 @ref{Escalado automático al tamaño del papel}.}
651
652 @menu
653 * Variables de \paper para la anchura y los márgenes::
654 * Variables de \paper para el modo de doble cara::
655 * Variables de \paper para desplazamientos y sangrados::
656 @end menu
657
658
659 @node Variables de \paper para la anchura y los márgenes
660 @unnumberedsubsubsec Variables de @code{\paper} para la anchura y los márgenes
661 @translationof \paper variables for widths and margins
662
663 Los valores predeterminados (antes del escalado) que no están
664 relacionados aquí se encuentran definidos en el archivo
665 @file{ly/paper-defaults-init.ly}.
666
667 @table @code
668
669 @item paper-width
670 @funindex paper-width
671
672 Anchura de la página, sin fijar de forma predeterminada.  Aunque
673 @code{paper-width} no tiene ningún efecto sobre el escalado automático
674 de algunas dimensiones horizontales, sí influye sobre la variable
675 @code{line-width}.  Si están establecidas las dos variables
676 @code{paper-width} y @code{line-width}, entonces también se actualizan
677 @code{left-margin} y @code{right-margin}.  Véase también
678 @code{check-consistency}.
679
680 @item line-width
681 @funindex line-width
682
683 Dimensiones horizontales de las líneas del pentagrama en los sistemas
684 sin sangrado y justificados, igual a
685 @code{(paper-width@tie{}@minus{}@tie{}left-margin@tie{}@minus{}@tie{}right-margin)}
686 cuando está sin fijar.  Si @code{line-width} está fijado, y tanto
687 @code{left-margin} como @code{right-margin} están sin fijar, entonces
688 los márgenes se actualizan para centrar los sistemas automáticamente
689 sobre la página.  Véase también @code{check-consistency}.
690 Esta variable también se puede fijar dentro de un bloque @code{\layout}.
691
692 @item left-margin
693 @funindex left-margin
694
695 Margen entre el extremos izquierdo de la página y el comienzo de las
696 líneas del pentagrama en los sistemas sin sangrado.  Si el tamaño del
697 papel se modifica, el valor predeterminado de esta dimensión se escala
698 de acuerdo con ello.  Si no se fija el valor de @code{left-margin}, y
699 tanto @code{line-width} como @code{right-margin} están fijados,
700 entonces se establece el valor de @code{left-margin} a
701 @code{(paper-width@tie{}@minus{}@tie{}line-width@tie{}@minus{}@tie{}right-margin)}.
702 Si solamente está fijado @code{line-width}, entonces los dos márgenes
703 se establecen a
704 @code{((paper-width@tie{}@minus{}@tie{}line-width)@tie{}/@tie{}2)}, y
705 como consecuencia los sistemas se centran sobre la página.  Véase
706 también @code{check-consistency}.
707
708 @item right-margin
709 @funindex right-margin
710
711 Margen entre el extremo derecho de la página y el final de las líneas
712 del pentagrama en sistemas justificados.  Si el tamaño de la página se
713 modifica, el valor predeterminado de esta dimensión se escala de
714 acuerdo con ello.  Si @code{right-margin} está sin fijar, y tanto
715 @code{line-width} como @code{left-margin} están fijados, el valor de
716 @code{right-margin} se establece a
717 @code{(paper-width@tie{}@minus{}@tie{}line-width@tie{}@minus{}@tie{}left-margin)}.
718 Si solamente está fijado @code{line-width}, los dos márgenes se
719 establecen a
720 @code{((paper-width@tie{}@minus{}@tie{}line-width)@tie{}/@tie{}2)}, y
721 como consecuencia los sistemas aparecen centrados sobre la página.
722 Véase también @code{check-consistency}.
723
724 @item check-consistency
725 @funindex check-consistency
726
727 Si se establece al valor verdadero, se imprime una advertencia en caso
728 de que la suma de @code{left-margin}, @code{line-width} y
729 @code{right-margin} no coincida exactamente con el valor de
730 @code{paper-width}, y se sustituye cada uno de estos valores (excepto
731 @code{paper-width}) con su valor predeterminado (escalado al tamaño
732 del papel si es necesario).  Si está fijado al valor falso, se ignora
733 cualquier inconsistencia y se permite que los sistemas se salgan del
734 borde del papel.
735
736 @item ragged-right
737 @funindex ragged-right
738
739 Si está fijado al valor verdadero, los sistemas no cubren el ancho de
740 la línea.  En lugar de ello, los sistemas finalizan en su longitud
741 horizontal natural.  Valor predeterminado: @code{#t} para las
742 partituras con un solo sistema, y @code{#f} para partituras que tienen
743 dos o más sistemas.  Esta variable también se puede establecer dentro
744 de un bloque @code{\layout}.
745
746 @item ragged-last
747 @funindex ragged-last
748
749 Si está fijado al valor verdadero, el último sistema de la partitura
750 no llena toda la anchura de la línea.  En lugar de ello, el último
751 sistema finaliza en su longitud horizontal natural.  Valor
752 predeterminado: @code{#f}.  Esta variable también puede ajustarse
753 dentro de un bloque @code{\layout}.
754
755 @end table
756
757 @seealso
758 Referencia de la notación:
759 @ref{Escalado automático al tamaño del papel}.
760
761 Archivos de inicio:
762 @file{ly/paper-defaults-init.ly}.
763
764 @knownissues
765 Los tamaños de papel definidos explícitamente
766 sobreescriben cualquier ajuste de los márgenes
767 izquierdo o derecho definidos por el usuario.
768
769
770 @node Variables de \paper para el modo de doble cara
771 @unnumberedsubsubsec Variables de @code{\paper} para el modo de doble cara
772 @translationof \paper variables for two-sided mode
773
774 Los valores predeterminados (antes del escalado) se definen en
775 @file{ly/paper-defaults-init.ly}.
776
777 @table @code
778
779 @item two-sided
780 @funindex two-sided
781
782 @cindex encuadernación
783 @cindex margen de encuadernación
784
785 Si tiene el valor verdadero, utilizar @code{inner-margin},
786 @code{outer-margin} y @code{binding-offset} para determinar los
787 márgenes dependiendo de si el número de la página es par o impar.
788 Esto sobreescribe a @code{left-margin} y a @code{right-margin}.
789
790 @item inner-margin
791 @funindex inner-margin
792
793 Margen que todas las páginas tienen en el lado interno si forman parte
794 de un libro.  Si el tamaño del papel se modifica, el valor
795 predeterminado de esta dimensión se escala de acuerdo con ello.
796 Solamente funciona con @code{two-sided} fijado al valor verdadero.
797
798 @item outer-margin
799 @funindex outer-margin
800
801 Margen que todas las páginas tienen en el lado externo si forman parte
802 de un libro.  Si el tamaño del papel se modifica, el valor
803 predeterminado de esta dimensión se escala de acuerdo con ello.
804 Solamente funciona con @code{two-sided} fijado al valor verdadero.
805
806 @item binding-offset
807 @funindex binding-offset
808
809 Medida en que se aumenta @code{inner-margin} para asegurar que no se
810 oculta nada a causa de la encuadernación.  Si el tamaño del papel se
811 modifica, el valor predeterminado de esta dimensión se escala de
812 acuerdo con ello.  Solamente funciona con @code{two-sided} fijado al
813 valor verdadero.
814
815 @end table
816
817 @seealso
818 Referencia de la notación:
819 @ref{Escalado automático al tamaño del papel}.
820
821 Archivos de inicio:
822 @file{ly/paper-defaults-init.ly}.
823
824
825 @node Variables de \paper para desplazamientos y sangrados
826 @unnumberedsubsubsec Variables de @code{\paper} para desplazamientos y sangrados
827 @translationof \paper variables for shifts and indents
828
829 Los valores predeterminados (antes del escalado) que no se relacionan
830 aquí están definidos en el archivo @file{ly/paper-defaults-init.ly}.
831
832 @table @code
833
834 @item horizontal-shift
835 @funindex horizontal-shift
836
837 @c This default value is buried in the middle of page.scm.  -mp
838
839 Medida en que todos los sistemas (incluidos los títulos de cabecera y
840 los separadores de sistemas) se desplazan a la derecha.
841 Predeterminado: @code{0.0}.
842
843 @item indent
844 @funindex indent
845
846 Nivel de sangrado para el primer sistema de una partitura.  Si se
847 modifica el tamaño del papel, el valor predeterminado de esta
848 dimensión se escala de acuerdo con ello.  Esta variable también se
849 puede ajustar dentro de un bloque @code{\layout}.
850
851 @item short-indent
852 @funindex short-indent
853
854 Nivel de sangrado para todos los sistemas de una partitura excepto el
855 primero.  Si el tamaño del papel se modifica, el valor predeterminado
856 de esta dimensión se escala de acuerdo con ello.  Esta variable
857 también se puede ajustar dentro de un bloque @code{\layout}.
858
859 @end table
860
861 @seealso
862 Referencia de la notación:
863 @ref{Escalado automático al tamaño del papel}.
864
865 Archivos de inicio:
866 @file{ly/paper-defaults-init.ly}.
867
868 Fragmentos de código:
869 @rlsr{Spacing}.
870
871
872 @node Otras variables de \paper
873 @subsection Otras variables de @code{\paper}
874 @translationof Other \paper variables
875
876 @menu
877 * Variables de \paper para los saltos de línea::
878 * Variables de \paper para los saltos de página::
879 * Variables de \paper para la numeración de las páginas::
880 * Variables de \paper diversas::
881 @end menu
882
883
884 @node Variables de \paper para los saltos de línea
885 @unnumberedsubsubsec Variables de @code{\paper} para los saltos de línea
886 @translationof \paper variables for line breaking
887
888 @table @code
889
890 @item max-systems-per-page
891 @funindex max-systems-per-page
892
893 Número máximo de sistemas que se colocan sobre una página.  Solo está
894 contemplado por el algoritmo @code{ly:optimal-breaking}.  Valor
895 predeterminado: no fijado.
896
897 @item min-systems-per-page
898 @funindex min-systems-per-page
899
900 Número mínimo de sistemas que se colocan sobre una página.  Puede
901 causar que las páginas aparezcan atiborradas si el valor es demasiado
902 grande En el momento actual solo está contemplado por el algoritmo
903 @code{ly:optimal-breaking}.  Valor predeterminado: no fijado.
904
905 @item systems-per-page
906 @funindex systems-per-page
907
908 Número de sistemas que se deben colocar en cada página.  En el momento
909 actual solo está contemplado por el algoritmo
910 @code{ly:optimal-breaking}.  Valor predeterminado: no fijado.
911
912 @item system-count
913 @funindex system-count
914
915 Número de sistemas que utilizar para una partitura. Valor
916 predeterminado: no fijado.  Esta variables también se puede ajustar
917 dentro de un bloque @code{\layout}.
918
919 @end table
920
921 @seealso
922 Referencia de la notación:
923 @ref{Saltos de línea}.
924
925
926 @node Variables de \paper para los saltos de página
927 @unnumberedsubsubsec Variables de @code{\paper} para los saltos de página
928 @translationof \paper variables for page breaking
929
930 Los valores predeterminados que no están relacionados aquí, se definen
931 en el archivo @file{ly/paper-defaults-init.ly}
932
933 @table @code
934
935 @item page-breaking
936 @funindex page-breaking
937
938 Algoritmo de saltos de página que utilizar.  Se puede elegir entre
939 @code{ly:minimal-breaking}, @code{ly:page-turn-breaking},
940 @code{ly:one-line-breaking} y @code{ly:optimal-breaking}
941 (predeterminado).
942
943 @item page-breaking-system-system-spacing
944 @funindex page-breaking-system-system-spacing
945
946 Engaña a la parte del programa encargada de los saltos de página para
947 que piense que @code{system-system-spacing} está establecido a un
948 valor distinto al que tiene realmente.  Por ejemplo, si
949 @code{page-breaking-system-system-spacing #'padding} está establecido
950 a algo que es mucho mayor que @code{system-system-spacing #'padding},
951 entonces el divisor de páginas pone menos sistemas en cada página.
952 Valor predeterminado: sin ajustar.
953
954 @item page-count
955 @funindex page-count
956
957 Número de páginas que utilizar en una partitura, no ajustado de forma
958 predeterminada.
959
960 @end table
961
962 Las siguientes variables son efectivas solamente cuando
963 @code{page-breaking} está sijado a @code{ly:page-turn-breaking}.
964 Los saltos de página se seleccionan entonces de forma que se
965 minimice el número de pasos de página.  Dado que los pasos de
966 página son necesarios cuando se pasa de una página impar a una
967 página par, normalmente resultará favorecida aquella disposición
968 en que la última página sea impar.  Los lugares en que se
969 prefieran pasos de página pueden indicarse manualmente insertando
970 @code{\allowPageTurn} o automáticamente incluyendo el grabador
971 @code{Page_turn_engraver} (véase @ref{Paso de página óptimo}).
972
973 Si no hay un número suficiente de posibilidades para escoger a la
974 hora de insertar unos pasos de página adecuados, LilyPond puede
975 insertar una página vacía dentro de una partitura, entre
976 partituras (si hay dos o más partituras) o finalizando una
977 partitura en una página de numeración par.  Los valores de las
978 tres siguientes variables pueden incrementarse para que estas
979 acciones se vuelvan menos probables.
980
981 Los valores son penalizaciones, es decir, cuando más alto es el
982 valor menos probables será la acción asociada relativa a otras
983 posibilidades.
984
985 @table @code
986
987 @item blank-page-penalty (penalización por página vacía)
988 @funindex blank-page-penalty
989
990 Penalización por tener una página vcía en mitad de una partitura.
991 Si @code{blank-page-penalty} es grande y está seleccionado
992 @code{ly:page-turn-breaking}, entonces será menos probable que
993 LilyPond inserte una página en medio de una partitura.  En lugar
994 de ello, intercala espacio en la música hasta que se rellene la
995 página vacía y la siguiente.  Predeterminado: 5.
996
997 @item blank-last-page-penalty (penalización por última página vacía)
998 @funindex blank-last-page-penalty
999
1000 Penalización por terminar la partitura sobre una página par.  Si
1001 @code{blank-last-page-penalty} es grande y está seleccionado
1002 @code{ly:page-turn-breaking}, entonces será menos probable que
1003 LilyPond produzca una partitura en que la última página tenga
1004 numeración par.  En su lugar, ajustará el espaciado de manera que
1005 use una página más o una página menos.  Predeterminado: 0.
1006
1007 @item blank-after-score-page-penalty (penalización por página vacía después de una partitura)
1008 @funindex blank-after-score-page-penalty
1009
1010 Penalización por tener una página vacía después del final de una
1011 partitura y antes de la siguiente.  De forma predeterminada, esta
1012 penalización es más pequeña que @code{blank-page-penalty}, de
1013 forma que se insertan páginas vacías después de las partituras
1014 como preferencia sobre la inserción de páginas vacías dentro de
1015 una partitura.  Predeterminado: 2.
1016
1017 @end table
1018
1019
1020 @seealso
1021 Referencia de la notación:
1022 @ref{Saltos de página},
1023 @ref{Saltos de página óptimos},
1024 @ref{Paso de página óptimo},
1025 @ref{Saltos de página mínimos},
1026 @ref{Saltos de página de una línea}.
1027
1028 Archivos de inicio:
1029 @file{ly/paper-defaults-init.ly}.
1030
1031
1032 @node Variables de \paper para la numeración de las páginas
1033 @unnumberedsubsubsec Variables de @code{\paper} para la numeración de las páginas
1034 @translationof \paper variables for page numbering
1035
1036 Los valores predeterminados que no se relacionan aquí están definidos
1037 en el archivo @file{ly/paper-defaults-init.ly}
1038
1039 @table @code
1040
1041 @cindex números de página, automáticos
1042 @item auto-first-page-number
1043 @funindex auto-first-page-number
1044
1045 El algoritmo de división de páginas está afectado por el hecho de que
1046 el número de la primera página sea par o impar.  Si está establecido
1047 al valor verdadero, el algoritmo de división de páginas decide si
1048 comenzar con un número par o impar.  Esto hace que el número de la
1049 primera página se quede como está, o que se aumente en una unidad.
1050 Predeterminado: @code{#f}.
1051
1052 @cindex números de página, especificar el primero
1053 @item first-page-number
1054 @funindex first-page-number
1055
1056 Valor del número de pátina en la primera página.
1057
1058 @item print-first-page-number
1059 @funindex print-first-page-number
1060
1061 Si está fijado a verdadero, se imprime un número de página en la
1062 primera página.
1063
1064 @cindex números de página, suprimir
1065 @item print-page-number
1066 @funindex print-page-number
1067
1068 Si está fijado a falso, no se imprimen los números de página.
1069
1070 @end table
1071
1072 @seealso
1073 Archivos de inicio:
1074 @file{ly/paper-defaults-init.ly}.
1075
1076 @knownissues
1077 Los números de página impares siempre están a la derecha.
1078 Si quiere que la música comience en la página 1 debe haber
1079 una página en blanco en el reverso de la página de cubierta
1080 de manera que la página 1 esté en el lado derecho.
1081
1082
1083 @node Variables de \paper diversas
1084 @unnumberedsubsubsec Variables de @code{\paper} diversas
1085 @translationof Miscellaneous \paper variables
1086
1087 @table @code
1088
1089 @item page-spacing-weight
1090 @funindex page-spacing-weight
1091
1092 Importancia relativa del espacio (vertical) de las páginas y el
1093 espaciado (horizontal) de las líneas.  Los valores altos hacen que el
1094 espaciado de la página tenga más importancia.  Predeterminado:
1095 @code{10}.
1096
1097 @item print-all-headers
1098 @funindex print-all-headers
1099
1100 Si está fijado a verdadero, imprime todos los encabezamientos para
1101 cada una de las partituras @code{\score} de la salida.  Normalmente
1102 sólo se imprimen las variables de encabezamiento @code{piece} y
1103 @code{opus}.  Valor predeterminado: @code{#f}.
1104
1105 @item system-separator-markup
1106 @funindex system-separator-markup
1107
1108 Objeto de marcado que se inserta entre los sistemas.  Se suele usar
1109 para partituras orquestales.  Predeterminado: sin establecer.  El
1110 elemento de marcado @code{\slashSeparator}, definido en el archivo
1111 @file{ly/titling-init.ly}, se aporta como un valor predeterminado
1112 adecuado, por ejemplo:
1113
1114 @lilypond[quote,verbatim,noragged-right,line-width=30\mm]
1115 #(set-default-paper-size "a8")
1116
1117 \book {
1118   \paper {
1119     system-separator-markup = \slashSeparator
1120   }
1121   \header {
1122     tagline = ##f
1123   }
1124   \score {
1125     \relative c'' { c1 \break c1 \break c1 }
1126   }
1127 }
1128 @end lilypond
1129
1130 @end table
1131
1132 @seealso
1133 Archivos de inicio:
1134 @file{ly/titling-init.ly}.
1135
1136 Fragmentos de código:
1137 @rlsr{Spacing}.
1138
1139 @knownissues
1140 El encabezamiento de página predeterminado pone el número de página y
1141 el campo @code{instrument} del bloque @code{\header} sobre la misma
1142 línea.
1143
1144
1145 @node Disposición de la partitura
1146 @section Disposición de la partitura
1147 @translationof Score layout
1148
1149 Esta sección trata de las opciones de disposición de la partitura para
1150 el bloque @code{\layout}.
1151
1152 @menu
1153 * El bloque \layout::
1154 * Establecer el tamaño del pentagrama::
1155 @end menu
1156
1157
1158 @node El bloque \layout
1159 @subsection El bloque @code{\layout}
1160 @translationof  The \layout block
1161
1162 @funindex \layout
1163
1164 Así como el bloque @code{\paper} contiene ajustes relativos al
1165 formateo de la página para todo el documento, el bloque @code{\layout}
1166 contiene ajustes para la disposición específica de las partituras.
1167 Para fijar las opciones de disposición de partituras de forma global,
1168 escríbalas en un bloque @code{\layout} del nivel jerárquico superior.
1169 Para fijar opciones de disposición para una partitura individual
1170 escríbalas dentro de un bloque @code{\layout} dentro del bloque
1171 @code{\score}, después de la música.  Entre los ajustes que pueden
1172 aparecer en un bloque @code{\layout} se encuentran los siguientes:
1173
1174 @itemize
1175 @item la función de Scheme @code{layout-set-staff-size},
1176 @item las modificaciones de contexto de los bloques @code{\context}, y
1177 @item las variables de @code{\paper} que afectan a la disposición de la partitura.
1178 @end itemize
1179
1180 La función @code{layout-set-staff-size} se estudia en la sección
1181 siguiente, @ref{Establecer el tamaño del pentagrama}. Las
1182 modificaciones de contexto se estudian en un capítulo distinto; véase
1183 @ref{Modificar los complementos (plug-ins) de contexto} y
1184 @ref{Cambiar los valores por omisión de los contextos}.  Las variables de
1185 @code{\paper} que pueden aparecer dentro de un bloque @code{\layout}
1186 son:
1187
1188 @itemize
1189
1190 @item
1191 @code{line-width}, @code{ragged-right} y @code{ragged-last}
1192 (véase @ref{Variables de \paper para la anchura y los márgenes})
1193
1194 @item
1195 @code{indent} y @code{short-indent}
1196 (véase @ref{Variables de \paper para desplazamientos y sangrados})
1197
1198 @item
1199 @code{system-count}
1200 (véase @ref{Variables de \paper para los saltos de línea})
1201
1202 @end itemize
1203
1204 He aquí un ejemplo de un bloque @code{\layout}:
1205
1206 @example
1207 \layout @{
1208   indent = 2\cm
1209   \context @{
1210     \StaffGroup
1211     \override StaffGrouper.staff-staff-spacing.basic-distance = #8
1212   @}
1213   \context @{
1214     \Voice
1215     \override TextScript.padding = #1
1216     \override Glissando.thickness = #3
1217   @}
1218 @}
1219 @end example
1220
1221 Se pueden escribir varios bloques @code{\layout} como expresiones del
1222 nivel superior.  Esto puede ser útil, por ejemplo, si hay distintos
1223 ajustes almacenados en diversos archivos y se incluyen opcionalmente.
1224 Internamente, cuando se evalúa un bloque @code{\layout}, se hace una
1225 copia de la configuración de @code{\layout} actual, y después se
1226 aplican los cambios definidos en el bloque; el resultado se guarda
1227 como la nueva configuración actual.  Desde el punto de vista del
1228 usuario, los bloques @code{\layout} se combinan, pero en situaciones
1229 de conflicto (cuando se cambia la misma propiedad en diferentes
1230 bloques) las definiciones más tarías toman precedencia.
1231
1232 Por ejemplo: si este bloque:
1233
1234 @example
1235 \layout @{
1236   \context @{
1237     \Voice
1238     \override TextScript.color = #magenta
1239     \override Glissando.thickness = #1.5
1240   @}
1241 @}
1242 @end example
1243
1244 se coloca después del del ejemplo anterior, las sobreescrituras de
1245 @code{'padding} y de @code{'color} para @code{TextScript} se combinan,
1246 pero la última sobreescritura @code{'thickness} para @code{Glissando}
1247 sustituye (u oculta) a la anterior.
1248
1249 Los bloques @code{\layout} se pueden asignar a variables para una
1250 reutilización posterior, pero la forma en que esto funciona es ligera
1251 y significativamente diferente del hecho de escribirlas literalmente.
1252
1253 Si se define una variable de la siguiente manera:
1254
1255 @example
1256 variable_de_Layout = \layout @{
1257   \context @{
1258     \Voice
1259     \override NoteHead.font-size = #4
1260   @}
1261 @}
1262 @end example
1263
1264 guardará la configuración actual de @code{\layout} con la
1265 sobreescritura añadida de @code{NoteHead.font-size}, pero esta
1266 combinación @emph{no} se guarda como la nueva configuración actual.
1267 Tenga en cuenta que la @q{configuración actual} se lee cuando la
1268 variable se define y no cuando se usa, de manera que el contenido de
1269 la variable depende de su posición dentro del código fuente.
1270
1271 La variable se puede entonces usar dentro de otro bloque
1272 @code{\layout}, por ejemplo:
1273
1274 @example
1275 \layout @{
1276   \variable_de_layout
1277   \context @{
1278     \Voice
1279     \override NoteHead.color = #red
1280   @}
1281 @}
1282 @end example
1283
1284 Un bloque @code{\layout} que contiene una variable, como en el ejemplo
1285 anterior, @emph{no} copia la configuración actual, sino que en lugar
1286 de ello usa el contenido de @code{\variable_de_layout} como la
1287 configuración base para las adiciones posteriores.  Esto significa que
1288 cualquier cambio definido entre la definición y el uso de la variable,
1289 se pierde.
1290
1291 Si la @code{variable_de_layout} se define (o se incluye con
1292 @code{\include}) inmediatamente antes de que se utilice, su contenido
1293 es sencillamente la configuración en curso más las sobreescrituras que
1294 se hayan definido dentro de él.  Así pues, en el ejemplo anterior que
1295 muestra el uso de @code{\variable_de_layout} el último bloque
1296 @code{\layout} consistiría en:
1297
1298 @example
1299   TextScript.padding = #1
1300   TextScript.color = #magenta
1301   Glissando.thickness = #1.5
1302   NoteHead.font-size = #4
1303   NoteHead.color = #red
1304 @end example
1305
1306 más las sobreescrituras de @code{indent} y de @code{StaffGrouper}.
1307
1308 Pero si la variable ya hubiera sido definida antes del primer bloque
1309 @code{\layout} la configuración actual contendría ahora solamente
1310
1311 @example
1312   NoteHead.font-size= #4 % (escrita en la definición de la variable)
1313   NoteHead.color = #red % (añadida después del uso de la variable)
1314 @end example
1315
1316 Si se planifica cuidadosamente, las variables de @code{\layout} pueden
1317 ser una herramienta valiosa para estructurar el diseño de la
1318 disposición de las fuentes, y tambiién para reiniciar la configuración
1319 de @code{\layout} a un estado conocido.
1320
1321 @seealso
1322 Referencia de la notación:
1323 @ref{Cambiar los valores por omisión de los contextos}.
1324
1325 Fragmentos de código:
1326 @rlsr{Spacing}.
1327
1328
1329 @node Establecer el tamaño del pentagrama
1330 @subsection Establecer el tamaño del pentagrama
1331 @translationof Setting the staff size
1332
1333 @cindex tipografía, fijar el tamaño de
1334 @cindex pentagrama, fijar el tamaño de
1335 @funindex disposición, archivo de
1336
1337 El @strong{tamaño de pentagrama} predeterminado se establece en 20
1338 puntos.  Esto se puede modificar de dos maneras:
1339
1340 Para establecer globalmente el tamaño del pentagrama para todas las
1341 partituras de un archivo (o en un bloque @code{book}, para ser
1342 exactos), utilice @code{set-global-staff-size}.
1343
1344 @example
1345 #(set-global-staff-size 14)
1346 @end example
1347
1348 @noindent
1349 Esto establece el tamaño global predeterminado a una altura de
1350 pentagrama de 14pt y escala todas las tipografías según corresponda.
1351
1352 Para establecer el tamaño del pentagrama de forma individual para cada
1353 partitura, use
1354 @example
1355 \score@{
1356   @dots{}
1357   \layout @{
1358     #(layout-set-staff-size 15)
1359   @}
1360 @}
1361 @end example
1362
1363 La fuente tipográfica Feta ofrece símbolos musicales a ocho tamaños
1364 distintos.  Cada fuente tipográfica está afinada para un tamaño de
1365 pentagrama distinto: a un tamaño menor la tipografía se vuelve más
1366 pesada, para que coincida con las líneas de pentagrama relativamente
1367 más gruesas.  Los tamaños de tipografía recomendados están
1368 relacionados en la tabla siguiente:
1369
1370 @quotation
1371 @multitable @columnfractions .15 .2 .22 .2
1372
1373 @item @b{nombre de la fuente}
1374 @tab @b{altura del pentagrama (pt)}
1375 @tab @b{altura del pentagrama (mm)}
1376 @tab @b{usos}
1377
1378 @item feta11
1379 @tab 11.22
1380 @tab 3.9
1381 @tab partituras de bolsillo
1382
1383 @item feta13
1384 @tab 12.60
1385 @tab 4.4
1386 @tab
1387
1388 @item feta14
1389 @tab 14.14
1390 @tab 5.0
1391 @tab
1392
1393 @item feta16
1394 @tab 15.87
1395 @tab 5.6
1396 @tab
1397
1398 @item feta18
1399 @tab 17.82
1400 @tab 6.3
1401 @tab cancioneros
1402
1403 @item feta20
1404 @tab 20
1405 @tab 7.0
1406 @tab particellas estándar
1407
1408 @item feta23
1409 @tab 22.45
1410 @tab 7.9
1411 @tab
1412
1413 @item feta26
1414 @tab 25.2
1415 @tab 8.9
1416 @tab
1417 @c modern rental material?
1418
1419 @end multitable
1420 @end quotation
1421
1422 Estas tipografías están disponibles en cualquier tamaño.  La propiedad
1423 de contexto @code{fontSize} y la propiedad de disposición
1424 @code{staff-space} (en @rinternals{StaffSymbol}) se pueden usar para
1425 afinar el tamaño de los pentagramas individuales.  Los tamaños de
1426 pentagrama individuales están en relación al tamaño global.
1427
1428 @seealso
1429 Referencia de la notación:
1430 @ref{Seleccionar el tamaño de la tipografía para la notación}.
1431
1432 Fragmentos de código:
1433 @rlsr{Spacing}.
1434
1435 @knownissues
1436 @code{layout-set-staff-size} no cambia la distancia entre las líneas
1437 del pentagrama.
1438
1439
1440 @node Saltos
1441 @section Saltos
1442 @translationof Breaks
1443
1444 @menu
1445 * Saltos de línea::
1446 * Saltos de página::
1447 * Saltos de página óptimos::
1448 * Paso de página óptimo::
1449 * Saltos de página mínimos::
1450 * Saltos de página de una línea::
1451 * Saltos de línea explícitos::
1452 * Utilizar una voz adicional para los saltos de línea::
1453 @end menu
1454
1455
1456 @node Saltos de línea
1457 @subsection Saltos de línea
1458 @translationof Line breaking
1459
1460 @cindex saltos de línea
1461 @cindex línea, saltos de
1462
1463 Normalmente los saltos de línea se determinan automáticamente. Se
1464 eligen de forma que las líneas no aparezcan demasiado apretadas ni
1465 demasiado sueltas, y que las líneas consecutivas tengan una densidad
1466 similar.
1467
1468 Para forzar manualmente un salto de línea sobre la línea divisoria,
1469 utilice la instrucción @code{\break}:
1470
1471 @lilypond[quote,ragged-right,relative=2,verbatim]
1472 c4 c c c | \break
1473 c4 c c c |
1474 @end lilypond
1475
1476 De forma predeterminada se ignora cualquier @code{\break} en la mitad
1477 de un compás, y se imprime una advertencia.  Para forzar un salto de
1478 línea en medio de un compás, añada una barra de compás invisible con
1479 @w{@samp{\bar ""}}:
1480
1481 @lilypond[quote,ragged-right,relative=2,verbatim]
1482 c4 c c
1483 \bar "" \break
1484 c |
1485 c4 c c c |
1486 @end lilypond
1487
1488 También se ignora un @code{\break} que se produce en la línea
1489 divisoria si el compás anterior termina en medio de una nota, como
1490 cuando un grupo de valoración especial inicia y termina en compases
1491 diferentes.  Para permitir que las instrucciones @code{\break}
1492 funcionen en estas situaciones, elimine el grabador
1493 @code{Forbid_line_break_engraver} del contexto @code{Voice}.  Observe
1494 que los saltos de línea forzados manualmente se deben añadir en
1495 paralelo con la música:
1496
1497 @lilypond[quote,ragged-right,verbatim]
1498 \new Voice \with {
1499   \remove "Forbid_line_break_engraver"
1500 } \relative c'' {
1501   <<
1502     { c2. \times 2/3 { c4 c c } c2. | }
1503     { s1 | \break s1 | }
1504   >>
1505 }
1506 @end lilypond
1507
1508 De forma similar, los saltos de línea están normalmente prohibidos
1509 cuando hay barras de corchea que cruzan la línea divisoria.  Se
1510 puede cambiar este comportamiento fijando
1511 @code{\override Beam.breakable = ##t}:
1512
1513 @lilypond[quote,ragged-right,relative=2,verbatim]
1514 \override Beam.breakable = ##t
1515 c2. c8[ c | \break
1516 c8 c] c2. |
1517 @end lilypond
1518
1519 La instrucción @code{\noBreak}, prohíbe un salto de línea en
1520 la barra divisoria en que se inserta.
1521
1522 Los ajustes más básicos que influyen sobre el espaciado de las líneas
1523 son @code{indent} y @code{line-width}. Se establecen dentro del bloque
1524 @code{\layout}.  Controlan el sangrado de la primera línea de música,
1525 y la longitud de las líneas.
1526
1527 Si se establece @code{ragged-right} a verdadero en el bloque
1528 @code{\layout}, los sistemas terminan en su longitud horizontal
1529 natural, en lugar de distribuirse horizontalmente para llenar toda la
1530 línea. Esto es de utilidad para fragmentos cortos, y para efectuar una
1531 comprobación de lo apretado que es el espaciado natural.
1532
1533 @c TODO Check and add para on default for ragged-right
1534
1535 La opción @code{ragged-last} es similar a @code{ragged-right}, pero
1536 afecta sólo a la última línea de la pieza.
1537
1538 @example
1539 \layout @{
1540   indent = 0\mm
1541   line-width = 150\mm
1542   ragged-last = ##t
1543 @}
1544 @end example
1545
1546 @cindex saltos de línea normales
1547 @cindex música de cuatro compases por línea
1548
1549 Para saltos de línea a intervalos regulares utilice @code{\break}
1550 separado mediante desplazamientos con @code{\skip} y repetidos con
1551 @code{\repeat}.  Por ejemplo, esto haría que los 28 compases
1552 siguientes (suponiendo un compás de 4/4) se dividan cada cuatro
1553 compases, y sólo en dichos lugares:
1554
1555 @example
1556 <<
1557   \repeat unfold 7 @{
1558     s1 \noBreak s1 \noBreak
1559     s1 \noBreak s1 \break
1560   @}
1561   @{ @var{la música real@dots{}} @}
1562 >>
1563 @end example
1564
1565
1566 @predefined
1567 @funindex \break
1568 @code{\break},
1569 @funindex \noBreak
1570 @code{\noBreak}.
1571 @endpredefined
1572
1573 @seealso
1574 Referencia de la notación:
1575 @ref{Variables de \paper para los saltos de línea}.
1576
1577 Fragmentos de código:
1578 @rlsr{Spacing}.
1579
1580 Referencia de funcionamiento interno:
1581 @rinternals{LineBreakEvent}.
1582
1583
1584 @node Saltos de página
1585 @subsection Saltos de página
1586 @translationof Page breaking
1587
1588 Se puede sobreescribir el mecanismo predeterminado de salto de página
1589 insertando instrucciones @code{\pageBreak} o @code{\noPageBreak}.
1590 Estas instrucciones son análogas a @code{\break} y @code{\noBreak}.
1591 Se deben insertar en una línea divisoria.  Estas instrucciones fuerzan
1592 y prohíben, respectivamente, la eventualidad de un salto de página.
1593 Por supuesto, la instrucción @code{\pageBreak} también fuerza un salto
1594 de línea.
1595
1596 Las instrucciones @code{\pageBreak} y @code{\noPageBreak} también se
1597 pueden insertar en el nivel más alto, entre las partituras y los
1598 elementos de marcado situados en el nivel superior.
1599
1600 Hay ajustes análogos a @code{ragged-right} y @code{ragged-last} que
1601 tienen el mismo efecto sobre el espaciado vertical:
1602 @code{ragged-bottom} y @code{ragged-last-bottom}.  Si están
1603 establecidos a @code{#t} los sistemas de todas las páginas o sólo de
1604 la última página, respectivamente, no se verán justificados
1605 verticalmente.  Véase
1606 @ref{Variables de espaciado de \paper verticales fijas}.
1607
1608 Los saltos de página se calculan por medio de la función
1609 @code{page-breaking}.  LilyPond ofrece tres algoritmos para el cómputo
1610 de los saltos de página: @code{ly:optimal-breaking},
1611 @code{ly:page-turn-breaking} y @code{ly:minimal-breaking}.  El
1612 predeterminado es @code{ly:optimal-breaking}, pero el valor se puede
1613 cambiar en el bloque @code{\paper}:
1614
1615 @example
1616 \paper @{
1617   page-breaking = #ly:page-turn-breaking
1618 @}
1619 @end example
1620
1621 @funindex \bookpart
1622
1623 Cuando un libro tiene muchas partituras y páginas, puede ser difícil
1624 resolver el problema de los saltos de página, necesitando mucha
1625 memoria y prolongados tiempos de procesamiento.  Para facilitar el
1626 proceso de división en páginas, se usan los bloques @code{\bookpart}
1627 para dividir el libro en varias partes: los saltos de página se
1628 producen de manera independiente en cada parte.  También se pueden
1629 usar diferentes funciones de división en páginas para las distintas
1630 partes del libro.
1631
1632 @example
1633 \bookpart @{
1634   \header @{
1635     subtitle = "Prefacio"
1636   @}
1637   \paper @{
1638      %% En una parte que consiste en texto principalmente,
1639      %% puede ser preferible ly:minimal-breaking
1640      page-breaking = #ly:minimal-breaking
1641   @}
1642   \markup @{ @dots{} @}
1643   @dots{}
1644 @}
1645 \bookpart @{
1646   %% En esta parte, consistente en música, se usa la función
1647   %% óptima predeterminada de saltos de página.
1648   \header @{
1649     subtitle = "Primer movimiento"
1650   @}
1651   \score @{ @dots{} @}
1652   @dots{}
1653 @}
1654 @end example
1655
1656 @predefined
1657 @funindex \pageBreak
1658 @code{\pageBreak},
1659 @funindex \noPageBreak
1660 @code{\noPageBreak}.
1661 @endpredefined
1662
1663 @seealso
1664 Referencia de la notación:
1665 @ref{Variables de \paper para los saltos de página}.
1666
1667 Fragmentos de código:
1668 @rlsr{Spacing}.
1669
1670
1671 @node Saltos de página óptimos
1672 @subsection Saltos de página óptimos
1673 @translationof Optimal page breaking
1674
1675 @funindex ly:optimal-breaking
1676
1677 La función @code{ly:optimal-breaking} es el método predeterminado de
1678 LilyPond para determinar los saltos de página.  Intenta hallar una
1679 división de páginas que haga mínimos el apretujamiento y la
1680 distensión, tanto horizontal como verticalmente.  A diferencia de
1681 @code{ly:page-turn-breaking}, no tiene un concepto de los pasos de
1682 página.
1683
1684 @seealso
1685 Fragmentos de código:
1686 @rlsr{Spacing}.
1687
1688
1689 @node Paso de página óptimo
1690 @subsection Paso de página óptimo
1691 @translationof Optimal page turning
1692
1693 @funindex ly:page-turn-breaking
1694
1695 Con frecuencia es necesario encontrar una configuración de división de
1696 páginas de manera que haya un silencio al final de una página de cada
1697 dos.  De esta forma, el músico puede pasar la página sin perder notas.
1698 La función @code{ly:page-turn-breaking} trata de encontrar una
1699 división de páginas que haga mínimos el apretujamiento y el
1700 estiramiento, pero con la restricción añadida de que sólo se permite
1701 introducir vueltas de página en los lugares especificados.
1702
1703 Hay dos etapas en el uso de esta función de división de páginas.  En
1704 primer lugar debemos habilitarlo en el bloque @code{\paper}, como se
1705 explicó en @ref{Saltos de página}.  Entonces debemos decirle a la función
1706 dónde nos gustaría permitir los saltos de página.
1707
1708 Hay dos formas de conseguir la segunda tarea.  Primero, podemos
1709 especificar manualmente cada uno de los pasos de página potenciales,
1710 insertando @code{\allowPageTurn} en nuestro archivo de entrada en los
1711 lugares adecuados.
1712
1713 Si esto es demasiado tedioso, podemos añadir un grabador
1714 @code{Page_turn_engraver} a un contexto Staff o Voice.  El grabador
1715 @code{Page_turn_engraver} analizará el contexto en busca de secciones
1716 sin notas (observe que no busca silencios, sino la ausencia de notas.
1717 Se hace así para que la polifonía en un solo pentagrama con silencios
1718 en una de las voces no arruine la labor del grabador
1719 @code{Page_turn_engraver}).  Cuando encuentra una sección sin notas
1720 suficientemente larga, el grabador @code{Page_turn_engraver} inserta
1721 un @code{\allowPageTurn} en la última barra de compás de dicha
1722 sección, a no ser que haya una barra @q{especial} de compás (como una
1723 doble barra), en cuyo caso se insertará el @code{\allowPageTurn} en la
1724 última barra @q{especial} de compás de la sección.
1725
1726 @funindex minimumPageTurnLength
1727 El grabador @code{Page_turn_engraver} lee la propiedad de contexto
1728 @code{minimumPageTurnLength} para determinar qué longitud debe tener
1729 una sección sin notas antes de que se considere la posibilidad de un
1730 paso de página.  El valor predeterminado para
1731 @code{minimumPageTurnLength} es @code{(ly:make-moment 1 1)}.  Si
1732 quiere inhabilitar las vueltas de página, puede establecerlo a algún
1733 valor muy grande.
1734
1735 @example
1736 \new Staff \with @{ \consists "Page_turn_engraver" @}
1737 @{
1738   a4 b c d |
1739   R1 | % aquí se permite un salto de página
1740   a4 b c d |
1741   \set Staff.minimumPageTurnLength = #(ly:make-moment 5 2)
1742   R1 | % aquí no se permite un salto de página
1743   a4 b r2 |
1744   R1*2 | % aquí se permite un salto de página
1745   a1
1746 @}
1747 @end example
1748
1749 @funindex minimumRepeatLengthForPageTurn
1750 El grabador @code{Page_turn_engraver} detecta las repeticiones de
1751 primera y segunda vez.  Sólo permite un pase de página durante la
1752 repetición si hay suficiente tiempo al principio y al final de la
1753 repetición para volver a pasar la página hacia atrás. El grabador
1754 @code{Page_turn_engraver} también puede inhabilitar los pasos de
1755 página si la repetición es muy corta.  Si establecemos la propiedad de
1756 contexto @code{minimumRepeatLengthForPageTurn} entonces el grabador
1757 @code{Page_turn_engraver} sólo permitirá los pases de página en las
1758 repeticiones cuya duración sea mayor que este valor.
1759
1760 Las instrucciones de paso de página, @code{\pageTurn},
1761 @code{\noPageTurn} y @code{\allowPageTurn}, se pueden usar también en
1762 el nivel más elevado del código, entre las partituras y los elementos
1763 de marcado del nivel superior.
1764
1765 @predefined
1766 @funindex \pageTurn
1767 @code{\pageTurn},
1768 @funindex \noPageTurn
1769 @code{\noPageTurn},
1770 @funindex \allowPageTurn
1771 @code{\allowPageTurn}.
1772 @endpredefined
1773
1774 @seealso
1775 Referencia de la notación:
1776 @ref{Variables de \paper para los saltos de línea}.
1777
1778 Fragmentos de código:
1779 @rlsr{Spacing}.
1780
1781 @knownissues
1782 Sólo debería haber un grabador @code{Page_turn_engraver} dentro de una
1783 partitura.  Si hay más de uno, se interferirán entre sí.
1784
1785
1786 @node Saltos de página mínimos
1787 @subsection Saltos de página mínimos
1788 @translationof Minimal page breaking
1789
1790 @funindex ly:minimal-breaking
1791
1792 La función @code{ly:minimal-breaking} efectúa unos cálculos mínimos
1793 para determinar los saltos de página: completa una página con tantos
1794 sistemas como sea posible antes de continuar con la siguiente.  Así,
1795 puede preferirse para partituras con muchas páginas, donde las otras
1796 funciones de salto de página pueden resultar demasiado lentas o ávidas
1797 de memoria, o con una gran cantidad de textos.  Se habilita utilizando:
1798
1799 @example
1800 \paper @{
1801   page-breaking = #ly:minimal-breaking
1802 @}
1803 @end example
1804
1805 @seealso
1806 Fragmentos de código:
1807 @rlsr{Spacing}.
1808
1809 @node Saltos de página de una línea
1810 @subsection Saltos de página de una línea
1811 @translationof One-line page breaking
1812
1813 @funindex ly:one-line-breaking
1814
1815 La función @code{ly:one-line-breaking} es un algoritmo de saltos de
1816 página para uso especial que pone cada partitura en una página y en
1817 una sola línea.  Esta función de salto de página no compone los
1818 títulos ni los márgenes; solamente se imprime la partitura.
1819
1820 El ancho de la página se ajusta de forma que la partitura más larga
1821 quepa en una línea.  Concretamente, las variables @code{paper-width},
1822 @code{line-width} y @code{indent} del bloque @code{\paper} se ignoran,
1823 aunque @code{left-margin} y @code{right-margin} aún se respetan.  La
1824 altura de la página se deja sin cambios.
1825
1826 @node Saltos de línea explícitos
1827 @subsection Saltos de línea explícitos
1828 @translationof Explicit breaks
1829
1830 Lily a veces rechaza las instrucciones @code{\break} y
1831 @code{\pageBreak} explícitas.  Hay dos instrucciones para
1832 sobreescribir este comportamiento:
1833
1834 @example
1835 \override NonMusicalPaperColumn.line-break-permission = ##f
1836 \override NonMusicalPaperColumn.page-break-permission = ##f
1837 @end example
1838
1839 Cuando se sobreescribe el valor de @code{line-break-permission} a
1840 falso, Lily inserta saltos de línea en las instrucciones @code{\break}
1841 explícitas y en ningún otro lugar. Cuando se sobreescribe el valor de
1842 @code{page-break-permission} a falso, Lily inserta saltos de página en
1843 las instrucciones @code{\pageBreak} explícitas y en ningún otro lugar.
1844
1845 @lilypond[quote,verbatim]
1846 \paper {
1847   indent = #0
1848   ragged-right = ##t
1849   ragged-bottom = ##t
1850 }
1851
1852 music = \relative c'' { c8 c c c }
1853
1854 \score {
1855   \new Staff {
1856     \repeat unfold 2 { \music } \break
1857     \repeat unfold 4 { \music } \break
1858     \repeat unfold 6 { \music } \break
1859     \repeat unfold 8 { \music } \pageBreak
1860     \repeat unfold 8 { \music } \break
1861     \repeat unfold 6 { \music } \break
1862     \repeat unfold 4 { \music } \break
1863     \repeat unfold 2 { \music }
1864   }
1865   \layout {
1866     \context {
1867       \Score
1868       \override NonMusicalPaperColumn.line-break-permission = ##f
1869       \override NonMusicalPaperColumn.page-break-permission = ##f
1870     }
1871   }
1872 }
1873 @end lilypond
1874
1875 @seealso
1876 Fragmentos de código:
1877 @rlsr{Spacing}.
1878
1879
1880 @node Utilizar una voz adicional para los saltos de línea
1881 @subsection Utilizar una voz adicional para los saltos de línea
1882 @translationof Using an extra voice for breaks
1883
1884 La información sobre saltos de línea y de página suele aparecer
1885 directamente entremezclado dentro del código de notas.
1886
1887 @example
1888 music = \relative c'' @{ c4 c c c @}
1889
1890 \score @{
1891   \new Staff @{
1892     \repeat unfold 2 @{ \music @} \break
1893     \repeat unfold 3 @{ \music @}
1894   @}
1895 @}
1896 @end example
1897
1898 Esto hace sencillas de introducir a las instrucciones @code{\break} y
1899 @code{\pageBreak}, pero mezcla la escritura de música con información
1900 que especifica cómo se debe disponer la música sobre la página.
1901 Podemos mantener la introducción de música y la información de saltos
1902 de línea y de página en dos lugares separados mediante la introducción
1903 de una voz adicional que contenga los saltos.  Esta voz adicional
1904 contiene solamente desplazamientos o @q{skips} junto con los
1905 @code{\break}, @code{pageBreak} y otras informaciones sobre la
1906 disposición de los saltos.
1907
1908 @lilypond[quote,verbatim]
1909 music = \relative c'' { c4 c c c }
1910
1911 \score {
1912   \new Staff <<
1913     \new Voice {
1914       s1 * 2 \break
1915       s1 * 3 \break
1916       s1 * 6 \break
1917       s1 * 5 \break
1918     }
1919     \new Voice {
1920       \repeat unfold 2 { \music }
1921       \repeat unfold 3 { \music }
1922       \repeat unfold 6 { \music }
1923       \repeat unfold 5 { \music }
1924     }
1925   >>
1926 }
1927 @end lilypond
1928
1929 Este patrón resulta especialmente útil cuando se sobreescribe
1930 @code{line-break-system-details} y las otras útiles (pero largas)
1931 propiedades de @code{NonMusicalPaperColumnGrob}, como se explica en
1932 @ref{Espaciado vertical}.
1933
1934 @lilypond[quote,verbatim]
1935 music = \relative c'' { c4 c c c }
1936
1937 \score {
1938   \new Staff <<
1939     \new Voice {
1940       \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 0))
1941       s1 * 2 \break
1942
1943       \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 35))
1944       s1 * 3 \break
1945
1946       \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 70))
1947       s1 * 6 \break
1948
1949       \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 105))
1950       s1 * 5 \break
1951     }
1952     \new Voice {
1953       \repeat unfold 2 { \music }
1954       \repeat unfold 3 { \music }
1955       \repeat unfold 6 { \music }
1956       \repeat unfold 5 { \music }
1957     }
1958   >>
1959 }
1960 @end lilypond
1961
1962 @seealso
1963 Referencia de la notación:
1964 @ref{Espaciado vertical}.
1965
1966 Fragmentos de código:
1967 @rlsr{Spacing}.
1968
1969
1970 @node Espaciado vertical
1971 @section Espaciado vertical
1972 @translationof Vertical spacing
1973
1974 @cindex espaciado vertical
1975 @cindex vertical, espaciado
1976
1977 El espaciado vertical está controlado por tres factores: la cantidad
1978 de espacio disponible (es decir, el tamaño del papel y los márgenes),
1979 la separación entre los sistemas, y la separación entre los
1980 pentagramas dentro de un sistema.
1981
1982 @menu
1983 * Espaciado vertical flexible dentro de los sistemas::
1984 * Posicionamiento explícito de los pentagramas y los sistemas::
1985 * Evitar las colisiones verticales::
1986 @end menu
1987
1988
1989 @node Espaciado vertical flexible dentro de los sistemas
1990 @subsection Espaciado vertical flexible dentro de los sistemas
1991 @translationof Flexible vertical spacing within systems
1992
1993 @cindex distancia entre pentagramas
1994 @cindex pentagrama, distancia entre los
1995 @cindex espacio entre pentagramas
1996 @cindex espacio dentro de los sistemas
1997
1998 Tres mecanismos distintos controlan el espaciado vertical flexible
1999 dentro de los sistemas, uno por cada una de las categorías siguientes:
2000
2001 @itemize
2002
2003 @item
2004 @emph{pautas sin agrupar},
2005
2006 @item
2007 @emph{pautas agrupadas} (pautas dentro de un grupo de pentagramas como
2008 @code{ChoirStaff}, etc.), y
2009
2010 @item
2011 @emph{líneas que no son pautas} (como @code{Lyrics},
2012 @code{ChordNames}, etc.).
2013
2014 @end itemize
2015
2016 @c TODO: Clarify this.  This almost implies that non-staff lines
2017 @c       have NO effect on the spacing between staves.  -mp
2018
2019 La altura de cada sistema se determina en dos fases.  Primero, todos
2020 los pentagramas se disponen según la cantidad de espacio vacío
2021 disponible.  Después, las líneas que no son pautas se distribuyen
2022 entre las pautas.
2023
2024 Observe que los mecanismos de espaciado estudiados en esta sección
2025 solamente controlan el espaciado vertical de las pautas y líneas que
2026 no son pautas dentro de los sistemas individuales.  El espaciado
2027 vertical entre distintos sistemas, partituras, marcados y márgenes se
2028 controla mediante variables de @code{\paper} que se estudian en
2029 @ref{Flexible vertical spacing \paper variables}.
2030
2031 @menu
2032 * Propiedades de espaciado dentro de los sistemas::
2033 * Espaciado de pautas no agrupadas::
2034 * Espaciado de pautas agrupadas::
2035 * Espaciado de las líneas que no son pautas::
2036 @end menu
2037
2038
2039 @node Propiedades de espaciado dentro de los sistemas
2040 @unnumberedsubsubsec Propiedades de espaciado dentro de los sistemas
2041 @translationof Within-system spacing properties
2042
2043 @funindex staff-affinity
2044 @funindex staffgroup-staff-spacing
2045 @funindex staff-staff-spacing
2046 @funindex nonstaff-unrelatedstaff-spacing
2047 @funindex nonstaff-relatedstaff-spacing
2048 @funindex nonstaff-nonstaff-spacing
2049 @funindex default-staff-staff-spacing
2050 @funindex minimum-Y-extent
2051 @funindex extra-offset
2052 @funindex self-alignment-X
2053 @funindex X-offset
2054 @funindex VerticalAxisGroup
2055
2056 Los mecanismos de espaciado vertical dentro del sistema están
2057 controlados por dos conjuntos de propiedades de grob.  El primer
2058 conjunto está asociado con el grob @code{VerticalAxisGroup}, que se
2059 crea por parte de todas las pautas y líneas que no son pautas.  El
2060 segundo conjunto está asociado con el grob @code{StaffGrouper}, que
2061 puede crearse por parte de los grupos de pentagramas, pero solamente
2062 si se le llama explícitamente.  Estas propiedades se describen
2063 individualmente al final de la presente sección.
2064
2065 Los nombres de estas propiedades (excepto para @code{staff-affinity})
2066 siguen el formato @code{@var{elemento1}-@var{elemento2}-spacing},
2067 donde @code{@var{elemento1}} y @code{@var{elemento2}} son los
2068 elementos que se van a espaciar.  Observe que @code{@var{elemento2}}
2069 no está necesariamente por debajo de @code{@var{elemento1}}; por
2070 ejemplo, @code{nonstaff-relatedstaff-spacing} mide hacia arriba a
2071 partir de la línea del tipo no-pauta si @code{staff-affinity} es
2072 @code{UP}.
2073
2074 Cada distancia se mide entre los @emph{puntos de referencia} de los
2075 dos elementos.  El @emph{punto de referencia} para un pentagrama y
2076 otro tipo de pauta es el centro vertical de su @code{StaffSymbol} (es
2077 decir, la línea central si @code{line-count} es un número impar; el
2078 espacio central si @code{line-count} es par).  Los puntos de
2079 referencia para las líneas individuales que no son pautas aparecen en
2080 la tabla siguiente:
2081
2082 @multitable {Línea que no es una pauta} {Punto de referencia}
2083 @headitem Línea que no es una pauta @tab Punto de referencia
2084 @item @code{ChordNames}  @tab línea de base
2085 @item @code{NoteNames}   @tab línea de base
2086 @item @code{Lyrics}      @tab línea de base
2087 @item @code{Dynamics}    @tab centro vertical
2088 @item @code{FiguredBass} @tab punto más alto
2089 @item @code{FretBoards}  @tab línea superior
2090 @end multitable
2091
2092 En la siguiente imagen, las líneas horizontales indican las posiciones
2093 de estos puntos de referencia:
2094
2095 @lilypond[quote,noragged-right,line-width=110\mm]
2096 #(define zero-space '((padding . -inf.0) (basic-distance . 0)))
2097
2098 alignToZero = \with {
2099   \override VerticalAxisGroup.nonstaff-relatedstaff-spacing = #zero-space
2100   \override VerticalAxisGroup.nonstaff-nonstaff-spacing = #zero-space
2101 }
2102 lowerCaseChords = \with {
2103   chordNameLowercaseMinor = ##t
2104 }
2105 staffAffinityDown = \with {
2106   \override VerticalAxisGroup.staff-affinity = #DOWN
2107 }
2108 labelContext =
2109 #(define-music-function
2110      (parser location context)
2111      (string?)
2112    #{ s1*0^\markup { \typewriter #context } #})
2113
2114 \layout {
2115   \context { \Dynamics    \alignToZero }
2116   \context { \FiguredBass \alignToZero }
2117   \context { \Lyrics      \alignToZero }
2118   \context { \NoteNames   \alignToZero \staffAffinityDown }
2119   \context { \ChordNames  \alignToZero
2120                           \staffAffinityDown
2121                           \lowerCaseChords }
2122   \context { \FretBoards  \alignToZero \staffAffinityDown }
2123   \context { \Score
2124     \override BarLine.stencil = ##f
2125     \override DynamicText.self-alignment-X = #-1
2126     \override FretBoard.X-offset = #1.75
2127     \override InstrumentName.minimum-Y-extent = #'(-2 . 2)
2128     \override InstrumentName.extra-offset = #'(0 . -0.5)
2129     \override TextScript.minimum-Y-extent = #'(-2 . 3)
2130     \override TimeSignature.stencil = ##f
2131   }
2132 }
2133
2134 %% These contexts have reference points at the baseline:
2135 %%   ChordNames, NoteNames, and Lyrics
2136 <<
2137   \new ChordNames { \chords { g1:m } }
2138   \new NoteNames { s1 | g1 | }
2139   \new RhythmicStaff {
2140     \set RhythmicStaff.instrumentName = #"baseline "
2141     \textLengthOn
2142     \labelContext "ChordNames " s1 |
2143     \labelContext "NoteNames "  s1 |
2144     \labelContext "Lyrics"     s1 |
2145   }
2146   \new Lyrics { \lyrics { \skip 1*2 | ghijk1 | } }
2147 >>
2148
2149 %% The reference point for Dynamics is its vertical center
2150 <<
2151   \new RhythmicStaff {
2152     \set RhythmicStaff.instrumentName = #"vertical center "
2153     \labelContext "Dynamics" s1*3
2154   }
2155   \new Dynamics { s1\mp s\fp }
2156 >>
2157
2158 %% The reference point for FiguredBass is its highest point
2159 <<
2160   \new RhythmicStaff {
2161     \set RhythmicStaff.instrumentName = #"highest point "
2162     \labelContext "FiguredBass" s1
2163   }
2164   \new FiguredBass { \figuremode { <6 5>1 } }
2165 >>
2166
2167 %% The reference point for FretBoards is the top line
2168 \include "predefined-guitar-fretboards.ly"
2169 <<
2170   \new FretBoards { \chordmode { e1 } }
2171   \new RhythmicStaff {
2172     \set RhythmicStaff.instrumentName = #"top line "
2173     \labelContext "FretBoards " s1
2174   }
2175 >>
2176 @end lilypond
2177
2178 Cada una de las propiedades de grob del espaciado vertical (excepto
2179 @code{staff-affinity})
2180 usa la misma estructura de lista-A que las
2181 variables de espaciado del bloque @code{\paper} que se han estudiado
2182 en @ref{Flexible vertical spacing \paper variables}.
2183 En @ref{Modificación de las listas-A}
2184 se estudian métodos específicos para la modificación de
2185 las listas-A.  Las propiedades de los grobs deben ajustarse con un
2186 @code{\override} dentro de un bloque @code{\score} o @code{\layout}, y
2187 no dentro de un bloque @code{\paper}.
2188
2189 El ejemplo que sigue muestra las dos maneras en que pueden modificarse
2190 estas listas-A.  La primera declaración actualiza un par clave-valor de
2191 forma individual, y la segunda redefine la propiedad completamente:
2192
2193 @example
2194 \new Staff \with @{
2195   \override VerticalAxisGroup.default-staff-staff-spacing.basic-distance = #10
2196 @} @{ @dots{} @}
2197
2198 \new Staff \with @{
2199   \override VerticalAxisGroup.default-staff-staff-spacing =
2200     #'((basic-distance . 10)
2201        (minimum-distance . 9)
2202        (padding . 1)
2203        (stretchability . 10))
2204 @} @{ @dots{} @}
2205 @end example
2206
2207 Para modificar globalmente cualquiera de los ajustes de espaciado,
2208 póngalos dentro del bloque @code{\layout}:
2209
2210 @example
2211 \layout @{
2212   \context @{
2213     \Staff
2214     \override VerticalAxisGroup.default-staff-staff-spacing.basic-distance = #10
2215   @}
2216 @}
2217 @end example
2218
2219 Los ajustes estándar para las propiedades de grob del espaciado
2220 vertical están relacionadas en @rinternals{VerticalAxisGroup} y en
2221 @rinternals{StaffGrouper}.  Las sobreescrituras predeterminadas para
2222 los tipos específicos de líneas que no son pautas están relacionadas
2223 en las descripciones de contexto correspondientes en
2224 @rinternals{Contexts}.
2225
2226 @subsubheading Propiedades del grob @code{VerticalAxisGroup}
2227
2228 Las propiedades de @code{VerticalAxisGroup} se suelen ajustar con una
2229 instrucción @code{\override} en el nivel de @code{Staff} (o
2230 equivalente).
2231
2232 @table @code
2233 @item staff-staff-spacing
2234 Se utiliza para determinar la distancia entre la pauta actual
2235 y la pauta que está justo por debajo
2236 de ella dentro del mismo sistema, incluso si hay más líneas que no son
2237 pautas (tales como @code{Lyrics}) entre las dos pautas.  No se aplica
2238 a la pauta inferior de un sistema.
2239
2240 Inicialmente, el valor de espaciado @code{staff-staff-spacing} de un
2241 grupo @code{VerticalAxisGroup} es una función de Scheme que aplica las
2242 propiedades del @code{StaffGrouper} si la pauta forma parte de un
2243 grupo, o el @code{default-staff-staff-spacing} de la pauta en caso
2244 contrario.  Esto hace posible que las pautas estén espaciadas de forma
2245 diferente cuando están agrupadas.  Para conseguir un espaciado regular
2246 sin importar el agrupamiento, esta función se puede sustituir por una
2247 lista-A de espaciado flexible, utilizando la forma de
2248 sobreescritura de redefinición completa que se ha mostrado más arriba.
2249
2250 @item default-staff-staff-spacing
2251 Una lista-A de espaciado flexible que define el
2252 espacio @code{staff-staff-spacing} que se usará para las pautas sin
2253 agrupar, a no ser que se haya sobreescrito explícitamente
2254 @code{staff-staff-spacing} con una instrucción @code{\override}.
2255
2256 @item staff-affinity
2257 Dirección de la pauta que utilizar para el espaciado de la línea
2258 actual que no es pauta.  Se puede elegir entre @code{UP} (arriba),
2259 @code{DOWN} (abajo) y @code{CENTER} (centro).  Si es @code{CENTER}, la
2260 línea del tipo no-pauta se coloca equidistante entre las dos pautas
2261 contiguas a ambos lados, a no ser que lo impidan colisiones u otras
2262 restricciones de espaciado.  Las líneas del tipo no-pauta adyacentes
2263 han de llevar valores de @code{staff-affinity} no crecientes desde la
2264 parte superior hasta la inferior, p.ej. una línea del tipo no-pauta
2265 establecida a @code{UP} no debería seguir inmediatamente a otra que
2266 esté establecida a @code{DOWN}.  Las líneas del tipo no-pauta en la
2267 parte superior de un sistema deben usar @code{DOWN}; las de la parte
2268 inferior deben usar @code{UP}.  El ajuste de @code{staff-affinity}
2269 para una pauta hace que se le trate como una línea que no es una
2270 pauta.  El establecimiento de @code{staff-affinity} a @code{#f} para
2271 una línea que no es una pauta hace que se trate como una pauta.
2272 Establecer @code{staff-affinity} a @code{UP}, @code{CENTER}, o
2273 @code{DOWN} hace que el pentagrama resulte espaciado como si fuera una
2274 línea que no es una pauta.
2275
2276 @item nonstaff-relatedstaff-spacing
2277 Distancia entre la línea del tipo no-pauta actual y la pauta más
2278 próxima en la dirección de @code{staff-affinity}, si no hay ninguna
2279 línea que no sea una pauta entre las dos, y @code{staff-affinity} es
2280 @code{UP} o @code{DOWN}.  Si @code{staff-affinity} es @code{CENTER},
2281 entonces se usa @code{nonstaff-relatedstaff-spacing} para las pautas
2282 más próximas @emph{a los dos lados}, incluso aunque aparezcan otras
2283 líneas del tipo no-pauta entre la pauta actual y una de las otras.
2284 Esto significa que la colocación de una línea que no es una pauta
2285 depende tanto de las pautas que la rodean como de las líneas que no
2286 son pautas y que la rodean.  Establecer la ampliabilidad
2287 @code{stretchability} de uno de estos tipos de espaciado a un valor
2288 más pequeño provoca que este espaciado domine.  El establecimiento de
2289 @code{stretchability} a un valor mayor hace que dicho espaciado tenga
2290 un menor efecto.
2291
2292 @item nonstaff-nonstaff-spacing
2293 Distancia entre la línea actual del tipo no-pauta y la siguiente línea
2294 del tipo no-pauta en la dirección de @code{staff-affinity}, si las dos
2295 están al mismo lado de la pauta relacionada, y @code{staff-affinity}
2296 es @code{UP} o @code{DOWN}.
2297
2298 @item nonstaff-unrelatedstaff-spacing
2299 Distancia entre la línea actual del tipo no-pauta y la pauta en la
2300 dirección opuesta de @code{staff-affinity}, si no hay ninguna otra
2301 línea del tipo no-pauta entre las dos, y @code{staff-affinity} es
2302 @code{UP} o @code{DOWN}.  Se puede usar, por ejemplo, para requerir
2303 una cantidad de relleno mínima entre una línea de @code{Lyrics} y la
2304 pauta a la que no pertenece.
2305 @end table
2306
2307 @subsubheading Propiedades del grob @code{StaffGrouper}
2308
2309 Las propiedades de @code{StaffGrouper} se suelen ajustar con una
2310 instrucción @code{\override} en el nivel de @code{StaffGroup} (o
2311 equivalente).
2312
2313 @table @code
2314 @item staff-staff-spacing
2315 Distancia entre pautas consecutivas dentro del grupo de pautas actual.
2316 La propiedad @code{staff-staff-spacing} del grob
2317 @code{VerticalAxisGroup} de una pauta individual se puede
2318 sobreescribir con distintos ajustes de espaciado para dicha
2319 pauta.
2320
2321 @item staffgroup-staff-spacing
2322 Distancia entre la última pauta del grupo en curso y la pauta que está
2323 justo por debajo de ella dentro del mismo sistema, incluso si existen
2324 una o más líneas que no son pautas (tales como @code{Lyrics}) entre
2325 las dos pautas.  No se aplica al pentagrama o pauta inferior de un
2326 sistema.  La propiedad @code{staff-staff-spacing} del grob
2327 @code{VerticalAxisGroup} de una pauta individual se puede
2328 sobreescribir con distintos ajustes de espaciado para dicha
2329 pauta.
2330 @end table
2331
2332 @seealso
2333 Referencia de la notación:
2334 @ref{Variables de espaciado de \paper verticales flexibles},
2335 @ref{Modificación de las listas-A}.
2336
2337 Archivos de inicio:
2338 @file{ly/engraver-init.ly},
2339 @file{scm/define-grobs.scm}.
2340
2341 Referencia de funcionamiento interno:
2342 @rinternals{Contexts},
2343 @rinternals{VerticalAxisGroup},
2344 @rinternals{StaffGrouper}.
2345
2346
2347
2348 @node Espaciado de pautas no agrupadas
2349 @unnumberedsubsubsec Espaciado de pautas no agrupadas
2350 @translationof Spacing of ungrouped staves
2351
2352 Las @emph{pautas}, tales como los pentagramas (@code{Staff}), pautas
2353 de percusión (@code{DrumStaff}) o de tablatura (@code{TabStaff}),
2354 etc. son contextos que pueden contener uno o más contextos de voz,
2355 pero no pueden contener otras pautas.
2356
2357 Las siguientes propiedades afectan al espaciado de las pautas @emph{no
2358 agrupadas}:
2359
2360 @itemize
2361 @item Propiedades de @code{VerticalAxisGroup}:
2362 @itemize
2363 @item @code{default-staff-staff-spacing}
2364 @item @code{staff-staff-spacing}
2365 @end itemize
2366 @end itemize
2367
2368 Estas propiedades de grob se describen individualmente más arriba;
2369 véase @ref{Propiedades de espaciado dentro de los sistemas}.
2370
2371 Están implicadas ciertas propiedades adicionales para las pautas que
2372 son parte de un grupo; véase @ref{Espaciado de pautas agrupadas}.
2373
2374 El ejemplo siguiente muestra cómo la propiedad
2375 @code{default-staff-staff-spacing} puede afectar al espaciado de pautas no
2376 agrupadas.  Las mismas sobreescrituras aplicadas a
2377 @code{staff-staff-spacing}
2378 tendrían el mismo efecto, pero también se aplicaría en caso de que las
2379 pautas estuvieran combinadas en un grupo o grupos.
2380
2381 @lilypond[verbatim,quote,staffsize=16]
2382 \layout {
2383   \context {
2384     \Staff
2385     \override VerticalAxisGroup.default-staff-staff-spacing =
2386       #'((basic-distance . 8)
2387          (minimum-distance . 7)
2388          (padding . 1))
2389   }
2390 }
2391
2392 <<
2393   % The very low note here needs more room than 'basic-distance
2394   % can provide, so the distance between this staff and the next
2395   % is determined by 'padding.
2396   \new Staff { b,2 r | }
2397
2398   % Here, 'basic-distance provides enough room, and there is no
2399   % need to compress the space (towards 'minimum-distance) to make
2400   % room for anything else on the page, so the distance between
2401   % this staff and the next is determined by 'basic-distance.
2402   \new Staff { \clef bass g2 r | }
2403
2404   % By setting 'padding to a negative value, staves can be made to
2405   % collide.  The lowest acceptable value for 'basic-distance is 0.
2406   \new Staff \with {
2407     \override VerticalAxisGroup.default-staff-staff-spacing =
2408       #'((basic-distance . 3.5)
2409          (padding . -10))
2410   } { \clef bass g2 r | }
2411   \new Staff { \clef bass g2 r | }
2412 >>
2413 @end lilypond
2414
2415 @seealso
2416 Archivos de inicio:
2417 @file{scm/define-grobs.scm}.
2418
2419 Fragmentos de código:
2420 @rlsr{Spacing}.
2421
2422 Referencia de funcionamiento interno:
2423 @rinternals{VerticalAxisGroup}.
2424
2425
2426 @node Espaciado de pautas agrupadas
2427 @unnumberedsubsubsec Espaciado de pautas agrupadas
2428 @translationof Spacing of grouped staves
2429
2430 En partituras grandes como las orquestales, es común colocar los
2431 pentagramas en grupos.  El espacio entre los grupos suele ser mayor
2432 que el espacio que hay entre los pentagramas dentro del mismo grupo.
2433
2434 Los grupos de pautas, @emph{Staff-groups} (tales como
2435 @code{StaffGroup}, @code{ChoirStaff}, etc.) son contextos que pueden
2436 contener al mismo tiempo uno o más pentagramas o pautas.
2437
2438 Las siguientes propiedades afectan al espaciado de las pautas dentro
2439 de los grupos:
2440
2441 @itemize
2442 @item Propiedades de @code{VerticalAxisGroup}:
2443 @itemize
2444 @item @code{staff-staff-spacing}
2445 @end itemize
2446 @item Propiedades de @code{StaffGrouper}:
2447 @itemize
2448 @item @code{staff-staff-spacing}
2449 @item @code{staffgroup-staff-spacing}
2450 @end itemize
2451 @end itemize
2452
2453 Estas propiedades de grob se describen individualmente más arriba;
2454 véase @ref{Propiedades de espaciado dentro de los sistemas}.
2455
2456 El ejemplo siguiente muestra cómo pueden afectar las propiedades del
2457 grob @code{StaffGrouper} al espaciado de las pautas agrupadas:
2458
2459 @lilypond[verbatim,quote,staffsize=16]
2460 \layout {
2461   \context {
2462     \Score
2463     \override StaffGrouper.staff-staff-spacing.padding = #0
2464     \override StaffGrouper.staff-staff-spacing.basic-distance = #1
2465   }
2466 }
2467
2468 <<
2469   \new PianoStaff \with {
2470     \override StaffGrouper.staffgroup-staff-spacing.basic-distance = #20
2471   } <<
2472     \new Staff { c'1 }
2473     \new Staff { c'1 }
2474   >>
2475
2476   \new StaffGroup <<
2477     \new Staff { c'1 }
2478     \new Staff { c'1 }
2479   >>
2480 >>
2481 @end lilypond
2482
2483 @seealso
2484 Archivos de inicio:
2485 @file{scm/define-grobs.scm}.
2486
2487 Fragmentos de código:
2488 @rlsr{Spacing}.
2489
2490 Referencia de funcionamiento interno:
2491 @rinternals{VerticalAxisGroup},
2492 @rinternals{StaffGrouper}.
2493
2494
2495 @node Espaciado de las líneas que no son pautas
2496 @unnumberedsubsubsec Espaciado de las líneas que no son pautas
2497 @translationof Spacing of non-staff lines
2498
2499 Las @emph{Líneas que no son pautas} (tales como @code{Lyrics},
2500 @code{ChordNames}, etc.) son contextos cuyos objetos de presentación
2501 se imprimen como pentagramas (es decir, en líneas horizontales dentro
2502 de los sistemas).  Específicamente, las líneas que no son pautas son
2503 contextos del tipo no-pauta que crean el objeto de presentación
2504 @code{VerticalAxisGroup}.
2505
2506 Las siguientes propiedades afectan al espaciado de las líneas que no
2507 son pautas:
2508
2509 @itemize
2510 @item Propiedades de @code{VerticalAxisGroup}:
2511 @itemize
2512 @item @code{staff-affinity}
2513 @item @code{nonstaff-relatedstaff-spacing}
2514 @item @code{nonstaff-nonstaff-spacing}
2515 @item @code{nonstaff-unrelatedstaff-spacing}
2516 @end itemize
2517 @end itemize
2518
2519 Estas propiedades de grob se describen individualmente más arriba;
2520 véase @ref{Propiedades de espaciado dentro de los sistemas}.
2521
2522 El ejemplo siguiente muestra cómo la propiedad
2523 @code{nonstaff-nonstaff-spacing} puede afectar el espaciado de líneas
2524 consecutivas que no son pautas.  Aquí, mediante el establecimiento de
2525 la clave de ampliabilidad @code{stretchability} a un valor muy grande,
2526 la línea de letra es capaz de ampliarse mucho más de lo que es usual:
2527
2528 @lilypond[verbatim,quote,staffsize=16]
2529 \layout {
2530   \context {
2531     \Lyrics
2532     \override VerticalAxisGroup.nonstaff-nonstaff-spacing.stretchability = #1000
2533   }
2534 }
2535
2536 \new StaffGroup
2537 <<
2538   \new Staff \with {
2539     \override VerticalAxisGroup.staff-staff-spacing = #'((basic-distance . 30))
2540   } { c'1 }
2541   \new Lyrics \with {
2542     \override VerticalAxisGroup.staff-affinity = #UP
2543   } \lyricmode { up }
2544   \new Lyrics \with {
2545     \override VerticalAxisGroup.staff-affinity = #CENTER
2546   } \lyricmode { center }
2547   \new Lyrics \with {
2548     \override VerticalAxisGroup.staff-affinity = #DOWN
2549   } \lyricmode { down }
2550   \new Staff { c'1 }
2551 >>
2552 @end lilypond
2553
2554 @seealso
2555 Archivos de inicio:
2556 @file{ly/engraver-init.ly},
2557 @file{scm/define-grobs.scm}.
2558
2559 Fragmentos de código:
2560 @rlsr{Spacing}.
2561
2562 @c @lsr{spacing,page-spacing.ly},
2563 @c @lsr{spacing,alignment-vertical-spacing.ly}.
2564
2565 Referencia de funcionamiento interno:
2566 @rinternals{Contexts},
2567 @rinternals{VerticalAxisGroup}.
2568
2569
2570 @node Posicionamiento explícito de los pentagramas y los sistemas
2571 @subsection Posicionamiento explícito de los pentagramas y los sistemas
2572 @translationof Explicit staff and system positioning
2573
2574 Una forma de entender los mecanismos del espaciado vertical
2575 flexible que se han explicado más arriba es como una
2576 colección de ajustes que controlan la cantidad de relleno
2577 vertical entre los pentagramas y los sistemas.
2578
2579 Es posible enfrentarse al espaciado vertical de una forma distinta
2580 utilizando @code{NonMusicalPaperColumn.line-break-system-details}.
2581 Mientras que los mecanismos del espaciado vertical flexible
2582 especifican relleno vertical,
2583 @code{NonMusicalPaperColumn.line-break-system-details} puede
2584 especificar posiciones verticales exactas sobre la página.
2585
2586 @code{NonMusicalPaperColumn.line-break-system-details} acepta una
2587 lista asociativa de tres ajustes diferentes:
2588
2589 @itemize
2590 @item @code{X-offset} (desplazamiento en X)
2591 @item @code{Y-offset} (desplazamiento en Y)
2592 @item @code{alignment-distances} (distancias de alineación)
2593 @end itemize
2594
2595 Las sobreescrituras de los objetos gráficos, entre ellas las de
2596 @code{NonMusicalPaperColumn} que aparecen más abajo, pueden ocurrir en
2597 tres lugares distintos dentro de un archivo de entrada:
2598
2599 @itemize
2600 @item directamente en medio de las notas
2601 @item en un bloque @code{\context}
2602 @item en el bloque @code{\with}
2603 @end itemize
2604
2605 Cuando sobreescribimos @code{NonMusicalPaperColumn}, usamos la
2606 instrucción @code{\override} usual en los bloques @code{\context} y en
2607 el bloque @code{\with}.  Por otra parte, cuando sobreescribimos
2608 @code{NonMusicalPaperColumn} en medio de las notas, debemos usar la
2609 instrucción especial @code{\overrideProperty}.  He aquí algunas
2610 sobreescrituras de @code{NonMusicalPaperColumn} de ejemplo con la
2611 instrucción especial @code{\overrideProperty}:
2612
2613 @example
2614 \overrideProperty NonMusicalPaperColumn.line-break-system-details #'((X-offset . 20))
2615
2616 \overrideProperty NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 40))
2617
2618 \overrideProperty NonMusicalPaperColumn.line-break-system-details #'((X-offset . 20)
2619                                  (Y-offset . 40))
2620
2621 \overrideProperty NonMusicalPaperColumn.line-break-system-details #'((alignment-distances . (15)))
2622
2623 \overrideProperty NonMusicalPaperColumn.line-break-system-details #'((X-offset . 20)
2624                                  (Y-offset . 40)
2625                                  (alignment-distances . (15)))
2626 @end example
2627
2628 Para entender cómo funciona cada uno de los distintos ajustes,
2629 empezamos observando un ejemplo que no incluye absolutamente ninguna
2630 sobreescritura.
2631
2632 @c \book { } is required in these examples to ensure the spacing
2633 @c overrides can be seen between systems. -np
2634
2635 @lilypond[verbatim,quote,staffsize=16]
2636 \header { tagline = ##f }
2637 \paper { left-margin = 0\mm }
2638 \book {
2639   \score {
2640     <<
2641       \new Staff <<
2642         \new Voice {
2643           s1*5 \break
2644           s1*5 \break
2645           s1*5 \break
2646         }
2647         \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2648       >>
2649       \new Staff {
2650         \repeat unfold 15 { d'4 d' d' d' }
2651       }
2652     >>
2653   }
2654 }
2655 @end lilypond
2656
2657 Esta partitura mantiene aislada la información de los saltos de línea
2658 y de página en una voz dedicada a ello.  Esta técnica de crear una voz
2659 de saltos ayuda a mantener separada de la escritura de notas conforme
2660 el ejemplo se vuelve más complicado.  Consulte
2661 @ref{Utilizar una voz adicional para los saltos de línea}.
2662
2663 Los saltos explícitos dividen la música de forma regular en seis
2664 compases por línea.  El espaciado vertical es el resultado de los
2665 ajustes predeterminados de LilyPond.  Para establecer explícitamente
2666 el punto de origen vertical de cada sistema, podemos establecer el par
2667 @code{Y-offset} en el atributo @code{line-break-system-details} del
2668 grob (objeto gráfico) @code{NonMusicalPaperColumn}:
2669
2670 @lilypond[verbatim,quote,staffsize=16]
2671 \header { tagline = ##f }
2672 \paper { left-margin = 0\mm }
2673 \book {
2674   \score {
2675     <<
2676       \new Staff <<
2677         \new Voice {
2678           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 0))
2679           s1*5 \break
2680           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 40))
2681           s1*5 \break
2682           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 80))
2683           s1*5 \break
2684         }
2685         \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2686       >>
2687       \new Staff {
2688         \repeat unfold 15 { d'4 d' d' d' }
2689       }
2690     >>
2691   }
2692 }
2693 @end lilypond
2694
2695 Observe que @code{line-break-system-details} toma una lista asociativa
2696 de una cantidad de valores potencialmente elevada, pero aquí sólo
2697 fijamos un valor.  Observe también que aquí la propiedad
2698 @code{Y-offset} determina la posición vertical exacta sobre la página
2699 en la que se trazará cada uno de los nuevos sistemas.
2700
2701 Ahora que hemos establecido explícitamente el punto de origen vertical
2702 de cada sistema, podemos también establecer manualmente las distancias
2703 verticales entre los pentagramas dentro de cada sistema.  Lo hacemos
2704 usando la subpropiedad @code{alignment-distances} de
2705 @code{line-break-system-details}.
2706
2707 @lilypond[verbatim,quote,staffsize=16]
2708 \header { tagline = ##f }
2709 \paper { left-margin = 0\mm }
2710 \book {
2711   \score {
2712     <<
2713       \new Staff <<
2714         \new Voice {
2715           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 20)
2716                                            (alignment-distances . (15)))
2717           s1*5 \break
2718           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 60)
2719                                            (alignment-distances . (15)))
2720           s1*5 \break
2721           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 100)
2722                                            (alignment-distances . (15)))
2723           s1*5 \break
2724         }
2725         \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2726       >>
2727       \new Staff {
2728         \repeat unfold 15 { d'4 d' d' d' }
2729       }
2730     >>
2731   }
2732 }
2733 @end lilypond
2734
2735 Observe que aquí asignamos dos valores distintos al atributo
2736 @code{line-break-system-details} del grob
2737 @code{NonMusicalPaperColumn}.  Aunque el atributo alist de
2738 @code{line-break-system-details} acepta muchos parámetros de espaciado
2739 adicionales (entre ellos, por ejemplo, un par @code{X-offset}
2740 correspondiente), sólo tenemos que establecer el desplazamiento
2741 @code{Y-offset} y los pares @code{alignment-distances} para controlar
2742 el punto de origen vertical de cada sistema y pentagrama.  Finalmente,
2743 observe que @code{alignment-distances} especifica el posicionamiento
2744 vertical de los pentagramas pero no de los grupos de pentagramas.
2745
2746 @lilypond[verbatim,quote,staffsize=16]
2747 \header { tagline = ##f }
2748 \paper { left-margin = 0\mm }
2749 \book {
2750   \score {
2751     <<
2752       \new Staff <<
2753         \new Voice {
2754           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 0)
2755                                            (alignment-distances . (30 10)))
2756           s1*5 \break
2757           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 60)
2758                                            (alignment-distances . (10 10)))
2759           s1*5 \break
2760           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 100)
2761                                            (alignment-distances . (10 30)))
2762           s1*5 \break
2763         }
2764         \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2765       >>
2766       \new StaffGroup <<
2767         \new Staff { \repeat unfold 15 { d'4 d' d' d' } }
2768         \new Staff { \repeat unfold 15 { e'4 e' e' e' } }
2769       >>
2770     >>
2771   }
2772 }
2773 @end lilypond
2774
2775 Algunos puntos que tener en cuenta:
2776
2777 @itemize
2778 @item Al usar @code{alignment-distances}, la letra
2779 y otras líneas que no son pautas, no cuentan como un pentagrama.
2780
2781 @item Las unidades de los números que se pasan a @code{X-offset},
2782 @code{Y-offset} y @code{alignment-distances} se interpretan como
2783 múltiplos de la distancia entre líneas de pentagrama adyacentes.  Los
2784 valores positivos mueven a los pentagramas y a la letra hacia arriba,
2785 los valores negativos mueven los pentagramas y la letra hacia abajo.
2786
2787 @item A causa de que los ajustes a
2788 @code{NonMusicalPaperColumn.line-break-system-details} dados aquí
2789 permiten el posicionamiento de pentagramas y sistemas en cualquier
2790 lugar de la página, es posible violar los márgenes o los límites
2791 del papel, o incluso imprimir pentagramas o sistemas unos encima
2792 de otros.  Esto se evitaría pasando a los diferentes ajustes unos
2793 valores razonables.
2794 @end itemize
2795
2796 @seealso
2797 Fragmentos de código:
2798 @rlsr{Spacing}.
2799
2800
2801 @node Evitar las colisiones verticales
2802 @subsection Evitar las colisiones verticales
2803 @translationof Vertical collision avoidance
2804
2805 @funindex outside-staff-priority
2806 @funindex outside-staff-padding
2807 @funindex outside-staff-horizontal-padding
2808
2809 Podemos decir intuitivamente que algunos objetos de la notación
2810 musical pertenecen al pentagrama y otros se sitúan fuera del
2811 pentagrama.  Entre los objetos que pertenecen al exterior del
2812 pentagrama están las marcas de ensayo, las marcas textuales y las
2813 indicaciones de dinámica (en lo sucesivo, les llamaremos objetos fuera
2814 del pentagrama).  La regla de LilyPond para la colocación vertical de
2815 los objetos fuera del pentagrama es ponerlos tan cerca del pentagrama
2816 como sea posible pero no tan próximos como para que choquen con otro
2817 objeto.
2818
2819 LilyPond utiliza la propiedad @code{outside-staff-priority} para
2820 determinar si un grob es un objeto fuera del pentagrama: si
2821 @code{outside-staff-priority} es un número, el grob es un objeto fuera
2822 del pentagrama.  Además, @code{outside-staff-priority} informa a
2823 LilyPond en qué orden se debe situar los objetos.
2824
2825 En primer lugar, LilyPond sitúa todos los objetos que no pertenecen al
2826 exterior del pentagrama.  Después ordena los objetos fuera del
2827 pentagrama de acuerdo a su prioridad @code{outside-staff-priority} (en
2828 orden creciente).  LilyPond toma los objetos fuera del pentagrama uno
2829 a uno y los coloca de forma que no choquen con ningún objeto que ya
2830 haya sido colocado.  Esto es, si dos grobs fuera del pentagrama
2831 compiten por el mismo espacio, el que tiene la prioridad
2832 @code{outside-staff-priority} más baja se colocará más próximo al
2833 pentagrama.
2834
2835 @lilypond[quote,ragged-right,relative=2,verbatim]
2836 c4_"Text"\pp
2837 r2.
2838 \once \override TextScript.outside-staff-priority = #1
2839 c4_"Text"\pp % this time the text will be closer to the staff
2840 r2.
2841 % by setting outside-staff-priority to a non-number,
2842 % we disable the automatic collision avoidance
2843 \once \override TextScript.outside-staff-priority = ##f
2844 \once \override DynamicLineSpanner.outside-staff-priority = ##f
2845 c4_"Text"\pp % now they will collide
2846 @end lilypond
2847
2848 El relleno vertical entre un objeto fuera del pentagrama y los grobs
2849 posicionados previamente se puede controlar con
2850 @code{outside-staff-padding}.
2851
2852 @lilypond[quote,ragged-right,relative=2,verbatim,staffsize=18]
2853 \once \override TextScript.outside-staff-padding = #0
2854 a'^"This text is placed very close to the note"
2855 \once \override TextScript.outside-staff-padding = #3
2856 c^"This text is padded away from the previous text"
2857 c^"This text is placed close to the previous text"
2858 @end lilypond
2859
2860 De forma predeterminada, los objetos fuera del pentagrama se colocan
2861 sólo para evitar una colisión horizontal con los grobs posicionados
2862 previamente.  Esto puede llevar a situaciones en las que los objetos
2863 se colocan muy próximos entre sí en el sentido horizontal.  El espacio
2864 vertical entre pentagramas se puede fijar también de manera que los
2865 objetos fuera del pentagrama se sitúen de forma intercalada.  El
2866 establecimiento del relleno horizontal
2867 @code{outside-staff-horizontal-padding} ocasiona que un objeto se
2868 desplace verticalmente para que tal situación no ocurra.
2869
2870 @lilypond[quote,ragged-right,relative=2,verbatim]
2871 % the markup is too close to the following note
2872 c4^"Text"
2873 c4
2874 c''2
2875 % setting outside-staff-horizontal-padding fixes this
2876 R1
2877 \once \override TextScript.outside-staff-horizontal-padding = #1
2878 c,,4^"Text"
2879 c4
2880 c''2
2881 @end lilypond
2882
2883 @seealso
2884 Fragmentos de código:
2885 @rlsr{Spacing}.
2886
2887
2888 @node Espaciado horizontal
2889 @section Espaciado horizontal
2890 @translationof Horizontal spacing
2891
2892 @cindex horizontal, espaciado
2893 @cindex espaciado horizontal
2894
2895 @menu
2896 * Panorámica del espaciado horizontal::
2897 * Área de espaciado nueva::
2898 * Cambiar el espaciado horizontal::
2899 * Longitud de la línea::
2900 * Notación proporcional::
2901 @end menu
2902
2903
2904 @node Panorámica del espaciado horizontal
2905 @subsection Panorámica del espaciado horizontal
2906 @translationof Horizontal spacing overview
2907
2908 El motor de espaciado traduce las diferencias en las duraciones a
2909 distancias ampliables (@q{muelles}) de distintas longitudes.  Las
2910 duraciones más largas reciben un espacio mayor y las duraciones más
2911 cortas reciben menos.  Las duraciones más breves reciben un espacio de
2912 tamaño fijo (que se controla mediante @code{shortest-duration-space}
2913 en el objeto @rinternals{SpacingSpanner}).  Cuanto más larga es la
2914 duración, más espacio recibe: al doblar una duración se añade un
2915 espacio de tamaño fijo (este tamaño se controla mediante
2916 @code{spacing-increment}) a la nota.
2917
2918 Por ejemplo, la pieza siguiente contiene numerosas blancas, negras y
2919 corcheas; la corchea va seguida de un ancho de cabeza de blanca (ACB).
2920 La negra va seguida de 2 ACB, la blanca por 3 ACB, etc.
2921
2922 @lilypond[quote,verbatim,relative=1]
2923 c2 c4. c8 c4. c8 c4. c8 c8
2924 c8 c4 c4 c4
2925 @end lilypond
2926
2927 Normalmente, el valor de @code{spacing-increment} está establecido en
2928 1.2 espacios de pentagrama, lo que es aproximadamente el ancho de una
2929 cabeza, y @code{shortest-duration-space} está establecido en 2.0, lo
2930 que significa que la nota más breve recibe 2.4 espacios de pentagrama
2931 (2.0 multiplicado por el @code{spacing-increment}) de espacio
2932 horizontal.  Este espacio se cuenta a partir del borde izquierdo del
2933 símbolo, de manera que las notas más breves van seguidas generalmente
2934 por un espacio de 1 ACB.
2935
2936 Si siguiésemos el procedimiento anterior exactamente, entonces la
2937 adición de una sola fusa a una partitura que usa corcheas y
2938 semicorcheas, aumentaría enormemente la anchura de la partitura
2939 completa.  La nota más breve ya no es la semicorchea, sino la fusa,
2940 añadiendo así 1 ACB a cada una de las notas.  Para evitarlo, la
2941 duración más breve a efectos de espaciado no es la nota más breve de
2942 la partitura, sino la que ocurre con más frecuencia.
2943
2944 La duración más breve que es más común se determina de la siguiente
2945 manera: en cada compás se determina la duración más breve.  La menor
2946 duración más común se toma como base para el espaciado, habiendo
2947 estipulado que esta duración menor siempre debe ser igual o menor que
2948 una corchea.  La duración más breve se imprime cuando se ejecuta
2949 @code{lilypond} con la opción @option{--verbose}.
2950
2951 Estas duraciones también se pueden personalizar.  Si establecemos la
2952 @code{common-shortest-duration} en @rinternals{SpacingSpanner},
2953 entonces éste establece la duración base para el espaciado.  La
2954 duración máxima para esta base (normalmente una corchea), se fija a
2955 través de @code{base-shortest-duration}.
2956
2957 @funindex common-shortest-duration
2958 @funindex base-shortest-duration
2959 @funindex stem-spacing-correction
2960 @funindex spacing
2961
2962 Las notas que son aún más breves que la nota común más breve van
2963 seguidas por un espacio proporcional a su duración en relación con la
2964 nota común más breve.  Así pues, si fuésemos a añadir tan sólo algunas
2965 semicorcheas al ejemplo anterior, irían seguidas por medio ACB:
2966
2967 @lilypond[quote,verbatim,relative=2]
2968 c2 c4. c8 c4. c16[ c] c4. c8 c8 c8 c4 c4 c4
2969 @end lilypond
2970
2971 En el @emph{Ensayo sobre grabado musical automatizado},
2972 se explicó que las
2973 direcciones de las plicas influyen en el espaciado
2974 (véase @ressay{Espaciado óptico}).  Esto se controla
2975 con la propiedad @code{stem-spacing-correction} en el objeto
2976 @rinternals{NoteSpacing}.  Estos se generan para cada uno de los
2977 contextos de @rinternals{Voice}.  El objeto @code{StaffSpacing}
2978 (generado en el contexto de @rinternals{Staff}) contiene la misma
2979 propiedad para controlar el espaciado de las líneas de plica o
2980 divisorias.  El ejemplo siguiente muestra estas correcciones, una vez
2981 con los valores predeterminados y otra con correcciones exageradas:
2982
2983 @lilypond[quote,ragged-right]
2984 {
2985   c'4 e''4 e'4 b'4 |
2986   b'4 e''4 b'4 e''4 |
2987   \override Staff.NoteSpacing.stem-spacing-correction = #1.5
2988   \override Staff.StaffSpacing.stem-spacing-correction = #1.5
2989   c'4 e''4 e'4 b'4 |
2990   b'4 e''4 b'4 e''4 |
2991 }
2992 @end lilypond
2993
2994 Está contemplada la notación proporcional; consulte
2995 @ref{Notación proporcional}.
2996
2997 @seealso
2998 Ensayo sobre grabado musical automatizado:
2999 @ressay{Espaciado óptico}.
3000
3001 Fragmentos de código:
3002 @rlsr{Spacing}.
3003
3004 Referencia de funcionamiento interno:
3005 @rinternals{SpacingSpanner},
3006 @rinternals{NoteSpacing},
3007 @rinternals{StaffSpacing},
3008 @rinternals{NonMusicalPaperColumn}.
3009
3010 @knownissues
3011 No existe ningún mecanismo conveniente para sobreescribir el espaciado
3012 manualmente.  Se puede usar el siguiente rodeo para insertar espacio
3013 adicional en una partitura, ajustando el valor del relleno en la
3014 medida necesaria.
3015
3016 @example
3017  \override Score.NonMusicalPaperColumn.padding = #10
3018 @end example
3019
3020 No existe ningún rodeo para disminuir la magnitud de la separación.
3021
3022
3023 @node Área de espaciado nueva
3024 @subsection Área de espaciado nueva
3025 @translationof New spacing area
3026
3027 Se pueden iniciar secciones nuevas con diferentes parámetros de
3028 espaciado, con @code{newSpacingSection}.  Esto es útil cuando hay
3029 secciones que tienen distinta noción de las notas largas y cortas.
3030
3031 En el ejemplo siguiente, el cambio de compás introduce una sección
3032 nueva, y por ello las semicorcheas se separan de manera más amplia.
3033
3034 @lilypond[relative=1,verbatim,quote]
3035 \time 2/4
3036 c4 c8 c
3037 c8 c c4 c16[ c c8] c4
3038 \newSpacingSection
3039 \time 4/16
3040 c16[ c c8]
3041 @end lilypond
3042
3043 La instrucción @code{\newSpacingSection} crea un nuevo objeto
3044 @code{SpacingSpanner}, y de ahí que se puedan usar nuevas
3045 instrucciones de sobreescritura @code{\override} en dicho punto.
3046
3047 @seealso
3048 Fragmentos de código:
3049 @rlsr{Spacing}.
3050
3051 Referencia de funcionamiento interno:
3052 @rinternals{SpacingSpanner}.
3053
3054
3055 @node Cambiar el espaciado horizontal
3056 @subsection Cambiar el espaciado horizontal
3057 @translationof Changing horizontal spacing
3058
3059 Se puede alterar el espaciado horizontal con la propiedad
3060 @code{base-shortest-duration}.  Aquí compararemos la misma música, una
3061 vez sin alterar la propiedad, y luego alterándola.  Los valores
3062 mayores de @code{ly:make-moment} producen música más pequeña.  Observe
3063 que @code{ly:make-moment} construye una duración, por lo que @code{1
3064 4} es una duración mayor que @code{1 16}.
3065
3066 @lilypond[verbatim,line-width=12\cm]
3067 \score {
3068   \relative c'' {
3069     g4 e e2 | f4 d d2 | c4 d e f | g4 g g2 |
3070     g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3071     d4 d d d | d4 e f2 | e4 e e e | e4 f g2 |
3072     g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3073   }
3074 }
3075 @end lilypond
3076
3077 @lilypond[verbatim,line-width=12\cm]
3078 \score {
3079   \relative c'' {
3080     g4 e e2 | f4 d d2 | c4 d e f | g4 g g2 |
3081     g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3082     d4 d d d | d4 e f2 | e4 e e e | e4 f g2 |
3083     g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3084   }
3085   \layout {
3086     \context {
3087       \Score
3088       \override SpacingSpanner.base-shortest-duration = #(ly:make-moment 1 16)
3089     }
3090   }
3091 }
3092 @end lilypond
3093
3094 @snippets
3095 De forma predeterminada, el espaciado en los grupos de valoración
3096 especial depende de varios factores ajenos a la duración (como
3097 alteraciones, cambios de clave, etc.).  Para pasar por alto estos
3098 símbolos y forzar un espaciado de duraciones iguales uniforme, use
3099 @code{Score.SpacingSpanner.uniform-stretching}.  Esta propiedad sólo
3100 puede cambiarse al principio de la partitura:
3101
3102 @lilypond[quote,ragged-right,verbatim]
3103 \score {
3104   <<
3105     \new Staff {
3106       \times 4/5 {
3107         c8 c8 c8 c8 c8
3108       }
3109       c8 c8 c8 c8
3110     }
3111     \new Staff {
3112       c8 c8 c8 c8
3113       \times 4/5 {
3114         c8 c8 c8 c8 c8
3115       }
3116     }
3117   >>
3118   \layout {
3119     \context {
3120       \Score
3121       \override SpacingSpanner.uniform-stretching = ##t
3122     }
3123   }
3124 }
3125 @end lilypond
3126
3127 Cuando se establece @code{strict-note-spacing}, las notas se separan
3128 sin tener en cuenta las claves, líneas divisorias ni notas de adorno:
3129
3130 @lilypond[quote,ragged-right,relative=2,verbatim]
3131 \override Score.SpacingSpanner.strict-note-spacing = ##t
3132 \new Staff { c8[ c \clef alto c \grace { c16[ c] } c8 c c]  c32[ c32] }
3133 @end lilypond
3134
3135 @seealso
3136 Fragmentos de código:
3137 @rlsr{Spacing}.
3138
3139
3140 @node Longitud de la línea
3141 @subsection Longitud de la línea
3142 @translationof Line length
3143
3144 @cindex saltos de página
3145 @cindex página, saltos de
3146
3147 @funindex indent
3148 @funindex line-width
3149 @funindex ragged-right
3150 @funindex ragged-last
3151
3152 @c Although line-width can be set in \layout, it should be set in paper
3153 @c block, to get page layout right.
3154 @c Setting indent in \paper block makes not much sense, but it works.
3155
3156 @c Bit verbose and vague, use examples?
3157 Los ajustes más básicos que influyen en el espaciado son @code{indent}
3158 y @code{line-width}.  Se definen en el bloque @code{\layout}.
3159 Controlan el sangrado de la primera línea de música y la longitud de
3160 las líneas.
3161
3162 Si se fija un valor verdadero para @code{ragged-right} en el bloque
3163 @code{\layout}, entonces los sistemas terminan en su longitud
3164 horizontal natural, en lugar de repartirse horizontalmente hasta
3165 llenar toda la línea.  Esto es útil para fragmentos cortos, y para
3166 comprobar qué tan apretado es el espaciado natural.
3167 El valor normal predeterminado es falso, pero si la partitura
3168 tiene un solo sistema, el valor predeterminado es verdadero.
3169
3170 @cindex diseño de página
3171 @cindex página, disposición de la
3172 @cindex vertical, espaciado
3173
3174 La opción @code{ragged-last} es similar a @code{ragged-right}, pero
3175 afecta sólo a la última línea de la pieza.  No se efectúa ninguna
3176 restricción sobre dicha línea.  El resultado es similar al formateo de
3177 los párrafos de texto.  En un párrafo, la última línea sencillamente
3178 ocupa su longitud horizontal natural.
3179 @c Note that for text there are several options for the last line.
3180 @c While Knuth TeX uses natural length, lead typesetters use the same
3181 @c stretch as the previous line.  eTeX uses \lastlinefit to
3182 @c interpolate between both these solutions.
3183
3184 @example
3185 \layout @{
3186   indent = #0
3187   line-width = #150
3188   ragged-last = ##t
3189 @}
3190 @end example
3191
3192 @seealso
3193 Fragmentos de código:
3194 @rlsr{Spacing}.
3195
3196
3197 @node Notación proporcional
3198 @subsection Notación proporcional
3199 @translationof Proportional notation
3200
3201 LilyPond contempla la notación proporcional, un tipo de espaciado
3202 horizontal en el que cada nota consume una medida horizontal que
3203 equivale exactamente a su duración rítmica.  Este tipo de espaciado
3204 proporcional es comparable al espaciado horizontal hecho sobre un
3205 papel milimetrado.  Ciertas partituras del finales del s.XX y
3206 principios del s.XXI utilizan notación proporcional para clarificar
3207 relaciones rítmicas complejas o para facilitar la colocación de líneas
3208 cronométricas u otros gráficos directamente en la partitura.
3209
3210 LilyPond contempla cinco ajustes distintos para la notación
3211 proporcional, que se pueden usar solos o combinados:
3212
3213 @itemize
3214 @item @code{proportionalNotationDuration}
3215 @item @code{uniform-stretching}
3216 @item @code{strict-note-spacing}
3217 @item @code{\remove "Separating_line_group_engraver"}
3218 @item @code{\override PaperColumn.used = ##t}
3219 @end itemize
3220
3221 En los ejemplos que siguen, exploramos el uso de estos cinco ajustes
3222 de la notación proporcional y examinamos la forma en que interactúan.
3223
3224 Comenzamos con el siguiente ejemplo de un solo compás, que usa un
3225 espaciado clásico sin justificación por la derecha.
3226
3227 @lilypond[quote,verbatim,ragged-right]
3228 \score {
3229   <<
3230     \new RhythmicStaff {
3231       c'2
3232       c'16 c'16 c'16 c'16
3233       \times 4/5 {
3234         c'16 c'16 c'16 c'16 c'16
3235       }
3236     }
3237   >>
3238 }
3239 @end lilypond
3240
3241 Observe que la blanca que inicia el compás ocupa mucho menos de la
3242 mitad de todo el espacio horizontal del compás.  De forma similar, las
3243 semicorcheas y el cinquillo de semicorcheas con que finaliza el compás
3244 ocupan en conjunto mucho más de la mitad de todo el espacio horizontal
3245 del compás.
3246
3247 En el grabado clásico, este espaciado puede ser exactamente el que
3248 deseamos porque podemos tomar prestado el espacio horizontal de la
3249 blanca y conservar el espacio horizontal a lo largo del compás como un
3250 todo.
3251
3252 Por otro lado, si queremos insertar una línea de tiempo graduada o
3253 algún otro gráfico encima o debajo de la partitura, necesitamos la
3254 notación proporcional.  Se activa la notación proporcional con el
3255 ajuste @code{proportionalNotationDuration}.
3256
3257 @lilypond[quote,verbatim,ragged-right]
3258 \score {
3259   <<
3260     \new RhythmicStaff {
3261       c'2
3262       c'16 c'16 c'16 c'16
3263       \times 4/5 {
3264         c'16 c'16 c'16 c'16 c'16
3265       }
3266     }
3267   >>
3268  \layout {
3269     \context {
3270       \Score
3271       proportionalNotationDuration = #(ly:make-moment 1 20)
3272     }
3273   }
3274 }
3275 @end lilypond
3276
3277 La blanca al principio del compás y las notas rápidas de la segunda
3278 mitad del compás ocupan ahora cantidades iguales de espacio
3279 horizontal.  Podríamos colocar una línea de tiempo graduada o un
3280 gráfico encima o debajo de este ejemplo.
3281
3282 El ajuste @code{proportionalNotationDuration} es un ajuste de contexto
3283 que reside en @code{Score}.  Recordemos que los ajustes de contexto
3284 aparecen en uno de tres posibles lugares del archivo de entrada: en un
3285 bloque @code{\with}, en un bloque @code{\context}, o directamente
3286 entre la música precedido por la instrucción @code{\set}.  Como con
3287 todos los ajustes de contexto, el usuario puede elegir en cuál de los
3288 tres lugares diferentes prefiere establecer el valor de
3289 @code{proportionalNotationDuration}.
3290
3291 El ajuste @code{proportionalNotationDuration} acepta un solo
3292 argumento, que es la duración de referencia contra el que se aplica el
3293 espaciado de toda la música.  La función Scheme de LilyPond
3294 @code{make-moment} acepta dos argumentos: un numerador y un
3295 denominador que, juntos, expresan una cierta fracción de redonda.  La
3296 llamada @code{(ly:make-moment 1 20)}, por tanto, produce una duración
3297 de referencia de una nota de un veinteavo de redonda (semicorcheas de
3298 cinquillo).  Son también posibles valores como
3299 @code{(ly:make-moment 1 16)},
3300 @code{(ly:make-moment 1 8)} y @code{(ly:make-moment 3 97)}.
3301
3302 ¿Cómo seleccionamos la duración correcta de referencia para pasarla a
3303 @code{proportionalNotationDuration}?  Normalmente mediante un proceso
3304 de ensayo y error, comenzando con una duración cercana a la más rápida
3305 (o más breve) duración de la pieza.  Las duraciones de referencia más
3306 pequeñas aplican un espaciado más suelto; las duraciones de referencia
3307 más largas aplican un espaciado más apretado.
3308
3309 @lilypond[quote,verbatim,ragged-right]
3310 \score {
3311   <<
3312     \new RhythmicStaff {
3313       c'2
3314       c'16 c'16 c'16 c'16
3315       \times 4/5 {
3316         c'16 c'16 c'16 c'16 c'16
3317       }
3318     }
3319   >>
3320   \layout {
3321     \context {
3322       \Score
3323       proportionalNotationDuration = #(ly:make-moment 1 8)
3324     }
3325   }
3326 }
3327
3328 \score {
3329   <<
3330     \new RhythmicStaff {
3331       c'2
3332       c'16 c'16 c'16 c'16
3333       \times 4/5 {
3334         c'16 c'16 c'16 c'16 c'16
3335       }
3336     }
3337   >>
3338   \layout {
3339     \context {
3340       \Score
3341       proportionalNotationDuration = #(ly:make-moment 1 16)
3342     }
3343   }
3344 }
3345
3346 \score {
3347   <<
3348     \new RhythmicStaff {
3349       c'2
3350       c'16 c'16 c'16 c'16
3351       \times 4/5 {
3352         c'16 c'16 c'16 c'16 c'16
3353       }
3354     }
3355   >>
3356   \layout {
3357     \context {
3358       \Score
3359       proportionalNotationDuration = #(ly:make-moment 1 32)
3360     }
3361   }
3362 }
3363 @end lilypond
3364
3365 Observe que una duración de referencia demasiado grande (como la
3366 corchea, en el ejemplo de arriba) produce un espaciado excesivamente
3367 apretado y puede ser causa de colisiones entre las cabezas de nota.
3368 Observe también que la notación proporcional en general ocupa más
3369 espacio horizontal que el espaciado clásico.  El espaciado
3370 proporcional aporta claridad rítmica a expensas del espacio
3371 horizontal.
3372
3373 Ahora veremos cómo espaciar de forma óptima grupos de valoración
3374 especial que se superponen.
3375
3376 Empezamos por examinar qué le ocurre a nuestro ejemplo original, con
3377 espaciado clásico, cuando añadimos un segundo pentagrama con un tipo
3378 diferente de grupo especial.
3379
3380 @lilypond[quote,verbatim,ragged-right]
3381 \score {
3382   <<
3383     \new RhythmicStaff {
3384       c'2
3385       c'16 c'16 c'16 c'16
3386       \times 4/5 {
3387         c'16 c'16 c'16 c'16 c'16
3388       }
3389     }
3390     \new RhythmicStaff {
3391       \times 8/9 {
3392         c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8
3393       }
3394     }
3395   >>
3396 }
3397 @end lilypond
3398
3399 El espaciado es defectuoso porque las notas regularmente espaciadas
3400 del pentagrama inferior no se amplían de manera uniforme.  Los grabados
3401 clásicos incluyen muy pocos tresillos complejos y así las reglas del
3402 grabado clásico pueden generar este tipo de resultado.  El
3403 establecimiento de @code{proportionalNotationDuration} lo
3404 soluciona.
3405
3406 @lilypond[quote,verbatim,ragged-right]
3407 \score {
3408   <<
3409     \new RhythmicStaff {
3410       c'2
3411       c'16 c'16 c'16 c'16
3412       \times 4/5 {
3413         c'16 c'16 c'16 c'16 c'16
3414       }
3415     }
3416     \new RhythmicStaff {
3417       \times 8/9 {
3418         c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8
3419       }
3420     }
3421   >>
3422   \layout {
3423     \context {
3424       \Score
3425       proportionalNotationDuration = #(ly:make-moment 1 20)
3426     }
3427   }
3428 }
3429 @end lilypond
3430
3431 Pero si observamos con mucho cuidado podremos ver que las notas de la
3432 segunda mitad del 9-illo están espaciadas de forma ligeramente más
3433 ancha que las de la primera mitad del 9-illo.  Para asegurar una
3434 ampliación uniforme, activamos @code{uniform-stretching}, que es una
3435 propiedad de @code{SpacingSpanner}.
3436
3437 @lilypond[quote,verbatim,ragged-right]
3438 \score {
3439   <<
3440     \new RhythmicStaff {
3441       c'2
3442       c'16 c'16 c'16 c'16
3443       \times 4/5 {
3444         c'16 c'16 c'16 c'16 c'16
3445       }
3446     }
3447     \new RhythmicStaff {
3448       \times 8/9 {
3449         c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8
3450       }
3451     }
3452   >>
3453   \layout {
3454     \context {
3455       \Score
3456       proportionalNotationDuration = #(ly:make-moment 1 20)
3457       \override SpacingSpanner.uniform-stretching = ##t
3458     }
3459   }
3460 }
3461 @end lilypond
3462
3463 Nuestro ejemplo de dos pentagramas ahora está espaciado exactamente,
3464 nuestras relaciones rítmicas son visualmente claras, y podemos incluir
3465 una línea de tiempo graduada o un gráfico, si queremos.
3466
3467 Observe que el paquete de notación proporcional de LilyPond espera que
3468 todas las partituras proporcionales establezcan el atributo
3469 @code{uniform-stretching} de @code{SpacingSpanner} al valor ##t.  El
3470 establecimiento de @code{proportionalNotationDuration} sin ajustar
3471 también el atributo @code{uniform-stretching} de @code{SpacingSpanner}
3472 al valor ##t causará, por ejemplo, que los desplazamientos
3473 (@code{skips}) consuman una cantidad de espacio horizontal incorrecta.
3474
3475 El @code{SpacingSpanner} es un grob abstracto que reside en el
3476 contexto de @code{Score}. Como con nuestros ajustes de
3477 @code{proportionalNotationDuration}, las sobreescrituras al
3478 @code{SpacingSpanner} sólo pueden ocurrir en uno de estos tres lugares
3479 dentro del archivo de entrada: en el bloque @code{\with}, en el bloque
3480 @code{\context} o directamente dentro de la escritura de notas.
3481
3482 De manera predeterminada, sólo hay un @code{SpacingSpanner} por
3483 @code{Score}.  Esto supone que, por omisión, @code{uniform-stretching}
3484 está activado para la partitura completa o desactivado para la
3485 partitura completa.  Sin embargo, podemos sobreescribir este
3486 comportamiento y activar distintas posibilidades de espaciado en
3487 distintos lugares de la partitura.  Lo hacemos con la instrucción
3488 @code{\newSpacingSection}.  Consulte @ref{Área de espaciado nueva}
3489 para más información.
3490
3491 A continuación examinamos los efectos del grabador
3492 @code{Separating_line_group_engraver} y veremos por qué las partituras
3493 proporcionales con frecuencia eliminan este grabador.  El ejemplo
3494 siguiente muestra que hay una pequeña cantidad de espacio
3495 @qq{preliminar} justo antes de la primera nota de cada sistema.
3496
3497 @lilypond[quote,verbatim,ragged-right]
3498 \paper {
3499   indent = #0
3500 }
3501
3502 \new Staff {
3503   c'1
3504   \break
3505   c'1
3506 }
3507 @end lilypond
3508
3509 Esta cantidad de espacio preliminar es la misma ya sea después de
3510 una indicación de compás, una armadura o una clave.  El grabador
3511 @code{Separating_line_group_engraver} es responsable de este espacio.
3512 La eliminación de @code{Separating_line_group_engraver} reduce este
3513 espacio a cero.
3514
3515 @lilypond[quote,verbatim,ragged-right]
3516 \paper {
3517   indent = #0
3518 }
3519
3520 \new Staff \with {
3521   \remove "Separating_line_group_engraver"
3522 } {
3523   c'1
3524   \break
3525   c'1
3526 }
3527 @end lilypond
3528
3529 Los elementos no musicales como la indicación de compás, la armadura,
3530 la clave y las alteraciones son problemáticos en notación
3531 proporcional.  Ninguno de estos elementos tiene duración rítmica.
3532 Pero todos ellos consumen espacio horizontal.  Las distintas
3533 partituras proporcionales abordan este problema de distinta manera.
3534
3535 Sería posible evitar los problemas de espaciado con las armaduras,
3536 simplemente evitando tenerlas.  Esta es una opción válida pues casi
3537 todas las partituras proporcionales son música contemporánea.  Lo
3538 mismo puede valer para las indicaciones de compás, especialmente para
3539 las partituras que incluyen una línea de tiempo graduada u otro
3540 gráfico.  Pero estas partituras son excepcionales y casi todas las
3541 partituras proporcionales incluyen al menos unas pocas indicaciones de
3542 compás.  Las claves y las alteraciones son aún más esenciales.
3543
3544 Así pues ¿qué estrategias existen para el espaciado de los elementos
3545 no musicales en un contexto proporcional?  Una buena opción es la
3546 propiedad @code{strict-note-spacing} de @code{SpacingSpanner}.
3547 Compare las dos partituras siguientes:
3548
3549 @lilypond[quote,verbatim,ragged-right]
3550 \new Staff {
3551   \set Score.proportionalNotationDuration = #(ly:make-moment 1 16)
3552   c''8
3553   c''8
3554   c''8
3555   \clef alto
3556   d'8
3557   d'2
3558 }
3559
3560 \new Staff {
3561   \set Score.proportionalNotationDuration = #(ly:make-moment 1 16)
3562   \override Score.SpacingSpanner.strict-note-spacing = ##t
3563   c''8
3564   c''8
3565   c''8
3566   \clef alto
3567   d'8
3568   d'2
3569 }
3570 @end lilypond
3571
3572 Las dos partituras son proporcionales, pero el espaciado de la
3573 primera es muy suelto a causa del cambio de clave. Sin embargo, el
3574 espaciado de la segunda partitura se mantiene estricto, porque
3575 @code{strict-note-spacing} está activado.  La activación de
3576 @code{strict-note-spacing} hace que el ancho de las indicaciones de
3577 compás, armaduras, cambios de clave y alteraciones no tomen parte en
3578 el algoritmo de espaciado.
3579
3580 Además de los ajustes dados aquí, hay otros que aparecen con
3581 frecuencia en las partituras proporcionales.  Entre ellos están:
3582
3583 @itemize
3584 @item @code{\override SpacingSpanner.strict-grace-spacing = ##t}
3585 @item @code{tupletFullLength = ##t}
3586 @item @code{\override Beam.breakable = ##t}
3587 @item @code{\override Glissando.breakable = ##t}
3588 @item @code{\override TextSpanner.breakable = ##t}
3589 @item @code{\remove "Forbid_line_break_engraver" in the Voice context}
3590 @end itemize
3591
3592 Estos ajustes dan a las notas de adorno un espaciado estricto,
3593 extienden los corchetes de grupo especial para que marquen tanto los
3594 puntos de comienzo como de final, y permiten que los elementos de
3595 extensión se dividan entre los sistemas y las páginas.  Consulte las
3596 partes respectivas del manual para ver estos ajustes relacionados.
3597
3598 @seealso
3599 Referencia de la notación:
3600 @ref{Área de espaciado nueva}.
3601
3602 Fragmentos de código:
3603 @rlsr{Spacing}.
3604
3605
3606 @node Encajar la música en menos páginas
3607 @section Encajar la música en menos páginas
3608 @translationof Fitting music onto fewer pages
3609
3610 En ocasiones, podemos terminar con uno o dos pentagramas en una
3611 segunda página (o tercera, o cuarta@dots{}).  Es fastidioso,
3612 especialmente cuando vemos que las páginas anteriores parecen tener
3613 espacio de sobra.
3614
3615 Al investigar los problemas de disposición, una herramienta de valor
3616 incalculable es @code{annotate-spacing}.  Esta instrucción imprime los
3617 valores de un cierto número de variables de espaciado; para ver más
3618 detalles consulte la sección siguiente, @ref{Mostrar el espaciado}.
3619
3620 @menu
3621 * Mostrar el espaciado::
3622 * Cambiar el espaciado::
3623 @end menu
3624
3625
3626 @node Mostrar el espaciado
3627 @subsection Mostrar el espaciado
3628 @translationof Displaying spacing
3629
3630 @cindex espaciado, presentación del
3631 @funindex annotate-spacing
3632
3633 Para presentar gráficamente las dimensiones de las variables de
3634 disposición vertical que pueden verse alteradas por el formato de la
3635 página, establezca @code{annotate-spacing} en el bloque @code{\paper}:
3636
3637 @c need to have \book{} otherwise we get the separate systems. -hwn
3638 @lilypond[verbatim,quote]
3639 #(set-default-paper-size "a6" 'landscape)
3640 \book {
3641   \score { { c4 } }
3642   \paper { annotate-spacing = ##t }
3643 }
3644 @end lilypond
3645
3646 @noindent
3647 Todas las dimensiones de disposición se muestran en espacios de
3648 pentagrama, independientemente de las unidades especificadas en los
3649 bloques @code{\paper} o @code{\layout}. En el ejemplo anterior,
3650 @code{paper-height} tiene un valor de 59.75 @code{staff-spaces}
3651 (espacios de pentagrama), y el @code{staff-size} (tamaño del
3652 pentagrama) es de 20 puntos, el valor predeterminado. Observe que:
3653
3654 @multitable {1 staff-space} {staff-size)/4 * (25.4/72.27) mm}
3655
3656 @item 1 punto
3657 @tab = (25.4/72.27) mm
3658
3659 @item 1 staff-space
3660 @tab = (@code{staff-size})/4 pts
3661 @item
3662 @tab = (@code{staff-size})/4 * (25.4/72.27) mm
3663
3664 @end multitable
3665
3666 @noindent
3667 En este caso, un @code{staff-space} equivale aproximadamente a
3668 1.757mm.  Así, la medida @code{paper-height} de 59.75
3669 @code{staff-spaces} equivale a 105 milímetros, la altura de una hoja
3670 @code{a6} en orientación apaisada.  Las parejas (@var{a},@var{b}) son
3671 intervalos, donde @var{a} es el límite inferior y @var{b} es el límite
3672 superior del intervalo.
3673
3674 @seealso
3675 Referencia de la notación:
3676 @ref{Establecer el tamaño del pentagrama}.
3677
3678 Fragmentos de código:
3679 @rlsr{Spacing}.
3680
3681
3682 @node Cambiar el espaciado
3683 @subsection Cambiar el espaciado
3684 @translationof Changing spacing
3685
3686 La salida de @code{annotate-spacing} revela las dimensiones verticales
3687 con gran detalle.  Para ver más detalles acerca de la modificación de
3688 los márgenes y otras variables de diseño de la página, consulte
3689 @ref{Disposición de la página}.
3690
3691 Aparte de los márgenes, hay algunas otras opciones para ahorrar espacio:
3692
3693 @itemize
3694 @item
3695 Forzar los sistemas para que se junten lo más posible entre sí (de
3696 forma que quepan la mayor cantidad de ellos en la página) y al mismo
3697 tiempo estén espaciados de forma que no exista un espacio vacío en la
3698 parte baja del papel.
3699
3700 @example
3701 \paper @{
3702   system-system-spacing = #'((basic-distance . 0.1) (padding . 0))
3703   ragged-last-bottom = ##f
3704   ragged-bottom = ##f
3705 @}
3706 @end example
3707
3708 @item
3709 Forzar el número de sistemas.  Puede ser de utilidad de dos formas.
3710 Si tan sólo se establece un valor, incluso el mismo valor que el
3711 número de sistemas que se están trazando de forma predeterminada, ello
3712 ocasionará a veces que se traten de introducir más sistemas en cada
3713 página, pues en este caso se omite un paso en que se produce una
3714 estimación, dando así un encaje mejor en cada página.  Asimismo, el
3715 forzar una reducción neta en el número de sistemas puede producir el
3716 ahorro de una página adicional.  Por ejemplo, si la disposición
3717 predeterminada tiene 11 sistemas, la asignación siguiente fuerza una
3718 disposición con 10 sistemas.
3719
3720 @example
3721 \paper @{
3722   system-count = #10
3723 @}
3724 @end example
3725
3726 @item
3727 Forzar el número de páginas.  Por ejemplo, la asignación
3728 siguiente fuerza una disposición con dos páginas.
3729
3730 @example
3731 \paper @{
3732   page-count = #2
3733 @}
3734 @end example
3735
3736 @item
3737 Evitar (o reducir en número) los objetos que aumentan el tamaño
3738 vertical de un sistema.  Por ejemplo, las repeticiones de primera y
3739 segunda vez (o repeticiones con finales alternativos) necesitan
3740 espacio adicional.  Si estas repeticiones se reparten a lo largo de
3741 dos sistemas, ocupan más espacio que un sistema con las casillas de
3742 repetición y otro sistema sin ellas.  Por ejemplo, las indicaciones
3743 dinámicas que se @q{salen} de un sistema se pueden acercar al
3744 pentagrama:
3745
3746 @lilypond[verbatim,quote,relative=1]
3747 e4 c g\f c
3748 e4 c g-\tweak X-offset #-2.7 -\tweak Y-offset #2.5 \f c
3749 @end lilypond
3750
3751 @item
3752 Alterar el espaciado horizontal por medio de @code{SpacingSpanner}.
3753 Para ver más detalles, consulte @ref{Cambiar el espaciado horizontal}.
3754 El ejemplo siguiente ilustra el espaciado predeterminado:
3755
3756 @lilypond[verbatim,quote]
3757 \score {
3758   \relative c'' {
3759     g4 e e2 |
3760     f4 d d2 |
3761     c4 d e f |
3762     g4 g g2 |
3763     g4 e e2 |
3764   }
3765 }
3766 @end lilypond
3767
3768 @noindent
3769 El ejemplo siguiente modifica @code{common-shortest-duration} de un
3770 valor de @code{1/4} (negra) a @code{1/2} (blanca).  La negra es la
3771 nota más común y la más breve del ejemplo, por lo que al agrandar esta
3772 duración se produce un efecto de @q{apretujamiento}:
3773
3774 @lilypond[verbatim,quote]
3775 \score {
3776   \relative c'' {
3777     g4 e e2 |
3778     f4 d d2 |
3779     c4 d e f |
3780     g4 g g2 |
3781     g4 e e2 |
3782   }
3783   \layout {
3784     \context {
3785       \Score
3786       \override SpacingSpanner.common-shortest-duration = #(ly:make-moment 1 2)
3787     }
3788   }
3789 }
3790 @end lilypond
3791
3792 @noindent
3793 La propiedad @code{common-shortest-duration} no se puede modificar de
3794 manera dinámica, por lo que se debe situar siempre dentro de un
3795 bloque @code{\context} de forma que se aplique a la partitura
3796 completa.
3797
3798 @end itemize
3799
3800 @seealso
3801 Referencia de la notación:
3802 @ref{Disposición de la página},
3803 @ref{Cambiar el espaciado horizontal}.
3804
3805 Fragmentos de código:
3806 @rlsr{Spacing}.