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