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