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