]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/es/notation/spacing.itely
bdc27ea3bb6e2eeebd73d370d38e681c949298bd
[lilypond.git] / Documentation / es / notation / spacing.itely
1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
2
3 @ignore
4     Translation of GIT committish: 24dd6365d3d05f13b9259f547be9b2517851a5d1
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-page-breaking}, @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 página única},
1078 @ref{Saltos de página del tipo una-línea}
1079 @ref{Saltos de página del tipo una-línea-altura-automática}.
1080
1081 Archivos de inicio:
1082 @file{ly/paper-defaults-init.ly}.
1083
1084
1085 @node Variables de paper para la numeración de las páginas
1086 @unnumberedsubsubsec Variables de @code{@bs{}paper} para la numeración de las páginas
1087 @translationof paper variables for page numbering
1088
1089 Los valores predeterminados que no se relacionan aquí están
1090 definidos en el archivo @file{ly/paper-defaults-init.ly}
1091
1092 @table @code
1093
1094 @cindex números de página, automáticos
1095 @item auto-first-page-number
1096 @funindex auto-first-page-number
1097
1098 El algoritmo de división de páginas está afectado por el hecho de
1099 que el número de la primera página sea par o impar.  Si está
1100 establecido al valor verdadero, el algoritmo de división de
1101 páginas decide si comenzar con un número par o impar.  Esto hace
1102 que el número de la primera página se quede como está, o que se
1103 aumente en una unidad.  Predeterminado: @code{#f}.
1104
1105 @cindex números de página, especificar el primero
1106 @item first-page-number
1107 @funindex first-page-number
1108
1109 Valor del número de pátina en la primera página.
1110
1111 @item print-first-page-number
1112 @funindex print-first-page-number
1113
1114 Si está fijado a verdadero, se imprime un número de página en la
1115 primera página.
1116
1117 @cindex números de página, suprimir
1118 @item print-page-number
1119 @funindex print-page-number
1120
1121 Si está fijado a falso, no se imprimen los números de página.
1122
1123 @cindex números de página, romanos
1124 @item page-number-type
1125 @funindex page-number-type
1126
1127 Tipo de numeración para las páginas.  Entre las posibilidades
1128 están @code{roman-lower} (números romanos en minúsculas),
1129 @code{roman-upper} (números romanos en mayúsculas) y @code{arabic}
1130 (cifras arábigas).  Valor predeterminado: @code{'arabic}.
1131
1132 @end table
1133
1134 @seealso
1135 Archivos de inicio:
1136 @file{ly/paper-defaults-init.ly}.
1137
1138 @knownissues
1139 Los números de página impares siempre están a la derecha.  Si
1140 quiere que la música comience en la página 1 debe haber una página
1141 en blanco en el reverso de la página de cubierta de manera que la
1142 página 1 esté en el lado derecho.
1143
1144
1145 @node Variables de paper diversas
1146 @unnumberedsubsubsec Variables de @code{@bs{}paper} diversas
1147 @translationof Miscellaneous paper variables
1148
1149 @table @code
1150
1151 @item page-spacing-weight
1152 @funindex page-spacing-weight
1153
1154 Importancia relativa del espacio (vertical) de las páginas y el
1155 espaciado (horizontal) de las líneas.  Los valores altos hacen que
1156 el espaciado de la página tenga más importancia.  Predeterminado:
1157 @code{10}.
1158
1159 @item print-all-headers
1160 @funindex print-all-headers
1161
1162 Si está fijado a verdadero, imprime todos los encabezamientos para
1163 cada una de las partituras @code{\score} de la salida.
1164 Normalmente sólo se imprimen las variables de encabezamiento
1165 @code{piece} y @code{opus}.  Valor predeterminado: @code{#f}.
1166
1167 @item system-separator-markup
1168 @funindex system-separator-markup
1169
1170 Objeto de marcado que se inserta entre los sistemas.  Se suele
1171 usar para partituras orquestales.  Predeterminado: sin establecer.
1172 El elemento de marcado @code{\slashSeparator}, definido en el
1173 archivo @file{ly/titling-init.ly}, se aporta como un valor
1174 predeterminado adecuado, por ejemplo:
1175
1176 @lilypond[quote,verbatim,noragged-right,line-width=30\mm]
1177 #(set-default-paper-size "a8")
1178
1179 \book {
1180   \paper {
1181     system-separator-markup = \slashSeparator
1182   }
1183   \header {
1184     tagline = ##f
1185   }
1186   \score {
1187     \relative { c''1 \break c1 \break c1 }
1188   }
1189 }
1190 @end lilypond
1191
1192 @end table
1193
1194 @seealso
1195 Archivos de inicio:
1196 @file{ly/titling-init.ly}.
1197
1198 Fragmentos de código:
1199 @rlsr{Spacing}.
1200
1201 @knownissues
1202 El encabezamiento de página predeterminado pone el número de
1203 página y el campo @code{instrument} del bloque @code{\header}
1204 sobre la misma línea.
1205
1206
1207 @node Disposición de la partitura
1208 @section Disposición de la partitura
1209 @translationof Score layout
1210
1211 Esta sección trata de las opciones de disposición de la partitura
1212 para el bloque @code{\layout}.
1213
1214 @menu
1215 * El bloque layout::
1216 * Establecer el tamaño del pentagrama::
1217 @end menu
1218
1219
1220 @node El bloque layout
1221 @subsection El bloque @code{@bs{}layout}
1222 @translationof  The layout block
1223
1224 @funindex \layout
1225
1226 Así como el bloque @code{\paper} contiene ajustes relativos al
1227 formateo de la página para todo el documento, el bloque
1228 @code{\layout} contiene ajustes para la disposición específica de
1229 las partituras.  Para fijar las opciones de disposición de
1230 partituras de forma global, escríbalas en un bloque @code{\layout}
1231 del nivel jerárquico superior.  Para fijar opciones de disposición
1232 para una partitura individual escríbalas dentro de un bloque
1233 @code{\layout} dentro del bloque @code{\score}, después de la
1234 música.  Entre los ajustes que pueden aparecer en un bloque
1235 @code{\layout} se encuentran los siguientes:
1236
1237 @itemize
1238 @item la función de Scheme @code{layout-set-staff-size},
1239 @item las modificaciones de contexto de los bloques @code{\context}, y
1240 @item las variables de @code{\paper} que afectan a la disposición de la partitura.
1241 @end itemize
1242
1243 La función @code{layout-set-staff-size} se estudia en la sección
1244 siguiente, @ref{Establecer el tamaño del pentagrama}. Las
1245 modificaciones de contexto se estudian en un capítulo distinto;
1246 véase @ref{Modificar los complementos (plug-ins) de contexto} y
1247 @ref{Cambiar los valores por omisión de los contextos}.
1248
1249 Las variables de @code{\paper} que pueden aparecer dentro de un
1250 bloque @code{\layout}, y cuyos valores predeterminados se toman
1251 del bloque @code{paper}, son:
1252
1253 @itemize
1254
1255 @item
1256 @code{line-width}, @code{ragged-right} y @code{ragged-last} (véase
1257 @ref{Variables de paper para la anchura y los márgenes,,Variables
1258 de @code{@bs{}paper} para la anchura y los márgenes})
1259
1260 @item
1261 @code{indent} y @code{short-indent}
1262 (véase @ref{Variables de paper para desplazamientos y sangrados,,Variables de @code{@bs{}paper} para desplazamientos y sangrados})
1263
1264 @item
1265 @code{system-count}
1266 (véase @ref{Variables de paper para los saltos de línea,,Variables de @code{@bs{}paper} para los saltos de línea})
1267
1268 @end itemize
1269
1270 He aquí un ejemplo de un bloque @code{\layout}:
1271
1272 @example
1273 \layout @{
1274   indent = 2\cm
1275   \context @{
1276     \StaffGroup
1277     \override StaffGrouper.staff-staff-spacing.basic-distance = #8
1278   @}
1279   \context @{
1280     \Voice
1281     \override TextScript.padding = #1
1282     \override Glissando.thickness = #3
1283   @}
1284 @}
1285 @end example
1286
1287 Se pueden escribir varios bloques @code{\layout} como expresiones
1288 del nivel superior.  Esto puede ser útil, por ejemplo, si hay
1289 distintos ajustes almacenados en diversos archivos y se incluyen
1290 opcionalmente.  Internamente, cuando se evalúa un bloque
1291 @code{\layout}, se hace una copia de la configuración de
1292 @code{\layout} actual, y después se aplican los cambios definidos
1293 en el bloque; el resultado se guarda como la nueva configuración
1294 actual.  Desde el punto de vista del usuario, los bloques
1295 @code{\layout} se combinan, pero en situaciones de conflicto
1296 (cuando se cambia la misma propiedad en diferentes bloques) las
1297 definiciones más tarías toman precedencia.
1298
1299 Por ejemplo: si este bloque:
1300
1301 @example
1302 \layout @{
1303   \context @{
1304     \Voice
1305     \override TextScript.color = #magenta
1306     \override Glissando.thickness = #1.5
1307   @}
1308 @}
1309 @end example
1310
1311 se coloca después del del ejemplo anterior, las sobreescrituras de
1312 @code{'padding} y de @code{'color} para @code{TextScript} se
1313 combinan, pero la última sobreescritura @code{'thickness} para
1314 @code{Glissando} sustituye (u oculta) a la anterior.
1315
1316 Los bloques @code{\layout} se pueden asignar a variables para una
1317 reutilización posterior, pero la forma en que esto funciona es
1318 ligera y significativamente diferente del hecho de escribirlas
1319 literalmente.
1320
1321 Si se define una variable de la siguiente manera:
1322
1323 @example
1324 variable_de_Layout = \layout @{
1325   \context @{
1326     \Voice
1327     \override NoteHead.font-size = #4
1328   @}
1329 @}
1330 @end example
1331
1332 guardará la configuración actual de @code{\layout} con la
1333 sobreescritura añadida de @code{NoteHead.font-size}, pero esta
1334 combinación @emph{no} se guarda como la nueva configuración
1335 actual.  Tenga en cuenta que la @q{configuración actual} se lee
1336 cuando la variable se define y no cuando se usa, de manera que el
1337 contenido de la variable depende de su posición dentro del código
1338 fuente.
1339
1340 La variable se puede entonces usar dentro de otro bloque
1341 @code{\layout}, por ejemplo:
1342
1343 @example
1344 \layout @{
1345   \variable_de_layout
1346   \context @{
1347     \Voice
1348     \override NoteHead.color = #red
1349   @}
1350 @}
1351 @end example
1352
1353 Un bloque @code{\layout} que contiene una variable, como en el
1354 ejemplo anterior, @emph{no} copia la configuración actual, sino
1355 que en lugar de ello usa el contenido de
1356 @code{\variable_de_layout} como la configuración base para las
1357 adiciones posteriores.  Esto significa que cualquier cambio
1358 definido entre la definición y el uso de la variable, se pierde.
1359
1360 Si la @code{variable_de_layout} se define (o se incluye con
1361 @code{\include}) inmediatamente antes de que se utilice, su
1362 contenido es sencillamente la configuración en curso más las
1363 sobreescrituras que se hayan definido dentro de él.  Así pues, en
1364 el ejemplo anterior que muestra el uso de
1365 @code{\variable_de_layout} el último bloque @code{\layout}
1366 consistiría en:
1367
1368 @example
1369   TextScript.padding = #1
1370   TextScript.color = #magenta
1371   Glissando.thickness = #1.5
1372   NoteHead.font-size = #4
1373   NoteHead.color = #red
1374 @end example
1375
1376 más las sobreescrituras de @code{indent} y de @code{StaffGrouper}.
1377
1378 Pero si la variable ya hubiera sido definida antes del primer
1379 bloque @code{\layout} la configuración actual contendría ahora
1380 solamente
1381
1382 @example
1383   NoteHead.font-size= #4 % (escrita en la definición de la variable)
1384   NoteHead.color = #red % (añadida después del uso de la variable)
1385 @end example
1386
1387 Si se planifica cuidadosamente, las variables de @code{\layout}
1388 pueden ser una herramienta valiosa para estructurar el diseño de
1389 la disposición de las fuentes, y tambiién para reiniciar la
1390 configuración de @code{\layout} a un estado conocido.
1391
1392 @seealso
1393 Referencia de la notación:
1394 @ref{Cambiar los valores por omisión de los contextos}.
1395
1396 Fragmentos de código:
1397 @rlsr{Spacing}.
1398
1399
1400 @node Establecer el tamaño del pentagrama
1401 @subsection Establecer el tamaño del pentagrama
1402 @translationof Setting the staff size
1403
1404 @cindex tipografía, fijar el tamaño de
1405 @cindex pentagrama, fijar el tamaño de
1406 @funindex disposición, archivo de
1407 @funindex magnification->font-size
1408 @funindex magstep
1409 @funindex set-global-staff-size
1410 @funindex layout-set-staff-size
1411
1412
1413 El @strong{tamaño de pentagrama} predeterminado es de 20 puntos,
1414 que corresponde a una altura del pentagrama de 7.03 mm (un punto
1415 es 100/7227 de pulgada, o 2540/7227 mm).  El tamaño del pentagrama
1416 se puede modificar de tres formas:
1417
1418 @enumerate
1419
1420 @item
1421 Para establecer globalmente el tamaño del pentagrama para todas
1422 las partituras de un archivo (o en un bloque @code{\book}, para
1423 ser exactos), utilice @code{set-global-staff-size}:
1424
1425 @example
1426 #(set-global-staff-size 14)
1427 @end example
1428
1429 @noindent
1430 El ejemplo de arriba establece el tamaño global predeterminado del
1431 pentagrama a 14 pt (4.92 mm) y escala todas las tipografías según
1432 corresponda.
1433
1434 @item
1435 Para fijar el tamaño del pentagrama para una sola partitura dentro
1436 de un libro, use @code{layout-set-staff-size} dentro del bloque
1437 @code{\layout} de dicha partitura:
1438
1439 @example
1440 \score @{
1441   @dots{}
1442   \layout @{
1443     #(layout-set-staff-size 14)
1444   @}
1445 @}
1446 @end example
1447
1448 @item
1449 Para fijar el tamaño del pentagrama para una sola pauta dentro de
1450 un sistema, use la instrucción @code{\magnifyStaff}.  Por ejemplo,
1451 las partituras de música de cámara editadas de la forma
1452 tradicional, con piano, usan habitualmente pautas de 7 mm para el
1453 piano, mientras que los otros pentagramas suelen estar entre 3/5 y
1454 5/7 de reducción (entre el 60% y el 71%).  Para obtener la
1455 proporción de 5/7, escriba:
1456
1457 @example
1458 \score @{
1459   <<
1460     \new Staff \with @{
1461       \magnifyStaff #5/7
1462     @} @{ @dots{} @}
1463     \new PianoStaff @{ @dots{} @}
1464   >>
1465 @}
1466 @end example
1467
1468 En caso de que usted sepa qué tamaño de @code{fontSize} quiere
1469 usar, puede emplear la forma siguiente:
1470
1471 @example
1472 \score @{
1473   <<
1474     \new Staff \with @{
1475       \magnifyStaff #(magstep -3)
1476     @} @{ @dots{} @}
1477     \new PianoStaff @{ @dots{} @}
1478   >>
1479 @}
1480 @end example
1481
1482 Para imitar la apariencia de las ediciones tradicionales, es mejor
1483 evitar reducir el grosor de las líneas del pentagrama.
1484
1485 @end enumerate
1486
1487
1488 @subheading Peso automático de la tipografía a distintos tamaños
1489
1490 La tipografía Emmentaler ofrece el conjunto de glifos musicales
1491 @emph{Feta} en ocho tamaños distintos, cada uno de ellos ajustado
1492 a un tamaño de pentagrama.  Cuanto más pequeño es el tamaño de los
1493 glifos, más @qq{pesados} se vuelven, de manera que armonicen con
1494 las líneas del pentagrama, que son también relativamente más
1495 gruesas.  Los tamaños de glifo recomendados se relacionan en la
1496 tabla siguiente:
1497
1498 @multitable @columnfractions .15 .2 .22 .2
1499
1500 @item @b{nombre de la fuente} @tab @b{altura del pentagrama (pt)} @tab @b{altura del pentagrama (mm)} @tab @b{usos}
1501 @item feta11 @tab 11.22 @tab 3.9 @tab partituras de bolsillo
1502 @item feta13 @tab 12.60 @tab 4.4 @tab
1503 @item feta14 @tab 14.14 @tab 5.0 @tab
1504 @item feta16 @tab 15.87 @tab 5.6 @tab
1505 @item feta18 @tab 17.82 @tab 6.3 @tab cancioneros
1506 @item feta20 @tab 20 @tab 7.0 @tab particellas estándar
1507 @item feta23 @tab 22.45 @tab 7.9 @tab
1508 @item feta26 @tab 25.2 @tab 8.9 @tab @c modern rental material?
1509 @end multitable
1510
1511 @seealso
1512 Referencia de la notación:
1513 @ref{Seleccionar el tamaño de la tipografía para la notación},
1514 @ref{La tipografía Emmentaler}.
1515
1516 Fragmentos de código:
1517 @rlsr{Spacing}.
1518
1519 @knownissues
1520 @code{layout-set-staff-size} no cambia la distancia entre las
1521 líneas del pentagrama.
1522
1523
1524 @node Saltos
1525 @section Saltos
1526 @translationof Breaks
1527
1528 @menu
1529 * Saltos de línea::
1530 * Saltos de página::
1531 @end menu
1532
1533
1534 @node Saltos de línea
1535 @subsection Saltos de línea
1536 @translationof Line breaking
1537
1538 @funindex \break
1539 @funindex \noBreak
1540 @funindex \autoBreaksOff
1541 @funindex \autoBreaksOn
1542 @funindex \autoLineBreaksOff
1543 @funindex \autoLineBreaksOn
1544 @cindex saltos de línea
1545 @cindex línea, saltos de
1546
1547 Normalmente los saltos de línea se determinan automáticamente. Se
1548 eligen de forma que las líneas no aparezcan demasiado apretadas ni
1549 demasiado sueltas, y que las líneas consecutivas tengan una
1550 densidad similar.
1551
1552 Para forzar manualmente un salto de línea sobre la línea
1553 divisoria, utilice la instrucción @code{\break}:
1554
1555 @lilypond[quote,ragged-right,verbatim]
1556 \relative c'' {
1557   c4 c c c | \break
1558   c4 c c c |
1559 }
1560 @end lilypond
1561
1562 De forma predeterminada se ignora cualquier instrucción
1563 @code{\break} insertada en la mitad de un compás, y se imprime un
1564 mensaje de advertencia durante la compilación del archivo de
1565 entrada de LilyPond.  Para forzar un salto de línea en medio de un
1566 compás, añada una línea divisoria invisible con @w{@samp{\bar
1567 ""}}:
1568
1569 @lilypond[quote,ragged-right,verbatim]
1570 \relative c'' {
1571   c4 c c
1572   \bar ""
1573   \break
1574   c |
1575   c4 c c c |
1576 }
1577 @end lilypond
1578
1579 También se ignora cualquier instrucción @code{\break} que se
1580 produzca en la línea divisoria si el compás anterior termina en
1581 medio de una nota, como cuando un grupo de valoración especial
1582 comienza en un compás y termina en otro distinto.  En este caso,
1583 elimine el grabador @code{Forbid_line_break_engraver} del contexto
1584 @code{Voice} y use una construcción de música simultánea
1585 insertando el @code{break} en el lugar adecuado dentro de la
1586 segunda voz:
1587
1588 @lilypond[quote,ragged-right,verbatim]
1589 \new Voice \with {
1590   \remove "Forbid_line_break_engraver"
1591 } \relative {
1592   <<
1593     { c''2. \tuplet 3/2 { c4 c c } c2. | }
1594     { s1 | \break s1 | }
1595   >>
1596 }
1597 @end lilypond
1598
1599 De forma similar, el funcionamiento predeterminado es que los
1600 saltos de línea resulten ignorados cuando hay barras de corchea
1601 que cruzan la línea divisoria.  Utilice la instrucción
1602 @code{\override Beam.breakable = ##t} para forzar esto:
1603
1604 @lilypond[quote,ragged-right,verbatim]
1605 \relative c'' {
1606   \override Beam.breakable = ##t
1607   c2. c8[ c | \break
1608   c8 c] c2. |
1609 }
1610 @end lilypond
1611
1612 La instrucción @code{\noBreak}, evita que se produzca
1613 un salto de línea en la barra divisoria en que se inserta.
1614
1615 Dentro de una partitura, se evitan los saltos de línea automáticos
1616 dento de la música que se encuentra entre las instrucciones
1617 @code{\autoLineBreaksOff} y @code{\autoLineBreaksOn}.  Si también
1618 se quieren evitar los saltos de página automáticos, deben usarse
1619 las instrucciones @code{\autoBreaksOff} y @code{\autoBreaksOn}.
1620 Los saltos manuales no están afectados por estas instrucciones.
1621 Observe que el hecho de inhibir los saltos de línea automáticos
1622 puede hacer que la música se extienda sobre el margen derecho
1623 cuandoquiera que no cabe completamente dentro de una sola línea.
1624
1625 Los saltos automáticos de línea (no de página) se pueden habilitar
1626 sobre líneas divisorias individuales mediante el uso de
1627 @code{\once \autoLineBreaksOn} en una barra.  La instrucción
1628 identifica un salto de línea permitido, en lugar de uno prohibido.
1629
1630 Los ajustes más básicos que influyen sobre el espaciado de las
1631 líneas son @code{indent} y @code{line-width}. Se establecen dentro
1632 del bloque @code{\layout}.  Controlan el sangrado de la primera
1633 línea de música, y la longitud de las líneas.
1634
1635 Si se establece @code{ragged-right} a verdadero en el bloque
1636 @code{\layout}, los sistemas terminan en su longitud horizontal
1637 natural, en lugar de distribuirse horizontalmente para llenar toda
1638 la línea. Esto es de utilidad para fragmentos cortos, y para
1639 efectuar una comprobación de lo apretado que es el espaciado
1640 natural.
1641
1642 @c TODO Check and add para on default for ragged-right
1643
1644 La opción @code{ragged-last} es similar a @code{ragged-right},
1645 pero afecta sólo a la última línea de la pieza.
1646
1647 @example
1648 \layout @{
1649   indent = 0\mm
1650   line-width = 150\mm
1651   ragged-last = ##t
1652 @}
1653 @end example
1654
1655 @cindex saltos de línea normales
1656 @cindex música de cuatro compases por línea
1657
1658 Para saltos de línea a intervalos regulares utilice @code{\break}
1659 separado mediante desplazamientos con @code{\skip} y repetidos con
1660 @code{\repeat}.  Por ejemplo, esto haría que los 28 compases
1661 siguientes (suponiendo un compás de 4/4) se dividan cada cuatro
1662 compases, y sólo en dichos lugares:
1663
1664 @example
1665 <<
1666   \repeat unfold 7 @{
1667     s1 \noBreak s1 \noBreak
1668     s1 \noBreak s1 \break
1669   @}
1670   @{ @var{la música real@dots{}} @}
1671 >>
1672 @end example
1673
1674
1675 @predefined
1676 @code{\break},
1677 @code{\noBreak},
1678 @code{\autoBreaksOff},
1679 @code{\autoBreaksOn},
1680 @code{\autoLineBreaksOff},
1681 @code{\autoLineBreaksOn}.
1682 @endpredefined
1683
1684 @snippets
1685
1686 @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
1687 {using-an-extra-voice-for-breaks.ly}
1688
1689 @seealso
1690 Referencia de la notación:
1691 @ref{Variables de paper para los saltos de línea},
1692 @ref{The layout block}.
1693
1694 Fragmentos de código:
1695 @rlsr{Spacing}.
1696
1697 Referencia de funcionamiento interno:
1698 @rinternals{LineBreakEvent}.
1699
1700 @knownissues
1701
1702 Si se escribe @code{\autoLineBreaksOff} o @code{\autoBreaksOff}
1703 antes de cualquier contenido musical, aparecerán mensajes de
1704 error.  Escriba siempre estas instrucciones después de algo de
1705 música.
1706
1707
1708 @node Saltos de página
1709 @subsection Saltos de página
1710 @translationof Page breaking
1711
1712 Esta sección describe los distintos métodos para crear saltos de
1713 página, y cómo modificarlos.
1714
1715 @menu
1716 * Saltos de página manuales::
1717 * Saltos de página óptimos::
1718 * Saltos de página mínimos::
1719 * Saltos de página del tipo página única::
1720 * Saltos de página del tipo una-línea::
1721 * Saltos de página del tipo una-línea-altura-automática::
1722 * Paso de página óptimo::
1723 @end menu
1724
1725
1726 @node Saltos de página manuales
1727 @unnumberedsubsubsec Saltos de página manuales
1728 @translationof Manual page breaking
1729
1730 @funindex \pageBreak
1731 @funindex \noPageBreak
1732 @funindex \autoPageBreaksOn
1733 @funindex \autoPageBreaksOff
1734 @cindex página, saltos manuales
1735
1736 Se puede sobreescribir el mecanismo predeterminado de salto de
1737 página insertando instrucciones @code{\pageBreak} o
1738 @code{\noPageBreak}.  Estas instrucciones son análogas a
1739 @code{\break} y @code{\noBreak}.  Se deben insertar en una línea
1740 divisoria.  Estas instrucciones fuerzan y prohíben,
1741 respectivamente, la eventualidad de un salto de página en dicha
1742 línea divisoria.  Por supuesto, la instrucción @code{\pageBreak}
1743 también fuerza un salto de línea.
1744
1745 Las instrucciones @code{\pageBreak} y @code{\noPageBreak} también
1746 se pueden insertar en el nivel más alto, entre las partituras y
1747 los elementos de marcado situados en el nivel superior.
1748
1749 Dentro de una partitura, no se producen saltos de página
1750 automáticos en el interior de la música que se encuentra entre las
1751 instrucciones @code{\autoPageBreaksOff} y
1752 @code{\autoPageBreaksOn}.  Los saltos de página manuales no
1753 reultan afectados por estas instrucciones.
1754
1755 Hay ajustes análogos a @code{ragged-right} y @code{ragged-last}
1756 que tienen el mismo efecto sobre el espaciado vertical.  Si
1757 @code{ragged-bottom} se establece a @code{#t} los sistemas no se
1758 justifican verticalmente.  Cuando el valor de
1759 @code{ragged-last-bottom} se fija a @code{#t}, como lo está de
1760 forma predeterminada, se permite una separación al final de la
1761 última página (o la última página de cada uno de las partes de
1762 libro @code{\bookpart}).  Véase
1763 @ref{Variables de espaciado de paper verticales fijas,,Variables de espaciado de @code{@bs{}paper} verticales fijas}.
1764
1765 Los saltos de página se calculan por medio de la función
1766 @code{page-breaking}.  LilyPond ofrece varios algoritmos para el
1767 cómputo de los saltos de página, entre ellos
1768 @code{ly:optimal-breaking}, @code{ly:page-turn-breaking} y
1769 @code{ly:minimal-breaking}.  El predeterminado es
1770 @code{ly:optimal-breaking}, pero el valor se puede cambiar en el
1771 bloque @code{\paper}:
1772
1773 @example
1774 \paper @{
1775   page-breaking = #ly:page-turn-breaking
1776 @}
1777 @end example
1778
1779 @funindex \bookpart
1780
1781 Cuando un libro tiene muchas partituras y páginas, puede ser
1782 difícil resolver el problema de los saltos de página, necesitando
1783 mucha memoria y prolongados tiempos de procesamiento.  Para
1784 facilitar el proceso de división en páginas, se usan los bloques
1785 @code{\bookpart} para dividir el libro en varias partes: los
1786 saltos de página se producen de manera independiente en cada
1787 parte.  También se pueden usar diferentes funciones de división en
1788 páginas para las distintas partes del libro.
1789
1790 @example
1791 \bookpart @{
1792   \header @{
1793     subtitle = "Prefacio"
1794   @}
1795   \paper @{
1796      %% En una parte que consiste en texto principalmente,
1797      %% puede ser preferible ly:minimal-breaking
1798      page-breaking = #ly:minimal-breaking
1799   @}
1800   \markup @{ @dots{} @}
1801   @dots{}
1802 @}
1803 \bookpart @{
1804   %% En esta parte, consistente en música, se usa la función
1805   %% óptima predeterminada de saltos de página.
1806   \header @{
1807     subtitle = "Primer movimiento"
1808   @}
1809   \score @{ @dots{} @}
1810   @dots{}
1811 @}
1812 @end example
1813
1814
1815 @predefined
1816 @funindex \pageBreak
1817 @code{\pageBreak},
1818 @code{\noPageBreak},
1819 @code{\autoPageBreaksOn},
1820 @code{\autoPageBreaksOff}.
1821 @endpredefined
1822
1823 @seealso
1824 Referencia de la notación:
1825 @ref{Variables de paper para los saltos de página}.
1826
1827 Fragmentos de código:
1828 @rlsr{Spacing}.
1829
1830 @knownissues
1831
1832 El prefijo @code{\once} no es efectivo con
1833 @code{\autoPageBreaksOn} y @code{\autoPageBreaksOff}.  Si se ha
1834 desactivado la división automática de páginas y después se vuelve
1835 a activar para permitir un salto, debe continuar activada durante
1836 algunos compases (cuyo número exacto dependerá de la partitura)
1837 antes de volverse a desactivar, pues en caso contrario podría
1838 perderse la oportunidad de que el salto se produzca.
1839
1840 @node Saltos de página óptimos
1841 @unnumberedsubsubsec Saltos de página óptimos
1842 @translationof Optimal page breaking
1843
1844 @funindex ly:optimal-breaking
1845
1846 La función @code{ly:optimal-breaking} es el método predeterminado
1847 de LilyPond para determinar los saltos de página.  Intenta hallar
1848 una división de páginas que haga mínimos el apretujamiento y la
1849 distensión, tanto horizontal como verticalmente.  A diferencia de
1850 @code{ly:page-turn-breaking}, no tiene un concepto de los pasos de
1851 página.
1852
1853 @seealso
1854 Fragmentos de código:
1855 @rlsr{Spacing}.
1856
1857
1858 @node Saltos de página mínimos
1859 @unnumberedsubsubsec Saltos de página mínimos
1860 @translationof Minimal page breaking
1861
1862 @funindex ly:minimal-breaking
1863
1864 La función @code{ly:minimal-breaking} efectúa unos cálculos
1865 mínimos para determinar los saltos de página: completa una página
1866 con tantos sistemas como sea posible antes de continuar con la
1867 siguiente.  Así, puede preferirse para partituras con muchas
1868 páginas, donde las otras funciones de salto de página pueden
1869 resultar demasiado lentas o ávidas de memoria, o con una gran
1870 cantidad de textos.  Se habilita utilizando:
1871
1872 @example
1873 \paper @{
1874   page-breaking = #ly:minimal-breaking
1875 @}
1876 @end example
1877
1878 @seealso
1879 Snippets:
1880 @rlsr{Spacing}.
1881
1882
1883 @node Saltos de página del tipo página única
1884 @unnumberedsubsubsec Saltos de página del tipo página única
1885 @translationof One-page page breaking
1886
1887 @funindex ly:one-page-breaking
1888
1889 La función @code{ly:one-page-breaking} (saltos de página única) es
1890 un algoritmo de saltos de página de proósito especial que ajusta
1891 automáticamente la altura de la página para que quepa toda la
1892 música en una sola página.  La variable @code{paper-height} del
1893 bloque @code{paper} se ignora, pero los otros ajustes funcionan de
1894 la manera acostumbrada.  Concretamente, el espaciado entre el
1895 último sistema (o elemento de marcado de nivel superior) y el pie
1896 de página se puede personalizar con @code{last-bottom-spacing}
1897 dentro del bloque @code{paper}. La anchura de la página se queda
1898 sin alterar por omisión, pero se puede fijar con la variable
1899 @code{paper-width} del bloque @code{paper}.
1900
1901 @knownissues
1902 @code{ly:one-page-breaking} no es compatible, de momento, con
1903 @code{\bookpart}.
1904
1905
1906 @node Saltos de página del tipo una-línea
1907 @unnumberedsubsubsec Saltos de página del tipo una-línea
1908 @translationof One-line page breaking
1909
1910 @funindex ly:one-line-breaking
1911
1912 La función @code{ly:one-line-breaking} es un algoritmo de saltos
1913 de página para uso especial que pone cada partitura en una página
1914 y en una sola línea.  Esta función de salto de página no compone
1915 los títulos ni los márgenes; solamente se imprime la partitura.
1916
1917 El ancho de la página se ajusta de forma que la partitura más
1918 larga quepa en una línea.  Concretamente, las variables
1919 @code{paper-width}, @code{line-width} y @code{indent} del bloque
1920 @code{\paper} se ignoran, aunque @code{left-margin} y
1921 @code{right-margin} aún se respetan.  La altura de la página se
1922 deja sin cambios.
1923
1924
1925 @node Saltos de página del tipo una-línea-altura-automática
1926 @unnumberedsubsubsec Saltos de página del tipo una-línea-altura-automática
1927 @translationof One-line-auto-height page breaking
1928
1929 @funindex ly:one-line-auto-height-breaking
1930
1931 La función @code{ly:one-line-auto-height-breaking} funciona igual
1932 que @code{ly:one-line-breaking} excepro que la altura de la página
1933 se modifica automáticamente para hacerse corresponder con la
1934 altura de la música.  De forma específica, la variable
1935 @code{paper-height} del bloque @code{\paper} se ajusta de tal
1936 manera que abarca los extremos superior e inferior de la partitura
1937 más alta más los márgenes superior e inferior @code{top-margin} y
1938 @code{bottom-margin}.
1939
1940 Observe que el ajuste @code{top-system-spacing} afecta a la
1941 posición vertical de la música.  Fíjelo al valor @code{##f} dentro
1942 de un bloque @code{paper} para disponer la música sencillamente
1943 entre los márgenes superior e inferior.
1944
1945
1946 @node Paso de página óptimo
1947 @unnumberedsubsubsec Paso de página óptimo
1948 @translationof Optimal page turning
1949
1950 @funindex ly:page-turn-breaking
1951
1952 Con frecuencia es necesario encontrar una configuración de
1953 división de páginas de manera que haya un silencio al final de una
1954 página de cada dos.  De esta forma, el músico puede pasar la
1955 página sin perder notas.  La función @code{ly:page-turn-breaking}
1956 trata de encontrar una división de páginas que haga mínimos el
1957 apretujamiento y el estiramiento, pero con la restricción añadida
1958 de que sólo se permite introducir vueltas de página en los lugares
1959 especificados.
1960
1961 Hay dos etapas en el uso de esta función de división de páginas.
1962 En primer lugar debemos habilitarlo en el bloque @code{\paper},
1963 como se explicó en @ref{Saltos de página}.  Entonces debemos
1964 decirle a la función dónde nos gustaría permitir los saltos de
1965 página.
1966
1967 Hay dos formas de conseguir la segunda tarea.  Primero, podemos
1968 especificar manualmente cada uno de los pasos de página
1969 potenciales, insertando @code{\allowPageTurn} en nuestro archivo
1970 de entrada en los lugares adecuados.
1971
1972 Si esto es demasiado tedioso, podemos añadir un grabador
1973 @code{Page_turn_engraver} a un contexto Staff o Voice.  El
1974 grabador @code{Page_turn_engraver} analizará el contexto en busca
1975 de secciones sin notas (observe que no busca silencios, sino la
1976 ausencia de notas.  Se hace así para que la polifonía en un solo
1977 pentagrama con silencios en una de las voces no arruine la labor
1978 del grabador @code{Page_turn_engraver}).  Cuando encuentra una
1979 sección sin notas suficientemente larga, el grabador
1980 @code{Page_turn_engraver} inserta un @code{\allowPageTurn} en la
1981 última barra de compás de dicha sección, a no ser que haya una
1982 barra @q{especial} de compás (como una doble barra), en cuyo caso
1983 se insertará el @code{\allowPageTurn} en la última barra
1984 @q{especial} de compás de la sección.
1985
1986 @funindex minimumPageTurnLength
1987 El grabador @code{Page_turn_engraver} lee la propiedad de contexto
1988 @code{minimumPageTurnLength} para determinar qué longitud debe
1989 tener una sección sin notas antes de que se considere la
1990 posibilidad de un paso de página.  El valor predeterminado para
1991 @code{minimumPageTurnLength} es @code{(ly:make-moment 1/1)}.  Si
1992 quiere inhabilitar las vueltas de página, fíjelo a algún valor
1993 @q{muy grande}.
1994
1995 @example
1996 \new Staff \with @{ \consists "Page_turn_engraver" @}
1997 @{
1998   a4 b c d |
1999   R1 | % aquí se permite un salto de página
2000   a4 b c d |
2001   \set Staff.minimumPageTurnLength = #(ly:make-moment 5/2)
2002   R1 | % aquí no se permite un salto de página
2003   a4 b r2 |
2004   R1*2 | % aquí se permite un salto de página
2005   a1
2006 @}
2007 @end example
2008
2009 @funindex minimumRepeatLengthForPageTurn
2010
2011 Al usar repeticiones de primera y segunda vez, el grabador
2012 @code{Page_turn_engraver} solo permite un pase de página durante
2013 la repetición si hay suficiente tiempo al principio y al final de
2014 la repetición para volver a pasar la página hacia atrás. Si la
2015 repetición es demasiado corta, se puede usar el grabador
2016 @code{Page_turn_engraver} para @emph{inhabilitar} los pasos de
2017 página mediante el establecimiento de un valor adecuado para la
2018 propiedad de contexto @code{minimumRepeatLengthForPageTurn}.  En
2019 este caso el grabador @code{Page_turn_engraver} sólo permitirá los
2020 pases de página en las repeticiones cuya duración sea mayor que el
2021 valor especificado.
2022
2023 Las instrucciones de paso de página, @code{\pageTurn},
2024 @code{\noPageTurn} y @code{\allowPageTurn}, se pueden usar también
2025 en el nivel más elevado del código, dentro de elementos de marcado
2026 del nivel superior y entre las partituras.
2027
2028 @predefined
2029 @funindex \pageTurn
2030 @code{\pageTurn},
2031 @funindex \noPageTurn
2032 @code{\noPageTurn},
2033 @funindex \allowPageTurn
2034 @code{\allowPageTurn}.
2035 @endpredefined
2036
2037 @seealso
2038 Referencia de la notación:
2039 @ref{Variables de paper para los saltos de línea}.
2040
2041 Fragmentos de código:
2042 @rlsr{Spacing}.
2043
2044 @knownissues
2045 Utilice un solo grabador @code{Page_turn_engraver} en cada
2046 partitura.  Si hay más de uno, se interferirán entre sí.
2047
2048
2049 @seealso
2050 Notation Reference:
2051 @ref{Vertical spacing}.
2052
2053 Fragmentos de código:
2054 @rlsr{Spacing}.
2055
2056
2057 @node Espaciado vertical
2058 @section Espaciado vertical
2059 @translationof Vertical spacing
2060
2061 @cindex espaciado vertical
2062 @cindex vertical, espaciado
2063
2064 El espaciado vertical está controlado por tres factores: la
2065 cantidad de espacio disponible (es decir, el tamaño del papel y
2066 los márgenes), la separación entre los sistemas, y la separación
2067 entre los pentagramas dentro de un sistema.
2068
2069 @menu
2070 * Espaciado vertical flexible dentro de los sistemas::
2071 * Posicionamiento explícito de los pentagramas y los sistemas::
2072 * Evitar las colisiones verticales::
2073 @end menu
2074
2075
2076 @node Espaciado vertical flexible dentro de los sistemas
2077 @subsection Espaciado vertical flexible dentro de los sistemas
2078 @translationof Flexible vertical spacing within systems
2079
2080 @cindex distancia entre pentagramas
2081 @cindex pentagrama, distancia entre los
2082 @cindex espacio entre pentagramas
2083 @cindex espacio dentro de los sistemas
2084
2085 Tres mecanismos distintos controlan el espaciado vertical flexible
2086 dentro de los sistemas, uno por cada una de las categorías
2087 siguientes:
2088
2089 @itemize
2090
2091 @item
2092 @emph{pautas sin agrupar},
2093
2094 @item
2095 @emph{pautas agrupadas} (pautas dentro de un grupo de pentagramas como
2096 @code{ChoirStaff}, etc.), y
2097
2098 @item
2099 @emph{líneas que no son pautas} (como @code{Lyrics},
2100 @code{ChordNames}, etc.).
2101
2102 @end itemize
2103
2104 @c TODO: Clarify this.  This almost implies that non-staff lines
2105 @c       have NO effect on the spacing between staves.  -mp
2106
2107 La altura de cada sistema se determina en dos fases.  Primero,
2108 todos los pentagramas se disponen según la cantidad de espacio
2109 vacío disponible.  Después, las líneas que no son pautas se
2110 distribuyen entre las pautas.
2111
2112 Observe que los mecanismos de espaciado estudiados en esta sección
2113 solamente controlan el espaciado vertical de las pautas y líneas
2114 que no son pautas dentro de los sistemas individuales.  El
2115 espaciado vertical entre distintos sistemas, partituras, marcados
2116 y márgenes se controla mediante variables de @code{\paper} que se
2117 estudian en
2118 @ref{Variables de espaciado de paper verticales flexibles,,Variables de espaciado de @code{@bs{}paper} verticales flexibles}.
2119
2120 @menu
2121 * Propiedades de espaciado dentro de los sistemas::
2122 * Espaciado de pautas no agrupadas::
2123 * Espaciado de pautas agrupadas::
2124 * Espaciado de las líneas que no son pautas::
2125 @end menu
2126
2127
2128 @node Propiedades de espaciado dentro de los sistemas
2129 @unnumberedsubsubsec Propiedades de espaciado dentro de los sistemas
2130 @translationof Within-system spacing properties
2131
2132 @funindex staff-affinity
2133 @funindex staffgroup-staff-spacing
2134 @funindex staff-staff-spacing
2135 @funindex nonstaff-unrelatedstaff-spacing
2136 @funindex nonstaff-relatedstaff-spacing
2137 @funindex nonstaff-nonstaff-spacing
2138 @funindex default-staff-staff-spacing
2139 @funindex minimum-Y-extent
2140 @funindex extra-offset
2141 @funindex self-alignment-X
2142 @funindex X-offset
2143 @funindex VerticalAxisGroup
2144
2145 Los mecanismos de espaciado vertical dentro del sistema están
2146 controlados por dos conjuntos de propiedades de grob.  El primer
2147 conjunto está asociado con el grob @code{VerticalAxisGroup}, que
2148 se crea por parte de todas las pautas y líneas que no son pautas.
2149 El segundo conjunto está asociado con el grob @code{StaffGrouper},
2150 que puede crearse por parte de los grupos de pentagramas, pero
2151 solamente si se le llama explícitamente.  Estas propiedades se
2152 describen individualmente al final de la presente sección.
2153
2154 Los nombres de estas propiedades (excepto para
2155 @code{staff-affinity}) siguen el formato
2156 @code{@var{elemento1}-@var{elemento2}-spacing}, donde
2157 @code{@var{elemento1}} y @code{@var{elemento2}} son los elementos
2158 que se van a espaciar.  Observe que @code{@var{elemento2}} no está
2159 necesariamente por debajo de @code{@var{elemento1}}; por ejemplo,
2160 @code{nonstaff-relatedstaff-spacing} mide hacia arriba a partir de
2161 la línea del tipo no-pauta si @code{staff-affinity} es @code{UP}.
2162
2163 Cada distancia se mide entre los @emph{puntos de referencia} de
2164 los dos elementos.  El @emph{punto de referencia} para un
2165 pentagrama y otro tipo de pauta es el centro vertical de su
2166 @code{StaffSymbol} (es decir, la línea central si
2167 @code{line-count} es un número impar; el espacio central si
2168 @code{line-count} es par).  Los puntos de referencia para las
2169 líneas individuales que no son pautas aparecen en la tabla
2170 siguiente:
2171
2172 @multitable {Línea que no es una pauta} {Punto de referencia}
2173 @headitem Línea que no es una pauta @tab Punto de referencia
2174 @item @code{ChordNames}  @tab línea de base
2175 @item @code{NoteNames}   @tab línea de base
2176 @item @code{Lyrics}      @tab línea de base
2177 @item @code{Dynamics}    @tab la mitad de la altura de la @q{m}
2178 @item @code{FiguredBass} @tab punto más alto
2179 @item @code{FretBoards}  @tab línea superior
2180 @end multitable
2181
2182 En la siguiente imagen, las líneas horizontales indican las
2183 posiciones de estos puntos de referencia:
2184
2185 @lilypond[quote,noragged-right,line-width=110\mm]
2186 #(define zero-space '((padding . -inf.0) (basic-distance . 0)))
2187
2188 alignToZero = \with {
2189   \override VerticalAxisGroup.nonstaff-relatedstaff-spacing = #zero-space
2190   \override VerticalAxisGroup.nonstaff-nonstaff-spacing = #zero-space
2191   \override VerticalAxisGroup.staff-affinity = #DOWN
2192   \remove Text_engraver % avoid having two
2193   \consists Text_engraver
2194 }
2195 lowerCaseChords = \with {
2196   chordNameLowercaseMinor = ##t
2197 }
2198 labelContext =
2199 #(define-music-function
2200      (context)
2201      (string?)
2202      #{ s1*0^\markup { \upright {\typewriter #context } } #})
2203
2204 \layout {
2205   \context { \Dynamics    \alignToZero }
2206   \context { \FiguredBass \alignToZero }
2207   \context { \Lyrics      \alignToZero }
2208   \context { \NoteNames   \alignToZero }
2209   \context { \ChordNames  \alignToZero \lowerCaseChords }
2210   \context { \FretBoards  \alignToZero }
2211   \context { \Score
2212     \omit BarLine
2213     \override DynamicText.self-alignment-X = #-1
2214     \override FretBoard.X-offset = #1.75
2215     \override InstrumentName.minimum-Y-extent = #'(-1 . 2)
2216     \textLengthOn
2217     \omit TimeSignature
2218   }
2219 }
2220
2221 %% These contexts have reference points at the baseline:
2222 %%   ChordNames, NoteNames, and Lyrics
2223 <<
2224   \new ChordNames { \chords { \labelContext "ChordNames"  g1:m } }
2225   \new NoteNames { s1 |\labelContext "NoteNames"  g1 | }
2226   \new Lyrics { \lyrics { \skip 1*2 | \labelContext "Lyrics" ghijk1 | } }
2227   \new RhythmicStaff \with { instrumentName = #"baseline " } s1*3
2228 >>
2229
2230 %% The reference point for Dynamics is the midline of 'm' in the font
2231 <<
2232   \new Dynamics { \labelContext "Dynamics" s1\mp s\fp }
2233   \new RhythmicStaff \with { instrumentName = #"mid-height " } s1*3
2234 >>
2235
2236 %% The reference point for FiguredBass is its highest point
2237 <<
2238   \new FiguredBass { \labelContext "FiguredBass" \figuremode { <6 5>1 } }
2239   \new RhythmicStaff \with { instrumentName = #"highest point " } s1
2240 >>
2241
2242 %% The reference point for FretBoards is the top line
2243 \include "predefined-guitar-fretboards.ly"
2244 <<
2245   \new FretBoards { \labelContext "FretBoards" \chordmode { e1 } }
2246   \new RhythmicStaff \with { instrumentName = #"top line " } s1
2247 >>
2248 @end lilypond
2249
2250 Cada una de las propiedades de grob del espaciado vertical
2251 (excepto @code{staff-affinity}) usa la misma estructura de lista-A
2252 que las variables de espaciado del bloque @code{\paper} que se han
2253 estudiado en
2254 @ref{Variables de espaciado de paper verticales flexibles,,Variables de espaciado de @code{@bs{}paper} verticales flexibles}.
2255 En @ref{Modificación de las listas-A} se estudian métodos
2256 específicos para la modificación de las listas-A.  Las propiedades
2257 de los grobs deben ajustarse con un @code{\override} dentro de un
2258 bloque @code{\score} o @code{\layout}, y no dentro de un bloque
2259 @code{\paper}.
2260
2261 El ejemplo que sigue muestra las dos maneras en que pueden
2262 modificarse estas listas-A.  La primera declaración actualiza un
2263 par clave-valor de forma individual, y la segunda redefine la
2264 propiedad completamente:
2265
2266 @example
2267 \new Staff \with @{
2268   \override VerticalAxisGroup.default-staff-staff-spacing.basic-distance = #10
2269 @} @{ @dots{} @}
2270
2271 \new Staff \with @{
2272   \override VerticalAxisGroup.default-staff-staff-spacing =
2273     #'((basic-distance . 10)
2274        (minimum-distance . 9)
2275        (padding . 1)
2276        (stretchability . 10))
2277 @} @{ @dots{} @}
2278 @end example
2279
2280 Para modificar globalmente cualquiera de los ajustes de espaciado,
2281 póngalos dentro del bloque @code{\layout}:
2282
2283 @example
2284 \layout @{
2285   \context @{
2286     \Staff
2287     \override VerticalAxisGroup.default-staff-staff-spacing.basic-distance = #10
2288   @}
2289 @}
2290 @end example
2291
2292 Los ajustes estándar para las propiedades de grob del espaciado
2293 vertical están relacionadas en @rinternals{VerticalAxisGroup} y en
2294 @rinternals{StaffGrouper}.  Las sobreescrituras predeterminadas
2295 para los tipos específicos de líneas que no son pautas están
2296 relacionadas en las descripciones de contexto correspondientes en
2297 @rinternals{Contexts}.
2298
2299 @subsubheading Propiedades del grob @code{VerticalAxisGroup}
2300
2301 Las propiedades de @code{VerticalAxisGroup} se suelen ajustar con
2302 una instrucción @code{\override} en el nivel de @code{Staff} (o
2303 equivalente).
2304
2305 @table @code
2306 @item staff-staff-spacing
2307 Se utiliza para determinar la distancia entre la pauta actual y la
2308 pauta que está justo por debajo de ella dentro del mismo sistema,
2309 incluso si hay más líneas que no son pautas (tales como
2310 @code{Lyrics}) entre las dos pautas.  No se aplica a la pauta
2311 inferior de un sistema.
2312
2313 Inicialmente, el valor de espaciado @code{staff-staff-spacing} de
2314 un grupo @code{VerticalAxisGroup} es una función de Scheme que
2315 aplica las propiedades del @code{StaffGrouper} si la pauta forma
2316 parte de un grupo, o el @code{default-staff-staff-spacing} de la
2317 pauta en caso contrario.  Esto hace posible que las pautas estén
2318 espaciadas de forma diferente cuando están agrupadas.  Para
2319 conseguir un espaciado regular sin importar el agrupamiento, esta
2320 función se puede sustituir por una lista-A de espaciado flexible,
2321 utilizando la forma de sobreescritura de redefinición completa que
2322 se ha mostrado más arriba.
2323
2324 @item default-staff-staff-spacing
2325 Una lista-A de espaciado flexible que define el espacio
2326 @code{staff-staff-spacing} que se usará para las pautas sin
2327 agrupar, a no ser que se haya sobreescrito explícitamente
2328 @code{staff-staff-spacing} con una instrucción @code{\override}.
2329
2330 @item staff-affinity
2331 Dirección de la pauta que utilizar para el espaciado de la línea
2332 actual que no es pauta.  Se puede elegir entre @code{UP} (arriba),
2333 @code{DOWN} (abajo) y @code{CENTER} (centro).  Si es
2334 @code{CENTER}, la línea del tipo no-pauta se coloca equidistante
2335 entre las dos pautas contiguas a ambos lados, a no ser que lo
2336 impidan colisiones u otras restricciones de espaciado.  Las líneas
2337 del tipo no-pauta adyacentes han de llevar valores de
2338 @code{staff-affinity} no crecientes desde la parte superior hasta
2339 la inferior, p.ej. una línea del tipo no-pauta establecida a
2340 @code{UP} no debería seguir inmediatamente a otra que esté
2341 establecida a @code{DOWN}.  Las líneas del tipo no-pauta en la
2342 parte superior de un sistema deben usar @code{DOWN}; las de la
2343 parte inferior deben usar @code{UP}.  El ajuste de
2344 @code{staff-affinity} para una pauta hace que se le trate como una
2345 línea que no es una pauta.  El establecimiento de
2346 @code{staff-affinity} a @code{#f} para una línea que no es una
2347 pauta hace que se trate como una pauta.  Establecer
2348 @code{staff-affinity} a @code{UP}, @code{CENTER}, o @code{DOWN}
2349 hace que el pentagrama resulte espaciado como si fuera una línea
2350 que no es una pauta.
2351
2352 @item nonstaff-relatedstaff-spacing
2353 Distancia entre la línea del tipo no-pauta actual y la pauta más
2354 próxima en la dirección de @code{staff-affinity}, si no hay
2355 ninguna línea que no sea una pauta entre las dos, y
2356 @code{staff-affinity} es @code{UP} o @code{DOWN}.  Si
2357 @code{staff-affinity} es @code{CENTER}, entonces se usa
2358 @code{nonstaff-relatedstaff-spacing} para las pautas más próximas
2359 @emph{a los dos lados}, incluso aunque aparezcan otras líneas del
2360 tipo no-pauta entre la pauta actual y una de las otras.  Esto
2361 significa que la colocación de una línea que no es una pauta
2362 depende tanto de las pautas que la rodean como de las líneas que
2363 no son pautas y que la rodean.  Establecer la ampliabilidad
2364 @code{stretchability} de uno de estos tipos de espaciado a un
2365 valor más pequeño provoca que este espaciado domine.  El
2366 establecimiento de @code{stretchability} a un valor mayor hace que
2367 dicho espaciado tenga un menor efecto.
2368
2369 @item nonstaff-nonstaff-spacing
2370 Distancia entre la línea actual del tipo no-pauta y la siguiente
2371 línea del tipo no-pauta en la dirección de @code{staff-affinity},
2372 si las dos están al mismo lado de la pauta relacionada, y
2373 @code{staff-affinity} es @code{UP} o @code{DOWN}.
2374
2375 @item nonstaff-unrelatedstaff-spacing
2376 Distancia entre la línea actual del tipo no-pauta y la pauta en la
2377 dirección opuesta de @code{staff-affinity}, si no hay ninguna otra
2378 línea del tipo no-pauta entre las dos, y @code{staff-affinity} es
2379 @code{UP} o @code{DOWN}.  Se puede usar, por ejemplo, para
2380 requerir una cantidad de relleno mínima entre una línea de
2381 @code{Lyrics} y la pauta a la que no pertenece.
2382 @end table
2383
2384 @subsubheading Propiedades del grob @code{StaffGrouper}
2385
2386 Las propiedades de @code{StaffGrouper} se suelen ajustar con una
2387 instrucción @code{\override} en el nivel de @code{StaffGroup} (o
2388 equivalente).
2389
2390 @table @code
2391 @item staff-staff-spacing
2392 Distancia entre pautas consecutivas dentro del grupo de pautas
2393 actual.  La propiedad @code{staff-staff-spacing} del grob
2394 @code{VerticalAxisGroup} de una pauta individual se puede
2395 sobreescribir con distintos ajustes de espaciado para dicha pauta.
2396
2397 @item staffgroup-staff-spacing
2398 Distancia entre la última pauta del grupo en curso y la pauta que
2399 está justo por debajo de ella dentro del mismo sistema, incluso si
2400 existen una o más líneas que no son pautas (tales como
2401 @code{Lyrics}) entre las dos pautas.  No se aplica al pentagrama o
2402 pauta inferior de un sistema.  La propiedad
2403 @code{staff-staff-spacing} del grob @code{VerticalAxisGroup} de
2404 una pauta individual se puede sobreescribir con distintos ajustes
2405 de espaciado para dicha pauta.
2406 @end table
2407
2408 @seealso
2409 Referencia de la notación:
2410 @ref{Variables de espaciado de paper verticales flexibles,,Variables de espaciado de @code{@bs{}paper} verticales flexibles},
2411 @ref{Modificación de las listas-A}.
2412
2413 Archivos de inicio:
2414 @file{ly/engraver-init.ly},
2415 @file{scm/define-grobs.scm}.
2416
2417 Referencia de funcionamiento interno:
2418 @rinternals{Contexts},
2419 @rinternals{VerticalAxisGroup},
2420 @rinternals{StaffGrouper}.
2421
2422
2423
2424 @node Espaciado de pautas no agrupadas
2425 @unnumberedsubsubsec Espaciado de pautas no agrupadas
2426 @translationof Spacing of ungrouped staves
2427
2428 Las @emph{pautas}, tales como los pentagramas (@code{Staff}),
2429 pautas de percusión (@code{DrumStaff}) o de tablatura
2430 (@code{TabStaff}), etc. son contextos que pueden contener uno o
2431 más contextos de voz, pero no pueden contener otras pautas.
2432
2433 Las siguientes propiedades afectan al espaciado de las pautas
2434 @emph{no agrupadas}:
2435
2436 @itemize
2437 @item Propiedades de @code{VerticalAxisGroup}:
2438 @itemize
2439 @item @code{default-staff-staff-spacing}
2440 @item @code{staff-staff-spacing}
2441 @end itemize
2442 @end itemize
2443
2444 Estas propiedades de grob se describen individualmente más arriba;
2445 véase @ref{Propiedades de espaciado dentro de los sistemas}.
2446
2447 Están implicadas ciertas propiedades adicionales para las pautas
2448 que son parte de un grupo; véase
2449 @ref{Espaciado de pautas agrupadas}.
2450
2451 El ejemplo siguiente muestra cómo la propiedad
2452 @code{default-staff-staff-spacing} puede afectar al espaciado de
2453 pautas no agrupadas.  Las mismas sobreescrituras aplicadas a
2454 @code{staff-staff-spacing} tendrían el mismo efecto, pero también
2455 se aplicaría en caso de que las pautas estuvieran combinadas en un
2456 grupo o grupos.
2457
2458 @lilypond[verbatim,quote,staffsize=16]
2459 \layout {
2460   \context {
2461     \Staff
2462     \override VerticalAxisGroup.default-staff-staff-spacing =
2463       #'((basic-distance . 8)
2464          (minimum-distance . 7)
2465          (padding . 1))
2466   }
2467 }
2468
2469 <<
2470   % The very low note here needs more room than 'basic-distance
2471   % can provide, so the distance between this staff and the next
2472   % is determined by 'padding.
2473   \new Staff { b,2 r | }
2474
2475   % Here, 'basic-distance provides enough room, and there is no
2476   % need to compress the space (towards 'minimum-distance) to make
2477   % room for anything else on the page, so the distance between
2478   % this staff and the next is determined by 'basic-distance.
2479   \new Staff { \clef bass g2 r | }
2480
2481   % By setting 'padding to a negative value, staves can be made to
2482   % collide.  The lowest acceptable value for 'basic-distance is 0.
2483   \new Staff \with {
2484     \override VerticalAxisGroup.default-staff-staff-spacing =
2485       #'((basic-distance . 3.5)
2486          (padding . -10))
2487   } { \clef bass g2 r | }
2488   \new Staff { \clef bass g2 r | }
2489 >>
2490 @end lilypond
2491
2492 @seealso
2493 Archivos de inicio:
2494 @file{scm/define-grobs.scm}.
2495
2496 Fragmentos de código:
2497 @rlsr{Spacing}.
2498
2499 Referencia de funcionamiento interno:
2500 @rinternals{VerticalAxisGroup}.
2501
2502
2503 @node Espaciado de pautas agrupadas
2504 @unnumberedsubsubsec Espaciado de pautas agrupadas
2505 @translationof Spacing of grouped staves
2506
2507 En partituras grandes como las orquestales, es común colocar los
2508 pentagramas en grupos.  El espacio entre los grupos suele ser
2509 mayor que el espacio que hay entre los pentagramas dentro del
2510 mismo grupo.
2511
2512 Los grupos de pautas, @emph{Staff-groups} (tales como
2513 @code{StaffGroup}, @code{ChoirStaff}, etc.) son contextos que
2514 pueden contener al mismo tiempo uno o más pentagramas o pautas.
2515
2516 Las siguientes propiedades afectan al espaciado de las pautas
2517 dentro de los grupos:
2518
2519 @itemize
2520 @item Propiedades de @code{VerticalAxisGroup}:
2521 @itemize
2522 @item @code{staff-staff-spacing}
2523 @end itemize
2524 @item Propiedades de @code{StaffGrouper}:
2525 @itemize
2526 @item @code{staff-staff-spacing}
2527 @item @code{staffgroup-staff-spacing}
2528 @end itemize
2529 @end itemize
2530
2531 Estas propiedades de grob se describen individualmente más arriba;
2532 véase @ref{Propiedades de espaciado dentro de los sistemas}.
2533
2534 El ejemplo siguiente muestra cómo pueden afectar las propiedades
2535 del grob @code{StaffGrouper} al espaciado de las pautas agrupadas:
2536
2537 @lilypond[verbatim,quote,staffsize=16]
2538 \layout {
2539   \context {
2540     \Score
2541     \override StaffGrouper.staff-staff-spacing.padding = #0
2542     \override StaffGrouper.staff-staff-spacing.basic-distance = #1
2543   }
2544 }
2545
2546 <<
2547   \new PianoStaff \with {
2548     \override StaffGrouper.staffgroup-staff-spacing.basic-distance = #20
2549   } <<
2550     \new Staff { c'1 }
2551     \new Staff { c'1 }
2552   >>
2553
2554   \new StaffGroup <<
2555     \new Staff { c'1 }
2556     \new Staff { c'1 }
2557   >>
2558 >>
2559 @end lilypond
2560
2561 @seealso
2562 Archivos de inicio:
2563 @file{scm/define-grobs.scm}.
2564
2565 Fragmentos de código:
2566 @rlsr{Spacing}.
2567
2568 Referencia de funcionamiento interno:
2569 @rinternals{VerticalAxisGroup},
2570 @rinternals{StaffGrouper}.
2571
2572
2573 @node Espaciado de las líneas que no son pautas
2574 @unnumberedsubsubsec Espaciado de las líneas que no son pautas
2575 @translationof Spacing of non-staff lines
2576
2577 Las @emph{Líneas que no son pautas} (tales como @code{Lyrics},
2578 @code{ChordNames}, etc.) son contextos cuyos objetos de
2579 presentación se imprimen como pentagramas (es decir, en líneas
2580 horizontales dentro de los sistemas).  Específicamente, las líneas
2581 que no son pautas son contextos del tipo no-pauta que contienen el
2582 grabador @rinternals{Axis_group_engraver}.
2583
2584 Las siguientes propiedades afectan al espaciado de las líneas que
2585 no son pautas:
2586
2587 @itemize
2588 @item Propiedades de @code{VerticalAxisGroup}:
2589 @itemize
2590 @item @code{staff-affinity}
2591 @item @code{nonstaff-relatedstaff-spacing}
2592 @item @code{nonstaff-nonstaff-spacing}
2593 @item @code{nonstaff-unrelatedstaff-spacing}
2594 @end itemize
2595 @end itemize
2596
2597 Estas propiedades de grob se describen individualmente más arriba;
2598 véase @ref{Propiedades de espaciado dentro de los sistemas}.
2599
2600 El ejemplo siguiente muestra cómo la propiedad
2601 @code{nonstaff-nonstaff-spacing} puede afectar el espaciado de
2602 líneas consecutivas que no son pautas.  Aquí, mediante el
2603 establecimiento de la clave de ampliabilidad @code{stretchability}
2604 a un valor muy grande, la línea de letra es capaz de ampliarse
2605 mucho más de lo que es usual:
2606
2607 @lilypond[verbatim,quote,staffsize=16]
2608 \layout {
2609   \context {
2610     \Lyrics
2611     \override VerticalAxisGroup.nonstaff-nonstaff-spacing.stretchability = #1000
2612   }
2613 }
2614
2615 \new StaffGroup
2616 <<
2617   \new Staff \with {
2618     \override VerticalAxisGroup.staff-staff-spacing = #'((basic-distance . 30))
2619   } { c'1 }
2620   \new Lyrics \with {
2621     \override VerticalAxisGroup.staff-affinity = #UP
2622   } \lyricmode { up }
2623   \new Lyrics \with {
2624     \override VerticalAxisGroup.staff-affinity = #CENTER
2625   } \lyricmode { center }
2626   \new Lyrics \with {
2627     \override VerticalAxisGroup.staff-affinity = #DOWN
2628   } \lyricmode { down }
2629   \new Staff { c'1 }
2630 >>
2631 @end lilypond
2632
2633 @seealso
2634 Archivos de inicio:
2635 @file{ly/engraver-init.ly},
2636 @file{scm/define-grobs.scm}.
2637
2638 Fragmentos de código:
2639 @rlsr{Spacing}.
2640
2641 @c @lsr{spacing,page-spacing.ly},
2642 @c @lsr{spacing,alignment-vertical-spacing.ly}.
2643
2644 Referencia de funcionamiento interno:
2645 @rinternals{Contexts},
2646 @rinternals{VerticalAxisGroup}.
2647
2648
2649 @node Posicionamiento explícito de los pentagramas y los sistemas
2650 @subsection Posicionamiento explícito de los pentagramas y los sistemas
2651 @translationof Explicit staff and system positioning
2652
2653 Una forma de entender los mecanismos del espaciado vertical
2654 flexible que se han explicado más arriba es como una colección de
2655 ajustes que controlan la cantidad de relleno vertical entre los
2656 pentagramas y los sistemas.
2657
2658 Es posible enfrentarse al espaciado vertical de una forma distinta
2659 utilizando @code{NonMusicalPaperColumn.line-break-system-details}.
2660 Mientras que los mecanismos del espaciado vertical flexible
2661 especifican relleno vertical,
2662 @code{NonMusicalPaperColumn.line-break-system-details} puede
2663 especificar posiciones verticales exactas sobre la página.
2664
2665 @code{NonMusicalPaperColumn.line-break-system-details} acepta una
2666 lista asociativa de cuatro ajustes diferentes:
2667
2668 @itemize
2669 @item @code{X-offset} (desplazamiento en X)
2670 @item @code{Y-offset} (desplazamiento en Y)
2671 @item @code{extra-offset} (desplazamiento adicional)
2672 @item @code{alignment-distances} (distancias de alineación)
2673 @end itemize
2674
2675 Las sobreescrituras de los objetos gráficos, entre ellas las de
2676 @code{NonMusicalPaperColumn} que aparecen más abajo, pueden
2677 ocurrir en tres lugares distintos dentro de un archivo de entrada:
2678
2679 @itemize
2680 @item directamente en medio de las notas
2681 @item en un bloque @code{\context}
2682 @item en el bloque @code{\with}
2683 @end itemize
2684
2685 Cuando sobreescribimos @code{NonMusicalPaperColumn}, usamos la
2686 instrucción @code{\override} usual en los bloques @code{\context}
2687 y en el bloque @code{\with}.  Por otra parte, cuando
2688 sobreescribimos @code{NonMusicalPaperColumn} en medio de las
2689 notas, debemos usar la instrucción especial
2690 @code{\overrideProperty}.  He aquí algunas sobreescrituras de
2691 @code{NonMusicalPaperColumn} de ejemplo con la instrucción
2692 especial @code{\overrideProperty}:
2693
2694 @example
2695 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2696   #'((X-offset . 20))
2697
2698 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2699   #'((Y-offset . 40))
2700
2701 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2702   #'((X-offset . 20)
2703      (Y-offset . 40))
2704
2705 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2706   #'((alignment-distances . (15)))
2707
2708 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2709   #'((X-offset . 20)
2710      (Y-offset . 40)
2711      (alignment-distances . (15)))
2712 @end example
2713
2714 Para entender cómo funciona cada uno de los distintos ajustes,
2715 empezamos observando un ejemplo que no incluye absolutamente
2716 ninguna sobreescritura.
2717
2718 @c \book { } is required in these examples to ensure the spacing
2719 @c overrides can be seen between systems. -np
2720
2721 @lilypond[verbatim,quote,staffsize=16]
2722 \header { tagline = ##f }
2723 \paper { left-margin = 0\mm }
2724 \book {
2725   \score {
2726     <<
2727       \new Staff <<
2728         \new Voice {
2729           s1*5 \break
2730           s1*5 \break
2731           s1*5 \break
2732         }
2733         \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2734       >>
2735       \new Staff {
2736         \repeat unfold 15 { d'4 d' d' d' }
2737       }
2738     >>
2739   }
2740 }
2741 @end lilypond
2742
2743 Esta partitura mantiene aislada tanto la información de los saltos
2744 de línea como los de página en una voz dedicada a ello.  Esta
2745 técnica de crear una voz de saltos ayuda a mantener separada de la
2746 escritura de notas conforme el ejemplo se vuelve más complicado.
2747 Consulte @ref{Saltos}.
2748
2749 Utilizando instrucciones @code{\break} explícitas, la música se
2750 divide líneas de cinco compases cada una.  El espaciado vertical
2751 proviene de los ajustes predeterminados de LilyPond pero el punto
2752 de origen vertical de cada sistema se fija explícitamente usando
2753 el par @code{Y-offset} en el atributo
2754 @code{line-break-system-details} del grob (objeto gráfico)
2755 @code{NonMusicalPaperColumn}:
2756
2757 @lilypond[verbatim,quote,staffsize=16]
2758 \header { tagline = ##f }
2759 \paper { left-margin = 0\mm }
2760 \book {
2761   \score {
2762     <<
2763       \new Staff <<
2764         \new Voice {
2765           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2766             #'((Y-offset . 0))
2767           s1*5 \break
2768           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2769             #'((Y-offset . 40))
2770           s1*5 \break
2771           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2772             #'((Y-offset . 60))
2773           s1*5 \break
2774         }
2775         \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2776       >>
2777       \new Staff {
2778         \repeat unfold 15 { d'4 d' d' d' }
2779       }
2780     >>
2781   }
2782 }
2783 @end lilypond
2784
2785 Observe que @code{line-break-system-details} toma una lista
2786 asociativa de una cantidad de valores potencialmente elevada, pero
2787 aquí sólo fijamos un valor.  Observe también que aquí la propiedad
2788 @code{Y-offset} determina la posición vertical exacta sobre la
2789 página en la que se trazará cada uno de los nuevos sistemas.
2790
2791 En contraste con el posicionado absoluto que está disponible a
2792 través de @code{Y-offset} y de @code{X-offset}, es posible un
2793 posicionamiento relativo con la propiedad @code{extra-offset} de
2794 @code{line-break-system-details}.  La colocación es relativa a la
2795 disposición predeterminada o al posicionamiento absoluto creado
2796 mediante el establecimiento de los valores de @code{X-offset} y de
2797 @code{Y-offset}.  La propiedad @code{extra-offset} acepta una
2798 pareja de números (un @code{pair}) que consiste en desplazamientos
2799 a lo largo de los ejes X e Y.
2800
2801 @lilypond[verbatim,quote,staffsize=16]
2802 \header { tagline = ##f }
2803 \paper { left-margin = 0\mm }
2804 \book {
2805   \score {
2806     <<
2807       \new Staff <<
2808         \new Voice {
2809           s1*5 \break
2810           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2811             #'((extra-offset . (0 . 10)))
2812           s1*5 \break
2813           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2814             #'((extra-offset . (0 . 10)))
2815           s1*5 \break
2816         }
2817         \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2818       >>
2819       \new Staff {
2820         \repeat unfold 15 { d'4 d' d' d' }
2821       }
2822     >>
2823   }
2824 }
2825 @end lilypond
2826
2827 Ahora que hemos establecido explícitamente el punto de origen
2828 vertical de cada sistema, podemos también establecer manualmente
2829 las distancias verticales entre los pentagramas dentro de cada
2830 sistema.  Lo hacemos usando la subpropiedad
2831 @code{alignment-distances} de @code{line-break-system-details}.
2832
2833 @lilypond[verbatim,quote,staffsize=16]
2834 \header { tagline = ##f }
2835 \paper { left-margin = 0\mm }
2836 \book {
2837   \score {
2838     <<
2839       \new Staff <<
2840         \new Voice {
2841           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2842             #'((Y-offset . 20)
2843                (alignment-distances . (10)))
2844           s1*5 \break
2845           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2846             #'((Y-offset . 60)
2847                (alignment-distances . (15)))
2848           s1*5 \break
2849           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2850           #'((Y-offset . 85)
2851              (alignment-distances . (20)))
2852           s1*5 \break
2853         }
2854         \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2855       >>
2856       \new Staff {
2857         \repeat unfold 15 { d'4 d' d' d' }
2858       }
2859     >>
2860   }
2861 }
2862 @end lilypond
2863
2864 Observe que aquí asignamos dos valores distintos al atributo
2865 @code{line-break-system-details} del grob
2866 @code{NonMusicalPaperColumn}.  Aunque el atributo alist de
2867 @code{line-break-system-details} acepta muchos parámetros de
2868 espaciado adicionales (entre ellos, por ejemplo, un par
2869 @code{X-offset} correspondiente), sólo tenemos que establecer el
2870 desplazamiento @code{Y-offset} y los pares
2871 @code{alignment-distances} para controlar el punto de origen
2872 vertical de cada sistema y pentagrama.  Finalmente, observe que
2873 @code{alignment-distances} especifica el posicionamiento vertical
2874 de los pentagramas pero no de los grupos de pentagramas.
2875
2876 @lilypond[verbatim,quote,staffsize=16]
2877 \header { tagline = ##f }
2878 \paper { left-margin = 0\mm }
2879 \book {
2880   \score {
2881     <<
2882       \new Staff <<
2883         \new Voice {
2884           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2885             #'((Y-offset . 0)
2886                (alignment-distances . (30 10)))
2887           s1*5 \break
2888           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2889             #'((Y-offset . 60)
2890                (alignment-distances . (10 10)))
2891           s1*5 \break
2892           \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2893             #'((Y-offset . 100)
2894                (alignment-distances . (10 30)))
2895           s1*5 \break
2896         }
2897         \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2898       >>
2899       \new StaffGroup <<
2900         \new Staff { \repeat unfold 15 { d'4 d' d' d' } }
2901         \new Staff { \repeat unfold 15 { e'4 e' e' e' } }
2902       >>
2903     >>
2904   }
2905 }
2906 @end lilypond
2907
2908 Algunos puntos que tener en cuenta:
2909
2910 @itemize
2911 @item Al usar @code{alignment-distances}, la letra y otras líneas que no
2912 son pautas, no cuentan como un pentagrama.
2913
2914 @item Las unidades de los números que se pasan a @code{X-offset},
2915 @code{Y-offset}, @code{extra-offset} y @code{alignment-distances}
2916 se interpretan como múltiplos de la distancia entre líneas de
2917 pentagrama adyacentes.  Los valores positivos mueven a los
2918 pentagramas y a la letra hacia arriba, los valores negativos
2919 mueven los pentagramas y la letra hacia abajo.
2920
2921 @item A causa de que los ajustes a
2922 @code{NonMusicalPaperColumn.line-break-system-details} dados aquí
2923 permiten el posicionamiento de pentagramas y sistemas en cualquier
2924 lugar de la página, es posible violar los márgenes o los límites
2925 del papel, o incluso imprimir pentagramas o sistemas unos encima
2926 de otros.  Esto se evitaría pasando a los diferentes ajustes unos
2927 valores razonables.
2928 @end itemize
2929
2930 @seealso
2931 Fragmentos de código:
2932 @rlsr{Spacing}.
2933
2934
2935 @node Evitar las colisiones verticales
2936 @subsection Evitar las colisiones verticales
2937 @translationof Vertical collision avoidance
2938
2939 @funindex outside-staff-priority
2940 @funindex outside-staff-padding
2941 @funindex outside-staff-horizontal-padding
2942
2943 Podemos decir intuitivamente que algunos objetos de la notación
2944 musical pertenecen al pentagrama y otros se sitúan fuera del
2945 pentagrama.  Entre los objetos que pertenecen al exterior del
2946 pentagrama están las marcas de ensayo, las marcas textuales y las
2947 indicaciones de dinámica (en lo sucesivo, les llamaremos objetos
2948 fuera del pentagrama).  La regla de LilyPond para la colocación
2949 vertical de los objetos fuera del pentagrama es ponerlos tan cerca
2950 del pentagrama como sea posible pero no tan próximos como para que
2951 choquen con otro objeto.
2952
2953 LilyPond utiliza la propiedad @code{outside-staff-priority} para
2954 determinar si un grob es un objeto fuera del pentagrama: si
2955 @code{outside-staff-priority} es un número, el grob es un objeto
2956 fuera del pentagrama.  Además, @code{outside-staff-priority}
2957 informa a LilyPond en qué orden se debe situar los objetos.
2958
2959 En primer lugar, LilyPond sitúa todos los objetos que no
2960 pertenecen al exterior del pentagrama.  Después ordena los objetos
2961 fuera del pentagrama de acuerdo a su prioridad
2962 @code{outside-staff-priority} (en orden creciente).  LilyPond toma
2963 los objetos fuera del pentagrama uno a uno y los coloca de forma
2964 que no choquen con ningún objeto que ya haya sido colocado.  Esto
2965 es, si dos grobs fuera del pentagrama compiten por el mismo
2966 espacio, el que tiene la prioridad @code{outside-staff-priority}
2967 más baja se colocará más próximo al pentagrama.
2968
2969 Hay un listado completo de las prioridades
2970 outside-staff-priorities en
2971 @rlearning{La propiedad outside-staff-priority (prioridad fuera del pentagrama)}.
2972
2973 @lilypond[quote,ragged-right,verbatim]
2974 \relative c'' {
2975   c4_"Text"\pp
2976   r2.
2977   \once \override TextScript.outside-staff-priority = #1
2978   c4_"Text"\pp % this time the text will be closer to the staff
2979   r2.
2980   % by setting outside-staff-priority to a non-number,
2981   % we disable the automatic collision avoidance
2982   \once \override TextScript.outside-staff-priority = ##f
2983   \once \override DynamicLineSpanner.outside-staff-priority = ##f
2984   c4_"Text"\pp % now they will collide
2985 }
2986 @end lilypond
2987
2988 El relleno vertical que rodea a los objetos fuera del pentagrama
2989 se puede controlar con @code{outside-staff-padding}.
2990
2991 @lilypond[quote,ragged-right,verbatim,staffsize=18]
2992 \relative {
2993   \once \override TextScript.outside-staff-padding = #0
2994   a'4-"outside-staff-padding = #0"
2995   \once \override TextScript.outside-staff-padding = #3
2996   d-"outside-staff-padding = #3"
2997   c-"default outside-staff-padding"
2998   b-"default outside-staff-padding"
2999   R1
3000 }
3001 @end lilypond
3002
3003 De forma predeterminada, los objetos fuera del pentagrama se
3004 colocan de forma que eviten una colisión horizontal con los grobs
3005 posicionados previamente.  Esto puede llevar a situaciones en las
3006 que los objetos se colocan muy próximos entre sí en el sentido
3007 horizontal.  Como se muestra en el ejemplo que aparece más abajo,
3008 al establecer @code{outside-staff-horizontal-padding} se
3009 incrementa el espacio horicontal necesario, y en este caso mueve
3010 el texto hacia arriba para evitar que quede demasiado cerca de las
3011 líneas adicionales.
3012
3013 @lilypond[quote,ragged-right,verbatim]
3014 \relative {
3015   c''4^"Word" c c''2
3016   R1
3017   \once \override TextScript.outside-staff-horizontal-padding = #1
3018   c,,4^"Word" c c''2
3019 }
3020 @end lilypond
3021
3022 @seealso
3023 Fragmentos de código:
3024 @rlsr{Spacing}.
3025
3026
3027 @node Espaciado horizontal
3028 @section Espaciado horizontal
3029 @translationof Horizontal spacing
3030
3031 @cindex horizontal, espaciado
3032 @cindex espaciado horizontal
3033
3034 @menu
3035 * Panorámica del espaciado horizontal::
3036 * Sección de espaciado nueva::
3037 * Cambiar el espaciado horizontal::
3038 * Longitud de la línea::
3039 * Notación proporcional::
3040 @end menu
3041
3042
3043 @node Panorámica del espaciado horizontal
3044 @subsection Panorámica del espaciado horizontal
3045 @translationof Horizontal spacing overview
3046
3047 El motor de espaciado traduce las diferencias en las duraciones a
3048 distancias ampliables (@q{muelles}) de distintas longitudes.  Las
3049 duraciones más largas reciben un espacio mayor y las duraciones
3050 más cortas reciben menos.  Las duraciones más breves reciben un
3051 espacio de tamaño fijo (que se controla mediante
3052 @code{shortest-duration-space} en el objeto
3053 @rinternals{SpacingSpanner}).  Cuanto más larga es la duración,
3054 más espacio recibe: al doblar una duración se suma
3055 @code{spacing-increment} al espacio que ocupa la nota.
3056
3057 Por ejemplo, la pieza siguiente contiene numerosas blancas, negras
3058 y corcheas; la corchea va seguida de un ancho de cabeza de blanca
3059 (ACB).  La negra va seguida de 2 ACB, la blanca por 3 ACB, etc.
3060
3061 @lilypond[quote,verbatim]
3062 \relative c' {
3063   c2 c4. c8
3064   c4. c8 c4. c8
3065   c8 c c4 c c
3066 }
3067 @end lilypond
3068
3069 Normalmente, el valor de @code{spacing-increment} está establecido
3070 en 1.2 espacios de pentagrama, lo que es aproximadamente el ancho
3071 de una cabeza, y @code{shortest-duration-space} está establecido
3072 en 2.0, lo que significa que la nota más breve recibe 2.4 espacios
3073 de pentagrama (2.0 multiplicado por el @code{spacing-increment})
3074 de espacio horizontal.  Este espacio se cuenta a partir del borde
3075 izquierdo del símbolo, de manera que las notas más breves van
3076 seguidas generalmente por un espacio de 1 ACB.
3077
3078 Si siguiésemos el procedimiento anterior exactamente, entonces la
3079 adición de una sola fusa a una partitura que usa corcheas y
3080 semicorcheas, aumentaría enormemente la anchura de la partitura
3081 completa.  La nota más breve ya no es la semicorchea, sino la
3082 fusa, añadiendo así 1 ACB a cada una de las notas.  Para evitarlo,
3083 la duración más breve a efectos de espaciado no es la nota más
3084 breve de la partitura, sino la que ocurre con más frecuencia.
3085
3086 La duración más breve que es más común se determina de la
3087 siguiente manera: en cada compás se determina la duración más
3088 breve.  La menor duración más común se toma como base para el
3089 espaciado, habiendo estipulado que esta duración menor siempre
3090 debe ser igual o menor que una corchea.  La duración más breve se
3091 imprime cuando se ejecuta @code{lilypond} con la opción
3092 @option{--verbose}.
3093
3094 Estas duraciones también se pueden personalizar.  Si establecemos
3095 la @code{common-shortest-duration} en @rinternals{SpacingSpanner},
3096 entonces éste establece la duración base para el espaciado.  La
3097 duración máxima para esta base (normalmente una corchea), se fija
3098 a través de @code{base-shortest-duration}.
3099
3100 @funindex common-shortest-duration
3101 @funindex base-shortest-duration
3102 @funindex stem-spacing-correction
3103 @funindex spacing
3104
3105 Las notas que son aún más breves que la nota común más breve van
3106 seguidas por un espacio proporcional a su duración en relación con
3107 la nota común más breve.  Así pues, si fuésemos a añadir tan sólo
3108 algunas semicorcheas al ejemplo anterior, irían seguidas por medio
3109 ACB:
3110
3111 @lilypond[quote,verbatim]
3112 \relative { c''2 c4. c8 | c4. c16[ c] c4. c8 | c8 c c4 c c }
3113 @end lilypond
3114
3115 Como se explicó en el @emph{Ensayo sobre grabado musical
3116 automatizado}, las direcciones de las plicas influyen en el
3117 espaciado (véase @ressay{Espaciado óptico}) y se puede ajustar con
3118 la propiedad @code{stem-spacing-correction} del objeto
3119 @rinternals{NoteSpacing}.  Estos se generan para cada uno de los
3120 contextos de @rinternals{Voice}.
3121
3122 El objeto @code{StaffSpacing} (generado en el contexto de
3123 @rinternals{Staff}) contiene la misma propiedad para controlar el
3124 espaciado de las líneas de plica o divisorias.
3125
3126 El ejemplo siguiente muestra estas correcciones, una vez con los
3127 valores predeterminados y otra con un ajuste exagerado:
3128
3129 @lilypond[quote,ragged-right]
3130 \fixed c' {
3131   c4 e'4 e4 b4 |
3132   b4 e'4 b4 e'4 |
3133   \override Staff.NoteSpacing.stem-spacing-correction = #1.5
3134   \override Staff.StaffSpacing.stem-spacing-correction = #1.5
3135   c4 e'4 e4 b4 |
3136   b4 e'4 b4 e'4 |
3137 }
3138 @end lilypond
3139
3140 Está contemplada la notación proporcional; consulte
3141 @ref{Notación proporcional}.
3142
3143 @seealso
3144 Ensayo sobre grabado musical automatizado:
3145 @ressay{Espaciado óptico}.
3146
3147 Fragmentos de código:
3148 @rlsr{Spacing}.
3149
3150 Referencia de funcionamiento interno:
3151 @rinternals{SpacingSpanner},
3152 @rinternals{NoteSpacing},
3153 @rinternals{StaffSpacing},
3154 @rinternals{NonMusicalPaperColumn}.
3155
3156 @knownissues
3157 No existe ningún mecanismo conveniente para sobreescribir el
3158 espaciado manualmente.  Se puede usar el siguiente rodeo para
3159 insertar espacio adicional en una partitura, ajustando el valor
3160 del relleno en la medida necesaria.
3161
3162 @example
3163  \override Score.NonMusicalPaperColumn.padding = #10
3164 @end example
3165
3166 No existe ningún rodeo para disminuir la magnitud de la
3167 separación.
3168
3169
3170 @node Sección de espaciado nueva
3171 @subsection Sección de espaciado nueva
3172 @translationof New spacing section
3173
3174 @funindex \newSpacingSection
3175 @cindex sección de espaciado nueva
3176 @cindex espaciado, nueva seccción de
3177 @cindex notas, espaciar horizontalmente
3178
3179 Se pueden iniciar secciones nuevas con diferentes parámetros de
3180 espaciado, con la instrucción @code{newSpacingSection}.  Esto es
3181 útil para las secciones que tienen distinta noción de las notas
3182 @q{largas} y @q{cortas}.  La instrucción @code{\newSpacingSection}
3183 crea un nuevo objeto @code{SpacingSpanner} en ese momento musical.
3184
3185 En el ejemplo siguiente, el cambio de compás introduce una sección
3186 nueva, y por ello las semicorcheas se separan automáticamente de
3187 manera ligeramente más amplia.
3188
3189 @lilypond[verbatim,quote]
3190 \relative c' {
3191   \time 2/4
3192   c4 c8 c
3193   c8 c c4 c16[ c c8] c4
3194   \newSpacingSection
3195   \time 4/16
3196   c16[ c c8]
3197 }
3198 @end lilypond
3199
3200 Si los ajustes de espaciado automáticos no dan el espaciado
3201 deseado, pueden aplicarse sobreescrituras manuales a sus
3202 propiedades con @code{\override}.  Las sobreescrituras se deben
3203 aplicar en el mismo momento musical que la propia instrucción
3204 @code{\newSpacingSection} y afectarán entonces al espaciado de
3205 toda la música que venga a continuación hasta que las propiedades
3206 se cambien en una nueva sección de espaciado, por ejemplo:
3207
3208 @lilypond[verbatim,quote]
3209 \relative c' {
3210   \time 4/16
3211   c16[ c c8]
3212   \newSpacingSection
3213   \override Score.SpacingSpanner.spacing-increment = #2
3214   c16[ c c8]
3215   \newSpacingSection
3216   \revert Score.SpacingSpanner.spacing-increment
3217   c16[ c c8]
3218 }
3219 @end lilypond
3220
3221
3222 @seealso
3223 Fragmentos de código:
3224 @rlsr{Spacing}.
3225
3226 Referencia de funcionamiento interno:
3227 @rinternals{SpacingSpanner}.
3228
3229
3230 @node Cambiar el espaciado horizontal
3231 @subsection Cambiar el espaciado horizontal
3232 @translationof Changing horizontal spacing
3233
3234 Se puede alterar el espaciado horizontal con la propiedad
3235 @code{base-shortest-duration}.  Aquí compararemos la misma música,
3236 una vez sin alterar la propiedad, y luego alterándola.  Los
3237 valores mayores de @code{ly:make-moment} producen música más
3238 pequeña.  Observe que @code{ly:make-moment} construye una
3239 duración, por lo que @code{1 4} es una duración mayor que @code{1
3240 16}.
3241
3242 @lilypond[verbatim,line-width=12\cm]
3243 \score {
3244   \relative {
3245     g'4 e e2 | f4 d d2 | c4 d e f | g4 g g2 |
3246     g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3247     d4 d d d | d4 e f2 | e4 e e e | e4 f g2 |
3248     g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3249   }
3250 }
3251 @end lilypond
3252
3253 @lilypond[verbatim,line-width=12\cm]
3254 \score {
3255   \relative {
3256     g'4 e e2 | f4 d d2 | c4 d e f | g4 g g2 |
3257     g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3258     d4 d d d | d4 e f2 | e4 e e e | e4 f g2 |
3259     g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3260   }
3261   \layout {
3262     \context {
3263       \Score
3264       \override SpacingSpanner.base-shortest-duration = #(ly:make-moment 1/16)
3265     }
3266   }
3267 }
3268 @end lilypond
3269
3270
3271 @snippets
3272 De forma predeterminada, el espaciado en los grupos de valoración
3273 especial depende de varios factores ajenos a la duración (como
3274 alteraciones, cambios de clave, etc.).  Para pasar por alto estos
3275 símbolos y forzar un espaciado de duraciones iguales uniforme, use
3276 @code{Score.SpacingSpanner.uniform-stretching}.  Esta propiedad
3277 sólo puede cambiarse al principio de la partitura:
3278
3279 @lilypond[quote,ragged-right,verbatim]
3280 \score {
3281   <<
3282     \new Staff {
3283       \tuplet 5/4 { c8 c c c c } c8 c c c
3284     }
3285     \new Staff {
3286       c8 c c c \tuplet 5/4 { c8 c c c c }
3287     }
3288   >>
3289   \layout {
3290     \context {
3291       \Score
3292       \override SpacingSpanner.uniform-stretching = ##t
3293     }
3294   }
3295 }
3296 @end lilypond
3297
3298 Cuando se establece @code{strict-note-spacing}, las notas se
3299 separan sin tener en cuenta las claves, líneas divisorias ni notas
3300 de adorno:
3301
3302 @lilypond[quote,ragged-right,fragment,verbatim]
3303 \override Score.SpacingSpanner.strict-note-spacing = ##t
3304 \new Staff \relative {
3305   c''8[ c \clef alto c \grace { c16 c } c8 c c]  c32[ c] }
3306 @end lilypond
3307
3308 @seealso
3309 Fragmentos de código:
3310 @rlsr{Spacing}.
3311
3312
3313 @node Longitud de la línea
3314 @subsection Longitud de la línea
3315 @translationof Line width
3316
3317 @cindex saltos de página
3318 @cindex página, saltos de
3319
3320 @funindex indent
3321 @funindex line-width
3322 @funindex ragged-right
3323 @funindex ragged-last
3324
3325 @c Although line-width can be set in \layout, it should be set in paper
3326 @c block, to get page layout right.
3327 @c Setting indent in \paper block makes not much sense, but it works.
3328
3329 @c Bit verbose and vague, use examples?
3330 Los ajustes más básicos que influyen en el espaciado son
3331 @code{indent} y @code{line-width}.  Se definen en el bloque
3332 @code{\layout}.  Controlan el sangrado de la primera línea de
3333 música y la longitud de las líneas.
3334
3335 Si se fija un valor verdadero para @code{ragged-right} en el
3336 bloque @code{\layout}, entonces los sistemas terminan en su
3337 longitud horizontal natural, en lugar de repartirse
3338 horizontalmente hasta llenar toda la línea.  Esto es útil para
3339 fragmentos cortos, y para comprobar qué tan apretado es el
3340 espaciado natural.  El valor normal predeterminado es falso, pero
3341 si la partitura tiene un solo sistema, el valor predeterminado es
3342 verdadero.
3343
3344 @cindex diseño de página
3345 @cindex página, disposición de la
3346 @cindex vertical, espaciado
3347
3348 La opción @code{ragged-last} es similar a @code{ragged-right},
3349 pero afecta sólo a la última línea de la pieza.  No se efectúa
3350 ninguna restricción sobre dicha línea.  El resultado es similar al
3351 formateo de los párrafos de texto.  En un párrafo, la última línea
3352 sencillamente ocupa su longitud horizontal natural.
3353 @c Note that for text there are several options for the last line.
3354 @c While Knuth TeX uses natural length, lead typesetters use the same
3355 @c stretch as the previous line.  eTeX uses \lastlinefit to
3356 @c interpolate between both these solutions.
3357
3358 @example
3359 \layout @{
3360   indent = #0
3361   line-width = #150
3362   ragged-last = ##t
3363 @}
3364 @end example
3365
3366 @seealso
3367 Fragmentos de código:
3368 @rlsr{Spacing}.
3369
3370
3371 @node Notación proporcional
3372 @subsection Notación proporcional
3373 @translationof Proportional notation
3374
3375 LilyPond contempla la notación proporcional, un tipo de espaciado
3376 horizontal en el que cada nota consume una medida horizontal que
3377 equivale exactamente a su duración rítmica.  Este tipo de
3378 espaciado proporcional es comparable al espaciado horizontal hecho
3379 sobre un papel milimetrado.  Ciertas partituras del finales del
3380 s.XX y principios del s.XXI utilizan notación proporcional para
3381 clarificar relaciones rítmicas complejas o para facilitar la
3382 colocación de líneas cronométricas u otros gráficos directamente
3383 en la partitura.
3384
3385 LilyPond contempla cinco ajustes distintos para la notación
3386 proporcional, que se pueden usar solos o combinados:
3387
3388 @itemize
3389 @item @code{proportionalNotationDuration}
3390 @item @code{uniform-stretching}
3391 @item @code{strict-note-spacing}
3392 @item @code{\remove "Separating_line_group_engraver"}
3393 @item @code{\override PaperColumn.used = ##t}
3394 @end itemize
3395
3396 En los ejemplos que siguen, exploramos el uso de estos cinco
3397 ajustes de la notación proporcional y examinamos la forma en que
3398 interactúan.
3399
3400 Comenzamos con el siguiente ejemplo de un solo compás, que usa un
3401 espaciado clásico sin justificación por la derecha.
3402
3403 @c The initial pitch is not necessary as long as RhythmicStaff is
3404 @c not preceded by other material in the score, but we don't want
3405 @c to explain that.
3406 @lilypond[quote,verbatim,ragged-right]
3407 \score {
3408   <<
3409     \new RhythmicStaff {
3410       c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
3411     }
3412   >>
3413 }
3414 @end lilypond
3415
3416 Observe que la blanca que inicia el compás ocupa mucho menos de la
3417 mitad de todo el espacio horizontal del compás.  De forma similar,
3418 las semicorcheas y el cinquillo de semicorcheas con que finaliza
3419 el compás ocupan en conjunto mucho más de la mitad de todo el
3420 espacio horizontal del compás.
3421
3422 En el grabado clásico, este espaciado puede ser exactamente el que
3423 deseamos porque podemos tomar prestado el espacio horizontal de la
3424 blanca y conservar el espacio horizontal a lo largo del compás
3425 como un todo.
3426
3427 Por otro lado, si queremos insertar una línea de tiempo graduada o
3428 algún otro gráfico encima o debajo de la partitura, necesitamos la
3429 notación proporcional.  Se activa la notación proporcional con el
3430 ajuste @code{proportionalNotationDuration}.
3431
3432 @lilypond[quote,verbatim,ragged-right]
3433 \score {
3434   <<
3435     \new RhythmicStaff {
3436       c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
3437     }
3438   >>
3439  \layout {
3440     \context {
3441       \Score
3442       proportionalNotationDuration = #(ly:make-moment 1/20)
3443     }
3444   }
3445 }
3446 @end lilypond
3447
3448 La blanca al principio del compás y las notas rápidas de la
3449 segunda mitad del compás ocupan ahora cantidades iguales de
3450 espacio horizontal.  Podríamos colocar una línea de tiempo
3451 graduada o un gráfico encima o debajo de este ejemplo.
3452
3453 El ajuste @code{proportionalNotationDuration} es un ajuste de
3454 contexto que reside en @code{Score}.  Recordemos que los ajustes
3455 de contexto aparecen en uno de tres posibles lugares del archivo
3456 de entrada: en un bloque @code{\with}, en un bloque
3457 @code{\context}, o directamente entre la música precedido por la
3458 instrucción @code{\set}.  Como con todos los ajustes de contexto,
3459 el usuario puede elegir en cuál de los tres lugares diferentes
3460 prefiere establecer el valor de
3461 @code{proportionalNotationDuration}.
3462
3463 El ajuste @code{proportionalNotationDuration} acepta un solo
3464 argumento, que es la duración de referencia contra el que se
3465 aplica el espaciado de toda la música.  La función Scheme de
3466 LilyPond @code{make-moment} acepta dos argumentos: un numerador y
3467 un denominador que, juntos, expresan una cierta fracción de
3468 redonda.  La llamada @code{(ly:make-moment 1/20)}, por tanto,
3469 produce una duración de referencia de una nota de un veinteavo de
3470 redonda (semicorcheas de cinquillo).  Son también posibles valores
3471 como @code{(ly:make-moment 1/16)}, @code{(ly:make-moment 1/8)} y
3472 @code{(ly:make-moment 3/97)}.
3473
3474 ¿Cómo seleccionamos la duración correcta de referencia para
3475 pasarla a @code{proportionalNotationDuration}?  Normalmente
3476 mediante un proceso de ensayo y error, comenzando con una duración
3477 cercana a la más rápida (o más breve) duración de la pieza.  Las
3478 duraciones de referencia más pequeñas aplican un espaciado más
3479 suelto; las duraciones de referencia más largas aplican un
3480 espaciado más apretado.
3481
3482 @lilypond[quote,verbatim,ragged-right]
3483 \score {
3484   <<
3485     \new RhythmicStaff {
3486       c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
3487     }
3488   >>
3489   \layout {
3490     \context {
3491       \Score
3492       proportionalNotationDuration = #(ly:make-moment 1/8)
3493     }
3494   }
3495 }
3496
3497 \score {
3498   <<
3499     \new RhythmicStaff {
3500       c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
3501     }
3502   >>
3503   \layout {
3504     \context {
3505       \Score
3506       proportionalNotationDuration = #(ly:make-moment 1/16)
3507     }
3508   }
3509 }
3510
3511 \score {
3512   <<
3513     \new RhythmicStaff {
3514       c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
3515     }
3516   >>
3517   \layout {
3518     \context {
3519       \Score
3520       proportionalNotationDuration = #(ly:make-moment 1/32)
3521     }
3522   }
3523 }
3524 @end lilypond
3525
3526 Observe que una duración de referencia demasiado grande (como la
3527 corchea, en el ejemplo de arriba) produce un espaciado
3528 excesivamente apretado y puede ser causa de colisiones entre las
3529 cabezas de nota.  Observe también que la notación proporcional en
3530 general ocupa más espacio horizontal que el espaciado clásico.  El
3531 espaciado proporcional aporta claridad rítmica a expensas del
3532 espacio horizontal.
3533
3534 Ahora veremos cómo espaciar de forma óptima grupos de valoración
3535 especial que se superponen.
3536
3537 Empezamos por examinar qué le ocurre a nuestro ejemplo original,
3538 con espaciado clásico, cuando añadimos un segundo pentagrama con
3539 un tipo diferente de grupo especial.
3540
3541 @lilypond[quote,verbatim,ragged-right]
3542 \score {
3543   <<
3544     \new RhythmicStaff {
3545       c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
3546     }
3547     \new RhythmicStaff {
3548       \tuplet 9/8 { c8 8 8 8 8 8 8 8 8 }
3549     }
3550   >>
3551 }
3552 @end lilypond
3553
3554 El espaciado es defectuoso porque las notas regularmente
3555 espaciadas del pentagrama inferior no se amplían de manera
3556 uniforme.  Los grabados clásicos incluyen muy pocos tresillos
3557 complejos y así las reglas del grabado clásico pueden generar este
3558 tipo de resultado.  El establecimiento de
3559 @code{proportionalNotationDuration} lo soluciona.
3560
3561 @lilypond[quote,verbatim,ragged-right]
3562 \score {
3563   <<
3564     \new RhythmicStaff {
3565       c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
3566     }
3567     \new RhythmicStaff {
3568       \tuplet 9/8 { c8 8 8 8 8 8 8 8 8 }
3569     }
3570   >>
3571   \layout {
3572     \context {
3573       \Score
3574       proportionalNotationDuration = #(ly:make-moment 1/20)
3575     }
3576   }
3577 }
3578 @end lilypond
3579
3580 Pero si observamos con mucho cuidado podremos ver que las notas de
3581 la segunda mitad del 9-illo están espaciadas de forma ligeramente
3582 más ancha que las de la primera mitad del 9-illo.  Para asegurar
3583 una ampliación uniforme, activamos @code{uniform-stretching}, que
3584 es una propiedad de @code{SpacingSpanner}.
3585
3586 @lilypond[quote,verbatim,ragged-right]
3587 \score {
3588   <<
3589     \new RhythmicStaff {
3590       c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
3591     }
3592     \new RhythmicStaff {
3593       \tuplet 9/8 { c8 8 8 8 8 8 8 8 8 }
3594     }
3595   >>
3596   \layout {
3597     \context {
3598       \Score
3599       proportionalNotationDuration = #(ly:make-moment 1/20)
3600       \override SpacingSpanner.uniform-stretching = ##t
3601     }
3602   }
3603 }
3604 @end lilypond
3605
3606 Nuestro ejemplo de dos pentagramas ahora está espaciado
3607 exactamente, nuestras relaciones rítmicas son visualmente claras,
3608 y podemos incluir una línea de tiempo graduada o un gráfico, si
3609 queremos.
3610
3611 Observe que el paquete de notación proporcional de LilyPond espera
3612 que todas las partituras proporcionales establezcan el atributo
3613 @code{uniform-stretching} de @code{SpacingSpanner} al valor ##t.
3614 El establecimiento de @code{proportionalNotationDuration} sin
3615 ajustar también el atributo @code{uniform-stretching} de
3616 @code{SpacingSpanner} al valor ##t causará, por ejemplo, que los
3617 desplazamientos (@code{skips}) consuman una cantidad de espacio
3618 horizontal incorrecta.
3619
3620 El @code{SpacingSpanner} es un grob abstracto que reside en el
3621 contexto de @code{Score}. Como con nuestros ajustes de
3622 @code{proportionalNotationDuration}, las sobreescrituras al
3623 @code{SpacingSpanner} sólo pueden ocurrir en uno de estos tres
3624 lugares dentro del archivo de entrada: en el bloque @code{\with},
3625 en el bloque @code{\context} o directamente dentro de la escritura
3626 de notas.
3627
3628 De manera predeterminada, sólo hay un @code{SpacingSpanner} por
3629 @code{Score}.  Esto supone que, por omisión,
3630 @code{uniform-stretching} está activado para la partitura completa
3631 o desactivado para la partitura completa.  Sin embargo, podemos
3632 sobreescribir este comportamiento y activar distintas
3633 posibilidades de espaciado en distintos lugares de la partitura.
3634 Lo hacemos con la instrucción @code{\newSpacingSection}.  Consulte
3635 @ref{Sección de espaciado nueva} para más información.
3636
3637 A continuación examinamos los efectos del grabador
3638 @code{Separating_line_group_engraver} y veremos por qué las
3639 partituras proporcionales con frecuencia eliminan este grabador.
3640 El ejemplo siguiente muestra que hay una pequeña cantidad de
3641 espacio @qq{preliminar} justo antes de la primera nota de cada
3642 sistema.
3643
3644 @lilypond[quote,verbatim,ragged-right]
3645 \paper {
3646   indent = #0
3647 }
3648
3649 \new Staff {
3650   c'1
3651   \break
3652   c'1
3653 }
3654 @end lilypond
3655
3656 Esta cantidad de espacio preliminar es la misma ya sea después de
3657 una indicación de compás, una armadura o una clave.  El grabador
3658 @code{Separating_line_group_engraver} es responsable de este
3659 espacio.  La eliminación de @code{Separating_line_group_engraver}
3660 reduce este espacio a cero.
3661
3662 @lilypond[quote,verbatim,ragged-right]
3663 \paper {
3664   indent = #0
3665 }
3666
3667 \new Staff \with {
3668   \remove "Separating_line_group_engraver"
3669 } {
3670   c'1
3671   \break
3672   c'1
3673 }
3674 @end lilypond
3675
3676 Los elementos no musicales como la indicación de compás, la
3677 armadura, la clave y las alteraciones son problemáticos en
3678 notación proporcional.  Ninguno de estos elementos tiene duración
3679 rítmica.  Pero todos ellos consumen espacio horizontal.  Las
3680 distintas partituras proporcionales abordan este problema de
3681 distinta manera.
3682
3683 Sería posible evitar los problemas de espaciado con las armaduras,
3684 simplemente evitando tenerlas.  Esta es una opción válida pues
3685 casi todas las partituras proporcionales son música contemporánea.
3686 Lo mismo puede valer para las indicaciones de compás,
3687 especialmente para las partituras que incluyen una línea de tiempo
3688 graduada u otro gráfico.  Pero estas partituras son excepcionales
3689 y casi todas las partituras proporcionales incluyen al menos unas
3690 pocas indicaciones de compás.  Las claves y las alteraciones son
3691 aún más esenciales.
3692
3693 Así pues ¿qué estrategias existen para el espaciado de los
3694 elementos no musicales en un contexto proporcional?  Una buena
3695 opción es la propiedad @code{strict-note-spacing} de
3696 @code{SpacingSpanner}.  Compare las dos partituras siguientes:
3697
3698 @lilypond[quote,verbatim,ragged-right]
3699 \new Staff {
3700   \set Score.proportionalNotationDuration = #(ly:make-moment 1/16)
3701   c''8 8 8 \clef alto d'2 2
3702 }
3703
3704 \new Staff {
3705   \set Score.proportionalNotationDuration = #(ly:make-moment 1/16)
3706   \override Score.SpacingSpanner.strict-note-spacing = ##t
3707   c''8 8 8 \clef alto d'2 2
3708 }
3709 @end lilypond
3710
3711 Las dos partituras son proporcionales, pero el espaciado de la
3712 primera es muy suelto a causa del cambio de clave. Sin embargo, el
3713 espaciado de la segunda partitura se mantiene estricto, porque
3714 @code{strict-note-spacing} está activado.  La activación de
3715 @code{strict-note-spacing} hace que el ancho de las indicaciones
3716 de compás, armaduras, cambios de clave y alteraciones no tomen
3717 parte en el algoritmo de espaciado.
3718
3719 Además de los ajustes dados aquí, hay otros que aparecen con
3720 frecuencia en las partituras proporcionales.  Entre ellos están:
3721
3722 @itemize
3723 @item @code{\override SpacingSpanner.strict-grace-spacing = ##t}
3724 @item @code{\set tupletFullLength = ##t}
3725 @item @code{\override Beam.breakable = ##t}
3726 @item @code{\override Glissando.breakable = ##t}
3727 @item @code{\override TextSpanner.breakable = ##t}
3728 @item @code{\remove "Forbid_line_break_engraver" in the Voice context}
3729 @end itemize
3730
3731 Estos ajustes dan a las notas de adorno un espaciado estricto,
3732 extienden los corchetes de grupo especial para que marquen tanto
3733 los puntos de comienzo como de final, y permiten que los elementos
3734 de extensión se dividan entre los sistemas y las páginas.
3735 Consulte las partes respectivas del manual para ver estos ajustes
3736 relacionados.
3737
3738 @seealso
3739 Referencia de la notación:
3740 @ref{Sección de espaciado nueva}.
3741
3742 Fragmentos de código:
3743 @rlsr{Spacing}.
3744
3745
3746 @node Encajar la música en menos páginas
3747 @section Encajar la música en menos páginas
3748 @translationof Fitting music onto fewer pages
3749
3750 En ocasiones, podemos terminar con uno o dos pentagramas en una
3751 segunda página (o tercera, o cuarta@dots{}).  Es fastidioso,
3752 especialmente cuando vemos que las páginas anteriores parecen
3753 tener espacio de sobra.
3754
3755 Al investigar los problemas de disposición, una herramienta de
3756 valor incalculable es @code{annotate-spacing}.  Esta instrucción
3757 imprime los valores de un cierto número de variables de espaciado;
3758 para ver más detalles consulte la sección siguiente,
3759 @ref{Mostrar el espaciado}.
3760
3761 @menu
3762 * Mostrar el espaciado::
3763 * Cambiar el espaciado::
3764 @end menu
3765
3766
3767 @node Mostrar el espaciado
3768 @subsection Mostrar el espaciado
3769 @translationof Displaying spacing
3770
3771 @cindex espaciado, presentación del
3772 @funindex annotate-spacing
3773
3774 Para presentar gráficamente las dimensiones de las variables de
3775 disposición vertical que pueden verse alteradas por el formato de
3776 la página, establezca @code{annotate-spacing} en el bloque
3777 @code{\paper}:
3778
3779 @lilypond[verbatim,quote,papersize=a6landscape]
3780 \book {
3781   \score { { c4 } }
3782   \paper { annotate-spacing = ##t }
3783 }
3784 @end lilypond
3785
3786 @noindent
3787 Todas las dimensiones de disposición se muestran en espacios de
3788 pentagrama, independientemente de las unidades especificadas en
3789 los bloques @code{\paper} o @code{\layout}. En el ejemplo
3790 anterior, @code{paper-height} tiene un valor de 59.75
3791 @code{staff-spaces} (espacios de pentagrama), y el
3792 @code{staff-size} (tamaño del pentagrama) es de 20 puntos, el
3793 valor predeterminado. Observe que:
3794
3795 @multitable {1 staff-space} {staff-size)/4 * (25.4/72.27) mm}
3796
3797 @item 1 punto
3798 @tab = (25.4/72.27) mm
3799
3800 @item 1 staff-space
3801 @tab = (@code{staff-size})/4 pts
3802 @item
3803 @tab = (@code{staff-size})/4 * (25.4/72.27) mm
3804
3805 @end multitable
3806
3807 @noindent
3808 En este caso, un @code{staff-space} equivale aproximadamente a
3809 1.757mm.  Así, la medida @code{paper-height} de 59.75
3810 @code{staff-spaces} equivale a 105 milímetros, la altura de una
3811 hoja @code{a6} en orientación apaisada.  Las parejas
3812 (@var{a},@var{b}) son intervalos, donde @var{a} es el límite
3813 inferior y @var{b} es el límite superior del intervalo.
3814
3815 @seealso
3816 Referencia de la notación:
3817 @ref{Establecer el tamaño del pentagrama}.
3818
3819 Fragmentos de código:
3820 @rlsr{Spacing}.
3821
3822
3823 @node Cambiar el espaciado
3824 @subsection Cambiar el espaciado
3825 @translationof Changing spacing
3826
3827 La salida de @code{annotate-spacing} revela las dimensiones
3828 verticales con gran detalle.  Para ver más detalles acerca de la
3829 modificación de los márgenes y otras variables de diseño de la
3830 página, consulte @ref{Disposición de la página}.
3831
3832 Aparte de los márgenes, hay algunas otras opciones para ahorrar
3833 espacio:
3834
3835 @itemize
3836 @item
3837 Forzar los sistemas para que se junten lo más posible entre sí (de
3838 forma que quepan la mayor cantidad de ellos en la página) y al
3839 mismo tiempo estén espaciados de forma que no exista un espacio
3840 vacío en la parte baja del papel.
3841
3842 @example
3843 \paper @{
3844   system-system-spacing = #'((basic-distance . 0.1) (padding . 0))
3845   ragged-last-bottom = ##f
3846   ragged-bottom = ##f
3847 @}
3848 @end example
3849
3850 @item
3851 Forzar el número de sistemas.  Puede ser de utilidad de dos
3852 formas.  Si tan sólo se establece un valor, incluso el mismo valor
3853 que el número de sistemas que se están trazando de forma
3854 predeterminada, ello ocasionará a veces que se traten de
3855 introducir más sistemas en cada página, pues en este caso se omite
3856 un paso en que se produce una estimación, dando así un encaje
3857 mejor en cada página.  Asimismo, el forzar una reducción neta en
3858 el número de sistemas puede producir el ahorro de una página
3859 adicional.  Por ejemplo, si la disposición predeterminada tiene 11
3860 sistemas, la asignación siguiente fuerza una disposición con 10
3861 sistemas.
3862
3863 @example
3864 \paper @{
3865   system-count = #10
3866 @}
3867 @end example
3868
3869 @item
3870 Forzar el número de páginas.  Por ejemplo, la asignación siguiente
3871 fuerza una disposición con dos páginas.
3872
3873 @example
3874 \paper @{
3875   page-count = #2
3876 @}
3877 @end example
3878
3879 @item
3880 Evitar (o reducir en número) los objetos que aumentan el tamaño
3881 vertical de un sistema.  Por ejemplo, los corchetes de las
3882 repeticiones de primera y segunda vez (o repeticiones con finales
3883 alternativos) necesitan espacio adicional.  Si estas casillas se
3884 reparten a lo largo de dos sistemas, ocupan más espacio que si
3885 estuvieran sobre el mismo sistema.  Como otro ejemplo, las
3886 indicaciones dinámicas que se @q{salen} de un sistema se pueden
3887 acercar al pentagrama:
3888
3889 @lilypond[verbatim,quote]
3890 \relative e' {
3891   e4 c g\f c
3892   e4 c g-\tweak X-offset #-2.7 \f c
3893 }
3894 @end lilypond
3895
3896 @item
3897 Alterar el espaciado horizontal por medio de
3898 @code{SpacingSpanner}.  Para ver más detalles, consulte
3899 @ref{Cambiar el espaciado horizontal}.  El ejemplo siguiente
3900 ilustra el espaciado predeterminado:
3901
3902 @lilypond[verbatim,quote]
3903 \score {
3904   \relative {
3905     g'4 e e2 |
3906     f4 d d2 |
3907     c4 d e f |
3908     g4 g g2 |
3909     g4 e e2 |
3910   }
3911 }
3912 @end lilypond
3913
3914 @noindent
3915 El ejemplo siguiente modifica @code{common-shortest-duration} de
3916 un valor de @code{1/4} (negra) a @code{1/2} (blanca).  La negra es
3917 la nota más común y la más breve del ejemplo, por lo que al
3918 agrandar esta duración se produce un efecto de @q{apretujamiento}:
3919
3920 @lilypond[verbatim,quote]
3921 \score {
3922   \relative {
3923     g'4 e e2 |
3924     f4 d d2 |
3925     c4 d e f |
3926     g4 g g2 |
3927     g4 e e2 |
3928   }
3929   \layout {
3930     \context {
3931       \Score
3932       \override SpacingSpanner.common-shortest-duration =
3933         #(ly:make-moment 1/2)
3934     }
3935   }
3936 }
3937 @end lilypond
3938
3939 @noindent
3940 La propiedad @code{common-shortest-duration} no se puede modificar
3941 de manera dinámica, por lo que se debe situar siempre dentro de un
3942 bloque @code{\context} de forma que se aplique a la partitura
3943 completa.
3944
3945 @end itemize
3946
3947 @seealso
3948 Referencia de la notación:
3949 @ref{Disposición de la página},
3950 @ref{Cambiar el espaciado horizontal}.
3951
3952 Fragmentos de código:
3953 @rlsr{Spacing}.