1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
4 Translation of GIT committish: e965ee6c9b3b42a76fd6fce1f9c6b93b3ee79aae
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..
15 This block comment is copied here to ease comparation of
16 original and its translation.
18 Negative numbers are allowed:
19 > Are you sure? The following works well
21 > first-page-number = -2
23 > and prints page number -1 on the second page, for example.
26 In 5.2.1 the @refbugs (line 495 in spacing.itely on master) it
29 "@code{layout-set-staff-size} does not change the distance between
33 Could we add a sentence:
34 "Use instead the pair fontSize = #@var{N}
35 \override StaffSymbol.staff-space = #(magstep
37 inside the Staff context to change the size of the font and the
39 staff lines accordingly."
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?
51 http://code.google.com/p/lilypond/issues/detail?id=68
56 @node Problemas de espaciado
57 @chapter Problemas de espaciado
58 @translationof Spacing issues
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.
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.
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 o parte de libro,
82 altura de la hoja o si se imprimen los números de página, etc. Véase
83 @ref{Disposición de la página}. El bloque @code{\layout} contiene
84 ajustes de disposición de la partitura, como el número de sistemas que
85 utilizar, o la separación entre grupos de pentagramas, etc. Véase
86 @ref{Disposición de la partitura}.
89 * Disposición de la página::
90 * Disposición de la partitura::
92 * Espaciado vertical::
93 * Espaciado horizontal::
94 * Encajar la música en menos páginas::
98 @node Disposición de la página
99 @section Disposición de la página
100 @translationof Page layout
102 Esta sección estudia las opciones de disposición de la página para el
103 bloque @code{\paper}.
107 * Tamaño del papel y escalado automático::
108 * Variables de espaciado de paper verticales fijas::
109 * Variables de espaciado de paper verticales flexibles::
110 * Variables de espaciado de paper horizontales::
111 * Otras variables de paper::
115 @node El bloque paper
116 @subsection El bloque @code{@bs{}paper}
117 @translationof The paper block
119 Los bloques @code{\paper} pueden aparecer en tres lugares
120 diferentes para formar una jerarquía descendente de bloques
126 Al principio del archivo de entrada, antes de cualquier bloque
127 @code{\book}, @code{\bookpart}, o @code{\score}.
130 Dentro de un bloque @code{\book} pero fuera de cualquier bloque
131 @code{\bookpart} o @code{\score} que estén dentro de ese libro.
134 Dentro de un bloque @code{\bookpart} pero fuera de cualquier
135 bloque @code{\score} que esté dentro de esa parte de libro.
139 No se puede poner un bloque @code{\paper} dentro de un bloque
142 Los valores de los campos filtran esta jerarquía, persistiendo los
143 valores establecidos más arriba en la jerarquía a no ser que se
144 sobreescriban por algún valor establecido más abajo en la
147 Pueden aparecer varios bloques @code{\paper} en cada uno de los
148 niveles, por ejemplo como parte de distintos archivos incluidos
149 con @code{\include}. Si es el caso, los campos en cada nivel se
150 combinan, tomando precedencia los campos que aparecen más tarde si
151 se producen campos duplicados.
153 Entre los ajustes que pueden aparecer dentro de un bloque
154 @code{\paper} están los siguientes:
159 la función de Scheme @code{set-paper-size},
162 variables de @code{\paper} utilizadas para personalizar la disposición
166 definiciones de marcado utilizadas para personalizar la disposición de
167 los encabezamientos, pies y títulos.
171 La función @code{set-paper-size} se estudia en la sección siguiente,
172 @ref{Tamaño del papel y escalado automático}. Las variables de
173 @code{\paper} que se ocupan de la disposición de la página
174 se estudian en secciones posteriores. Las definiciones de elementos
175 de marcado que se encargan de los encabezamientos, pies y títulos se
176 estudian en @ref{Títulos encabezamientos y pies de página personalizados}.
178 Casi todas las variables de @code{\paper} funcionan solamente dentro
179 de un bloque @code{\paper}. Las pocas que funcionan también en un
180 bloque @code{\layout} están relacionadas en
181 @ref{El bloque layout,,El bloque @code{@bs{}layout}}.
183 Excepto cuando se especifica lo contrario, todas las variables de
184 @code{\paper} que corresponden a distancias sobre la página se miden
185 en milímetros, a no ser que el usuario especifique unas unidades
186 diferentes. Por ejemplo, la declaración siguiente
187 establece el margen superior @code{top-margin} a diez milímetros:
195 Para fijarlo en @code{0.5} pulgadas, utilice el sufijo de unidades
204 Los sufijos de unidades que están disponibles son @code{\mm},
205 @code{\cm}, @code{\in} y @code{\pt}. Estas unidades son valores
206 simples para convertir a partir de milímetros; están definidos en
207 @file{ly/paper-defaults-init.ly}. Por claridad, al usar milímetros,
208 se suele escribir el sufijo @code{\mm} aunque no es necesario
211 También es posible definir valores de @code{\paper} utilizando Scheme.
212 El equivalente de Scheme del ejemplo anterior es:
216 #(define top-margin (* 0.5 in))
221 Referencia de la notación:
222 @ref{Tamaño del papel y escalado automático},
223 @ref{Títulos encabezamientos y pies de página personalizados},
224 @ref{El bloque layout,,El bloque @code{@bs{}layout}}.
227 @file{ly/paper-defaults-init.ly}.
230 @node Tamaño del papel y escalado automático
231 @subsection Tamaño del papel y escalado automático
232 @translationof Paper size and automatic scaling
234 @cindex tamaño del papel
235 @cindex tamaño de la página
240 * Fijar el tamaño del papel::
241 * Escalado automático al tamaño del papel::
245 @node Fijar el tamaño del papel
246 @unnumberedsubsubsec Fijar el tamaño del papel
247 @translationof Setting paper size
249 @q{A4} es el valor predeterminado si no se establece ningún tamaño de
250 página explícitamente. Sin embargo, existen dos funciones que se
251 pueden usar para modificarlo:
254 @item set-default-paper-size
257 #(set-default-paper-size "quarto")
260 que siempre se debe colocar en el ámbito superior, y
266 #(set-paper-size "tabloid")
270 que se debe colocar siempre dentro de un bloque @code{\paper}.
273 Si se usa la función @code{set-default-paper-size} en el ámbito
274 superior jerárquico, debe ir antes de cualquier bloque @code{\paper}.
275 @code{set-default-paper-size} establece el tamaño de todas las
276 páginas, mientras que @code{set-paper-size} establece sólo el tamaño
277 de las páginas a las que se aplica el bloque @code{\paper}. Por
278 ejemplo, si el bloque @code{\paper} está al principio del archivo,
279 aplica el tamaño de papel a todas las páginas. Si el bloque
280 @code{\paper} está dentro de un bloque @code{\book}, entonces el
281 tamaño del papel sólo se aplica a ese libro.
283 Cuando se usa la función @code{set-paper-size}, se debe colocar
284 @emph{antes} de cualquier otra función que se utilice dentro del mismo
285 bloque @code{\paper}. Véase @ref{Escalado automático al tamaño del
288 Los tamaños de página están definidos en el archivo
289 @file{scm/paper.scm}, y aunque es posible añadir tamaños
290 personalizados, se sobreescribirán en las actualizaciones del software
291 posteriores. La lista de todos los tamaños de papel disponibles
292 está en @ref{Tamaños de página predefinidos}.
294 @c An appendix entry exists for paper sizes but is not auto-generated
296 Se puede usar la siguiente instrucción en el archivo para añadir un
297 tamaño de página personalizado que se puede usar después con
298 @code{set-default-paper-size} o con @code{set-paper-size} según
302 #(set! paper-alist (cons '("mi tamaño" . (cons (* 15 in) (* 3 in))) paper-alist))
305 #(set-paper-size "mi tamaño")
309 Se puede usar cualquiera de las unidades @code{in} (pulgadas),
310 @code{cm} (centímetros) o @code{mm} (milímetros).
312 @cindex papel, tamaño, orientación
313 @cindex página, orientación de la
314 @cindex papel, tamaño, apaisado
316 Si se añade el símbolo @code{'landscape} a la función del tamaño de la
317 página, el papel se gira 90 grados y se establece adecuadamente la
318 anchura de las líneas.
321 #(set-default-paper-size "a6" 'landscape)
324 Se pueden intercambiar las dimensiones del papel @emph{sin que la
325 impresión resulte girada} (como cuando se imprime en tamaño tarjeta
326 postal, o al crear gráficos para su inclusión en lugar de un documento
327 independiente) añadiendo @samp{landscape} después del nombre del
328 propio tamaño del papel:
331 #(set-default-paper-size "a6landscape")
334 Cuando el tamaño del papel termina de forma explícita con
335 @samp{landscape} o con @samp{portrait}, la presencia de un símbolo
336 @code{'landscape} @emph{solamente} afecta a la orientación de la
337 impresión, no a las dimensiones del papel que se usan para la
341 Referencia de la notación:
342 @ref{Escalado automático al tamaño del papel},
343 @ref{Tamaños de página predefinidos}.
346 @file{scm/paper.scm}.
349 @node Escalado automático al tamaño del papel
350 @unnumberedsubsubsec Escalado automático al tamaño del papel
351 @translationof Automatic scaling to paper size
353 Si se cambia el tamaño del papel con una de las funciones de Scheme
354 (@code{set-default-paper-size} o @code{set-paper-size}), los valores
355 de algunas variables de @code{\paper} se escalan automáticamente al
356 nuevo tamaño. Para sortear el escalado automático para una variable
357 determinada, fije el valor de la variable después de establecer el
358 tamaño del papel. Observe que el escalado automático no se activa
359 mediante el ajuste de las variables
360 @code{paper-height} o de @code{paper-width},
361 incluso aunque @code{paper-width} puede influir sobre otros valores
362 (esto es distinto al escalado y se estudia más abajo). Las funciones
363 @code{set-default-paper-size} y @code{set-paper-size} se describen en
364 @ref{Fijar el tamaño del papel}.
366 Las dimensiones verticales afectadas por el escalado automático son
367 @code{top-margin} y @code{bottom-margin}
368 (véase @ref{Variables de espaciado de paper verticales fijas,,Variables de espaciado de @code{@bs{}paper} verticales fijas}).
370 horizontales afectadas por el escalado automático son
371 @code{left-margin}, @code{right-margin}, @code{inner-margin},
372 @code{outer-margin}, @code{binding-offset}, @code{indent} y
373 @code{short-indent} (véase
374 @ref{Variables de espaciado de paper horizontales,,Variables de espaciado de @code{@bs{}paper} horizontales}).
376 Los valores predeterminados para estas dimensiones están fijados en el
377 archivo @file{ly/paper-defaults-init.ly}, usando variables internas
378 llamadas @code{top-margin-default}, @code{bottom-margin-default}, etc.
379 Estos son los valores que resultan del tamaño predeterminado del papel
380 @code{a4}. Como referencia, con el papel @code{a4} la altura
381 @code{paper-height} es @code{297\mm} y la anchura @code{paper-width}
385 Referencia de la notación:
386 @ref{Variables de espaciado de paper verticales fijas,,Variables de espaciado de @code{@bs{}paper} verticales fijas},
387 @ref{Variables de espaciado de paper horizontales,,Variables de espaciado de @code{@bs{}paper} horizontales}.
390 @file{ly/paper-defaults-init.ly},
391 @file{scm/paper.scm}.
394 @node Variables de espaciado de paper verticales fijas
395 @subsection Variables de espaciado de @code{@bs{}paper} verticales fijas
396 @translationof Fixed vertical spacing paper variables
398 @warning{Algunas dimensiones de @code{@bs{}paper} se escalan
399 automáticamente al tamaño del papel, lo que puede llevar a un
400 comportamiento no esperado. Véase @ref{Escalado automático al tamaño
403 Los valores predeterminados (previos al escalado) están definidos en
404 el archivo @file{ly/paper-defaults-init.ly}.
407 @item paper-height (altura del papel)
408 @funindex paper-height
410 Altura de la página, no fijada de forma predeterminada. Observe que
411 el escalado automático de algunas dimensiones verticales no resulta
414 @item top-margin (margen superior)
417 Margen entre el extremo superior de la página y la parte superior de
418 la zona imprimible. Si se modifica el tamaño del papel, el valor
419 predeterminado de esta dimensión se escala de acuerdo con ello.
421 @item bottom-margin (margen inferior)
422 @funindex bottom-margin
424 Margen entre la parte inferior de la zona imprimible y el extremo
425 inferior de la página. Si se modifica el tamaño del papel, se escala
426 de acuerdo con ello el valor predeterminado de esta dimensión.
428 @item ragged-bottom (sin justificar por abajo)
429 @funindex ragged-bottom
431 Si se fija al valor verdadero, los sistemas no se reparten
432 verticalmente hasta abajo de la página. Esto no afecta a la última
433 página. Se debe fijar a verdadero para piezas que sólo tienen dos o
434 tres sistemas por página, como por ejemplo las partituras orquestales.
436 @item ragged-last-bottom (sin justificar la última por abajo)
437 @funindex ragged-last-bottom
439 Si se establece al valor falso, los sistemas se reparten verticalmente
440 hasta abajo de la última página. Las piezas que llenan sobradamente
441 dos o más páginas deben tener este valor fijado a falso. También
442 afecta a la última página de las partes de libro, es decir, partes de
443 un libro creadas con bloques @code{\bookpart}.
448 Referencia de la notación:
449 @ref{Escalado automático al tamaño del papel}.
452 @file{ly/paper-defaults-init.ly}.
454 Fragmentos de código:
458 Los títulos (extraídos del bloque @code{\header}) se tratan como
459 sistemas, así pues @code{ragged-bottom} y @code{ragged-last-bottom}
460 aumentan la separación entre los títulos y el primer sistema de la
463 Los tamaños de papel definidos explícitamente
464 sobreescriben cualquier ajuste de los márgenes
465 superior o inferior definidos por el usuario.
468 @node Variables de espaciado de paper verticales flexibles
469 @subsection Variables de espaciado de @code{@bs{}paper} verticales flexibles
470 @translationof Flexible vertical spacing paper variables
472 En casi todos los casos es preferible que las distancias verticales
473 entre ciertos elementos (como márgenes, títulos, sistemas y las
474 distintas partituras) sean flexibles, de manera que se amplíen y
475 compriman adecuadamente dependiendo de la situación. Están
476 disponibles un cierto número de variables del bloque @code{\paper}
477 (relacionadas más abajo) para realizar un ajuste fino del
478 comportamiento de estas dimensiones frente a su ampliación o
481 Observe que las variables de @code{\paper} que se estudian en esta
482 sección no controlan el espaciado de los pentagramas que están dentro
483 de los sistemas individuales. El espaciado dentro de los sistemas se
484 controla por medio de propiedades de grob, con ajustes que se escriben
485 normalmente dentro de un bloque @code{\score} o @code{\layout}, y no
486 dentro del bloque @code{\paper}.
487 Véase @ref{Espaciado vertical flexible dentro de los sistemas}.
490 * Estructura de las listas-A de espaciado vertical flexible::
491 * Lista de variables de espaciado de paper verticales flexibles::
495 @node Estructura de las listas-A de espaciado vertical flexible
496 @unnumberedsubsubsec Estructura de las listas-A de espaciado vertical flexible
497 @translationof Structure of flexible vertical spacing alists
499 Cada una de las variables de espaciado de @code{\paper} flexibles es
500 una lista-A (lista asociativa) que contiene cuatro @emph{claves}:
505 @code{basic-distance} (distancia básica):
506 distancia vertical, medida en espacios de pentagrama, entre los
507 @emph{puntos de referencia} de los dos elementos, cuando no resulte
508 ninguna colisión, y no se produzca ninguna ampliación o compresión.
509 El punto de referencia de un elemento de marcado (de título o del
510 nivel jerárquico superior) es su punto más alto, y el punto de
511 referencia de un sistema es el centro vertical del @code{StaffSymbol}
512 más cercano (incluso si se trata de una línea que no es un pentagrama,
513 como un contexto @code{Lyrics}). Los valores de @code{distancia básica} menores
514 de @code{padding} o de @code{minimum-distance} no son significativos,
515 porque la distancia resultante nunca será menor de @code{padding} o de
516 @code{minimum-distance}.
519 @code{minimum-distance} (distancia mínima):
520 la distancia vertical mínima permitida, medida en espacios de
521 pentagrama, entre los puntos de referencia de los dos elementos,
522 cuando se produce una compresión. Los valores de
523 @code{minimum-distance} menores de @code{padding} no son
524 significativos, porque la distancia resultante nunca será menor de
527 @c TODO: explain skylines somewhere and xref to it from here.
530 @code{padding} (relleno):
531 mínimo espacio vertical vacío necesario entre los rectángulos
532 circundantes (o las líneas de horizonte) de los dos elementos,
533 medido en espacios de pentagrama.
536 @code{stretchability} (ampliabilidad):
537 medida sin unidades de la propensión relativa de esta dimensión a
538 ampliarse. Si es cero, la distancia no se ampliará (a no ser que
539 resultasen colisiones). Si es positiva, la significación del valor de
540 ampliabilidad de una dimensión concreta depende solamente de su
541 relación con los valores de @code{stretchability} de las otras
542 dimensiones. Por ejemplo, si una dimensión tiene el doble de
543 @code{stretchability} que otra, se ampliará con el doble de facilidad.
544 Los valores deben ser no negativos y finitos. El valor @code{+inf.0}
545 desencadena un error de programación y se ignora, pero se puede usar
546 @code{1.0e7} para un muelle casi infinitamente ampliable. Si no se
547 fija un valor, el valor predeterminado se establece a @code{basic-distance}.
548 Observe que la propensión de la dimensión a @emph{comprimirse} no se
549 puede establecer directamente por el usuario y es igual a
550 (@code{basic-distance}@tie{}@minus{}@tie{}@code{minimum-distance}).
554 Si una página tiene un margen inferior no justificado, la distancia
555 resultante es la mayor de:
560 @code{basic-distance},
563 @code{minimum-distance}, y
566 @code{padding} más la menor distancia necesaria
567 para eliminar las colisiones.
571 Para partituras de varias páginas con la parte inferior
572 no justificada en la última página, ésta usará el mismo
573 espaciado que la página anterior
574 siempre y cuando haya espacio suficiente para ello.
576 Los métodos específicos para la modificación de las listas-A se
577 estudian en @ref{Modificación de las listas-A}. El siguiente ejemplo
578 muestra las dos formas en que pueden modificarse estas listas-A. La
579 primera declaración actualiza un par clave-valor individualmente, y la
580 segunda redefine la variable completamente:
584 system-system-spacing.basic-distance = #8
585 score-system-spacing =
586 #'((basic-distance . 12)
587 (minimum-distance . 6)
589 (stretchability . 12))
594 @node Lista de variables de espaciado de paper verticales flexibles
595 @unnumberedsubsubsec Lista de variables de espaciado de @code{@bs{}paper} verticales flexibles
596 @translationof List of flexible vertical spacing paper variables
598 Los nombres de estas variables siguen el formato
599 @code{@var{superior}-@var{inferior}-spacing}, donde
600 @code{@var{superior}} e @code{@var{inferior}} son los elementos que
601 van a ser espaciados. Cada distancia se mide entre los puntos de
602 referencia de los dos elementos (véase más arriba la descripción de la
603 estructura de la lista-A). Observe que en estos nombres de variable,
604 el término @q{@code{markup}} se refiere tanto a @emph{elementos de
605 marcado de título} (@code{bookTitleMarkup} o @code{scoreTitleMarkup})
606 como a @emph{elementos de marcado del nivel superior} (véase
607 @ref{Estructura del archivo}). Todas las distancias se miden en
608 espacios de pentagrama.
610 Los ajustes predeterminados están definidos en el archivo
611 @file{ly/paper-defaults-init.ly}.
613 @c TODO: Where do headers/footers fit in? -mp
616 @item markup-system-spacing
617 @funindex markup-system-spacing
619 distancia entre un elemento de marcado (de título o del nivel
620 superior) y el sistema que le sigue.
622 @item score-markup-spacing
623 @funindex score-markup-spacing
625 distancia entre el último sistema de una partitura y el elemento de
626 marcado (de título o del nivel superior) que le sigue.
628 @item score-system-spacing
629 @funindex score-system-spacing
631 distancia entre el último sistema de una partitura y el primer sistema
632 de la partitura que le sigue, cuando no existe ningún elemento de
633 marcado (de título o del nivel superior) entre ellos.
635 @item system-system-spacing
636 @funindex system-system-spacing
638 distancia entre dos sistemas dentro de la misma partitura.
640 @item markup-markup-spacing
641 @funindex markup-markup-spacing
643 distancia entre dos elementos de marcado (de título o del nivel
646 @item last-bottom-spacing
647 @funindex last-bottom-spacing
649 distancia desde el último sistema o elemento de marcado del nivel
650 superior en una página, hasta la parte inferior de la zona imprimible
651 (es decir, el extremo superior del margen inferior).
653 @item top-system-spacing
654 @funindex top-system-spacing
656 distancia desde la parte superior de la zona imprimible (es decir, el
657 extremo inferior del margen superior) hasta el primer sistema de una
658 página, cuando no hay ningún elemento de marcado (de título o del
659 nivel superior) entre los dos.
661 @item top-markup-spacing
662 @funindex top-markup-spacing
664 distancia desde el extremo superior de la zona imprimible (es decir,
665 el extremo inferior del margen superior) hasta el primer elemento de
666 marcado (de título o del nivel superior) sobre una página, cuando no
667 hay ningún sistema entre los dos.
671 Referencia de la notación:
672 @ref{Espaciado vertical flexible dentro de los sistemas}.
675 @file{ly/paper-defaults-init.ly}.
677 Fragmentos de código:
681 @node Variables de espaciado de paper horizontales
682 @subsection Variables de espaciado de @code{@bs{}paper} horizontales
683 @translationof Horizontal spacing paper variables
685 @warning{Algunas dimensiones de @code{@bs{}paper} se escalan
686 automáticamente al tamaño del papel, lo que puede dar lugar a un
687 comportamiento distinto al esperado. Véase
688 @ref{Escalado automático al tamaño del papel}.}
691 * Variables de paper para la anchura y los márgenes::
692 * Variables de paper para el modo de doble cara::
693 * Variables de paper para desplazamientos y sangrados::
697 @node Variables de paper para la anchura y los márgenes
698 @unnumberedsubsubsec Variables de @code{@bs{}paper} para la anchura y los márgenes
699 @translationof paper variables for widths and margins
701 Los valores predeterminados (antes del escalado) que no están
702 relacionados aquí se encuentran definidos en el archivo
703 @file{ly/paper-defaults-init.ly}.
708 @funindex paper-width
710 Anchura de la página, sin fijar de forma predeterminada. Aunque
711 @code{paper-width} no tiene ningún efecto sobre el escalado automático
712 de algunas dimensiones horizontales, sí influye sobre la variable
713 @code{line-width}. Si están establecidas las dos variables
714 @code{paper-width} y @code{line-width}, entonces también se actualizan
715 @code{left-margin} y @code{right-margin}. Véase también
716 @code{check-consistency}.
721 Dimensiones horizontales de las líneas del pentagrama en los sistemas
722 sin sangrado y justificados, igual a
723 @code{(paper-width@tie{}@minus{}@tie{}left-margin@tie{}@minus{}@tie{}right-margin)}
724 cuando está sin fijar. Si @code{line-width} está fijado, y tanto
725 @code{left-margin} como @code{right-margin} están sin fijar, entonces
726 los márgenes se actualizan para centrar los sistemas automáticamente
727 sobre la página. Véase también @code{check-consistency}.
728 Esta variable también se puede fijar dentro de un bloque @code{\layout}.
731 @funindex left-margin
733 Margen entre el extremos izquierdo de la página y el comienzo de las
734 líneas del pentagrama en los sistemas sin sangrado. Si el tamaño del
735 papel se modifica, el valor predeterminado de esta dimensión se escala
736 de acuerdo con ello. Si no se fija el valor de @code{left-margin}, y
737 tanto @code{line-width} como @code{right-margin} están fijados,
738 entonces se establece el valor de @code{left-margin} a
739 @code{(paper-width@tie{}@minus{}@tie{}line-width@tie{}@minus{}@tie{}right-margin)}.
740 Si solamente está fijado @code{line-width}, entonces los dos márgenes
742 @code{((paper-width@tie{}@minus{}@tie{}line-width)@tie{}/@tie{}2)}, y
743 como consecuencia los sistemas se centran sobre la página. Véase
744 también @code{check-consistency}.
747 @funindex right-margin
749 Margen entre el extremo derecho de la página y el final de las líneas
750 del pentagrama en sistemas justificados. Si el tamaño de la página se
751 modifica, el valor predeterminado de esta dimensión se escala de
752 acuerdo con ello. Si @code{right-margin} está sin fijar, y tanto
753 @code{line-width} como @code{left-margin} están fijados, el valor de
754 @code{right-margin} se establece a
755 @code{(paper-width@tie{}@minus{}@tie{}line-width@tie{}@minus{}@tie{}left-margin)}.
756 Si solamente está fijado @code{line-width}, los dos márgenes se
758 @code{((paper-width@tie{}@minus{}@tie{}line-width)@tie{}/@tie{}2)}, y
759 como consecuencia los sistemas aparecen centrados sobre la página.
760 Véase también @code{check-consistency}.
762 @item check-consistency
763 @funindex check-consistency
765 Si se establece al valor verdadero, se imprime una advertencia en caso
766 de que la suma de @code{left-margin}, @code{line-width} y
767 @code{right-margin} no coincida exactamente con el valor de
768 @code{paper-width}, y se sustituye cada uno de estos valores (excepto
769 @code{paper-width}) con su valor predeterminado (escalado al tamaño
770 del papel si es necesario). Si está fijado al valor falso, se ignora
771 cualquier inconsistencia y se permite que los sistemas se salgan del
775 @funindex ragged-right
777 Si está fijado al valor verdadero, los sistemas no cubren el ancho de
778 la línea. En lugar de ello, los sistemas finalizan en su longitud
779 horizontal natural. Valor predeterminado: @code{#t} para las
780 partituras con un solo sistema, y @code{#f} para partituras que tienen
781 dos o más sistemas. Esta variable también se puede establecer dentro
782 de un bloque @code{\layout}.
785 @funindex ragged-last
787 Si está fijado al valor verdadero, el último sistema de la partitura
788 no llena toda la anchura de la línea. En lugar de ello, el último
789 sistema finaliza en su longitud horizontal natural. Valor
790 predeterminado: @code{#f}. Esta variable también puede ajustarse
791 dentro de un bloque @code{\layout}.
796 Referencia de la notación:
797 @ref{Escalado automático al tamaño del papel}.
800 @file{ly/paper-defaults-init.ly}.
803 Los tamaños de papel definidos explícitamente
804 sobreescriben cualquier ajuste de los márgenes
805 izquierdo o derecho definidos por el usuario.
808 @node Variables de paper para el modo de doble cara
809 @unnumberedsubsubsec Variables de @code{@bs{}paper} para el modo de doble cara
810 @translationof paper variables for two-sided mode
812 Los valores predeterminados (antes del escalado) se definen en
813 @file{ly/paper-defaults-init.ly}.
820 @cindex encuadernación
821 @cindex margen de encuadernación
823 Si tiene el valor verdadero, utilizar @code{inner-margin},
824 @code{outer-margin} y @code{binding-offset} para determinar los
825 márgenes dependiendo de si el número de la página es par o impar.
826 Esto sobreescribe a @code{left-margin} y a @code{right-margin}.
829 @funindex inner-margin
831 Margen que todas las páginas tienen en el lado interno si forman parte
832 de un libro. Si el tamaño del papel se modifica, el valor
833 predeterminado de esta dimensión se escala de acuerdo con ello.
834 Solamente funciona con @code{two-sided} fijado al valor verdadero.
837 @funindex outer-margin
839 Margen que todas las páginas tienen en el lado externo si forman parte
840 de un libro. Si el tamaño del papel se modifica, el valor
841 predeterminado de esta dimensión se escala de acuerdo con ello.
842 Solamente funciona con @code{two-sided} fijado al valor verdadero.
845 @funindex binding-offset
847 Medida en que se aumenta @code{inner-margin} para asegurar que no se
848 oculta nada a causa de la encuadernación. Si el tamaño del papel se
849 modifica, el valor predeterminado de esta dimensión se escala de
850 acuerdo con ello. Solamente funciona con @code{two-sided} fijado al
856 Referencia de la notación:
857 @ref{Escalado automático al tamaño del papel}.
860 @file{ly/paper-defaults-init.ly}.
863 @node Variables de paper para desplazamientos y sangrados
864 @unnumberedsubsubsec Variables de @code{@bs{}paper} para desplazamientos y sangrados
865 @translationof paper variables for shifts and indents
867 Los valores predeterminados (antes del escalado) que no se relacionan
868 aquí están definidos en el archivo @file{ly/paper-defaults-init.ly}.
872 @item horizontal-shift
873 @funindex horizontal-shift
875 @c This default value is buried in the middle of page.scm. -mp
877 Medida en que todos los sistemas (incluidos los títulos de cabecera y
878 los separadores de sistemas) se desplazan a la derecha.
879 Predeterminado: @code{0.0}.
884 Nivel de sangrado para el primer sistema de una partitura. Si se
885 modifica el tamaño del papel, el valor predeterminado de esta
886 dimensión se escala de acuerdo con ello. Esta variable también se
887 puede ajustar dentro de un bloque @code{\layout}.
890 @funindex short-indent
892 Nivel de sangrado para todos los sistemas de una partitura excepto el
893 primero. Si el tamaño del papel se modifica, el valor predeterminado
894 de esta dimensión se escala de acuerdo con ello. Esta variable
895 también se puede ajustar dentro de un bloque @code{\layout}.
900 Referencia de la notación:
901 @ref{Escalado automático al tamaño del papel}.
904 @file{ly/paper-defaults-init.ly}.
906 Fragmentos de código:
910 @node Otras variables de paper
911 @subsection Otras variables de @code{@bs{}paper}
912 @translationof Other paper variables
915 * Variables de paper para los saltos de línea::
916 * Variables de paper para los saltos de página::
917 * Variables de paper para la numeración de las páginas::
918 * Variables de paper diversas::
922 @node Variables de paper para los saltos de línea
923 @unnumberedsubsubsec Variables de @code{@bs{}paper} para los saltos de línea
924 @translationof paper variables for line breaking
928 @item max-systems-per-page
929 @funindex max-systems-per-page
931 Número máximo de sistemas que se colocan sobre una página. Solo está
932 contemplado por el algoritmo @code{ly:optimal-breaking}. Valor
933 predeterminado: no fijado.
935 @item min-systems-per-page
936 @funindex min-systems-per-page
938 Número mínimo de sistemas que se colocan sobre una página. Puede
939 causar que las páginas aparezcan atiborradas si el valor es demasiado
940 grande En el momento actual solo está contemplado por el algoritmo
941 @code{ly:optimal-breaking}. Valor predeterminado: no fijado.
943 @item systems-per-page
944 @funindex systems-per-page
946 Número de sistemas que se deben colocar en cada página. En el momento
947 actual solo está contemplado por el algoritmo
948 @code{ly:optimal-breaking}. Valor predeterminado: no fijado.
951 @funindex system-count
953 Número de sistemas que utilizar para una partitura. Valor
954 predeterminado: no fijado. Esta variables también se puede ajustar
955 dentro de un bloque @code{\layout}.
960 Referencia de la notación:
961 @ref{Saltos de línea}.
964 @node Variables de paper para los saltos de página
965 @unnumberedsubsubsec Variables de @code{@bs{}paper} para los saltos de página
966 @translationof paper variables for page breaking
968 Los valores predeterminados que no están relacionados aquí, se definen
969 en el archivo @file{ly/paper-defaults-init.ly}
974 @funindex page-breaking
976 Algoritmo de saltos de página que utilizar. Se puede elegir entre
977 @code{ly:minimal-breaking}, @code{ly:page-turn-breaking},
978 @code{ly:one-line-breaking} y @code{ly:optimal-breaking}
981 @item page-breaking-system-system-spacing
982 @funindex page-breaking-system-system-spacing
984 Engaña a la parte del programa encargada de los saltos de página para
985 que piense que @code{system-system-spacing} está establecido a un
986 valor distinto al que tiene realmente. Por ejemplo, si
987 @code{page-breaking-system-system-spacing #'padding} está establecido
988 a algo que es mucho mayor que @code{system-system-spacing #'padding},
989 entonces el divisor de páginas pone menos sistemas en cada página.
990 Valor predeterminado: sin ajustar.
995 Número de páginas que utilizar en una partitura, no ajustado de forma
1000 Las siguientes variables son efectivas solamente cuando
1001 @code{page-breaking} está sijado a @code{ly:page-turn-breaking}.
1002 Los saltos de página se seleccionan entonces de forma que se
1003 minimice el número de pasos de página. Dado que los pasos de
1004 página son necesarios cuando se pasa de una página impar a una
1005 página par, normalmente resultará favorecida aquella disposición
1006 en que la última página sea impar. Los lugares en que se
1007 prefieran pasos de página pueden indicarse manualmente insertando
1008 @code{\allowPageTurn} o automáticamente incluyendo el grabador
1009 @code{Page_turn_engraver} (véase @ref{Paso de página óptimo}).
1011 Si no hay un número suficiente de posibilidades para escoger a la
1012 hora de insertar unos pasos de página adecuados, LilyPond puede
1013 insertar una página vacía dentro de una partitura, entre
1014 partituras (si hay dos o más partituras) o finalizando una
1015 partitura en una página de numeración par. Los valores de las
1016 tres siguientes variables pueden incrementarse para que estas
1017 acciones se vuelvan menos probables.
1019 Los valores son penalizaciones, es decir, cuando más alto es el
1020 valor menos probables será la acción asociada relativa a otras
1025 @item blank-page-penalty (penalización por página vacía)
1026 @funindex blank-page-penalty
1028 Penalización por tener una página vcía en mitad de una partitura.
1029 Si @code{blank-page-penalty} es grande y está seleccionado
1030 @code{ly:page-turn-breaking}, entonces será menos probable que
1031 LilyPond inserte una página en medio de una partitura. En lugar
1032 de ello, intercala espacio en la música hasta que se rellene la
1033 página vacía y la siguiente. Predeterminado: 5.
1035 @item blank-last-page-penalty (penalización por última página vacía)
1036 @funindex blank-last-page-penalty
1038 Penalización por terminar la partitura sobre una página par. Si
1039 @code{blank-last-page-penalty} es grande y está seleccionado
1040 @code{ly:page-turn-breaking}, entonces será menos probable que
1041 LilyPond produzca una partitura en que la última página tenga
1042 numeración par. En su lugar, ajustará el espaciado de manera que
1043 use una página más o una página menos. Predeterminado: 0.
1045 @item blank-after-score-page-penalty (penalización por página vacía después de una partitura)
1046 @funindex blank-after-score-page-penalty
1048 Penalización por tener una página vacía después del final de una
1049 partitura y antes de la siguiente. De forma predeterminada, esta
1050 penalización es más pequeña que @code{blank-page-penalty}, de
1051 forma que se insertan páginas vacías después de las partituras
1052 como preferencia sobre la inserción de páginas vacías dentro de
1053 una partitura. Predeterminado: 2.
1059 Referencia de la notación:
1060 @ref{Saltos de página},
1061 @ref{Saltos de página óptimos},
1062 @ref{Paso de página óptimo},
1063 @ref{Saltos de página mínimos},
1064 @ref{Saltos de página de una línea}.
1067 @file{ly/paper-defaults-init.ly}.
1070 @node Variables de paper para la numeración de las páginas
1071 @unnumberedsubsubsec Variables de @code{@bs{}paper} para la numeración de las páginas
1072 @translationof paper variables for page numbering
1074 Los valores predeterminados que no se relacionan aquí están definidos
1075 en el archivo @file{ly/paper-defaults-init.ly}
1079 @cindex números de página, automáticos
1080 @item auto-first-page-number
1081 @funindex auto-first-page-number
1083 El algoritmo de división de páginas está afectado por el hecho de que
1084 el número de la primera página sea par o impar. Si está establecido
1085 al valor verdadero, el algoritmo de división de páginas decide si
1086 comenzar con un número par o impar. Esto hace que el número de la
1087 primera página se quede como está, o que se aumente en una unidad.
1088 Predeterminado: @code{#f}.
1090 @cindex números de página, especificar el primero
1091 @item first-page-number
1092 @funindex first-page-number
1094 Valor del número de pátina en la primera página.
1096 @item print-first-page-number
1097 @funindex print-first-page-number
1099 Si está fijado a verdadero, se imprime un número de página en la
1102 @cindex números de página, suprimir
1103 @item print-page-number
1104 @funindex print-page-number
1106 Si está fijado a falso, no se imprimen los números de página.
1112 @file{ly/paper-defaults-init.ly}.
1115 Los números de página impares siempre están a la derecha.
1116 Si quiere que la música comience en la página 1 debe haber
1117 una página en blanco en el reverso de la página de cubierta
1118 de manera que la página 1 esté en el lado derecho.
1121 @node Variables de paper diversas
1122 @unnumberedsubsubsec Variables de @code{@bs{}paper} diversas
1123 @translationof Miscellaneous paper variables
1127 @item page-spacing-weight
1128 @funindex page-spacing-weight
1130 Importancia relativa del espacio (vertical) de las páginas y el
1131 espaciado (horizontal) de las líneas. Los valores altos hacen que el
1132 espaciado de la página tenga más importancia. Predeterminado:
1135 @item print-all-headers
1136 @funindex print-all-headers
1138 Si está fijado a verdadero, imprime todos los encabezamientos para
1139 cada una de las partituras @code{\score} de la salida. Normalmente
1140 sólo se imprimen las variables de encabezamiento @code{piece} y
1141 @code{opus}. Valor predeterminado: @code{#f}.
1143 @item system-separator-markup
1144 @funindex system-separator-markup
1146 Objeto de marcado que se inserta entre los sistemas. Se suele usar
1147 para partituras orquestales. Predeterminado: sin establecer. El
1148 elemento de marcado @code{\slashSeparator}, definido en el archivo
1149 @file{ly/titling-init.ly}, se aporta como un valor predeterminado
1150 adecuado, por ejemplo:
1152 @lilypond[quote,verbatim,noragged-right,line-width=30\mm]
1153 #(set-default-paper-size "a8")
1157 system-separator-markup = \slashSeparator
1163 \relative { c''1 \break c1 \break c1 }
1172 @file{ly/titling-init.ly}.
1174 Fragmentos de código:
1178 El encabezamiento de página predeterminado pone el número de página y
1179 el campo @code{instrument} del bloque @code{\header} sobre la misma
1183 @node Disposición de la partitura
1184 @section Disposición de la partitura
1185 @translationof Score layout
1187 Esta sección trata de las opciones de disposición de la partitura para
1188 el bloque @code{\layout}.
1191 * El bloque layout::
1192 * Establecer el tamaño del pentagrama::
1196 @node El bloque layout
1197 @subsection El bloque @code{@bs{}layout}
1198 @translationof The layout block
1202 Así como el bloque @code{\paper} contiene ajustes relativos al
1203 formateo de la página para todo el documento, el bloque @code{\layout}
1204 contiene ajustes para la disposición específica de las partituras.
1205 Para fijar las opciones de disposición de partituras de forma global,
1206 escríbalas en un bloque @code{\layout} del nivel jerárquico superior.
1207 Para fijar opciones de disposición para una partitura individual
1208 escríbalas dentro de un bloque @code{\layout} dentro del bloque
1209 @code{\score}, después de la música. Entre los ajustes que pueden
1210 aparecer en un bloque @code{\layout} se encuentran los siguientes:
1213 @item la función de Scheme @code{layout-set-staff-size},
1214 @item las modificaciones de contexto de los bloques @code{\context}, y
1215 @item las variables de @code{\paper} que afectan a la disposición de la partitura.
1218 La función @code{layout-set-staff-size} se estudia en la sección
1219 siguiente, @ref{Establecer el tamaño del pentagrama}. Las
1220 modificaciones de contexto se estudian en un capítulo distinto; véase
1221 @ref{Modificar los complementos (plug-ins) de contexto} y
1222 @ref{Cambiar los valores por omisión de los contextos}. Las variables de
1223 @code{\paper} que pueden aparecer dentro de un bloque @code{\layout}
1229 @code{line-width}, @code{ragged-right} y @code{ragged-last}
1230 (véase @ref{Variables de paper para la anchura y los márgenes,,Variables de @code{@bs{}paper} para la anchura y los márgenes})
1233 @code{indent} y @code{short-indent}
1234 (véase @ref{Variables de paper para desplazamientos y sangrados,,Variables de @code{@bs{}paper} para desplazamientos y sangrados})
1238 (véase @ref{Variables de paper para los saltos de línea,,Variables de @code{@bs{}paper} para los saltos de línea})
1242 He aquí un ejemplo de un bloque @code{\layout}:
1249 \override StaffGrouper.staff-staff-spacing.basic-distance = #8
1253 \override TextScript.padding = #1
1254 \override Glissando.thickness = #3
1259 Se pueden escribir varios bloques @code{\layout} como expresiones del
1260 nivel superior. Esto puede ser útil, por ejemplo, si hay distintos
1261 ajustes almacenados en diversos archivos y se incluyen opcionalmente.
1262 Internamente, cuando se evalúa un bloque @code{\layout}, se hace una
1263 copia de la configuración de @code{\layout} actual, y después se
1264 aplican los cambios definidos en el bloque; el resultado se guarda
1265 como la nueva configuración actual. Desde el punto de vista del
1266 usuario, los bloques @code{\layout} se combinan, pero en situaciones
1267 de conflicto (cuando se cambia la misma propiedad en diferentes
1268 bloques) las definiciones más tarías toman precedencia.
1270 Por ejemplo: si este bloque:
1276 \override TextScript.color = #magenta
1277 \override Glissando.thickness = #1.5
1282 se coloca después del del ejemplo anterior, las sobreescrituras de
1283 @code{'padding} y de @code{'color} para @code{TextScript} se combinan,
1284 pero la última sobreescritura @code{'thickness} para @code{Glissando}
1285 sustituye (u oculta) a la anterior.
1287 Los bloques @code{\layout} se pueden asignar a variables para una
1288 reutilización posterior, pero la forma en que esto funciona es ligera
1289 y significativamente diferente del hecho de escribirlas literalmente.
1291 Si se define una variable de la siguiente manera:
1294 variable_de_Layout = \layout @{
1297 \override NoteHead.font-size = #4
1302 guardará la configuración actual de @code{\layout} con la
1303 sobreescritura añadida de @code{NoteHead.font-size}, pero esta
1304 combinación @emph{no} se guarda como la nueva configuración actual.
1305 Tenga en cuenta que la @q{configuración actual} se lee cuando la
1306 variable se define y no cuando se usa, de manera que el contenido de
1307 la variable depende de su posición dentro del código fuente.
1309 La variable se puede entonces usar dentro de otro bloque
1310 @code{\layout}, por ejemplo:
1317 \override NoteHead.color = #red
1322 Un bloque @code{\layout} que contiene una variable, como en el ejemplo
1323 anterior, @emph{no} copia la configuración actual, sino que en lugar
1324 de ello usa el contenido de @code{\variable_de_layout} como la
1325 configuración base para las adiciones posteriores. Esto significa que
1326 cualquier cambio definido entre la definición y el uso de la variable,
1329 Si la @code{variable_de_layout} se define (o se incluye con
1330 @code{\include}) inmediatamente antes de que se utilice, su contenido
1331 es sencillamente la configuración en curso más las sobreescrituras que
1332 se hayan definido dentro de él. Así pues, en el ejemplo anterior que
1333 muestra el uso de @code{\variable_de_layout} el último bloque
1334 @code{\layout} consistiría en:
1337 TextScript.padding = #1
1338 TextScript.color = #magenta
1339 Glissando.thickness = #1.5
1340 NoteHead.font-size = #4
1341 NoteHead.color = #red
1344 más las sobreescrituras de @code{indent} y de @code{StaffGrouper}.
1346 Pero si la variable ya hubiera sido definida antes del primer bloque
1347 @code{\layout} la configuración actual contendría ahora solamente
1350 NoteHead.font-size= #4 % (escrita en la definición de la variable)
1351 NoteHead.color = #red % (añadida después del uso de la variable)
1354 Si se planifica cuidadosamente, las variables de @code{\layout} pueden
1355 ser una herramienta valiosa para estructurar el diseño de la
1356 disposición de las fuentes, y tambiién para reiniciar la configuración
1357 de @code{\layout} a un estado conocido.
1360 Referencia de la notación:
1361 @ref{Cambiar los valores por omisión de los contextos}.
1363 Fragmentos de código:
1367 @node Establecer el tamaño del pentagrama
1368 @subsection Establecer el tamaño del pentagrama
1369 @translationof Setting the staff size
1371 @cindex tipografía, fijar el tamaño de
1372 @cindex pentagrama, fijar el tamaño de
1373 @funindex disposición, archivo de
1375 El @strong{tamaño de pentagrama} predeterminado se establece en 20
1376 puntos. Esto se puede modificar de dos maneras:
1378 Para establecer globalmente el tamaño del pentagrama para todas las
1379 partituras de un archivo (o en un bloque @code{book}, para ser
1380 exactos), utilice @code{set-global-staff-size}.
1383 #(set-global-staff-size 14)
1387 Esto establece el tamaño global predeterminado a una altura de
1388 pentagrama de 14pt y escala todas las tipografías según corresponda.
1390 Para establecer el tamaño del pentagrama de forma individual para cada
1396 #(layout-set-staff-size 15)
1401 La fuente tipográfica Feta ofrece símbolos musicales a ocho tamaños
1402 distintos. Cada fuente tipográfica está afinada para un tamaño de
1403 pentagrama distinto: a un tamaño menor la tipografía se vuelve más
1404 pesada, para que coincida con las líneas de pentagrama relativamente
1405 más gruesas. Los tamaños de tipografía recomendados están
1406 relacionados en la tabla siguiente:
1409 @multitable @columnfractions .15 .2 .22 .2
1411 @item @b{nombre de la fuente}
1412 @tab @b{altura del pentagrama (pt)}
1413 @tab @b{altura del pentagrama (mm)}
1419 @tab partituras de bolsillo
1444 @tab particellas estándar
1455 @c modern rental material?
1460 Estas tipografías están disponibles en cualquier tamaño. La propiedad
1461 de contexto @code{fontSize} y la propiedad de disposición
1462 @code{staff-space} (en @rinternals{StaffSymbol}) se pueden usar para
1463 afinar el tamaño de los pentagramas individuales. Los tamaños de
1464 pentagrama individuales están en relación al tamaño global.
1467 Referencia de la notación:
1468 @ref{Seleccionar el tamaño de la tipografía para la notación}.
1470 Fragmentos de código:
1474 @code{layout-set-staff-size} no cambia la distancia entre las líneas
1480 @translationof Breaks
1484 * Saltos de página::
1485 * Saltos de página óptimos::
1486 * Paso de página óptimo::
1487 * Saltos de página mínimos::
1488 * Saltos de página de una línea::
1489 * Saltos de línea explícitos::
1490 * Utilizar una voz adicional para los saltos de línea::
1494 @node Saltos de línea
1495 @subsection Saltos de línea
1496 @translationof Line breaking
1498 @cindex saltos de línea
1499 @cindex línea, saltos de
1501 Normalmente los saltos de línea se determinan automáticamente. Se
1502 eligen de forma que las líneas no aparezcan demasiado apretadas ni
1503 demasiado sueltas, y que las líneas consecutivas tengan una densidad
1506 Para forzar manualmente un salto de línea sobre la línea divisoria,
1507 utilice la instrucción @code{\break}:
1509 @lilypond[quote,ragged-right,verbatim]
1516 De forma predeterminada se ignora cualquier @code{\break} en la mitad
1517 de un compás, y se imprime una advertencia. Para forzar un salto de
1518 línea en medio de un compás, añada una barra de compás invisible con
1521 @lilypond[quote,ragged-right,verbatim]
1530 También se ignora un @code{\break} que se produce en la línea
1531 divisoria si el compás anterior termina en medio de una nota, como
1532 cuando un grupo de valoración especial inicia y termina en compases
1533 diferentes. Para permitir que las instrucciones @code{\break}
1534 funcionen en estas situaciones, elimine el grabador
1535 @code{Forbid_line_break_engraver} del contexto @code{Voice}. Observe
1536 que los saltos de línea forzados manualmente se deben añadir en
1537 paralelo con la música:
1539 @lilypond[quote,ragged-right,verbatim]
1541 \remove "Forbid_line_break_engraver"
1544 { c''2. \tuplet 3/2 { c4 c c } c2. | }
1545 { s1 | \break s1 | }
1550 De forma similar, los saltos de línea están normalmente prohibidos
1551 cuando hay barras de corchea que cruzan la línea divisoria. Se
1552 puede cambiar este comportamiento fijando
1553 @code{\override Beam.breakable = ##t}:
1555 @lilypond[quote,ragged-right,verbatim]
1557 \override Beam.breakable = ##t
1563 La instrucción @code{\noBreak}, prohíbe un salto de línea en
1564 la barra divisoria en que se inserta.
1566 Los ajustes más básicos que influyen sobre el espaciado de las líneas
1567 son @code{indent} y @code{line-width}. Se establecen dentro del bloque
1568 @code{\layout}. Controlan el sangrado de la primera línea de música,
1569 y la longitud de las líneas.
1571 Si se establece @code{ragged-right} a verdadero en el bloque
1572 @code{\layout}, los sistemas terminan en su longitud horizontal
1573 natural, en lugar de distribuirse horizontalmente para llenar toda la
1574 línea. Esto es de utilidad para fragmentos cortos, y para efectuar una
1575 comprobación de lo apretado que es el espaciado natural.
1577 @c TODO Check and add para on default for ragged-right
1579 La opción @code{ragged-last} es similar a @code{ragged-right}, pero
1580 afecta sólo a la última línea de la pieza.
1590 @cindex saltos de línea normales
1591 @cindex música de cuatro compases por línea
1593 Para saltos de línea a intervalos regulares utilice @code{\break}
1594 separado mediante desplazamientos con @code{\skip} y repetidos con
1595 @code{\repeat}. Por ejemplo, esto haría que los 28 compases
1596 siguientes (suponiendo un compás de 4/4) se dividan cada cuatro
1597 compases, y sólo en dichos lugares:
1602 s1 \noBreak s1 \noBreak
1603 s1 \noBreak s1 \break
1605 @{ @var{la música real@dots{}} @}
1618 Referencia de la notación:
1619 @ref{Variables de paper para los saltos de línea,,Variables de @code{@bs{}paper} para los saltos de línea}.
1621 Fragmentos de código:
1624 Referencia de funcionamiento interno:
1625 @rinternals{LineBreakEvent}.
1628 @node Saltos de página
1629 @subsection Saltos de página
1630 @translationof Page breaking
1632 Se puede sobreescribir el mecanismo predeterminado de salto de página
1633 insertando instrucciones @code{\pageBreak} o @code{\noPageBreak}.
1634 Estas instrucciones son análogas a @code{\break} y @code{\noBreak}.
1635 Se deben insertar en una línea divisoria. Estas instrucciones fuerzan
1636 y prohíben, respectivamente, la eventualidad de un salto de página.
1637 Por supuesto, la instrucción @code{\pageBreak} también fuerza un salto
1640 Las instrucciones @code{\pageBreak} y @code{\noPageBreak} también se
1641 pueden insertar en el nivel más alto, entre las partituras y los
1642 elementos de marcado situados en el nivel superior.
1644 Hay ajustes análogos a @code{ragged-right} y @code{ragged-last} que
1645 tienen el mismo efecto sobre el espaciado vertical:
1646 @code{ragged-bottom} y @code{ragged-last-bottom}. Si están
1647 establecidos a @code{#t} los sistemas de todas las páginas o sólo de
1648 la última página, respectivamente, no se verán justificados
1649 verticalmente. Véase
1650 @ref{Variables de espaciado de paper verticales fijas,,Variables de espaciado de @code{@bs{}paper} verticales fijas}.
1652 Los saltos de página se calculan por medio de la función
1653 @code{page-breaking}. LilyPond ofrece tres algoritmos para el cómputo
1654 de los saltos de página: @code{ly:optimal-breaking},
1655 @code{ly:page-turn-breaking} y @code{ly:minimal-breaking}. El
1656 predeterminado es @code{ly:optimal-breaking}, pero el valor se puede
1657 cambiar en el bloque @code{\paper}:
1661 page-breaking = #ly:page-turn-breaking
1667 Cuando un libro tiene muchas partituras y páginas, puede ser difícil
1668 resolver el problema de los saltos de página, necesitando mucha
1669 memoria y prolongados tiempos de procesamiento. Para facilitar el
1670 proceso de división en páginas, se usan los bloques @code{\bookpart}
1671 para dividir el libro en varias partes: los saltos de página se
1672 producen de manera independiente en cada parte. También se pueden
1673 usar diferentes funciones de división en páginas para las distintas
1679 subtitle = "Prefacio"
1682 %% En una parte que consiste en texto principalmente,
1683 %% puede ser preferible ly:minimal-breaking
1684 page-breaking = #ly:minimal-breaking
1686 \markup @{ @dots{} @}
1690 %% En esta parte, consistente en música, se usa la función
1691 %% óptima predeterminada de saltos de página.
1693 subtitle = "Primer movimiento"
1695 \score @{ @dots{} @}
1701 @funindex \pageBreak
1703 @funindex \noPageBreak
1704 @code{\noPageBreak}.
1708 Referencia de la notación:
1709 @ref{Variables de paper para los saltos de página,,Variables de @code{@bs{}paper} para los saltos de página}.
1711 Fragmentos de código:
1715 @node Saltos de página óptimos
1716 @subsection Saltos de página óptimos
1717 @translationof Optimal page breaking
1719 @funindex ly:optimal-breaking
1721 La función @code{ly:optimal-breaking} es el método predeterminado de
1722 LilyPond para determinar los saltos de página. Intenta hallar una
1723 división de páginas que haga mínimos el apretujamiento y la
1724 distensión, tanto horizontal como verticalmente. A diferencia de
1725 @code{ly:page-turn-breaking}, no tiene un concepto de los pasos de
1729 Fragmentos de código:
1733 @node Paso de página óptimo
1734 @subsection Paso de página óptimo
1735 @translationof Optimal page turning
1737 @funindex ly:page-turn-breaking
1739 Con frecuencia es necesario encontrar una configuración de división de
1740 páginas de manera que haya un silencio al final de una página de cada
1741 dos. De esta forma, el músico puede pasar la página sin perder notas.
1742 La función @code{ly:page-turn-breaking} trata de encontrar una
1743 división de páginas que haga mínimos el apretujamiento y el
1744 estiramiento, pero con la restricción añadida de que sólo se permite
1745 introducir vueltas de página en los lugares especificados.
1747 Hay dos etapas en el uso de esta función de división de páginas. En
1748 primer lugar debemos habilitarlo en el bloque @code{\paper}, como se
1749 explicó en @ref{Saltos de página}. Entonces debemos decirle a la función
1750 dónde nos gustaría permitir los saltos de página.
1752 Hay dos formas de conseguir la segunda tarea. Primero, podemos
1753 especificar manualmente cada uno de los pasos de página potenciales,
1754 insertando @code{\allowPageTurn} en nuestro archivo de entrada en los
1757 Si esto es demasiado tedioso, podemos añadir un grabador
1758 @code{Page_turn_engraver} a un contexto Staff o Voice. El grabador
1759 @code{Page_turn_engraver} analizará el contexto en busca de secciones
1760 sin notas (observe que no busca silencios, sino la ausencia de notas.
1761 Se hace así para que la polifonía en un solo pentagrama con silencios
1762 en una de las voces no arruine la labor del grabador
1763 @code{Page_turn_engraver}). Cuando encuentra una sección sin notas
1764 suficientemente larga, el grabador @code{Page_turn_engraver} inserta
1765 un @code{\allowPageTurn} en la última barra de compás de dicha
1766 sección, a no ser que haya una barra @q{especial} de compás (como una
1767 doble barra), en cuyo caso se insertará el @code{\allowPageTurn} en la
1768 última barra @q{especial} de compás de la sección.
1770 @funindex minimumPageTurnLength
1771 El grabador @code{Page_turn_engraver} lee la propiedad de contexto
1772 @code{minimumPageTurnLength} para determinar qué longitud debe tener
1773 una sección sin notas antes de que se considere la posibilidad de un
1774 paso de página. El valor predeterminado para
1775 @code{minimumPageTurnLength} es @code{(ly:make-moment 1/1)}. Si
1776 quiere inhabilitar las vueltas de página, puede establecerlo a algún
1780 \new Staff \with @{ \consists "Page_turn_engraver" @}
1783 R1 | % aquí se permite un salto de página
1785 \set Staff.minimumPageTurnLength = #(ly:make-moment 5/2)
1786 R1 | % aquí no se permite un salto de página
1788 R1*2 | % aquí se permite un salto de página
1793 @funindex minimumRepeatLengthForPageTurn
1794 El grabador @code{Page_turn_engraver} detecta las repeticiones de
1795 primera y segunda vez. Sólo permite un pase de página durante la
1796 repetición si hay suficiente tiempo al principio y al final de la
1797 repetición para volver a pasar la página hacia atrás. El grabador
1798 @code{Page_turn_engraver} también puede inhabilitar los pasos de
1799 página si la repetición es muy corta. Si establecemos la propiedad de
1800 contexto @code{minimumRepeatLengthForPageTurn} entonces el grabador
1801 @code{Page_turn_engraver} sólo permitirá los pases de página en las
1802 repeticiones cuya duración sea mayor que este valor.
1804 Las instrucciones de paso de página, @code{\pageTurn},
1805 @code{\noPageTurn} y @code{\allowPageTurn}, se pueden usar también en
1806 el nivel más elevado del código, entre las partituras y los elementos
1807 de marcado del nivel superior.
1812 @funindex \noPageTurn
1814 @funindex \allowPageTurn
1815 @code{\allowPageTurn}.
1819 Referencia de la notación:
1820 @ref{Variables de paper para los saltos de línea,,Variables de @code{@bs{}paper} para los saltos de línea}.
1822 Fragmentos de código:
1826 Sólo debería haber un grabador @code{Page_turn_engraver} dentro de una
1827 partitura. Si hay más de uno, se interferirán entre sí.
1830 @node Saltos de página mínimos
1831 @subsection Saltos de página mínimos
1832 @translationof Minimal page breaking
1834 @funindex ly:minimal-breaking
1836 La función @code{ly:minimal-breaking} efectúa unos cálculos mínimos
1837 para determinar los saltos de página: completa una página con tantos
1838 sistemas como sea posible antes de continuar con la siguiente. Así,
1839 puede preferirse para partituras con muchas páginas, donde las otras
1840 funciones de salto de página pueden resultar demasiado lentas o ávidas
1841 de memoria, o con una gran cantidad de textos. Se habilita utilizando:
1845 page-breaking = #ly:minimal-breaking
1850 Fragmentos de código:
1853 @node Saltos de página de una línea
1854 @subsection Saltos de página de una línea
1855 @translationof One-line page breaking
1857 @funindex ly:one-line-breaking
1859 La función @code{ly:one-line-breaking} es un algoritmo de saltos de
1860 página para uso especial que pone cada partitura en una página y en
1861 una sola línea. Esta función de salto de página no compone los
1862 títulos ni los márgenes; solamente se imprime la partitura.
1864 El ancho de la página se ajusta de forma que la partitura más larga
1865 quepa en una línea. Concretamente, las variables @code{paper-width},
1866 @code{line-width} y @code{indent} del bloque @code{\paper} se ignoran,
1867 aunque @code{left-margin} y @code{right-margin} aún se respetan. La
1868 altura de la página se deja sin cambios.
1870 @node Saltos de línea explícitos
1871 @subsection Saltos de línea explícitos
1872 @translationof Explicit breaks
1874 Lily a veces rechaza las instrucciones @code{\break} y
1875 @code{\pageBreak} explícitas. Hay dos instrucciones para
1876 sobreescribir este comportamiento:
1879 \override NonMusicalPaperColumn.line-break-permission = ##f
1880 \override NonMusicalPaperColumn.page-break-permission = ##f
1883 Cuando se sobreescribe el valor de @code{line-break-permission} a
1884 falso, Lily inserta saltos de línea en las instrucciones @code{\break}
1885 explícitas y en ningún otro lugar. Cuando se sobreescribe el valor de
1886 @code{page-break-permission} a falso, Lily inserta saltos de página en
1887 las instrucciones @code{\pageBreak} explícitas y en ningún otro lugar.
1889 @lilypond[quote,verbatim]
1896 music = \relative { c''8 c c c }
1900 \repeat unfold 2 { \music } \break
1901 \repeat unfold 4 { \music } \break
1902 \repeat unfold 6 { \music } \break
1903 \repeat unfold 8 { \music } \pageBreak
1904 \repeat unfold 8 { \music } \break
1905 \repeat unfold 6 { \music } \break
1906 \repeat unfold 4 { \music } \break
1907 \repeat unfold 2 { \music }
1912 \override NonMusicalPaperColumn.line-break-permission = ##f
1913 \override NonMusicalPaperColumn.page-break-permission = ##f
1920 Fragmentos de código:
1924 @node Utilizar una voz adicional para los saltos de línea
1925 @subsection Utilizar una voz adicional para los saltos de línea
1926 @translationof Using an extra voice for breaks
1928 La información sobre saltos de línea y de página suele aparecer
1929 directamente entremezclado dentro del código de notas.
1932 music = \relative @{ c''4 c c c @}
1936 \repeat unfold 2 @{ \music @} \break
1937 \repeat unfold 3 @{ \music @}
1942 Esto hace sencillas de introducir a las instrucciones @code{\break} y
1943 @code{\pageBreak}, pero mezcla la escritura de música con información
1944 que especifica cómo se debe disponer la música sobre la página.
1945 Podemos mantener la introducción de música y la información de saltos
1946 de línea y de página en dos lugares separados mediante la introducción
1947 de una voz adicional que contenga los saltos. Esta voz adicional
1948 contiene solamente desplazamientos o @q{skips} junto con los
1949 @code{\break}, @code{pageBreak} y otras informaciones sobre la
1950 disposición de los saltos.
1952 @lilypond[quote,verbatim]
1953 music = \relative { c''4 c c c }
1955 \header { tagline = ##f }
1956 \paper { left-margin = 0\mm }
1967 \repeat unfold 2 { \music }
1968 \repeat unfold 3 { \music }
1969 \repeat unfold 6 { \music }
1970 \repeat unfold 5 { \music }
1977 Este patrón resulta especialmente útil cuando se sobreescribe
1978 @code{line-break-system-details} y las otras útiles (pero largas)
1979 propiedades de @code{NonMusicalPaperColumnGrob}, como se explica en
1980 @ref{Espaciado vertical}.
1982 @lilypond[quote,verbatim]
1983 music = \relative { c''4 c c c }
1985 \header { tagline = ##f }
1986 \paper { left-margin = 0\mm }
1991 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
1995 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
1999 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2003 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2008 \repeat unfold 2 { \music }
2009 \repeat unfold 3 { \music }
2010 \repeat unfold 6 { \music }
2011 \repeat unfold 5 { \music }
2019 Referencia de la notación:
2020 @ref{Espaciado vertical}.
2022 Fragmentos de código:
2026 @node Espaciado vertical
2027 @section Espaciado vertical
2028 @translationof Vertical spacing
2030 @cindex espaciado vertical
2031 @cindex vertical, espaciado
2033 El espaciado vertical está controlado por tres factores: la cantidad
2034 de espacio disponible (es decir, el tamaño del papel y los márgenes),
2035 la separación entre los sistemas, y la separación entre los
2036 pentagramas dentro de un sistema.
2039 * Espaciado vertical flexible dentro de los sistemas::
2040 * Posicionamiento explícito de los pentagramas y los sistemas::
2041 * Evitar las colisiones verticales::
2045 @node Espaciado vertical flexible dentro de los sistemas
2046 @subsection Espaciado vertical flexible dentro de los sistemas
2047 @translationof Flexible vertical spacing within systems
2049 @cindex distancia entre pentagramas
2050 @cindex pentagrama, distancia entre los
2051 @cindex espacio entre pentagramas
2052 @cindex espacio dentro de los sistemas
2054 Tres mecanismos distintos controlan el espaciado vertical flexible
2055 dentro de los sistemas, uno por cada una de las categorías siguientes:
2060 @emph{pautas sin agrupar},
2063 @emph{pautas agrupadas} (pautas dentro de un grupo de pentagramas como
2064 @code{ChoirStaff}, etc.), y
2067 @emph{líneas que no son pautas} (como @code{Lyrics},
2068 @code{ChordNames}, etc.).
2072 @c TODO: Clarify this. This almost implies that non-staff lines
2073 @c have NO effect on the spacing between staves. -mp
2075 La altura de cada sistema se determina en dos fases. Primero, todos
2076 los pentagramas se disponen según la cantidad de espacio vacío
2077 disponible. Después, las líneas que no son pautas se distribuyen
2080 Observe que los mecanismos de espaciado estudiados en esta sección
2081 solamente controlan el espaciado vertical de las pautas y líneas que
2082 no son pautas dentro de los sistemas individuales. El espaciado
2083 vertical entre distintos sistemas, partituras, marcados y márgenes se
2084 controla mediante variables de @code{\paper} que se estudian en
2085 @ref{Variables de espaciado de paper verticales flexibles,,Variables de espaciado de @code{@bs{}paper} verticales flexibles}.
2088 * Propiedades de espaciado dentro de los sistemas::
2089 * Espaciado de pautas no agrupadas::
2090 * Espaciado de pautas agrupadas::
2091 * Espaciado de las líneas que no son pautas::
2095 @node Propiedades de espaciado dentro de los sistemas
2096 @unnumberedsubsubsec Propiedades de espaciado dentro de los sistemas
2097 @translationof Within-system spacing properties
2099 @funindex staff-affinity
2100 @funindex staffgroup-staff-spacing
2101 @funindex staff-staff-spacing
2102 @funindex nonstaff-unrelatedstaff-spacing
2103 @funindex nonstaff-relatedstaff-spacing
2104 @funindex nonstaff-nonstaff-spacing
2105 @funindex default-staff-staff-spacing
2106 @funindex minimum-Y-extent
2107 @funindex extra-offset
2108 @funindex self-alignment-X
2110 @funindex VerticalAxisGroup
2112 Los mecanismos de espaciado vertical dentro del sistema están
2113 controlados por dos conjuntos de propiedades de grob. El primer
2114 conjunto está asociado con el grob @code{VerticalAxisGroup}, que se
2115 crea por parte de todas las pautas y líneas que no son pautas. El
2116 segundo conjunto está asociado con el grob @code{StaffGrouper}, que
2117 puede crearse por parte de los grupos de pentagramas, pero solamente
2118 si se le llama explícitamente. Estas propiedades se describen
2119 individualmente al final de la presente sección.
2121 Los nombres de estas propiedades (excepto para @code{staff-affinity})
2122 siguen el formato @code{@var{elemento1}-@var{elemento2}-spacing},
2123 donde @code{@var{elemento1}} y @code{@var{elemento2}} son los
2124 elementos que se van a espaciar. Observe que @code{@var{elemento2}}
2125 no está necesariamente por debajo de @code{@var{elemento1}}; por
2126 ejemplo, @code{nonstaff-relatedstaff-spacing} mide hacia arriba a
2127 partir de la línea del tipo no-pauta si @code{staff-affinity} es
2130 Cada distancia se mide entre los @emph{puntos de referencia} de los
2131 dos elementos. El @emph{punto de referencia} para un pentagrama y
2132 otro tipo de pauta es el centro vertical de su @code{StaffSymbol} (es
2133 decir, la línea central si @code{line-count} es un número impar; el
2134 espacio central si @code{line-count} es par). Los puntos de
2135 referencia para las líneas individuales que no son pautas aparecen en
2138 @multitable {Línea que no es una pauta} {Punto de referencia}
2139 @headitem Línea que no es una pauta @tab Punto de referencia
2140 @item @code{ChordNames} @tab línea de base
2141 @item @code{NoteNames} @tab línea de base
2142 @item @code{Lyrics} @tab línea de base
2143 @item @code{Dynamics} @tab la mitad de la altura de la @q{m}
2144 @item @code{FiguredBass} @tab punto más alto
2145 @item @code{FretBoards} @tab línea superior
2148 En la siguiente imagen, las líneas horizontales indican las posiciones
2149 de estos puntos de referencia:
2151 @lilypond[quote,noragged-right,line-width=110\mm]
2152 #(define zero-space '((padding . -inf.0) (basic-distance . 0)))
2154 alignToZero = \with {
2155 \override VerticalAxisGroup.nonstaff-relatedstaff-spacing = #zero-space
2156 \override VerticalAxisGroup.nonstaff-nonstaff-spacing = #zero-space
2157 \override VerticalAxisGroup.staff-affinity = #DOWN
2158 \remove Text_engraver % avoid having two
2159 \consists Text_engraver
2161 lowerCaseChords = \with {
2162 chordNameLowercaseMinor = ##t
2165 #(define-music-function
2168 #{ s1*0^\markup { \upright {\typewriter #context } } #})
2171 \context { \Dynamics \alignToZero }
2172 \context { \FiguredBass \alignToZero }
2173 \context { \Lyrics \alignToZero }
2174 \context { \NoteNames \alignToZero }
2175 \context { \ChordNames \alignToZero \lowerCaseChords }
2176 \context { \FretBoards \alignToZero }
2179 \override DynamicText.self-alignment-X = #-1
2180 \override FretBoard.X-offset = #1.75
2181 \override InstrumentName.minimum-Y-extent = #'(-1 . 2)
2187 %% These contexts have reference points at the baseline:
2188 %% ChordNames, NoteNames, and Lyrics
2190 \new ChordNames { \chords { \labelContext "ChordNames" g1:m } }
2191 \new NoteNames { s1 |\labelContext "NoteNames" g1 | }
2192 \new Lyrics { \lyrics { \skip 1*2 | \labelContext "Lyrics" ghijk1 | } }
2193 \new RhythmicStaff \with { instrumentName = #"baseline " } s1*3
2196 %% The reference point for Dynamics is the midline of 'm' in the font
2198 \new Dynamics { \labelContext "Dynamics" s1\mp s\fp }
2199 \new RhythmicStaff \with { instrumentName = #"mid-height " } s1*3
2202 %% The reference point for FiguredBass is its highest point
2204 \new FiguredBass { \labelContext "FiguredBass" \figuremode { <6 5>1 } }
2205 \new RhythmicStaff \with { instrumentName = #"highest point " } s1
2208 %% The reference point for FretBoards is the top line
2209 \include "predefined-guitar-fretboards.ly"
2211 \new FretBoards { \labelContext "FretBoards" \chordmode { e1 } }
2212 \new RhythmicStaff \with { instrumentName = #"top line " } s1
2216 Cada una de las propiedades de grob del espaciado vertical (excepto
2217 @code{staff-affinity})
2218 usa la misma estructura de lista-A que las
2219 variables de espaciado del bloque @code{\paper} que se han estudiado
2220 en @ref{Variables de espaciado de paper verticales flexibles,,Variables de espaciado de @code{@bs{}paper} verticales flexibles}.
2221 En @ref{Modificación de las listas-A}
2222 se estudian métodos específicos para la modificación de
2223 las listas-A. Las propiedades de los grobs deben ajustarse con un
2224 @code{\override} dentro de un bloque @code{\score} o @code{\layout}, y
2225 no dentro de un bloque @code{\paper}.
2227 El ejemplo que sigue muestra las dos maneras en que pueden modificarse
2228 estas listas-A. La primera declaración actualiza un par clave-valor de
2229 forma individual, y la segunda redefine la propiedad completamente:
2233 \override VerticalAxisGroup.default-staff-staff-spacing.basic-distance = #10
2237 \override VerticalAxisGroup.default-staff-staff-spacing =
2238 #'((basic-distance . 10)
2239 (minimum-distance . 9)
2241 (stretchability . 10))
2245 Para modificar globalmente cualquiera de los ajustes de espaciado,
2246 póngalos dentro del bloque @code{\layout}:
2252 \override VerticalAxisGroup.default-staff-staff-spacing.basic-distance = #10
2257 Los ajustes estándar para las propiedades de grob del espaciado
2258 vertical están relacionadas en @rinternals{VerticalAxisGroup} y en
2259 @rinternals{StaffGrouper}. Las sobreescrituras predeterminadas para
2260 los tipos específicos de líneas que no son pautas están relacionadas
2261 en las descripciones de contexto correspondientes en
2262 @rinternals{Contexts}.
2264 @subsubheading Propiedades del grob @code{VerticalAxisGroup}
2266 Las propiedades de @code{VerticalAxisGroup} se suelen ajustar con una
2267 instrucción @code{\override} en el nivel de @code{Staff} (o
2271 @item staff-staff-spacing
2272 Se utiliza para determinar la distancia entre la pauta actual
2273 y la pauta que está justo por debajo
2274 de ella dentro del mismo sistema, incluso si hay más líneas que no son
2275 pautas (tales como @code{Lyrics}) entre las dos pautas. No se aplica
2276 a la pauta inferior de un sistema.
2278 Inicialmente, el valor de espaciado @code{staff-staff-spacing} de un
2279 grupo @code{VerticalAxisGroup} es una función de Scheme que aplica las
2280 propiedades del @code{StaffGrouper} si la pauta forma parte de un
2281 grupo, o el @code{default-staff-staff-spacing} de la pauta en caso
2282 contrario. Esto hace posible que las pautas estén espaciadas de forma
2283 diferente cuando están agrupadas. Para conseguir un espaciado regular
2284 sin importar el agrupamiento, esta función se puede sustituir por una
2285 lista-A de espaciado flexible, utilizando la forma de
2286 sobreescritura de redefinición completa que se ha mostrado más arriba.
2288 @item default-staff-staff-spacing
2289 Una lista-A de espaciado flexible que define el
2290 espacio @code{staff-staff-spacing} que se usará para las pautas sin
2291 agrupar, a no ser que se haya sobreescrito explícitamente
2292 @code{staff-staff-spacing} con una instrucción @code{\override}.
2294 @item staff-affinity
2295 Dirección de la pauta que utilizar para el espaciado de la línea
2296 actual que no es pauta. Se puede elegir entre @code{UP} (arriba),
2297 @code{DOWN} (abajo) y @code{CENTER} (centro). Si es @code{CENTER}, la
2298 línea del tipo no-pauta se coloca equidistante entre las dos pautas
2299 contiguas a ambos lados, a no ser que lo impidan colisiones u otras
2300 restricciones de espaciado. Las líneas del tipo no-pauta adyacentes
2301 han de llevar valores de @code{staff-affinity} no crecientes desde la
2302 parte superior hasta la inferior, p.ej. una línea del tipo no-pauta
2303 establecida a @code{UP} no debería seguir inmediatamente a otra que
2304 esté establecida a @code{DOWN}. Las líneas del tipo no-pauta en la
2305 parte superior de un sistema deben usar @code{DOWN}; las de la parte
2306 inferior deben usar @code{UP}. El ajuste de @code{staff-affinity}
2307 para una pauta hace que se le trate como una línea que no es una
2308 pauta. El establecimiento de @code{staff-affinity} a @code{#f} para
2309 una línea que no es una pauta hace que se trate como una pauta.
2310 Establecer @code{staff-affinity} a @code{UP}, @code{CENTER}, o
2311 @code{DOWN} hace que el pentagrama resulte espaciado como si fuera una
2312 línea que no es una pauta.
2314 @item nonstaff-relatedstaff-spacing
2315 Distancia entre la línea del tipo no-pauta actual y la pauta más
2316 próxima en la dirección de @code{staff-affinity}, si no hay ninguna
2317 línea que no sea una pauta entre las dos, y @code{staff-affinity} es
2318 @code{UP} o @code{DOWN}. Si @code{staff-affinity} es @code{CENTER},
2319 entonces se usa @code{nonstaff-relatedstaff-spacing} para las pautas
2320 más próximas @emph{a los dos lados}, incluso aunque aparezcan otras
2321 líneas del tipo no-pauta entre la pauta actual y una de las otras.
2322 Esto significa que la colocación de una línea que no es una pauta
2323 depende tanto de las pautas que la rodean como de las líneas que no
2324 son pautas y que la rodean. Establecer la ampliabilidad
2325 @code{stretchability} de uno de estos tipos de espaciado a un valor
2326 más pequeño provoca que este espaciado domine. El establecimiento de
2327 @code{stretchability} a un valor mayor hace que dicho espaciado tenga
2330 @item nonstaff-nonstaff-spacing
2331 Distancia entre la línea actual del tipo no-pauta y la siguiente línea
2332 del tipo no-pauta en la dirección de @code{staff-affinity}, si las dos
2333 están al mismo lado de la pauta relacionada, y @code{staff-affinity}
2334 es @code{UP} o @code{DOWN}.
2336 @item nonstaff-unrelatedstaff-spacing
2337 Distancia entre la línea actual del tipo no-pauta y la pauta en la
2338 dirección opuesta de @code{staff-affinity}, si no hay ninguna otra
2339 línea del tipo no-pauta entre las dos, y @code{staff-affinity} es
2340 @code{UP} o @code{DOWN}. Se puede usar, por ejemplo, para requerir
2341 una cantidad de relleno mínima entre una línea de @code{Lyrics} y la
2342 pauta a la que no pertenece.
2345 @subsubheading Propiedades del grob @code{StaffGrouper}
2347 Las propiedades de @code{StaffGrouper} se suelen ajustar con una
2348 instrucción @code{\override} en el nivel de @code{StaffGroup} (o
2352 @item staff-staff-spacing
2353 Distancia entre pautas consecutivas dentro del grupo de pautas actual.
2354 La propiedad @code{staff-staff-spacing} del grob
2355 @code{VerticalAxisGroup} de una pauta individual se puede
2356 sobreescribir con distintos ajustes de espaciado para dicha
2359 @item staffgroup-staff-spacing
2360 Distancia entre la última pauta del grupo en curso y la pauta que está
2361 justo por debajo de ella dentro del mismo sistema, incluso si existen
2362 una o más líneas que no son pautas (tales como @code{Lyrics}) entre
2363 las dos pautas. No se aplica al pentagrama o pauta inferior de un
2364 sistema. La propiedad @code{staff-staff-spacing} del grob
2365 @code{VerticalAxisGroup} de una pauta individual se puede
2366 sobreescribir con distintos ajustes de espaciado para dicha
2371 Referencia de la notación:
2372 @ref{Variables de espaciado de paper verticales flexibles,,Variables de espaciado de @code{@bs{}paper} verticales flexibles},
2373 @ref{Modificación de las listas-A}.
2376 @file{ly/engraver-init.ly},
2377 @file{scm/define-grobs.scm}.
2379 Referencia de funcionamiento interno:
2380 @rinternals{Contexts},
2381 @rinternals{VerticalAxisGroup},
2382 @rinternals{StaffGrouper}.
2386 @node Espaciado de pautas no agrupadas
2387 @unnumberedsubsubsec Espaciado de pautas no agrupadas
2388 @translationof Spacing of ungrouped staves
2390 Las @emph{pautas}, tales como los pentagramas (@code{Staff}), pautas
2391 de percusión (@code{DrumStaff}) o de tablatura (@code{TabStaff}),
2392 etc. son contextos que pueden contener uno o más contextos de voz,
2393 pero no pueden contener otras pautas.
2395 Las siguientes propiedades afectan al espaciado de las pautas @emph{no
2399 @item Propiedades de @code{VerticalAxisGroup}:
2401 @item @code{default-staff-staff-spacing}
2402 @item @code{staff-staff-spacing}
2406 Estas propiedades de grob se describen individualmente más arriba;
2407 véase @ref{Propiedades de espaciado dentro de los sistemas}.
2409 Están implicadas ciertas propiedades adicionales para las pautas que
2410 son parte de un grupo; véase @ref{Espaciado de pautas agrupadas}.
2412 El ejemplo siguiente muestra cómo la propiedad
2413 @code{default-staff-staff-spacing} puede afectar al espaciado de pautas no
2414 agrupadas. Las mismas sobreescrituras aplicadas a
2415 @code{staff-staff-spacing}
2416 tendrían el mismo efecto, pero también se aplicaría en caso de que las
2417 pautas estuvieran combinadas en un grupo o grupos.
2419 @lilypond[verbatim,quote,staffsize=16]
2423 \override VerticalAxisGroup.default-staff-staff-spacing =
2424 #'((basic-distance . 8)
2425 (minimum-distance . 7)
2431 % The very low note here needs more room than 'basic-distance
2432 % can provide, so the distance between this staff and the next
2433 % is determined by 'padding.
2434 \new Staff { b,2 r | }
2436 % Here, 'basic-distance provides enough room, and there is no
2437 % need to compress the space (towards 'minimum-distance) to make
2438 % room for anything else on the page, so the distance between
2439 % this staff and the next is determined by 'basic-distance.
2440 \new Staff { \clef bass g2 r | }
2442 % By setting 'padding to a negative value, staves can be made to
2443 % collide. The lowest acceptable value for 'basic-distance is 0.
2445 \override VerticalAxisGroup.default-staff-staff-spacing =
2446 #'((basic-distance . 3.5)
2448 } { \clef bass g2 r | }
2449 \new Staff { \clef bass g2 r | }
2455 @file{scm/define-grobs.scm}.
2457 Fragmentos de código:
2460 Referencia de funcionamiento interno:
2461 @rinternals{VerticalAxisGroup}.
2464 @node Espaciado de pautas agrupadas
2465 @unnumberedsubsubsec Espaciado de pautas agrupadas
2466 @translationof Spacing of grouped staves
2468 En partituras grandes como las orquestales, es común colocar los
2469 pentagramas en grupos. El espacio entre los grupos suele ser mayor
2470 que el espacio que hay entre los pentagramas dentro del mismo grupo.
2472 Los grupos de pautas, @emph{Staff-groups} (tales como
2473 @code{StaffGroup}, @code{ChoirStaff}, etc.) son contextos que pueden
2474 contener al mismo tiempo uno o más pentagramas o pautas.
2476 Las siguientes propiedades afectan al espaciado de las pautas dentro
2480 @item Propiedades de @code{VerticalAxisGroup}:
2482 @item @code{staff-staff-spacing}
2484 @item Propiedades de @code{StaffGrouper}:
2486 @item @code{staff-staff-spacing}
2487 @item @code{staffgroup-staff-spacing}
2491 Estas propiedades de grob se describen individualmente más arriba;
2492 véase @ref{Propiedades de espaciado dentro de los sistemas}.
2494 El ejemplo siguiente muestra cómo pueden afectar las propiedades del
2495 grob @code{StaffGrouper} al espaciado de las pautas agrupadas:
2497 @lilypond[verbatim,quote,staffsize=16]
2501 \override StaffGrouper.staff-staff-spacing.padding = #0
2502 \override StaffGrouper.staff-staff-spacing.basic-distance = #1
2507 \new PianoStaff \with {
2508 \override StaffGrouper.staffgroup-staff-spacing.basic-distance = #20
2523 @file{scm/define-grobs.scm}.
2525 Fragmentos de código:
2528 Referencia de funcionamiento interno:
2529 @rinternals{VerticalAxisGroup},
2530 @rinternals{StaffGrouper}.
2533 @node Espaciado de las líneas que no son pautas
2534 @unnumberedsubsubsec Espaciado de las líneas que no son pautas
2535 @translationof Spacing of non-staff lines
2537 Las @emph{Líneas que no son pautas} (tales como @code{Lyrics},
2538 @code{ChordNames}, etc.) son contextos cuyos objetos de presentación
2539 se imprimen como pentagramas (es decir, en líneas horizontales dentro
2540 de los sistemas). Específicamente, las líneas que no son pautas son
2541 contextos del tipo no-pauta que crean el objeto de presentación
2542 @code{VerticalAxisGroup}.
2544 Las siguientes propiedades afectan al espaciado de las líneas que no
2548 @item Propiedades de @code{VerticalAxisGroup}:
2550 @item @code{staff-affinity}
2551 @item @code{nonstaff-relatedstaff-spacing}
2552 @item @code{nonstaff-nonstaff-spacing}
2553 @item @code{nonstaff-unrelatedstaff-spacing}
2557 Estas propiedades de grob se describen individualmente más arriba;
2558 véase @ref{Propiedades de espaciado dentro de los sistemas}.
2560 El ejemplo siguiente muestra cómo la propiedad
2561 @code{nonstaff-nonstaff-spacing} puede afectar el espaciado de líneas
2562 consecutivas que no son pautas. Aquí, mediante el establecimiento de
2563 la clave de ampliabilidad @code{stretchability} a un valor muy grande,
2564 la línea de letra es capaz de ampliarse mucho más de lo que es usual:
2566 @lilypond[verbatim,quote,staffsize=16]
2570 \override VerticalAxisGroup.nonstaff-nonstaff-spacing.stretchability = #1000
2577 \override VerticalAxisGroup.staff-staff-spacing = #'((basic-distance . 30))
2580 \override VerticalAxisGroup.staff-affinity = #UP
2583 \override VerticalAxisGroup.staff-affinity = #CENTER
2584 } \lyricmode { center }
2586 \override VerticalAxisGroup.staff-affinity = #DOWN
2587 } \lyricmode { down }
2594 @file{ly/engraver-init.ly},
2595 @file{scm/define-grobs.scm}.
2597 Fragmentos de código:
2600 @c @lsr{spacing,page-spacing.ly},
2601 @c @lsr{spacing,alignment-vertical-spacing.ly}.
2603 Referencia de funcionamiento interno:
2604 @rinternals{Contexts},
2605 @rinternals{VerticalAxisGroup}.
2608 @node Posicionamiento explícito de los pentagramas y los sistemas
2609 @subsection Posicionamiento explícito de los pentagramas y los sistemas
2610 @translationof Explicit staff and system positioning
2612 Una forma de entender los mecanismos del espaciado vertical
2613 flexible que se han explicado más arriba es como una
2614 colección de ajustes que controlan la cantidad de relleno
2615 vertical entre los pentagramas y los sistemas.
2617 Es posible enfrentarse al espaciado vertical de una forma distinta
2618 utilizando @code{NonMusicalPaperColumn.line-break-system-details}.
2619 Mientras que los mecanismos del espaciado vertical flexible
2620 especifican relleno vertical,
2621 @code{NonMusicalPaperColumn.line-break-system-details} puede
2622 especificar posiciones verticales exactas sobre la página.
2624 @code{NonMusicalPaperColumn.line-break-system-details} acepta una
2625 lista asociativa de tres ajustes diferentes:
2628 @item @code{X-offset} (desplazamiento en X)
2629 @item @code{Y-offset} (desplazamiento en Y)
2630 @item @code{alignment-distances} (distancias de alineación)
2633 Las sobreescrituras de los objetos gráficos, entre ellas las de
2634 @code{NonMusicalPaperColumn} que aparecen más abajo, pueden ocurrir en
2635 tres lugares distintos dentro de un archivo de entrada:
2638 @item directamente en medio de las notas
2639 @item en un bloque @code{\context}
2640 @item en el bloque @code{\with}
2643 Cuando sobreescribimos @code{NonMusicalPaperColumn}, usamos la
2644 instrucción @code{\override} usual en los bloques @code{\context} y en
2645 el bloque @code{\with}. Por otra parte, cuando sobreescribimos
2646 @code{NonMusicalPaperColumn} en medio de las notas, debemos usar la
2647 instrucción especial @code{\overrideProperty}. He aquí algunas
2648 sobreescrituras de @code{NonMusicalPaperColumn} de ejemplo con la
2649 instrucción especial @code{\overrideProperty}:
2652 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2655 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2658 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2662 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2663 #'((alignment-distances . (15)))
2665 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2668 (alignment-distances . (15)))
2671 Para entender cómo funciona cada uno de los distintos ajustes,
2672 empezamos observando un ejemplo que no incluye absolutamente ninguna
2675 @c \book { } is required in these examples to ensure the spacing
2676 @c overrides can be seen between systems. -np
2678 @lilypond[verbatim,quote,staffsize=16]
2679 \header { tagline = ##f }
2680 \paper { left-margin = 0\mm }
2690 \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2693 \repeat unfold 15 { d'4 d' d' d' }
2700 Esta partitura mantiene aislada la información de los saltos de línea
2701 y de página en una voz dedicada a ello. Esta técnica de crear una voz
2702 de saltos ayuda a mantener separada de la escritura de notas conforme
2703 el ejemplo se vuelve más complicado. Consulte
2704 @ref{Utilizar una voz adicional para los saltos de línea}.
2706 Los saltos explícitos dividen la música de forma regular en seis
2707 compases por línea. El espaciado vertical es el resultado de los
2708 ajustes predeterminados de LilyPond. Para establecer explícitamente
2709 el punto de origen vertical de cada sistema, podemos establecer el par
2710 @code{Y-offset} en el atributo @code{line-break-system-details} del
2711 grob (objeto gráfico) @code{NonMusicalPaperColumn}:
2713 @lilypond[verbatim,quote,staffsize=16]
2714 \header { tagline = ##f }
2715 \paper { left-margin = 0\mm }
2721 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2724 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2727 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2731 \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2734 \repeat unfold 15 { d'4 d' d' d' }
2741 Observe que @code{line-break-system-details} toma una lista asociativa
2742 de una cantidad de valores potencialmente elevada, pero aquí sólo
2743 fijamos un valor. Observe también que aquí la propiedad
2744 @code{Y-offset} determina la posición vertical exacta sobre la página
2745 en la que se trazará cada uno de los nuevos sistemas.
2747 Ahora que hemos establecido explícitamente el punto de origen vertical
2748 de cada sistema, podemos también establecer manualmente las distancias
2749 verticales entre los pentagramas dentro de cada sistema. Lo hacemos
2750 usando la subpropiedad @code{alignment-distances} de
2751 @code{line-break-system-details}.
2753 @lilypond[verbatim,quote,staffsize=16]
2754 \header { tagline = ##f }
2755 \paper { left-margin = 0\mm }
2761 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2763 (alignment-distances . (10)))
2765 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2767 (alignment-distances . (15)))
2769 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2771 (alignment-distances . (20)))
2774 \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2777 \repeat unfold 15 { d'4 d' d' d' }
2784 Observe que aquí asignamos dos valores distintos al atributo
2785 @code{line-break-system-details} del grob
2786 @code{NonMusicalPaperColumn}. Aunque el atributo alist de
2787 @code{line-break-system-details} acepta muchos parámetros de espaciado
2788 adicionales (entre ellos, por ejemplo, un par @code{X-offset}
2789 correspondiente), sólo tenemos que establecer el desplazamiento
2790 @code{Y-offset} y los pares @code{alignment-distances} para controlar
2791 el punto de origen vertical de cada sistema y pentagrama. Finalmente,
2792 observe que @code{alignment-distances} especifica el posicionamiento
2793 vertical de los pentagramas pero no de los grupos de pentagramas.
2795 @lilypond[verbatim,quote,staffsize=16]
2796 \header { tagline = ##f }
2797 \paper { left-margin = 0\mm }
2803 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2805 (alignment-distances . (30 10)))
2807 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2809 (alignment-distances . (10 10)))
2811 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2813 (alignment-distances . (10 30)))
2816 \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2819 \new Staff { \repeat unfold 15 { d'4 d' d' d' } }
2820 \new Staff { \repeat unfold 15 { e'4 e' e' e' } }
2827 Algunos puntos que tener en cuenta:
2830 @item Al usar @code{alignment-distances}, la letra
2831 y otras líneas que no son pautas, no cuentan como un pentagrama.
2833 @item Las unidades de los números que se pasan a @code{X-offset},
2834 @code{Y-offset} y @code{alignment-distances} se interpretan como
2835 múltiplos de la distancia entre líneas de pentagrama adyacentes. Los
2836 valores positivos mueven a los pentagramas y a la letra hacia arriba,
2837 los valores negativos mueven los pentagramas y la letra hacia abajo.
2839 @item A causa de que los ajustes a
2840 @code{NonMusicalPaperColumn.line-break-system-details} dados aquí
2841 permiten el posicionamiento de pentagramas y sistemas en cualquier
2842 lugar de la página, es posible violar los márgenes o los límites
2843 del papel, o incluso imprimir pentagramas o sistemas unos encima
2844 de otros. Esto se evitaría pasando a los diferentes ajustes unos
2849 Fragmentos de código:
2853 @node Evitar las colisiones verticales
2854 @subsection Evitar las colisiones verticales
2855 @translationof Vertical collision avoidance
2857 @funindex outside-staff-priority
2858 @funindex outside-staff-padding
2859 @funindex outside-staff-horizontal-padding
2861 Podemos decir intuitivamente que algunos objetos de la notación
2862 musical pertenecen al pentagrama y otros se sitúan fuera del
2863 pentagrama. Entre los objetos que pertenecen al exterior del
2864 pentagrama están las marcas de ensayo, las marcas textuales y las
2865 indicaciones de dinámica (en lo sucesivo, les llamaremos objetos fuera
2866 del pentagrama). La regla de LilyPond para la colocación vertical de
2867 los objetos fuera del pentagrama es ponerlos tan cerca del pentagrama
2868 como sea posible pero no tan próximos como para que choquen con otro
2871 LilyPond utiliza la propiedad @code{outside-staff-priority} para
2872 determinar si un grob es un objeto fuera del pentagrama: si
2873 @code{outside-staff-priority} es un número, el grob es un objeto fuera
2874 del pentagrama. Además, @code{outside-staff-priority} informa a
2875 LilyPond en qué orden se debe situar los objetos.
2877 En primer lugar, LilyPond sitúa todos los objetos que no pertenecen al
2878 exterior del pentagrama. Después ordena los objetos fuera del
2879 pentagrama de acuerdo a su prioridad @code{outside-staff-priority} (en
2880 orden creciente). LilyPond toma los objetos fuera del pentagrama uno
2881 a uno y los coloca de forma que no choquen con ningún objeto que ya
2882 haya sido colocado. Esto es, si dos grobs fuera del pentagrama
2883 compiten por el mismo espacio, el que tiene la prioridad
2884 @code{outside-staff-priority} más baja se colocará más próximo al
2887 @lilypond[quote,ragged-right,verbatim]
2891 \once \override TextScript.outside-staff-priority = #1
2892 c4_"Text"\pp % this time the text will be closer to the staff
2894 % by setting outside-staff-priority to a non-number,
2895 % we disable the automatic collision avoidance
2896 \once \override TextScript.outside-staff-priority = ##f
2897 \once \override DynamicLineSpanner.outside-staff-priority = ##f
2898 c4_"Text"\pp % now they will collide
2902 El relleno vertical que rodea a los objetos fuera del pentagrama
2903 se puede controlar con @code{outside-staff-padding}.
2905 @lilypond[quote,ragged-right,verbatim,staffsize=18]
2907 \once \override TextScript.outside-staff-padding = #0
2908 a'4-"outside-staff-padding = #0"
2909 \once \override TextScript.outside-staff-padding = #3
2910 d-"outside-staff-padding = #3"
2911 c-"default outside-staff-padding"
2912 b-"default outside-staff-padding"
2917 De forma predeterminada, los objetos fuera del pentagrama se
2918 colocan de forma que eviten una colisión horizontal con los grobs
2919 posicionados previamente. Esto puede llevar a situaciones en las
2920 que los objetos se colocan muy próximos entre sí en el sentido
2921 horizontal. Como se muestra en el ejemplo que aparece más abajo,
2922 al establecer @code{outside-staff-horizontal-padding} se
2923 incrementa el espacio horicontal necesario, y en este caso mueve
2924 el texto hacia arriba para evitar que quede demasiado cerca de las
2927 @lilypond[quote,ragged-right,verbatim]
2931 \once \override TextScript.outside-staff-horizontal-padding = #1
2937 Fragmentos de código:
2941 @node Espaciado horizontal
2942 @section Espaciado horizontal
2943 @translationof Horizontal spacing
2945 @cindex horizontal, espaciado
2946 @cindex espaciado horizontal
2949 * Panorámica del espaciado horizontal::
2950 * Área de espaciado nueva::
2951 * Cambiar el espaciado horizontal::
2952 * Longitud de la línea::
2953 * Notación proporcional::
2957 @node Panorámica del espaciado horizontal
2958 @subsection Panorámica del espaciado horizontal
2959 @translationof Horizontal spacing overview
2961 El motor de espaciado traduce las diferencias en las duraciones a
2962 distancias ampliables (@q{muelles}) de distintas longitudes. Las
2963 duraciones más largas reciben un espacio mayor y las duraciones más
2964 cortas reciben menos. Las duraciones más breves reciben un espacio de
2965 tamaño fijo (que se controla mediante @code{shortest-duration-space}
2966 en el objeto @rinternals{SpacingSpanner}). Cuanto más larga es la
2967 duración, más espacio recibe: al doblar una duración se añade un
2968 espacio de tamaño fijo (este tamaño se controla mediante
2969 @code{spacing-increment}) a la nota.
2971 Por ejemplo, la pieza siguiente contiene numerosas blancas, negras y
2972 corcheas; la corchea va seguida de un ancho de cabeza de blanca (ACB).
2973 La negra va seguida de 2 ACB, la blanca por 3 ACB, etc.
2975 @lilypond[quote,verbatim]
2983 Normalmente, el valor de @code{spacing-increment} está establecido en
2984 1.2 espacios de pentagrama, lo que es aproximadamente el ancho de una
2985 cabeza, y @code{shortest-duration-space} está establecido en 2.0, lo
2986 que significa que la nota más breve recibe 2.4 espacios de pentagrama
2987 (2.0 multiplicado por el @code{spacing-increment}) de espacio
2988 horizontal. Este espacio se cuenta a partir del borde izquierdo del
2989 símbolo, de manera que las notas más breves van seguidas generalmente
2990 por un espacio de 1 ACB.
2992 Si siguiésemos el procedimiento anterior exactamente, entonces la
2993 adición de una sola fusa a una partitura que usa corcheas y
2994 semicorcheas, aumentaría enormemente la anchura de la partitura
2995 completa. La nota más breve ya no es la semicorchea, sino la fusa,
2996 añadiendo así 1 ACB a cada una de las notas. Para evitarlo, la
2997 duración más breve a efectos de espaciado no es la nota más breve de
2998 la partitura, sino la que ocurre con más frecuencia.
3000 La duración más breve que es más común se determina de la siguiente
3001 manera: en cada compás se determina la duración más breve. La menor
3002 duración más común se toma como base para el espaciado, habiendo
3003 estipulado que esta duración menor siempre debe ser igual o menor que
3004 una corchea. La duración más breve se imprime cuando se ejecuta
3005 @code{lilypond} con la opción @option{--verbose}.
3007 Estas duraciones también se pueden personalizar. Si establecemos la
3008 @code{common-shortest-duration} en @rinternals{SpacingSpanner},
3009 entonces éste establece la duración base para el espaciado. La
3010 duración máxima para esta base (normalmente una corchea), se fija a
3011 través de @code{base-shortest-duration}.
3013 @funindex common-shortest-duration
3014 @funindex base-shortest-duration
3015 @funindex stem-spacing-correction
3018 Las notas que son aún más breves que la nota común más breve van
3019 seguidas por un espacio proporcional a su duración en relación con la
3020 nota común más breve. Así pues, si fuésemos a añadir tan sólo algunas
3021 semicorcheas al ejemplo anterior, irían seguidas por medio ACB:
3023 @lilypond[quote,verbatim,relative=2]
3024 c2 c4. c8 c4. c16[ c] c4. c8 c8 c8 c4 c4 c4
3027 En el @emph{Ensayo sobre grabado musical automatizado},
3029 direcciones de las plicas influyen en el espaciado
3030 (véase @ressay{Espaciado óptico}). Esto se controla
3031 con la propiedad @code{stem-spacing-correction} en el objeto
3032 @rinternals{NoteSpacing}. Estos se generan para cada uno de los
3033 contextos de @rinternals{Voice}. El objeto @code{StaffSpacing}
3034 (generado en el contexto de @rinternals{Staff}) contiene la misma
3035 propiedad para controlar el espaciado de las líneas de plica o
3036 divisorias. El ejemplo siguiente muestra estas correcciones, una vez
3037 con los valores predeterminados y otra con correcciones exageradas:
3039 @lilypond[quote,ragged-right]
3043 \override Staff.NoteSpacing.stem-spacing-correction = #1.5
3044 \override Staff.StaffSpacing.stem-spacing-correction = #1.5
3050 Está contemplada la notación proporcional; consulte
3051 @ref{Notación proporcional}.
3054 Ensayo sobre grabado musical automatizado:
3055 @ressay{Espaciado óptico}.
3057 Fragmentos de código:
3060 Referencia de funcionamiento interno:
3061 @rinternals{SpacingSpanner},
3062 @rinternals{NoteSpacing},
3063 @rinternals{StaffSpacing},
3064 @rinternals{NonMusicalPaperColumn}.
3067 No existe ningún mecanismo conveniente para sobreescribir el espaciado
3068 manualmente. Se puede usar el siguiente rodeo para insertar espacio
3069 adicional en una partitura, ajustando el valor del relleno en la
3073 \override Score.NonMusicalPaperColumn.padding = #10
3076 No existe ningún rodeo para disminuir la magnitud de la separación.
3079 @node Área de espaciado nueva
3080 @subsection Área de espaciado nueva
3081 @translationof New spacing section
3083 @funindex \newSpacingSection
3084 @cindex área de espaciado nueva
3085 @cindex espaciado, nueva área de
3086 @cindex notas, espaciar horizontalmente
3088 Se pueden iniciar secciones nuevas con diferentes parámetros de
3089 espaciado, con @code{newSpacingSection}. Esto es útil cuando hay
3090 secciones que tienen distinta noción de las notas largas y cortas.
3092 En el ejemplo siguiente, el cambio de compás introduce una sección
3093 nueva, y por ello las semicorcheas se separan automáticamente
3094 de manera ligeramente más amplia.
3096 @lilypond[verbatim,quote]
3100 c8 c c4 c16[ c c8] c4
3107 La instrucción @code{\newSpacingSection} crea un nuevo objeto
3108 @code{SpacingSpanner} en ese momento musical. Si los ajustes de
3109 espaciado automáticos no dan el espaciado deseado, pueden
3110 aplicarse sobreescrituras manuales a sus propiedades con
3111 @code{\override}. Las sobreescrituras se deben aplicar en el
3112 mismo momento musical que la propia instrucción
3113 @code{\newSpacingSection}. Entonces afectarán al espaciado de
3114 toda la música que venga a continuación hasta que las propiedades
3115 se cambien en una nueva sección de espaciado, por ejemplo:
3117 @lilypond[verbatim,quote]
3122 \override Score.SpacingSpanner.spacing-increment = #2
3125 \revert Score.SpacingSpanner.spacing-increment
3132 Fragmentos de código:
3135 Referencia de funcionamiento interno:
3136 @rinternals{SpacingSpanner}.
3139 @node Cambiar el espaciado horizontal
3140 @subsection Cambiar el espaciado horizontal
3141 @translationof Changing horizontal spacing
3143 Se puede alterar el espaciado horizontal con la propiedad
3144 @code{base-shortest-duration}. Aquí compararemos la misma música, una
3145 vez sin alterar la propiedad, y luego alterándola. Los valores
3146 mayores de @code{ly:make-moment} producen música más pequeña. Observe
3147 que @code{ly:make-moment} construye una duración, por lo que @code{1
3148 4} es una duración mayor que @code{1 16}.
3150 @lilypond[verbatim,line-width=12\cm]
3153 g'4 e e2 | f4 d d2 | c4 d e f | g4 g g2 |
3154 g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3155 d4 d d d | d4 e f2 | e4 e e e | e4 f g2 |
3156 g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3161 @lilypond[verbatim,line-width=12\cm]
3164 g'4 e e2 | f4 d d2 | c4 d e f | g4 g g2 |
3165 g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3166 d4 d d d | d4 e f2 | e4 e e e | e4 f g2 |
3167 g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3172 \override SpacingSpanner.base-shortest-duration = #(ly:make-moment 1/16)
3180 De forma predeterminada, el espaciado en los grupos de valoración
3181 especial depende de varios factores ajenos a la duración (como
3182 alteraciones, cambios de clave, etc.). Para pasar por alto estos
3183 símbolos y forzar un espaciado de duraciones iguales uniforme, use
3184 @code{Score.SpacingSpanner.uniform-stretching}. Esta propiedad sólo
3185 puede cambiarse al principio de la partitura:
3187 @lilypond[quote,ragged-right,verbatim]
3191 \tuplet 5/4 { c8 c c c c } c8 c c c
3194 c8 c c c \tuplet 5/4 { c8 c c c c }
3200 \override SpacingSpanner.uniform-stretching = ##t
3206 Cuando se establece @code{strict-note-spacing}, las notas se separan
3207 sin tener en cuenta las claves, líneas divisorias ni notas de adorno:
3209 @lilypond[quote,ragged-right,fragment,verbatim]
3210 \override Score.SpacingSpanner.strict-note-spacing = ##t
3211 \new Staff \relative {
3212 c''8[ c \clef alto c \grace { c16 c } c8 c c] c32[ c] }
3216 Fragmentos de código:
3220 @node Longitud de la línea
3221 @subsection Longitud de la línea
3222 @translationof Line length
3224 @cindex saltos de página
3225 @cindex página, saltos de
3228 @funindex line-width
3229 @funindex ragged-right
3230 @funindex ragged-last
3232 @c Although line-width can be set in \layout, it should be set in paper
3233 @c block, to get page layout right.
3234 @c Setting indent in \paper block makes not much sense, but it works.
3236 @c Bit verbose and vague, use examples?
3237 Los ajustes más básicos que influyen en el espaciado son @code{indent}
3238 y @code{line-width}. Se definen en el bloque @code{\layout}.
3239 Controlan el sangrado de la primera línea de música y la longitud de
3242 Si se fija un valor verdadero para @code{ragged-right} en el bloque
3243 @code{\layout}, entonces los sistemas terminan en su longitud
3244 horizontal natural, en lugar de repartirse horizontalmente hasta
3245 llenar toda la línea. Esto es útil para fragmentos cortos, y para
3246 comprobar qué tan apretado es el espaciado natural.
3247 El valor normal predeterminado es falso, pero si la partitura
3248 tiene un solo sistema, el valor predeterminado es verdadero.
3250 @cindex diseño de página
3251 @cindex página, disposición de la
3252 @cindex vertical, espaciado
3254 La opción @code{ragged-last} es similar a @code{ragged-right}, pero
3255 afecta sólo a la última línea de la pieza. No se efectúa ninguna
3256 restricción sobre dicha línea. El resultado es similar al formateo de
3257 los párrafos de texto. En un párrafo, la última línea sencillamente
3258 ocupa su longitud horizontal natural.
3259 @c Note that for text there are several options for the last line.
3260 @c While Knuth TeX uses natural length, lead typesetters use the same
3261 @c stretch as the previous line. eTeX uses \lastlinefit to
3262 @c interpolate between both these solutions.
3273 Fragmentos de código:
3277 @node Notación proporcional
3278 @subsection Notación proporcional
3279 @translationof Proportional notation
3281 LilyPond contempla la notación proporcional, un tipo de espaciado
3282 horizontal en el que cada nota consume una medida horizontal que
3283 equivale exactamente a su duración rítmica. Este tipo de espaciado
3284 proporcional es comparable al espaciado horizontal hecho sobre un
3285 papel milimetrado. Ciertas partituras del finales del s.XX y
3286 principios del s.XXI utilizan notación proporcional para clarificar
3287 relaciones rítmicas complejas o para facilitar la colocación de líneas
3288 cronométricas u otros gráficos directamente en la partitura.
3290 LilyPond contempla cinco ajustes distintos para la notación
3291 proporcional, que se pueden usar solos o combinados:
3294 @item @code{proportionalNotationDuration}
3295 @item @code{uniform-stretching}
3296 @item @code{strict-note-spacing}
3297 @item @code{\remove "Separating_line_group_engraver"}
3298 @item @code{\override PaperColumn.used = ##t}
3301 En los ejemplos que siguen, exploramos el uso de estos cinco ajustes
3302 de la notación proporcional y examinamos la forma en que interactúan.
3304 Comenzamos con el siguiente ejemplo de un solo compás, que usa un
3305 espaciado clásico sin justificación por la derecha.
3307 @lilypond[quote,verbatim,ragged-right]
3310 \new RhythmicStaff {
3311 c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
3317 Observe que la blanca que inicia el compás ocupa mucho menos de la
3318 mitad de todo el espacio horizontal del compás. De forma similar, las
3319 semicorcheas y el cinquillo de semicorcheas con que finaliza el compás
3320 ocupan en conjunto mucho más de la mitad de todo el espacio horizontal
3323 En el grabado clásico, este espaciado puede ser exactamente el que
3324 deseamos porque podemos tomar prestado el espacio horizontal de la
3325 blanca y conservar el espacio horizontal a lo largo del compás como un
3328 Por otro lado, si queremos insertar una línea de tiempo graduada o
3329 algún otro gráfico encima o debajo de la partitura, necesitamos la
3330 notación proporcional. Se activa la notación proporcional con el
3331 ajuste @code{proportionalNotationDuration}.
3333 @lilypond[quote,verbatim,ragged-right]
3336 \new RhythmicStaff {
3337 c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
3343 proportionalNotationDuration = #(ly:make-moment 1/20)
3349 La blanca al principio del compás y las notas rápidas de la segunda
3350 mitad del compás ocupan ahora cantidades iguales de espacio
3351 horizontal. Podríamos colocar una línea de tiempo graduada o un
3352 gráfico encima o debajo de este ejemplo.
3354 El ajuste @code{proportionalNotationDuration} es un ajuste de contexto
3355 que reside en @code{Score}. Recordemos que los ajustes de contexto
3356 aparecen en uno de tres posibles lugares del archivo de entrada: en un
3357 bloque @code{\with}, en un bloque @code{\context}, o directamente
3358 entre la música precedido por la instrucción @code{\set}. Como con
3359 todos los ajustes de contexto, el usuario puede elegir en cuál de los
3360 tres lugares diferentes prefiere establecer el valor de
3361 @code{proportionalNotationDuration}.
3363 El ajuste @code{proportionalNotationDuration} acepta un solo
3364 argumento, que es la duración de referencia contra el que se aplica el
3365 espaciado de toda la música. La función Scheme de LilyPond
3366 @code{make-moment} acepta dos argumentos: un numerador y un
3367 denominador que, juntos, expresan una cierta fracción de redonda. La
3368 llamada @code{(ly:make-moment 1/20)}, por tanto, produce una duración
3369 de referencia de una nota de un veinteavo de redonda (semicorcheas de
3370 cinquillo). Son también posibles valores como
3371 @code{(ly:make-moment 1/16)},
3372 @code{(ly:make-moment 1/8)} y @code{(ly:make-moment 3/97)}.
3374 ¿Cómo seleccionamos la duración correcta de referencia para pasarla a
3375 @code{proportionalNotationDuration}? Normalmente mediante un proceso
3376 de ensayo y error, comenzando con una duración cercana a la más rápida
3377 (o más breve) duración de la pieza. Las duraciones de referencia más
3378 pequeñas aplican un espaciado más suelto; las duraciones de referencia
3379 más largas aplican un espaciado más apretado.
3381 @lilypond[quote,verbatim,ragged-right]
3384 \new RhythmicStaff {
3385 c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
3391 proportionalNotationDuration = #(ly:make-moment 1/8)
3398 \new RhythmicStaff {
3399 c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
3405 proportionalNotationDuration = #(ly:make-moment 1/16)
3412 \new RhythmicStaff {
3413 c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
3419 proportionalNotationDuration = #(ly:make-moment 1/32)
3425 Observe que una duración de referencia demasiado grande (como la
3426 corchea, en el ejemplo de arriba) produce un espaciado excesivamente
3427 apretado y puede ser causa de colisiones entre las cabezas de nota.
3428 Observe también que la notación proporcional en general ocupa más
3429 espacio horizontal que el espaciado clásico. El espaciado
3430 proporcional aporta claridad rítmica a expensas del espacio
3433 Ahora veremos cómo espaciar de forma óptima grupos de valoración
3434 especial que se superponen.
3436 Empezamos por examinar qué le ocurre a nuestro ejemplo original, con
3437 espaciado clásico, cuando añadimos un segundo pentagrama con un tipo
3438 diferente de grupo especial.
3440 @lilypond[quote,verbatim,ragged-right]
3443 \new RhythmicStaff {
3444 c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
3446 \new RhythmicStaff {
3447 \tuplet 9/8 { c'8 c' c' c' c' c' c' c' c' }
3453 El espaciado es defectuoso porque las notas regularmente espaciadas
3454 del pentagrama inferior no se amplían de manera uniforme. Los grabados
3455 clásicos incluyen muy pocos tresillos complejos y así las reglas del
3456 grabado clásico pueden generar este tipo de resultado. El
3457 establecimiento de @code{proportionalNotationDuration} lo
3460 @lilypond[quote,verbatim,ragged-right]
3463 \new RhythmicStaff {
3464 c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
3466 \new RhythmicStaff {
3467 \tuplet 9/8 { c'8 c' c' c' c' c' c' c' c' }
3473 proportionalNotationDuration = #(ly:make-moment 1/20)
3479 Pero si observamos con mucho cuidado podremos ver que las notas de la
3480 segunda mitad del 9-illo están espaciadas de forma ligeramente más
3481 ancha que las de la primera mitad del 9-illo. Para asegurar una
3482 ampliación uniforme, activamos @code{uniform-stretching}, que es una
3483 propiedad de @code{SpacingSpanner}.
3485 @lilypond[quote,verbatim,ragged-right]
3488 \new RhythmicStaff {
3489 c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
3491 \new RhythmicStaff {
3492 \tuplet 9/8 { c'8 c' c' c' c' c' c' c' c' }
3498 proportionalNotationDuration = #(ly:make-moment 1/20)
3499 \override SpacingSpanner.uniform-stretching = ##t
3505 Nuestro ejemplo de dos pentagramas ahora está espaciado exactamente,
3506 nuestras relaciones rítmicas son visualmente claras, y podemos incluir
3507 una línea de tiempo graduada o un gráfico, si queremos.
3509 Observe que el paquete de notación proporcional de LilyPond espera que
3510 todas las partituras proporcionales establezcan el atributo
3511 @code{uniform-stretching} de @code{SpacingSpanner} al valor ##t. El
3512 establecimiento de @code{proportionalNotationDuration} sin ajustar
3513 también el atributo @code{uniform-stretching} de @code{SpacingSpanner}
3514 al valor ##t causará, por ejemplo, que los desplazamientos
3515 (@code{skips}) consuman una cantidad de espacio horizontal incorrecta.
3517 El @code{SpacingSpanner} es un grob abstracto que reside en el
3518 contexto de @code{Score}. Como con nuestros ajustes de
3519 @code{proportionalNotationDuration}, las sobreescrituras al
3520 @code{SpacingSpanner} sólo pueden ocurrir en uno de estos tres lugares
3521 dentro del archivo de entrada: en el bloque @code{\with}, en el bloque
3522 @code{\context} o directamente dentro de la escritura de notas.
3524 De manera predeterminada, sólo hay un @code{SpacingSpanner} por
3525 @code{Score}. Esto supone que, por omisión, @code{uniform-stretching}
3526 está activado para la partitura completa o desactivado para la
3527 partitura completa. Sin embargo, podemos sobreescribir este
3528 comportamiento y activar distintas posibilidades de espaciado en
3529 distintos lugares de la partitura. Lo hacemos con la instrucción
3530 @code{\newSpacingSection}. Consulte @ref{Área de espaciado nueva}
3531 para más información.
3533 A continuación examinamos los efectos del grabador
3534 @code{Separating_line_group_engraver} y veremos por qué las partituras
3535 proporcionales con frecuencia eliminan este grabador. El ejemplo
3536 siguiente muestra que hay una pequeña cantidad de espacio
3537 @qq{preliminar} justo antes de la primera nota de cada sistema.
3539 @lilypond[quote,verbatim,ragged-right]
3551 Esta cantidad de espacio preliminar es la misma ya sea después de
3552 una indicación de compás, una armadura o una clave. El grabador
3553 @code{Separating_line_group_engraver} es responsable de este espacio.
3554 La eliminación de @code{Separating_line_group_engraver} reduce este
3557 @lilypond[quote,verbatim,ragged-right]
3563 \remove "Separating_line_group_engraver"
3571 Los elementos no musicales como la indicación de compás, la armadura,
3572 la clave y las alteraciones son problemáticos en notación
3573 proporcional. Ninguno de estos elementos tiene duración rítmica.
3574 Pero todos ellos consumen espacio horizontal. Las distintas
3575 partituras proporcionales abordan este problema de distinta manera.
3577 Sería posible evitar los problemas de espaciado con las armaduras,
3578 simplemente evitando tenerlas. Esta es una opción válida pues casi
3579 todas las partituras proporcionales son música contemporánea. Lo
3580 mismo puede valer para las indicaciones de compás, especialmente para
3581 las partituras que incluyen una línea de tiempo graduada u otro
3582 gráfico. Pero estas partituras son excepcionales y casi todas las
3583 partituras proporcionales incluyen al menos unas pocas indicaciones de
3584 compás. Las claves y las alteraciones son aún más esenciales.
3586 Así pues ¿qué estrategias existen para el espaciado de los elementos
3587 no musicales en un contexto proporcional? Una buena opción es la
3588 propiedad @code{strict-note-spacing} de @code{SpacingSpanner}.
3589 Compare las dos partituras siguientes:
3591 @lilypond[quote,verbatim,ragged-right]
3593 \set Score.proportionalNotationDuration = #(ly:make-moment 1/16)
3594 c''8 c'' c'' \clef alto d' d'2
3598 \set Score.proportionalNotationDuration = #(ly:make-moment 1/16)
3599 \override Score.SpacingSpanner.strict-note-spacing = ##t
3600 c''8 c'' c'' \clef alto d' d'2
3604 Las dos partituras son proporcionales, pero el espaciado de la
3605 primera es muy suelto a causa del cambio de clave. Sin embargo, el
3606 espaciado de la segunda partitura se mantiene estricto, porque
3607 @code{strict-note-spacing} está activado. La activación de
3608 @code{strict-note-spacing} hace que el ancho de las indicaciones de
3609 compás, armaduras, cambios de clave y alteraciones no tomen parte en
3610 el algoritmo de espaciado.
3612 Además de los ajustes dados aquí, hay otros que aparecen con
3613 frecuencia en las partituras proporcionales. Entre ellos están:
3616 @item @code{\override SpacingSpanner.strict-grace-spacing = ##t}
3617 @item @code{\set tupletFullLength = ##t}
3618 @item @code{\override Beam.breakable = ##t}
3619 @item @code{\override Glissando.breakable = ##t}
3620 @item @code{\override TextSpanner.breakable = ##t}
3621 @item @code{\remove "Forbid_line_break_engraver" in the Voice context}
3624 Estos ajustes dan a las notas de adorno un espaciado estricto,
3625 extienden los corchetes de grupo especial para que marquen tanto los
3626 puntos de comienzo como de final, y permiten que los elementos de
3627 extensión se dividan entre los sistemas y las páginas. Consulte las
3628 partes respectivas del manual para ver estos ajustes relacionados.
3631 Referencia de la notación:
3632 @ref{Área de espaciado nueva}.
3634 Fragmentos de código:
3638 @node Encajar la música en menos páginas
3639 @section Encajar la música en menos páginas
3640 @translationof Fitting music onto fewer pages
3642 En ocasiones, podemos terminar con uno o dos pentagramas en una
3643 segunda página (o tercera, o cuarta@dots{}). Es fastidioso,
3644 especialmente cuando vemos que las páginas anteriores parecen tener
3647 Al investigar los problemas de disposición, una herramienta de valor
3648 incalculable es @code{annotate-spacing}. Esta instrucción imprime los
3649 valores de un cierto número de variables de espaciado; para ver más
3650 detalles consulte la sección siguiente, @ref{Mostrar el espaciado}.
3653 * Mostrar el espaciado::
3654 * Cambiar el espaciado::
3658 @node Mostrar el espaciado
3659 @subsection Mostrar el espaciado
3660 @translationof Displaying spacing
3662 @cindex espaciado, presentación del
3663 @funindex annotate-spacing
3665 Para presentar gráficamente las dimensiones de las variables de
3666 disposición vertical que pueden verse alteradas por el formato de la
3667 página, establezca @code{annotate-spacing} en el bloque @code{\paper}:
3669 @lilypond[verbatim,quote,papersize=a6landscape]
3672 \paper { annotate-spacing = ##t }
3677 Todas las dimensiones de disposición se muestran en espacios de
3678 pentagrama, independientemente de las unidades especificadas en los
3679 bloques @code{\paper} o @code{\layout}. En el ejemplo anterior,
3680 @code{paper-height} tiene un valor de 59.75 @code{staff-spaces}
3681 (espacios de pentagrama), y el @code{staff-size} (tamaño del
3682 pentagrama) es de 20 puntos, el valor predeterminado. Observe que:
3684 @multitable {1 staff-space} {staff-size)/4 * (25.4/72.27) mm}
3687 @tab = (25.4/72.27) mm
3690 @tab = (@code{staff-size})/4 pts
3692 @tab = (@code{staff-size})/4 * (25.4/72.27) mm
3697 En este caso, un @code{staff-space} equivale aproximadamente a
3698 1.757mm. Así, la medida @code{paper-height} de 59.75
3699 @code{staff-spaces} equivale a 105 milímetros, la altura de una hoja
3700 @code{a6} en orientación apaisada. Las parejas (@var{a},@var{b}) son
3701 intervalos, donde @var{a} es el límite inferior y @var{b} es el límite
3702 superior del intervalo.
3705 Referencia de la notación:
3706 @ref{Establecer el tamaño del pentagrama}.
3708 Fragmentos de código:
3712 @node Cambiar el espaciado
3713 @subsection Cambiar el espaciado
3714 @translationof Changing spacing
3716 La salida de @code{annotate-spacing} revela las dimensiones verticales
3717 con gran detalle. Para ver más detalles acerca de la modificación de
3718 los márgenes y otras variables de diseño de la página, consulte
3719 @ref{Disposición de la página}.
3721 Aparte de los márgenes, hay algunas otras opciones para ahorrar espacio:
3725 Forzar los sistemas para que se junten lo más posible entre sí (de
3726 forma que quepan la mayor cantidad de ellos en la página) y al mismo
3727 tiempo estén espaciados de forma que no exista un espacio vacío en la
3728 parte baja del papel.
3732 system-system-spacing = #'((basic-distance . 0.1) (padding . 0))
3733 ragged-last-bottom = ##f
3739 Forzar el número de sistemas. Puede ser de utilidad de dos formas.
3740 Si tan sólo se establece un valor, incluso el mismo valor que el
3741 número de sistemas que se están trazando de forma predeterminada, ello
3742 ocasionará a veces que se traten de introducir más sistemas en cada
3743 página, pues en este caso se omite un paso en que se produce una
3744 estimación, dando así un encaje mejor en cada página. Asimismo, el
3745 forzar una reducción neta en el número de sistemas puede producir el
3746 ahorro de una página adicional. Por ejemplo, si la disposición
3747 predeterminada tiene 11 sistemas, la asignación siguiente fuerza una
3748 disposición con 10 sistemas.
3757 Forzar el número de páginas. Por ejemplo, la asignación
3758 siguiente fuerza una disposición con dos páginas.
3767 Evitar (o reducir en número) los objetos que aumentan el tamaño
3768 vertical de un sistema. Por ejemplo, las repeticiones de primera y
3769 segunda vez (o repeticiones con finales alternativos) necesitan
3770 espacio adicional. Si estas repeticiones se reparten a lo largo de
3771 dos sistemas, ocupan más espacio que un sistema con las casillas de
3772 repetición y otro sistema sin ellas. Por ejemplo, las indicaciones
3773 dinámicas que se @q{salen} de un sistema se pueden acercar al
3776 @lilypond[verbatim,quote]
3779 e4 c g-\tweak X-offset #-2.7 \f c
3784 Alterar el espaciado horizontal por medio de @code{SpacingSpanner}.
3785 Para ver más detalles, consulte @ref{Cambiar el espaciado horizontal}.
3786 El ejemplo siguiente ilustra el espaciado predeterminado:
3788 @lilypond[verbatim,quote]
3801 El ejemplo siguiente modifica @code{common-shortest-duration} de un
3802 valor de @code{1/4} (negra) a @code{1/2} (blanca). La negra es la
3803 nota más común y la más breve del ejemplo, por lo que al agrandar esta
3804 duración se produce un efecto de @q{apretujamiento}:
3806 @lilypond[verbatim,quote]
3818 \override SpacingSpanner.common-shortest-duration =
3819 #(ly:make-moment 1/2)
3826 La propiedad @code{common-shortest-duration} no se puede modificar de
3827 manera dinámica, por lo que se debe situar siempre dentro de un
3828 bloque @code{\context} de forma que se aplique a la partitura
3834 Referencia de la notación:
3835 @ref{Disposición de la página},
3836 @ref{Cambiar el espaciado horizontal}.
3838 Fragmentos de código: