1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
4 Translation of GIT committish: fe2cae0fa47ec4ec0184e6b3d15572fbcba881cf
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..
13 @node Problemas de espaciado
14 @chapter Problemas de espaciado
15 @translationof Spacing issues
17 La disposición global sobre el papel viene determinada por tres
18 factores: el diseño de página, los saltos de línea y el espaciado.
19 Estos factores influyen entre sí. La elección de uno u otro espaciado
20 determina qué densidad termina teniendo cada sistema de música. Esto
21 influye en el lugar en que se eligen los saltos de línea y, en último
22 término, en el número de páginas que tiene una partitura.
24 Considerado globalmente, este proceso se produce en cuatro fases: en
25 primer lugar se eligen unas distancias elásticas o @q{muelles},
26 basados en la duración de las figuras. Se prueban todas las
27 combinaciones de saltos de línea posibles, y para cada una de ellas se
28 calcula una puntuación de @q{maldad}. Después se hace una estimación
29 de la altura de cada uno de los posibles sistemas. Finalmente se
30 selecciona una combinación de saltos de página y de línea de tal forma
31 que ni el espaciado horizontal ni el vertical estén demasiado
32 estrechos ni estirados.
34 Los ajustes que influyen en la disposición se pueden agrupar en dos
35 bloques. El bloque @code{\paper @{...@}} se sitúa fuera de los
36 bloques @code{\score @{...@}} y contiene ajustes relacionados con el
37 documento como un todo. El bloque @code{\layout @{...@}} se sitúa
38 dentro de un bloque @code{\score @{...@}} y contiene ajustes para
39 dicha partitura en concreto. Si sólo tiene un bloque @code{\score
40 @{...@}}, los dos tienen el mismo efecto. En general las
41 instrucciones que se muestran en este capítulo se pueden poner en
42 cualquiera de los dos.
45 * El papel y las páginas::
46 * Disposición de la música::
48 * Espaciado vertical::
49 * Espaciado horizontal::
50 * Encajar la música en menos páginas::
54 @node El papel y las páginas
55 @section El papel y las páginas
56 @translationof Paper and pages
58 Esta sección se ocupa de los límites que definen la zona del papel en
59 que se puede imprimir la música.
63 * Formateo de las páginas::
67 @node Tamaño del papel
68 @subsection Tamaño del papel
69 @translationof Paper size
71 @cindex papel, tamaño del
72 @cindex página, tamaño de la
74 Existen dos funciones para cambiar el tamaño del papel:
75 @code{set-default-paper-size} (establecer tamaño de página
76 predeterminado) y @code{set-paper-size} (establecer tamaño de página).
77 @code{set-default-paper-size} se debe poner en el ámbito del nivel
78 superior, y @code{set-paper-size} se debe poner en un bloque
82 #(set-default-paper-size "a4")
87 #(set-paper-size "a4")
92 @code{set-default-paper-size} establece el tamaño de todas las
93 páginas, mientras que @code{set-paper-size} establece sólo el tamaño
94 de las páginas a las que se aplica el bloque @code{\paper}. Por
95 ejemplo, si el bloque @code{\paper} está al principio del archivo,
96 aplica el tamaño de papel a todas las páginas. Si el bloque
97 @code{\paper} está dentro de un bloque @code{\book}, entonces el
98 tamaño del papel sólo se aplica a ese libro.
100 Se encuentran disponibles los tamaños de papel más comunes, entre
101 ellos @code{a4}, @code{letter}, @code{legal} y @code{11x17} (conocido
102 también como tabloide). Están contemplados muchos más tamaños de papel
103 de forma predeterminada. Para ver más detalles, consulte
104 @file{scm/@/paper@/.scm} y busque la definición de @code{paper-alist}.
106 @c TODO add a new appendix for paper sizes (auto-generated) -pm
108 @warning{El tamaño predeterminado del papel es @code{a4}.}
110 Se pueden añadir tamaños adicionales editando la definición de
111 @code{paper-alist} en el archivo de inicio @file{scm/@/paper@/.scm},
112 aunque se sobreescribirán en la siguiente reinstalación del programa.
116 @cindex horizontal, papel
118 Si se añade el símbolo @code{'landscape} (apaisado) como argumento a
119 @code{set-default-paper-size}, las páginas se giran 90 grados y se
120 establece en consonancia una mayor longitud de las líneas.
123 #(set-default-paper-size "a6" 'landscape)
126 Al establecer el tamaño del papel se ajustan un cierto número de
127 variables del @code{\paper}, tales como los márgenes. Para utilizar
128 un tamaño de página determinado con variables de @code{\paper}
129 alteradas, establezca el tamaño de página antes de dar valores a las
135 @file{scm/@/paper@/.scm}.
137 Fragmentos de código:
141 @node Formateo de las páginas
142 @subsection Formateo de las páginas
143 @translationof Page formatting
145 Los márgenes, encabezamientos y pies de página y otras variables de
146 diseño de página se establecen automáticamente de acuerdo con el
149 El valor predeterminado de los márgenes está accesible en el archivo
150 @file{ly/@/paper@/-defaults@/-init@/.ly}. Estos valores se aplican al
151 tamaño predeterminado del papel (A4, a no ser que se especifique de
152 otra forma) y se escalan adecuadamente para otros tamaños del papel.
154 Esta sección relaciona y describe cierto número de variables del papel
155 que se pueden alterar.
158 * Dimensiones verticales::
159 * Dimensiones horizontales::
160 * Otras variables de diseño de página::
164 @node Dimensiones verticales
165 @unnumberedsubsubsec Dimensiones verticales
166 @translationof Vertical dimensions
168 Estas variables se utilizan para establecer las diferentes dimensiones
169 verticales de la página:
175 @item after-title-spacing
176 @funindex after-title-spacing
178 Especifica cómo calcular el espacio entre un título (o un elemento de
179 marcado del nivel superior) y el sistema que le sigue. Es una lista
180 asociativa con cinco componentes:
183 cantidad de espacio que puede ensancharse entre la línea base de un
184 título y el centro del pentagrama que le sigue;
186 cantidad mínima de espacio vacío que se debe dejar entre un título y
187 el pentagrama que le sigue;
188 @item @var{stretchability}:
189 facilidad con que el espacio ensanchable aumenta cuando se estira una
190 página. Si es cero, la distancia al pentagrama siguiente no se
191 ensancha en absoluto;
192 @item @var{minimum-distance}:
193 distancia mínima que poner entre la línea de base de un título y el
194 centro del pentagrama que le sigue. Se diferencia de @var{padding} en
195 que la altura de un pentagrama no tiene ningún efecto sobre la
196 aplicación de @var{minimum-distance} (mientras que la altura del
197 pentagrama es crucial para @var{padding}).
200 Por ejemplo, los valores predeterminados son:
203 after-title-spacing = #'((space . 2) (padding . 0.5))
207 Si una página tiene la parte de abajo no ajustada, @var{space} no se
208 ensancha. Concretamente, la distancia que resulta sobre esta página
212 @item @var{minimum-distance}, y
213 @item @var{padding} más la menor distancia necesaria para eliminar la superposición.
216 @item before-title-spacing
217 @funindex before-title-spacing
219 Especifica el espacio entre un sistema y el título (o elemento de
220 marcado del nivel superior) que le sigue. Las distancias se miden a
221 partir del centro del último pentagrama del sistema hasta la línea de
222 base del título que le sigue. Véase @var{after-title-spacing}.
224 @item between-scores-system-spacing
225 @funindex between-scores-system-spacing
227 Especifica el espacio entre dos sistemas si están en diferentes
228 partituras, pero no hay ningún título entre ellas. Véase
229 @var{after-title-spacing}.
231 @item between-system-spacing
232 @funindex between-system-spacing
234 Especifica el espacio entre el centro del pentagrama inferior de un
235 sistema y el centro del pentagrama superior del sistema siguiente.
236 Véase @var{after-title-spacing}.
238 @item between-title-spacing
239 @funindex between-title-spacing
241 Especifica el espacio entre dos títulos (o elementos de marcado del
242 nivel superior). Las distancias se miden a partir de la línea de base
243 de del primer título hasta la línea de base del segundo. Véase
244 @var{after-title-spacing}.
247 @funindex bottom-margin
249 Margen entre el pie y el final de la página. Valor predeterminado:
252 @item bottom-system-spacing
253 @funindex bottom-system-spacing
255 Especifica el espacio desde el centro del último pentagrama (o la
256 línea de base del último elemento de marcado del nivel superior) hasta
257 el final del área imprimible (es decir, el límite superior del margen
258 inferior). Véase @var{after-title-spacing}.
260 @item top-title-spacing
261 @funindex top-title-spacing
263 Especifica el espacio desde el principio del área imprimible (es
264 decir, el límite inferior del margen superior) hasta la línea de base
265 del título. Véase @var{after-title-spacing}.
267 @item top-system-spacing
268 @funindex top-system-spacing
270 Especifica el espacio desde el principio del área imprimible (es
271 decir, el límite inferior del margen superior) hasta el centro del
272 primer pentagrama. Sólo tiene efecto si no hay ningún título al
273 principio de la página (en cuyo caso se utiliza en su lugar
274 @var{top-title-spacing}). Véase @var{after-title-spacing}.
277 @funindex paper-height
279 Altura de la página. Predeterminado: altura del tamaño actual del
280 papel. Para ver más detalles, consulte @ref{Tamaño del papel}.
285 Margen entre el encabezamiento y la parte alta del papel.
286 Predeterminado: @code{5\mm}.
293 El encabezamiento y el pie se crean por parte de las funciones
294 @code{make-footer} y @code{make-header}, definidas dentro de
295 @code{\paper}. Las implementaciones predeterminadas están en
296 @file{ly/paper-defaults.ly} y en @file{ly/titling-init.ly}.
298 El diseño de la página en sí está realizado por dos funciones dentro
299 del bloque @code{\paper}, @code{page-music-height} y
300 @code{page-make-stencil}. El primero informa al algoritmo de saltos
301 de línea de la cantidad de espacio que está disponible en una página,
302 y el último crea la propia página dado el sistema que poner sobre
305 Se pueden definir valores del bloque @code{\paper} en Scheme. En tal
306 caso, @code{mm}, @code{in}, @code{pt}, y @code{cm} son variables que
307 están definidas en @file{paper-defaults.ly} con valores en milímetros.
308 Por ello el valor 2 cm se debe multiplicar en el siguiente ejemplo:
312 #(define bottom-margin (* 2 cm))
324 ragged-last-bottom = ##t
328 Este segundo ejemplo centra los números de página en la parte baja del
333 print-page-number = ##t
334 print-first-page-number = ##t
335 oddHeaderMarkup = \markup \fill-line @{ " " @}
336 evenHeaderMarkup = \markup \fill-line @{ " " @}
337 oddFooterMarkup = \markup @{ \fill-line @{
338 \bold \fontsize #3 \on-the-fly #print-page-number-check-first
339 \fromproperty #'page:page-number-string @} @}
340 evenFooterMarkup = \markup @{ \fill-line @{
341 \bold \fontsize #3 \on-the-fly #print-page-number-check-first
342 \fromproperty #'page:page-number-string @} @}
346 También podemos definir estos valores en Scheme. En tal caso,
347 @code{mm}, @code{in}, @code{pt} y @code{cm} son variables definidas en
348 @file{paper@/-defaults@/-init@/.ly} con valores en milímetros. Es la
349 razón por la que el valor se debe multiplicar en el ejemplo
353 #(define bottom-margin (* 2 cm))
357 El encabezamiento y el pie se crean por parte de las funciones
358 @code{make-footer} y @code{make-header}, definidas en @code{\paper}.
359 Las implementaciones predeterminadas están en
360 @file{ly/@/paper@/-defaults@/-init@/.ly} y en
361 @file{ly/@/titling@/-init@/.ly}.
363 La propia disposición de la página se realiza por parte de dos
364 funciones del bloque @code{\paper}, @code{page-music-height} y
365 @code{page-make-stencil}. La primera dice al algoritmo de saltos de
366 línea cuánto espacio se puede emplear en la página, y la segunda crea
367 la página en sí dado el sistema que poner en ella.
371 Referencia de la notación:
372 @ref{Espaciado vertical entre sistemas}.
374 Fragmentos de código:
378 @node Dimensiones horizontales
379 @unnumberedsubsubsec Dimensiones horizontales
380 @translationof Horizontal dimensions
383 Existe un cierto número de variables que determinan las dimensiones
384 horizontales de una página:
389 @funindex binding-offset
391 Se aumenta la cantidad @code{inner-margin} para asegurar que el
392 encuadernado no va a tapar nada. Sólo funciona con @code{two-sided}
393 establecido al valor verdadero. Valor predeterminado: @code{0}.
395 @item horizontal-shift
396 @funindex horizontal-shift
398 Medida en que todos los sistemas (incluidos los títulos de cabecera y
399 los separadores de sistemas) se desplazan a la derecha.
400 Predeterminado: @code{0.0}.
405 Nivel de sangrado para el primer sistema de una partitura. Valor
406 predeterminado: @code{15\mm}.
409 @funindex inner-margin
411 Margen que tienen todas las páginas en el lado interior si son parte
412 de un libro. Sólo funciona con @code{two-sided} establecido al valor
413 verdadero. Valor predeterminado: @code{10\mm}.
416 @funindex left-margin
418 El margen entre el límite izquierdo del papel y el comienzo de los
419 sistemas. Predeterminado: @code{10\mm}.
424 Ancho de los sistemas. Predeterminado: @code{paper-width} menos
425 @code{left-margin} y @code{right-margin}.
428 @funindex outer-margin
430 Margen que todas las páginas tienen en la parte exterior si son parte
431 de un libro. Sólo funciona con @code{two-sided} establecido al valor
432 verdadero. Valor predeterminado: @code{20\mm}.
435 @funindex paper-width
437 Ancho de la página. Predeterminado: la anchura del tamaño actual del
438 papel. Para ver más detalles, consulte @ref{Tamaño del papel}.
441 @funindex right-margin
443 Margen entre el borde derecho de la página y el final de cada sistema.
444 Valor predeterminado: @code{10\mm}.
447 @funindex short-indent
449 Nivel de sangrado para todos los sistemas de una partitura excepto el
450 primero. Predeterminado: @code{0}.
454 Si hay valores sin ajustar, se toman los predeterminados. Se ajusta
455 su valor exacto, dependiendo del tamaño de papel especificado. Por el
456 momento, los siguientes valores se ven afectados por este escalado:
459 @item @var{left-margin}
460 @item @var{right-margin}
461 @item @var{top-margin}
462 @item @var{bottom-margin}
463 @item @var{head-separation}
464 @item @var{foot-separation}
466 @item @var{short-indent}
469 Los ajustes para @code{line-width}, @code{left-margin},
470 @code{right-margin} y @code{paper-width} dependen entre sí, pero no
471 tienen que especificarse completamente.
479 En este ejemplo, sólo se establece un valor para @code{left-margin}.
480 El valor de @code{right-margin} sigue siendo el predeterminado,
481 @code{line-width} se calcula automáticamente.
489 Aquí @code{left-margin} y @code{right-margin} se ajustan al mismo
490 valor. Por tanto, @code{line-width} se sustrae de @code{paper-width}
491 y se divide entre dos. Esto significa que los sistemas se imprimen
492 centrados en la página, si sólo se especifica @code{line-width}.
494 Tienen lugar algunas comprobaciones para asegurar que los valores se
495 establecen correctamente. Si los valores no encajasen o los sistemas
496 se fueran a salir de la página, se imprime una advertencia y se
497 establecen los valores predeterminados.
508 Estas comprobaciones se pueden evitar estableciendo
509 @code{check-consistency} al valor falso.
516 check-consistency = ##f
520 @warning{Si @code{paper-width} se ajusta manualmente,
521 @code{line-width}, @code{left-margin}, @code{indent} y
522 @code{short-indent} podrían tener que ajustarse también.}
525 Fragmentos de código:
530 @node Otras variables de diseño de página
531 @unnumberedsubsubsec Otras variables de diseño de página
532 @translationof Other layout variables
534 Estas variables se pueden usar para ajustar el diseño de la página en
539 @item auto-first-page-number
540 @funindex auto-first-page-number
542 El algoritmo de división de páginas está afectado por el hecho de que
543 el número de la primera página sea par o impar. Si está establecido
544 al valor verdadero, el algoritmo de división de páginas decide si
545 comenzar con un número par o impar. Esto hace que el número de la
546 primera página se quede como está, o que se aumente en una unidad.
547 Predeterminado: @code{##f}.
551 FIXME: this variable is used, but I don't know what it does. -pm
552 @item blank-after-score-page-force
553 @funindex blank-after-score-page-force
559 @item blank-last-page-force
560 @funindex blank-last-page-force
562 Penalización por terminar la partitura en una página de numeración
563 impar. Predeterminado: @code{0}.
565 @item blank-page-force
566 @funindex blank-page-force
568 Penalización por tener una página en blanco en medio de una partitura.
569 Esto no se usa por parte de @code{ly:optimal-breaking} porque éste
570 nunca considera la posibilidad de tener páginas en blanco en mitad de
571 una partitura. Predeterminado: @code{5}.
573 @item check-consistency
574 @funindex check-consistency
576 Si es verdadero, comprobar si @code{left-margin}, @code{right-margin}
577 y @code{line-width} encajan entre sí. También asegurar que su
578 combinación no excede del @code{paper-width} disponible. Valor
579 predeterminado: @code{##t}.
581 @item first-page-number
582 @funindex first-page-number
584 Valor del número de la primera página. Predeterminado: @code{#1}.
586 @item max-systems-per-page
587 Máximo número de sistemas que tendrán cabida en una página. Está
588 contemplado por el momento solamente por parte del algoritmo
589 @code{ly:optimal-breaking}. Predeterminado: no establecido.
591 @item min-systems-per-page
592 Mínimo número de sistemas que habrá en una página. Puede hacer que
593 las páginas se llenen en exceso si se establece a un valor grande.
594 Por el momento solamente está contemplado por parte del algoritmo
595 @code{ly:optimal-breaking}. Predeterminado: no establecido.
597 @item page-breaking-between-system-spacing
598 @funindex page-breaking-between-system-spacing
600 Engaña al divisor de páginas para que crea que
601 @code{between-system-spacing} está establecido a algo distinto de lo
602 que está realmente. Por ejemplo, si
603 @code{page-breaking-between-system-spacing #'padding} se establece a algo
604 mucho mayor que @code{between-system-spacing #'padding}, entonces
605 el divisor de páginas colocará menos sistemas en cada página.
606 Predeterminado: no establecido.
611 Número de páginas que usar para una partitura. Predeterminado: sin
614 @item page-limit-inter-system-space
615 @funindex page-limit-inter-system-space
617 Si tiene un valor verdadero, limita el espacio entre los sistemas de
618 una página en la que sobra mucho espacio. Predeterminado: @code{##f}.
619 Para ver más detalles, consulte @ref{Espaciado vertical entre sistemas}.
621 @item page-limit-inter-system-space-factor
622 @funindex page-limit-inter-system-space-factor
624 Factor usado por @code{page-limit-inter-system-space}.
625 Predeterminado: @code{1.4}. Para ver más detalles, consulte
626 @ref{Espaciado vertical entre sistemas}.
628 @item page-spacing-weight
629 @funindex page-spacing-weight
631 Importancia relativa del espacio (vertical) de las páginas y el
632 espaciado (horizontal) de las líneas. Los valores altos hacen que el
633 espaciado de la página tenga más importancia. Predeterminado:
636 @item print-all-headers
637 @funindex print-all-headers
639 Si está establecido a un valor verdadero, imprime todas las cabeceras
640 para cada una de las @code{\score} en la salida impresa. Normalmente
641 sólo se imprimen las variables de encabezamiento de pieza y opus.
642 Predeterminado: @code{##f}.
644 @item print-first-page-number
645 @funindex print-first-page-number
647 Si está establecido a un valor verdadero, se imprime un número de
648 página en la primera página. Predeterminado: @code{##f}.
650 @item print-page-number
651 @funindex print-page-number
653 Si está establecido a un valor falso, no se imprimen los números de
654 página. Predeterminado: @code{##t}.
657 @funindex ragged-bottom
659 Si está establecido a un valor verdadero, los sistemas no ocuparán
660 verticalmente toda la altura de la página. Esto no afecta a la última
661 página. Predeterminado: @code{##f}.
663 Esto se debería establecer al valor verdadero para piezas que tienen
664 sólo dos o tres sistemas por página, por ejemplo partituras
668 @funindex ragged-last
670 Si está establecido a un valor verdadero, el último sistema de la
671 partitura no llenará la anchura de la línea. En su lugar, el último
672 sistema termina en su longitud horizontal natural. Predeterminado:
675 @item ragged-last-bottom
676 @funindex ragged-last-bottom
678 Si está establecido a un valor falso, los sistemas se repartirán
679 verticalmente por toda la última página. Predeterminado: @code{##t}.
681 Las piezas que llenan generosamente dos o más páginas deberían tener
682 esto establecido al valor verdadero.
684 También afecta a la última página de las partes de libro, es decir,
685 partes de un libro que se han creado con bloques @code{\bookpart}.
688 @funindex ragged-right
690 Si está establecido a un valor verdadero, los sistemas no llenarán el
691 ancho de línea disponible. En su lugar, los sistemas terminan en su
692 longitud horizontal natural. Predeterminado: @code{##f}.
694 Si la partitura sólo tiene un sistema, el valor predeterminado es
697 @item system-separator-markup
698 @funindex system-separator-markup
700 Objeto de marcado que se inserta entre los sistemas. Se suele usar
701 para partituras orquestales. Predeterminado: sin establecer.
703 Se ofrece la instrucción de marcado @code{\slashSeparator} como un
704 valor predeterminado apropiado, por ejemplo
706 @lilypond[quote,ragged-right]
707 #(set-default-paper-size "a6" 'landscape)
710 \relative c' { c1 \break c1 }
713 system-separator-markup = \slashSeparator
719 @funindex system-count
721 Cantidad de sistemas que usar por parte de la partitura.
722 Predeterminado: sin establecer.
724 @item systems-per-page
725 @funindex systems-per-page
727 Número de sistemas que se deben colocar en cada página. Está
728 contemplado solamente por parte del algoritmo
729 @code{ly:optimal-breaking} por el momento. Predeterminado: no
735 @cindex encuadernación
736 @cindex margen de encuadernación
738 Si es verdadero, usar @code{inner-margin}, @code{outer-margin} y
739 @code{binding-offset} para determinad los márgenes dependiendo de si
740 el número de página es par o impar. Esto sobreescribe a
741 @code{left-margin} y a @code{right-margin}. Valor predeterminado:
748 Fragmentos de código:
754 El encabezamiento de página predeterminado pone el número de página y
755 el campo @code{instrument} del bloque @code{\header} sobre la misma
758 Los títulos de cabecera (tomados de la sección @code{\header@{@}}) se
759 tratan como un sistema, por lo que @code{ragged-bottom} y
760 @code{ragged-last-bottom} añaden espacio entre los títulos y el primer
761 sistema de la partitura.
764 @node Disposición de la música
765 @section Disposición de la música
766 @translationof Music layout
769 * Establecer el tamaño del pentagrama::
770 * Disposición de la partitura::
774 @node Establecer el tamaño del pentagrama
775 @subsection Establecer el tamaño del pentagrama
776 @translationof Setting the staff size
778 @cindex tipografía, establecer tamaño de
779 @cindex pentagrama, establecer tamaño de
780 @funindex layout file
782 El @strong{tamaño de pentagrama} predeterminado se establece en 20
783 puntos. Esto se puede modificar de dos maneras:
785 Para establecer globalmente el tamaño del pentagrama para todas las
786 partituras de un archivo (o en un bloque @code{book}, para ser
787 exactos), utilice @code{set-global-staff-size}.
790 #(set-global-staff-size 14)
794 Esto establece el tamaño global predeterminado a una altura de
795 pentagrama de 14pt y escala todas las tipografías según corresponda.
797 Para establecer el tamaño del pentagrama de forma individual para cada
803 #(layout-set-staff-size 15)
808 La fuente tipográfica Feta ofrece símbolos musicales a ocho tamaños
809 distintos. Cada fuente tipográfica está afinada para un tamaño de
810 pentagrama distinto: a un tamaño menor la tipografía se vuelve más
811 pesada, para que coincida con las líneas de pentagrama relativamente
812 más gruesas. Los tamaños de tipografía recomendados están
813 relacionados en la tabla siguiente:
816 @multitable @columnfractions .15 .2 .22 .2
818 @item @b{nombre de la fuente}
819 @tab @b{altura del pentagrama (pt)}
820 @tab @b{altura del pentagrama (mm)}
826 @tab partituras de bolsillo
851 @tab particellas estándar
862 @c modern rental material?
867 Estas tipografías están disponibles en cualquier tamaño. La propiedad
868 de contexto @code{fontSize} y la propiedad de disposición
869 @code{staff-space} (en @rinternals{StaffSymbol}) se pueden usar para
870 afinar el tamaño de los pentagramas individuales. Los tamaños de
871 pentagrama individuales están en relación al tamaño global.
875 Referencia de la notación:
876 @ref{Seleccionar el tamaño de la tipografía para la notación}.
878 Fragmentos de código:
884 @code{layout-set-staff-size} no cambia la distancia entre las líneas
888 @node Disposición de la partitura
889 @subsection Disposición de la partitura
890 @translationof Score layout
894 Mientras que @code{\paper} contiene ajustes relativos al formato de
895 página del documento completo, @code{\layout} contiene ajustes para la
896 disposición específica de cada partitura.
902 \override VerticalAxisGroup #'minimum-Y-extent = #'(-6 . 6)
905 \override TextScript #'padding = #1.0
906 \override Glissando #'thickness = #3
913 Referencia de la notación:
914 @ref{Cambiar los valores por omisión de los contextos}.
916 Fragmentos de código:
922 @translationof Breaks
927 * Saltos de página óptimos::
928 * Paso de página óptimo::
929 * Saltos de página mínimos::
930 * Saltos de línea explícitos::
931 * Utilizar una voz adicional para los saltos de línea::
935 @node Saltos de línea
936 @subsection Saltos de línea
937 @translationof Line breaking
939 @cindex saltos de línea
940 @cindex línea, saltos de
942 Normalmente los saltos de línea se determinan automáticamente. Se
943 eligen de forma que las líneas no aparezcan demasiado apretadas ni
944 demasiado sueltas, y que las líneas consecutivas tengan una densidad
945 similar. Ocasionalmente podemos querer sobreescribir los saltos
946 automáticos; podemos hacerlo especificando @code{\break}. Esto fuerza
947 un salto de línea en ese punto. Sin embargo, los saltos de línea sólo
948 pueden suceder al final de los compases @q{completos}, es decir, donde
949 no queda ninguna nota o grupo especial @q{colgando} por encima de la
950 línea divisoria. Si queremos poner un salto de línea donde no hay
951 línea divisoria, podemos forzar una barra de compás invisible
952 introduciendo @code{\bar ""}, aunque de nuevo no deben quedar notas
953 colgando en ninguno de los pentagramas en este punto, o se ignorarán.
955 La instrucción opuesta, @code{\noBreak}, prohíbe un salto de línea en
956 la barra divisoria en que se inserta.
958 Los ajustes más básicos que influyen sobre el espaciado de las líneas
959 son @code{indent} y @code{line-width}. Se establecen dentro del bloque
960 @code{\layout}. Controlan el sangrado de la primera línea de música,
961 y la longitud de las líneas.
963 Si se establece @code{ragged-right} a verdadero en el bloque
964 @code{\layout}, los sistemas terminan en su longitud horizontal
965 natural, en lugar de distribuirse horizontalmente para llenar toda la
966 línea. Esto es de utilidad para fragmentos cortos, y para efectuar una
967 comprobación de lo apretado que es el espaciado natural.
969 @c TODO Check and add para on default for ragged-right
971 La opción @code{ragged-last} es similar a @code{ragged-right}, pero
972 afecta sólo a la última línea de la pieza.
984 @cindex saltos de línea normales
985 @cindex música de cuatro compases por línea
987 Para saltos de línea a intervalos regulares utilice @code{\break}
988 separado mediante desplazamientos con @code{\skip} y repetidos con
989 @code{\repeat}. Por ejemplo, esto haría que los 28 compases
990 siguientes (suponiendo un compás de 4/4) se dividan cada cuatro
991 compases, y sólo en dichos lugares:
994 << \repeat unfold 7 @{
995 s1 \noBreak s1 \noBreak
996 s1 \noBreak s1 \break @}
997 @emph{the real music}
1002 Una configuración de división de líneas se puede guardar como archivo
1003 @code{.ly} automáticamente. Ello permite que alineaciones verticales
1004 se estiren para que encajen en las páginas durante una segunda
1005 ejecución del proceso de formateo. Esta posibilidad es bastante
1006 novedosa y difícil. Hay más detalles disponibles en @rlsr{Spacing}.
1018 Referencia de funcionamiento interno:
1019 @rinternals{LineBreakEvent}.
1021 Fragmentos de código:
1027 Sólo pueden ocurrir saltos de línea si hay una @q{buena} línea
1028 divisoria. Una nota colgando de una línea divisoria no es adecuada,
1031 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
1032 c4 c2 << c2 {s4 \break } >> % this does nothing
1033 c2 c4 | % a break here would work
1034 c4 c2 c4 ~ \break % as does this break
1038 Esto se puede evitar eliminando el grabador
1039 @code{Forbid_line_break_engraver}. Observe que los saltos de línea
1040 forzados manualmente se tienen que añadir en paralelo con la música.
1042 @lilypond[quote,ragged-right,verbatim]
1044 \remove Forbid_line_break_engraver
1046 c4 c2 << c2 {s4 \break } >> % now the break is allowed
1051 De forma parecida, los saltos de línea están prohibidos normalmente
1052 cuando las barras cruzan a las líneas divisorias. Este comportamiento
1053 se puede modificar con el establecimiento de @code{\override Beam
1057 @node Saltos de página
1058 @subsection Saltos de página
1059 @translationof Page breaking
1061 Se puede sobreescribir el mecanismo predeterminado de salto de página
1062 insertando instrucciones @code{\pageBreak} o @code{\noPageBreak}.
1063 Estas instrucciones son análogas a @code{\break} y @code{\noBreak}.
1064 Se deben insertar en una línea divisoria. Estas instrucciones fuerzan
1065 y prohíben, respectivamente, la eventualidad de un salto de página.
1066 Por supuesto, la instrucción @code{\pageBreak} también fuerza un salto
1069 Las instrucciones @code{\pageBreak} y @code{\noPageBreak} también se
1070 pueden insertar en el nivel más alto, entre las partituras y los
1071 elementos de marcado situados en el nivel superior.
1073 Hay ajustes análogos a @code{ragged-right} y @code{ragged-last} que
1074 tienen el mismo efecto sobre el espaciado vertical:
1075 @code{ragged-bottom} y @code{ragged-last-bottom}. Si están
1076 establecidos a @code{##t} los sistemas de todas las páginas o sólo de
1077 la última página, respectivamente, no se verán justificados
1080 Para ver más detalles, consulte @ref{Espaciado vertical}.
1082 Los saltos de página se calculan por medio de la función
1083 @code{page-breaking}. LilyPond ofrece tres algoritmos para el cómputo
1084 de los saltos de página: @code{ly:optimal-breaking},
1085 @code{ly:page-turn-breaking} y @code{ly:minimal-breaking}. El
1086 predeterminado es @code{ly:optimal-breaking}, pero el valor se puede
1087 cambiar en el bloque @code{\paper}:
1091 #(define page-breaking ly:page-turn-breaking)
1097 Cuando un libro tiene muchas partituras y páginas, puede ser difícil
1098 resolver el problema de los saltos de página, necesitando mucha
1099 memoria y prolongados tiempos de procesamiento. Para facilitar el
1100 proceso de división en páginas, se usan los bloques @code{\bookpart}
1101 para dividir el libro en varias partes: los saltos de página se
1102 producen de manera independiente en cada parte. También se pueden
1103 usar diferentes funciones de división en páginas para las distintas
1109 subtitle = "Prefacio"
1112 %% En una parte que consiste en texto principalmente,
1113 %% puede ser preferible ly:minimal-breaking
1114 #(define page-breaking ly:minimal-breaking)
1116 \markup @{ @dots{} @}
1120 %% En esta parte, consistente en música, se usa la función
1121 %% óptima predeterminada de saltos de página.
1123 subtitle = "Primer movimiento"
1125 \score @{ @dots{} @}
1132 @funindex \pageBreak
1134 @funindex \noPageBreak
1135 @code{\noPageBreak}.
1140 Fragmentos de código:
1144 @node Saltos de página óptimos
1145 @subsection Saltos de página óptimos
1146 @translationof Optimal page breaking
1148 @funindex ly:optimal-breaking
1150 La función @code{ly:optimal-breaking} es el método predeterminado de
1151 LilyPond para determinar los saltos de página. Intenta hallar una
1152 división de páginas que haga mínimos el apretujamiento y la
1153 distensión, tanto horizontal como verticalmente. A diferencia de
1154 @code{ly:page-turn-breaking}, no tiene un concepto de los pasos de
1159 Fragmentos de código:
1163 @node Paso de página óptimo
1164 @subsection Paso de página óptimo
1165 @translationof Optimal page turning
1167 @funindex ly:page-turn-breaking
1169 Con frecuencia es necesario encontrar una configuración de división de
1170 páginas de manera que haya un silencio al final de una página de cada
1171 dos. De esta forma, el músico puede pasar la página sin perder notas.
1172 La función @code{ly:page-turn-breaking} trata de encontrar una
1173 división de páginas que haga mínimos el apretujamiento y el
1174 estiramiento, pero con la restricción añadida de que sólo se permite
1175 introducir vueltas de página en los lugares especificados.
1177 Hay dos etapas en el uso de esta función de división de páginas. En
1178 primer lugar debemos habilitarlo en el bloque @code{\paper}, como se
1179 explicó en @ref{Saltos de página}. Entonces debemos decirle a la función
1180 dónde nos gustaría permitir los saltos de página.
1182 Hay dos formas de conseguir la segunda tarea. Primero, podemos
1183 especificar manualmente cada uno de los pasos de página potenciales,
1184 insertando @code{\allowPageTurn} en nuestro archivo de entrada en los
1187 Si esto es demasiado tedioso, podemos añadir un grabador
1188 @code{Page_turn_engraver} a un contexto Staff o Voice. El grabador
1189 @code{Page_turn_engraver} analizará el contexto en busca de secciones
1190 sin notas (observe que no busca silencios, sino la ausencia de notas.
1191 Se hace así para que la polifonía en un solo pentagrama con silencios
1192 en una de las voces no arruine la labor del grabador
1193 @code{Page_turn_engraver}). Cuando encuentra una sección sin notas
1194 suficientemente larga, el grabador @code{Page_turn_engraver} inserta
1195 un @code{\allowPageTurn} en la última barra de compás de dicha
1196 sección, a no ser que haya una barra @q{especial} de compás (como una
1197 doble barra), en cuyo caso se insertará el @code{\allowPageTurn} en la
1198 última barra @q{especial} de compás de la sección.
1200 @funindex minimumPageTurnLength
1201 El grabador @code{Page_turn_engraver} lee la propiedad de contexto
1202 @code{minimumPageTurnLength} para determinar qué longitud debe tener
1203 una sección sin notas antes de que se considere la posibilidad de un
1204 paso de página. El valor predeterminado para
1205 @code{minimumPageTurnLength} es @code{#(ly:make-moment 1 1)}. Si
1206 quiere inhabilitar las vueltas de página, puede establecerlo a algún
1210 \new Staff \with @{ \consists "Page_turn_engraver" @}
1213 R1 | % a page turn will be allowed here
1215 \set Staff.minimumPageTurnLength = #(ly:make-moment 5 2)
1216 R1 | % a page turn will not be allowed here
1218 R1*2 | % a page turn will be allowed here
1223 @funindex minimumRepeatLengthForPageTurn
1224 El grabador @code{Page_turn_engraver} detecta las repeticiones de
1225 primera y segunda vez. Sólo permite un pase de página durante la
1226 repetición si hay suficiente tiempo al principio y al final de la
1227 repetición para volver a pasar la página hacia atrás. El grabador
1228 @code{Page_turn_engraver} también puede inhabilitar los pasos de
1229 página si la repetición es muy corta. Si establecemos la propiedad de
1230 contexto @code{minimumRepeatLengthForPageTurn} entonces el grabador
1231 @code{Page_turn_engraver} sólo permitirá los pases de página en las
1232 repeticiones cuya duración sea mayor que este valor.
1234 Las instrucciones de paso de página, @code{\pageTurn},
1235 @code{\noPageTurn} y @code{\allowPageTurn}, se pueden usar también en
1236 el nivel más elevado del código, entre las partituras y los elementos
1237 de marcado del nivel superior.
1243 @funindex \noPageTurn
1245 @funindex \allowPageTurn
1246 @code{\allowPageTurn}.
1251 Fragmentos de código:
1257 Sólo debería haber un grabador @code{Page_turn_engraver} dentro de una
1258 partitura. Si hay más de uno, se interferirán entre sí.
1261 @node Saltos de página mínimos
1262 @subsection Saltos de página mínimos
1263 @translationof Minimal page breaking
1265 @funindex ly:minimal-breaking
1267 La función @code{ly:minimal-breaking} efectúa unos cálculos mínimos
1268 para determinar los saltos de página: completa una página con tantos
1269 sistemas como sea posible antes de continuar con la siguiente. Así,
1270 puede preferirse para partituras con muchas páginas, donde las otras
1271 funciones de salto de página pueden resultar demasiado lentas o ávidas
1272 de memoria, o con una gran cantidad de textos. Se habilita utilizando:
1276 #(define page-breaking ly:minimal-breaking)
1282 Fragmentos de código:
1286 @node Saltos de línea explícitos
1287 @subsection Saltos de línea explícitos
1288 @translationof Explicit breaks
1290 Lily a veces rechaza las instrucciones @code{\break} y
1291 @code{\pageBreak} explícitas. Hay dos instrucciones para
1292 sobreescribir este comportamiento:
1295 \override NonMusicalPaperColumn #'line-break-permission = ##f
1296 \override NonMusicalPaperColumn #'page-break-permission = ##f
1299 Cuando se sobreescribe el valor de @code{line-break-permission} a
1300 falso, Lily inserta saltos de línea en las instrucciones @code{\break}
1301 explícitas y en ningún otro lugar. Cuando se sobreescribe el valor de
1302 @code{page-break-permission} a falso, Lily inserta saltos de página en
1303 las instrucciones @code{\pageBreak} explícitas y en ningún otro lugar.
1305 @lilypond[quote,verbatim]
1314 \override NonMusicalPaperColumn #'line-break-permission = ##f
1315 \override NonMusicalPaperColumn #'page-break-permission = ##f
1318 \repeat unfold 2 { c'8 c'8 c'8 c'8 } \break
1319 \repeat unfold 4 { c'8 c'8 c'8 c'8 } \break
1320 \repeat unfold 6 { c'8 c'8 c'8 c'8 } \break
1321 \repeat unfold 8 { c'8 c'8 c'8 c'8 } \pageBreak
1322 \repeat unfold 8 { c'8 c'8 c'8 c'8 } \break
1323 \repeat unfold 6 { c'8 c'8 c'8 c'8 } \break
1324 \repeat unfold 4 { c'8 c'8 c'8 c'8 } \break
1325 \repeat unfold 2 { c'8 c'8 c'8 c'8 }
1333 Fragmentos de código:
1337 @node Utilizar una voz adicional para los saltos de línea
1338 @subsection Utilizar una voz adicional para los saltos de línea
1339 @translationof Using an extra voice for breaks
1341 La información sobre saltos de línea y de página suele aparecer
1342 directamente entremezclado dentro del código de notas.
1347 \repeat unfold 2 @{ c'4 c'4 c'4 c'4 @}
1349 \repeat unfold 3 @{ c'4 c'4 c'4 c'4 @}
1354 Esto hace sencillas de introducir a las instrucciones @code{\break} y
1355 @code{\pageBreak}, pero mezcla la escritura de música con información
1356 que especifica cómo se debe disponer la música sobre la página.
1357 Podemos mantener la introducción de música y la información de saltos
1358 de línea y de página en dos lugares separados mediante la introducción
1359 de una voz adicional que contenga los saltos. Esta voz adicional
1360 contiene solamente desplazamientos o @q{skips} junto con los
1361 @code{\break}, @code{pageBreak} y otras informaciones sobre la
1362 disposición de los saltos.
1364 @lilypond[quote,verbatim]
1374 \repeat unfold 2 { c'4 c'4 c'4 c'4 }
1375 \repeat unfold 3 { c'4 c'4 c'4 c'4 }
1376 \repeat unfold 6 { c'4 c'4 c'4 c'4 }
1377 \repeat unfold 5 { c'4 c'4 c'4 c'4 }
1383 Este patrón resulta especialmente útil cuando se sobreescribe
1384 @code{line-break-system-details} y las otras útiles (pero largas)
1385 propiedades de @code{NonMusicalPaperColumnGrob}, como se explica en
1386 @ref{Espaciado vertical}.
1388 @lilypond[quote,verbatim]
1393 \overrideProperty "Score.NonMusicalPaperColumn"
1394 #'line-break-system-details #'((Y-offset . 0))
1397 \overrideProperty "Score.NonMusicalPaperColumn"
1398 #'line-break-system-details #'((Y-offset . 35))
1401 \overrideProperty "Score.NonMusicalPaperColumn"
1402 #'line-break-system-details #'((Y-offset . 70))
1405 \overrideProperty "Score.NonMusicalPaperColumn"
1406 #'line-break-system-details #'((Y-offset . 105))
1410 \repeat unfold 2 { c'4 c'4 c'4 c'4 }
1411 \repeat unfold 3 { c'4 c'4 c'4 c'4 }
1412 \repeat unfold 6 { c'4 c'4 c'4 c'4 }
1413 \repeat unfold 5 { c'4 c'4 c'4 c'4 }
1421 Referencia de la notación:
1422 @ref{Espaciado vertical}.
1424 Fragmentos de código:
1428 @node Espaciado vertical
1429 @section Espaciado vertical
1430 @translationof Vertical spacing
1432 @cindex espaciado vertical
1433 @cindex vertical, espaciado
1435 El espaciado vertical está controlado por tres factores: la cantidad
1436 de espacio disponible (es decir, el tamaño del papel y los márgenes),
1437 la separación entre los sistemas, y la separación entre los
1438 pentagramas dentro de un sistema.
1441 * Espaciado vertical dentro de un sistema::
1442 * Espaciado vertical entre sistemas::
1443 * Posicionamiento explícito de los pentagramas y los sistemas::
1444 * Evitar las colisiones verticales::
1448 @node Espaciado vertical dentro de un sistema
1449 @subsection Espaciado vertical dentro de un sistema
1450 @translationof Vertical spacing inside a system
1452 @cindex distancia entre pentagramas
1453 @cindex pentagrama, distancia entre los
1454 @cindex espacio entre pentagramas
1455 @cindex espacio dentro de los sistemas
1457 La altura de cada sistema se determina en dos fases. Primero, todos
1458 los pentagramas se disponen según la cantidad de espacio vacío
1459 disponible. Después, las líneas que no son pautas (p.ej. la letra o
1460 los nombres de acorde) se distribuyen entre las pautas.
1462 @unnumberedsubsubsec Espaciado entre los pentagramas
1463 El espaciado entre los pentagramas se controla mediante la propiedad
1464 @var{next-staff-spacing} del grob @var{VerticalAxisGroup}. Esta
1465 propiedad es una lista-A de cuatro elementos: @var{space},
1466 @var{minimum-distance}, @var{padding} y @var{stretchability}:
1469 @var{space} es el tamaño del espacio ensanchable entre la línea media
1470 de un pentagrama hasta la línea media del pentagrama siguiente.
1473 @var{minimum-distance} proporciona un límite inferior sobre la
1474 distancia final entre la línea central de un pentagrama hasta la línea
1475 central del pentagrama siguiente. Esto es, si una página tiene muchos
1476 sistemas y necesita comprimirse, la distancia desde este pentagrama
1477 hasta el siguiente nunca se comprimirá a menos de
1478 @var{minimum-distance}.
1481 @var{padding} es la cantidad de espacio vacío que debe estar presente
1482 entre el final de un pentagrama y el principio del siguiente. Se
1483 diferencia de @var{minimum-distance} en que el efecto de @var{padding}
1484 depende de la altura de los objetos que están sobre el pentagrama.
1485 Por ejemplo, es más probable que @var{padding} entre en efecto para
1486 pentagramas que tienen notas muy agudas por encima de la pauta.
1489 @var{stretchability} controla la propensión del espacio ensanchable a
1490 ampliarse cuando lo hace el sistema. Los valores grandes producen que
1491 un sistema se amplíe más, mientras que un valor de cero evita que el
1492 espacio se amplíe en absoluto. Si se deja sin establecer, el valor
1493 predeterminado de @var{stretchability} será @code{space -
1498 #(set-global-staff-size 16)
1500 % Since space is small and there is no minimum-distance, the distance
1501 % between this staff and the next will be determined by padding.
1503 \override VerticalAxisGroup #'next-staff-spacing =
1504 #'((space . 1) (padding . 1))
1507 % Since space is small and nothing sticks out very far, the distance
1508 % between this staff and the next will be determined by minimum-distance.
1510 \override VerticalAxisGroup #'next-staff-spacing =
1511 #'((space . 1) (minimum-distance . 12))
1514 % By setting padding to a negative value, staves can be made to collide.
1516 \override VerticalAxisGroup #'next-staff-spacing =
1517 #'((space . 4) (padding . -10))
1520 \new Staff { \clef bass c, }
1525 En partituras grandes como las orquestales, es común colocar los
1526 pentagramas en grupos. El espacio entre los grupos suele ser mayor
1527 que el espacio que hay entre los pentagramas dentro del mismo grupo.
1528 Este espacio se puede manipular con el grob @var{StaffGrouper}: el
1529 valor predeterminado de @var{next-staff-spacing} para
1530 @var{VerticalAxisGroup} es una función de @q{callback} que opera por
1531 el procedimiento de buscar un grob @var{StaffGrouper} que contenga al
1532 pentagrama. Si encuentra un grob @var{StaffGrouper} y el pentagrama
1533 en cuestión está en mitad de un grupo, lee la propiedad
1534 @var{between-staff-spacing} de @var{StaffGrouper} y la devuelve. Si
1535 el pentagrama en cuestión es el último de un grupo, la función de
1536 @q{callback} lee la propiedad @var{after-last-staff-spacing} de
1537 @var{StaffGrouper} y la devuelve. Si no encuentra un grob
1538 @var{StaffGrouper}, lee @var{default-next-staff-spacing} a partir de
1539 su @var{VerticalAxisGroup} y lo devuelve.
1542 #(set-global-staff-size 16)
1544 \new PianoStaff \with {
1545 \override StaffGrouper #'between-staff-spacing #'space = #1
1546 \override StaffGrouper #'between-staff-spacing #'padding = #0
1547 \override StaffGrouper #'after-last-staff-spacing #'space = #20
1554 \new StaffGroup \with {
1555 \override StaffGrouper #'between-staff-spacing #'space = #1
1556 \override StaffGrouper #'between-staff-spacing #'padding = #0
1566 @unnumberedsubsubsec Espaciado de las líneas que no son pautas
1568 Después de que se han determinado las posiciones de los pentagramas,
1569 se distribuyen las líneas que no son pautas entre los pentagramas.
1570 Cada una de esas líneas tiene una propiedad @var{staff-affinity} que
1571 controla su alineamiento vertical. Por ejemplo:
1574 \new Lyrics \with @{ \override VerticalAxisGroup #'staff-affinity = #DOWN @}
1578 crea un contexto de letra que se situará junto al pentagrama que tiene
1579 por debajo. El establecimiento de @var{staff-affinity} a algo que no
1580 sea un número (@code{#f}, por ejemplo) hace que la línea se trate como
1581 si fuera una pauta. De forma recíproca, el establecimiento de
1582 @var{staff-affinity} para un pentagrama hace que se le trate como si
1585 Las líneas que no son pautas admiten tres propiedades para controlar
1586 su espaciado. Cada una de estas propiedades es una lista-A del mismo
1587 formato que @var{next-staff-spacing}, véase más arriba.
1590 Si la línea más cercana en la dirección de @var{staff-affinity} es una
1591 pauta, entonces @var{inter-staff-spacing} da el espacio entre la línea
1592 que no es una pauta y la pauta. Si @var{staff-affinity} es
1593 @code{CENTER}, entonces se usa @var{inter-staff-spacing} para las dos
1597 Si línea más cercana en la dirección de @var{staff-affinity} no es una
1598 pauta, entonces @var{inter-loose-line-spacing} da el espaciado entre
1599 las dos líneas que no son pautas.
1602 Si la línea más cercana en la dirección opuesta a @var{staff-affinity}
1603 es una pauta, entonces @var{non-affinity-spacing} da el espacio entre
1604 la línea que no es una pauta y la pauta. esto se puede usar, por
1605 ejemplo, para requerir una cantidad de relleno mínima entre una línea
1606 de letra y el pentagrama a que no pertenece.
1610 #(set-global-staff-size 16)
1614 % By default, Lyrics are placed close together. Here, we allow them to
1615 % be stretched more widely.
1616 \override VerticalAxisGroup
1617 #'inter-loose-line-spacing #'stretchability = #1000
1624 \override VerticalAxisGroup #'next-staff-spacing = #'((space . 30)) }
1627 \override VerticalAxisGroup #'staff-affinity = #UP }
1630 \override VerticalAxisGroup #'staff-affinity = #CENTER }
1631 \lyricmode { center }
1633 \override VerticalAxisGroup #'staff-affinity = #DOWN }
1641 Fragmentos de código:
1644 @c @lsr{spacing,page-spacing.ly},
1645 @c @lsr{spacing,alignment-vertical-spacing.ly}.
1647 Referencia de funcionamiento interno:
1648 @rinternals{VerticalAxisGroup},
1649 @rinternals{VerticalAlignment},
1650 @rinternals{Axis_group_engraver}.
1653 Las líneas adyacentes que no son pentagramas debieran tener valores de
1654 @var{staff-affinity} no crecientes desde arriba hasta abajo. Por
1655 ejemplo, el comportamiento de
1659 \new Lyrics \with @{ \override VerticalAxisGroup #'staff-affinity = #DOWN @}
1660 \new Lyrics \with @{ \override VerticalAxisGroup #'staff-affinity = #UP @}
1666 Una línea que no es una pauta, al final de un sistema, debiera tener
1667 establecido @var{staff-affinity} al valor @code{UP}. De forma
1668 similar, una línea que no es una pauta al principio de un sistema
1669 debiera tener @var{staff-affinity} establecido al valor @code{DOWN}.
1671 @node Espaciado vertical entre sistemas
1672 @subsection Espaciado vertical entre sistemas
1673 @translationof Vertical spacing between systems
1675 Los mecanismos que controlan el espaciado entre sistemas son similares
1676 a los que controlan el espaciado dentro de un sistema (véase
1677 @ref{Espaciado vertical dentro de un sistema}). La diferencia
1678 principal es que las variables para controlar el espaciado entre
1679 sistemas se establece dentro del bloque @code{\paper} en lugar de
1680 hacerlo como propiedades de grob. Estas variables del bloque paper
1681 son @var{between-system-spacing}, @var{between-scores-system-spacing},
1682 @var{after-title-spacing}, @var{before-title-spacing},
1683 @var{between-title-spacing}, @var{top-system-spacing},
1684 @var{top-title-spacing} y @var{bottom-system-spacing}. Observe que
1685 estas variables ignoran las líneas que nos son pautas. Por ejemplo,
1686 @var{between-system-spacing} controla el espaciado desde la línea
1687 media del pentagrama inferior de un sistema hasta la línea del
1688 pentagrama superior del sistema siguiente, tanto si hay letra debajo
1689 del sistema superior como si no. Consulte @ref{Dimensiones
1690 verticales} para ver una descripción de cada una de dichas variables.
1692 Aún hay otras dos variables del bloque @code{\paper} que afectan al
1693 espaciado vertical: si @var{ragged-bottom} está ajustado a @code{##t},
1694 ninguna página se amplía (lo que significa que no se ampliará ni el
1695 espacio entre sistemas ni el espacio dentro de los sistemas). Si el
1696 valor de @var{ragged-last-bottom} se ajusta a @code{##t} entonces la
1697 última página no se amplía.
1700 Fragmentos de código:
1704 @node Posicionamiento explícito de los pentagramas y los sistemas
1705 @subsection Posicionamiento explícito de los pentagramas y los sistemas
1706 @translationof Explicit staff and system positioning
1708 Una forma de entender los ajustes de @code{VerticalAxisGroup} y de
1709 @code{\paper} que se explicaron en las dos secciones anteriores es
1710 como una colección de distintos ajustes que conciernen principalmente
1711 a la cantidad de relleno vertical que adquieren los distintos
1712 pentagramas y sistemas al ocupar la página.
1714 Es posible abordar el problema del espaciado vertical de una forma
1715 distinta utilizando @code{NonMusicalPaperColumn
1716 #'line-break-system-details}. Donde los ajustes de
1717 @code{VerticalAxisGroup} y de @code{\paper} especifican el relleno
1718 vertical, @code{NonMusicalPaperColumn #'line-break-system-details}
1719 especifica las posiciones verticales exactas en la página.
1721 @code{NonMusicalPaperColumn #'line-break-system-details} acepta una
1722 lista asociativa de tres ajustes distintos:
1725 @item @code{X-offset}
1726 @item @code{Y-offset}
1727 @item @code{alignment-distances}
1730 Las sobreescrituras de los objetos gráficos, entre ellas las de
1731 @code{NonMusicalPaperColumn} que aparece más abajo, pueden ocurrir en
1732 tres lugares distintos dentro de un archivo de entrada:
1735 @item directamente en medio de las notas
1736 @item en un bloque @code{\context}
1737 @item en el bloque @code{\with}
1740 Cuando sobreescribimos @code{NonMusicalPaperColumn}, usamos la
1741 instrucción @code{\override} usual en los bloques @code{\context} y en
1742 el bloque @code{\with}. Por otra parte, cuando sobreescribimos
1743 @code{NonMusicalPaperColumn} en medio de las notas, debemos usar la
1744 instrucción especial @code{\overrideProperty}. He aquí algunas
1745 sobreescrituras de @code{NonMusicalPaperColumn} de ejemplo con la
1746 instrucción especial @code{\overrideProperty}:
1749 \overrideProperty NonMusicalPaperColumn
1750 #'line-break-system-details #'((X-offset . 20))
1752 \overrideProperty NonMusicalPaperColumn
1753 #'line-break-system-details #'((Y-offset . 40))
1755 \overrideProperty NonMusicalPaperColumn
1756 #'line-break-system-details #'((X-offset . 20) (Y-offset . 40))
1758 \overrideProperty NonMusicalPaperColumn
1759 #'line-break-system-details #'((alignment-distances . (15)))
1761 \overrideProperty NonMusicalPaperColumn
1762 #'line-break-system-details #'((X-offset . 20) (Y-offset . 40)
1763 (alignment-distances . (15)))
1766 Para entender cómo funciona cada uno de los distintos ajustes,
1767 empezamos observando un ejemplo que no incluye absolutamente ninguna
1770 @c \book { } is required in these examples to ensure the spacing
1771 @c overrides can be seen between systems. -np
1774 \header { tagline = ##f }
1775 \paper { left-margin = 0\mm }
1785 \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
1788 \repeat unfold 15 { d'4 d' d' d' }
1795 Esta partitura mantiene aislada la información de los saltos de línea
1796 y de página en una voz dedicada a ello. Esta técnica de crear una voz
1797 de saltos ayuda a mantener separada de la escritura de notas conforme
1798 el ejemplo se vuelve más complicado. Consulte @ref{Utilizar una voz adicional para los saltos de línea}.
1800 Los saltos explícitos dividen la música de forma regular en seis
1801 compases por línea. El espaciado vertical es el resultado de los
1802 ajustes predeterminados de LilyPond. Para establecer explícitamente
1803 el punto de origen vertical de cada sistema, podemos establecer el par
1804 @code{Y-offset} en el atributo @code{line-break-system-details} del
1805 grob (objeto gráfico) @code{NonMusicalPaperColumn}:
1808 \header { tagline = ##f }
1809 \paper { left-margin = 0\mm }
1815 \overrideProperty #"Score.NonMusicalPaperColumn"
1816 #'line-break-system-details #'((Y-offset . 0))
1818 \overrideProperty #"Score.NonMusicalPaperColumn"
1819 #'line-break-system-details #'((Y-offset . 40))
1821 \overrideProperty #"Score.NonMusicalPaperColumn"
1822 #'line-break-system-details #'((Y-offset . 80))
1825 \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
1828 \repeat unfold 15 { d'4 d' d' d' }
1835 Observe que @code{line-break-system-details} toma una lista asociativa
1836 de una cantidad de valores potencialmente elevada, pero aquí sólo
1837 fijamos un valor. Observe también que aquí la propiedad
1838 @code{Y-offset} determina la posición vertical exacta sobre la página
1839 en la que se trazará cada uno de los nuevos sistemas.
1841 Ahora que hemos establecido explícitamente el punto de origen vertical
1842 de cada sistema, podemos también establecer manualmente
1843 las distancias verticales entre
1844 los pentagramas dentro de cada sistema. Lo hacemos
1845 usando la subpropiedad @code{alignment-distances} de
1846 @code{line-break-system-details}.
1849 \header { tagline = ##f }
1850 \paper { left-margin = 0\mm }
1856 \overrideProperty #"Score.NonMusicalPaperColumn"
1857 #'line-break-system-details #'((Y-offset . 20)
1858 (alignment-distances . (15)))
1860 \overrideProperty #"Score.NonMusicalPaperColumn"
1861 #'line-break-system-details #'((Y-offset . 60)
1862 (alignment-distances . (15)))
1864 \overrideProperty #"Score.NonMusicalPaperColumn"
1865 #'line-break-system-details #'((Y-offset . 100)
1866 (alignment-distances . (15)))
1869 \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
1872 \repeat unfold 15 { d'4 d' d' d' }
1879 Observe que aquí asignamos dos valores distintos al atributo
1880 @code{line-break-system-details} del grob
1881 @code{NonMusicalPaperColumn}. Aunque el atributo alist de
1882 @code{line-break-system-details} acepta muchos parámetros de espaciado
1883 adicionales (entre ellos, por ejemplo, un par @code{X-offset}
1884 correspondiente), sólo tenemos que establecer el desplazamiento
1885 @code{Y-offset} y los pares @code{alignment-distances} para controlar el
1886 punto de origen vertical de cada sistema y pentagrama. Finalmente,
1887 observe que @code{alignment-distances} especifica el posicionamiento
1888 vertical de los pentagramas pero no de los grupos de pentagramas.
1891 \header { tagline = ##f }
1892 \paper { left-margin = 0\mm }
1898 \overrideProperty #"Score.NonMusicalPaperColumn"
1899 #'line-break-system-details #'((Y-offset . 0)
1900 (alignment-distances . (30 10)))
1902 \overrideProperty #"Score.NonMusicalPaperColumn"
1903 #'line-break-system-details #'((Y-offset . 60)
1904 (alignment-distances . (10 10)))
1906 \overrideProperty #"Score.NonMusicalPaperColumn"
1907 #'line-break-system-details #'((Y-offset . 100)
1908 (alignment-distances . (10 30)))
1911 \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
1914 \new Staff { \repeat unfold 15 { d'4 d' d' d' } }
1915 \new Staff { \repeat unfold 15 { e'4 e' e' e' } }
1922 Algunos puntos que tener en cuenta:
1925 @item Al usar @code{alignment-distances}, la letra
1926 y otras líneas que no son pautas, no cuentan como un pentagrama.
1928 @item Las unidades de los números que se pasan a @code{X-offset},
1929 @code{Y-offset} y @code{alignment-distances} se interpretan como
1930 múltiplos de la distancia entre líneas de pentagrama adyacentes. Los
1931 valores positivos mueven a los pentagramas y a la letra hacia arriba,
1932 los valores negativos mueven los pentagramas y la letra hacia abajo.
1934 @item A causa de que los ajustes a @code{NonMusicalPaperColumn #'line-break-system-details}
1935 dados aquí permiten el posicionamiento de pentagramas y sistemas en
1936 cualquier lugar de la página, es posible violar los márgenes o los
1937 límites del papel, o incluso imprimir pentagramas o sistemas unos
1938 encima de otros. Esto se evitaría pasando a los diferentes ajustes
1939 unos valores razonables.
1944 Fragmentos de código:
1948 @node Evitar las colisiones verticales
1949 @subsection Evitar las colisiones verticales
1950 @translationof Vertical collision avoidance
1952 @funindex outside-staff-priority
1953 @funindex outside-staff-padding
1954 @funindex outside-staff-horizontal-padding
1956 Podemos decir intuitivamente que algunos objetos de la notación
1957 musical pertenecen al pentagrama y otros se sitúan fuera del
1958 pentagrama. Entre los objetos que pertenecen al exterior del
1959 pentagrama están las marcas de ensayo, las marcas textuales y las
1960 indicaciones de dinámica (en lo sucesivo, les llamaremos objetos fuera
1961 del pentagrama). La regla de LilyPond para la colocación vertical de
1962 los objetos fuera del pentagrama es ponerlos tan cerca del pentagrama
1963 como sea posible pero no tan próximos como para que choquen con otro
1966 LilyPond utiliza la propiedad @code{outside-staff-priority} para
1967 determinar si un grob es un objeto fuera del pentagrama: si
1968 @code{outside-staff-priority} es un número, el grob es un objeto fuera
1969 del pentagrama. Además, @code{outside-staff-priority} informa a
1970 LilyPond en qué orden se debe situar los objetos.
1972 En primer lugar, LilyPond sitúa todos los objetos que no pertenecen al
1973 exterior del pentagrama. Después ordena los objetos fuera del
1974 pentagrama de acuerdo a su prioridad @code{outside-staff-priority} (en
1975 orden creciente). LilyPond toma los objetos fuera del pentagrama uno
1976 a uno y los coloca de forma que no choquen con ningún objeto que ya
1977 haya sido colocado. Esto es, si dos grobs fuera del pentagrama
1978 compiten por el mismo espacio, el que tiene la prioridad
1979 @code{outside-staff-priority} más baja se colocará más próximo al
1982 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
1985 \once \override TextScript #'outside-staff-priority = #1
1986 c4_"Text"\pp % this time the text will be closer to the staff
1988 % by setting outside-staff-priority to a non-number,
1989 % we disable the automatic collision avoidance
1990 \once \override TextScript #'outside-staff-priority = ##f
1991 \once \override DynamicLineSpanner #'outside-staff-priority = ##f
1992 c4_"Text"\pp % now they will collide
1995 El relleno vertical entre un objeto fuera del pentagrama y los grobs
1996 posicionados previamente se puede controlar con
1997 @code{outside-staff-padding}.
1999 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
2000 \once \override TextScript #'outside-staff-padding = #0
2001 a'^"This text is placed very close to the note"
2002 \once \override TextScript #'outside-staff-padding = #3
2003 c^"This text is padded away from the previous text"
2004 c^"This text is placed close to the previous text"
2007 De forma predeterminada, los objetos fuera del pentagrama se colocan
2008 sólo para evitar una colisión horizontal con los grobs posicionados
2009 previamente. Esto puede llevar a situaciones en las que los objetos
2010 se colocan muy próximos entre sí en el sentido horizontal. El espacio
2011 vertical entre pentagramas se puede fijar también de manera que los
2012 objetos fuera del pentagrama se sitúen de forma intercalada. El
2013 establecimiento del relleno horizontal
2014 @code{outside-staff-horizontal-padding} ocasiona que un objeto se
2015 desplace verticalmente para que tal situación no ocurra.
2017 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
2018 % the markup is too close to the following note
2022 % setting outside-staff-horizontal-padding fixes this
2024 \once \override TextScript #'outside-staff-horizontal-padding = #1
2032 Fragmentos de código:
2036 @node Espaciado horizontal
2037 @section Espaciado horizontal
2038 @translationof Horizontal spacing
2040 @cindex horizontal, espaciado
2041 @cindex espaciado horizontal
2044 * Panorámica del espaciado horizontal::
2045 * Área de espaciado nueva::
2046 * Cambiar el espaciado horizontal::
2047 * Longitud de la línea::
2048 * Notación proporcional::
2052 @node Panorámica del espaciado horizontal
2053 @subsection Panorámica del espaciado horizontal
2054 @translationof Horizontal spacing overview
2056 El motor de espaciado traduce las diferencias en las duraciones a
2057 distancias ampliables (@q{muelles}) de distintas longitudes. Las
2058 duraciones más largas reciben un espacio mayor y las duraciones más
2059 cortas reciben menos. Las duraciones más breves reciben un espacio de
2060 tamaño fijo (que se controla mediante @code{shortest-duration-space}
2061 en el objeto @rinternals{SpacingSpanner}). Cuanto más larga es la
2062 duración, más espacio recibe: al doblar una duración se añade un
2063 espacio de tamaño fijo (este tamaño se controla mediante
2064 @code{spacing-increment}) a la nota.
2066 Por ejemplo, la pieza siguiente contiene numerosas blancas, negras y
2067 corcheas; la corchea va seguida de un ancho de cabeza de blanca (ACB).
2068 La negra va seguida de 2 ACB, la blanca por 3 ACB, etc.
2070 @lilypond[quote,fragment,verbatim,relative=1]
2071 c2 c4. c8 c4. c8 c4. c8 c8
2075 Normalmente, el valor de @code{spacing-increment} está establecido en
2076 1.2 espacios de pentagrama, lo que es aproximadamente el ancho de una
2077 cabeza, y @code{shortest-duration-space} está establecido en 2.0, lo
2078 que significa que la nota más breve recibe 2.4 espacios de pentagrama
2079 (2.0 multiplicado por el @code{spacing-increment}) de espacio
2080 horizontal. Este espacio se cuenta a partir del borde izquierdo del
2081 símbolo, de manera que las notas más breves van seguidas generalmente
2082 por un espacio de 1 ACB.
2084 Si siguiésemos el procedimiento anterior exactamente, entonces la
2085 adición de una sola fusa a una partitura que usa corcheas y
2086 semicorcheas, aumentaría enormemente la anchura de la partitura
2087 completa. La nota más breve ya no es la semicorchea, sino la fusa,
2088 añadiendo así 1 ACB a cada una de las notas. Para evitarlo, la
2089 duración más breve a efectos de espaciado no es la nota más breve de
2090 la partitura, sino la que ocurre con más frecuencia.
2092 La duración más breve que es más común se determina de la siguiente
2093 manera: en cada compás se determina la duración más breve. La menor
2094 duración más común se toma como base para el espaciado, habiendo
2095 estipulado que esta duración menor siempre debe ser igual o menor que
2096 una corchea. La duración más breve se imprime cuando se ejecuta
2097 @code{lilypond} con la opción @code{--verbose}.
2099 Estas duraciones también se pueden personalizar. Si establecemos la
2100 @code{common-shortest-duration} en @rinternals{SpacingSpanner},
2101 entonces éste establece la duración base para el espaciado. La
2102 duración máxima para esta base (normalmente una corchea), se fija a
2103 través de @code{base-shortest-duration}.
2105 @funindex common-shortest-duration
2106 @funindex base-shortest-duration
2107 @funindex stem-spacing-correction
2110 Las notas que son aún más breves que la nota común más breve van
2111 seguidas por un espacio proporcional a su duración en relación con la
2112 nota común más breve. Así pues, si fuésemos a añadir tan sólo algunas
2113 semicorcheas al ejemplo anterior, irían seguidas por medio ACB:
2115 @lilypond[quote,fragment,verbatim,relative=2]
2116 c2 c4. c8 c4. c16[ c] c4. c8 c8 c8 c4 c4 c4
2120 En el @emph{Ensayo sobre grabado musical automatizado},
2122 direcciones de las plicas influyen en el espaciado
2123 (véase @ressay{Espaciado óptico}). Esto se controla
2124 con la propiedad @code{stem-spacing-correction} en el objeto
2125 @rinternals{NoteSpacing}. Estos se generan para cada uno de los
2126 contextos de @rinternals{Voice}. El objeto @code{StaffSpacing}
2127 (generado en el contexto de @rinternals{Staff}) contiene la misma
2128 propiedad para controlar el espaciado de las líneas de plica o
2129 divisorias. El ejemplo siguiente muestra estas correcciones, una vez
2130 con los valores predeterminados y otra con correcciones exageradas:
2132 @lilypond[quote,ragged-right]
2136 \override Staff.NoteSpacing #'stem-spacing-correction = #1.5
2137 \override Staff.StaffSpacing #'stem-spacing-correction = #1.5
2143 Está contemplada la notación proporcional; consulte @ref{Notación proporcional}.
2147 Fragmentos de código:
2150 Referencia de funcionamiento interno:
2151 @rinternals{SpacingSpanner},
2152 @rinternals{NoteSpacing},
2153 @rinternals{StaffSpacing},
2154 @rinternals{NonMusicalPaperColumn}.
2159 No existe ningún mecanismo conveniente para sobreescribir el espaciado
2160 manualmente. Se puede usar el siguiente rodeo para insertar espacio
2161 adicional en una partitura, ajustando el valor del relleno en la
2165 \override Score.NonMusicalPaperColumn #'padding = #10
2168 No existe ningún rodeo para disminuir la magnitud de la separación.
2171 @node Área de espaciado nueva
2172 @subsection Área de espaciado nueva
2173 @translationof New spacing area
2175 Se pueden iniciar secciones nuevas con diferentes parámetros de
2176 espaciado, con @code{newSpacingSection}. Esto es útil cuando hay
2177 secciones que tienen distinta noción de las notas largas y cortas.
2179 En el ejemplo siguiente, el cambio de compás introduce una sección
2180 nueva, y por ello las semicorcheas se separan de manera más amplia.
2182 @lilypond[relative,fragment,verbatim,quote]
2185 c8 c c4 c16[ c c8] c4
2191 La instrucción @code{\newSpacingSection} crea un nuevo objeto
2192 @code{SpacingSpanner}, y de ahí que se puedan usar nuevas
2193 instrucciones de sobreescritura @code{\override} en dicho punto.
2197 Fragmentos de código:
2200 Referencia de funcionamiento interno:
2201 @rinternals{SpacingSpanner}.
2204 @node Cambiar el espaciado horizontal
2205 @subsection Cambiar el espaciado horizontal
2206 @translationof Changing horizontal spacing
2208 Se puede alterar el espaciado horizontal con la propiedad
2209 @code{base-shortest-duration}. Aquí compararemos la misma música, una
2210 vez sin alterar la propiedad, y luego alterándola. Los valores
2211 mayores de @code{ly:make-moment} producen música más pequeña. Observe
2212 que @code{ly:make-moment} construye una duración, por lo que @code{1
2213 4} es una duración mayor que @code{1 16}.
2215 @lilypond[verbatim,line-width=12\cm]
2218 g4 e e2 | f4 d d2 | c4 d e f | g4 g g2 |
2219 g4 e e2 | f4 d d2 | c4 e g g | c,1 |
2220 d4 d d d | d4 e f2 | e4 e e e | e4 f g2 |
2221 g4 e e2 | f4 d d2 | c4 e g g | c,1 |
2226 @lilypond[verbatim,line-width=12\cm]
2229 g4 e e2 | f4 d d2 | c4 d e f | g4 g g2 |
2230 g4 e e2 | f4 d d2 | c4 e g g | c,1 |
2231 d4 d d d | d4 e f2 | e4 e e e | e4 f g2 |
2232 g4 e e2 | f4 d d2 | c4 e g g | c,1 |
2237 \override SpacingSpanner
2238 #'base-shortest-duration = #(ly:make-moment 1 16)
2247 De forma predeterminada, el espaciado en los grupos de valoración
2248 especial depende de varios factores ajenos a la duración (como
2249 alteraciones, cambios de clave, etc.). Para pasar por alto estos
2250 símbolos y forzar un espaciado de duraciones iguales uniforme, use
2251 @code{Score.SpacingSpanner #'uniform-stretching}. Esta propiedad sólo
2252 puede cambiarse al principio de la partitura:
2254 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
2256 \override SpacingSpanner #'uniform-stretching = ##t
2273 Cuando se establece @code{strict-note-spacing}, las notas se separan
2274 sin tener en cuenta las claves, líneas divisorias ni notas de adorno:
2276 @lilypond[quote,ragged-right,relative=2,fragment,verbatim]
2277 \override Score.SpacingSpanner #'strict-note-spacing = ##t
2278 \new Staff { c8[ c \clef alto c \grace { c16[ c] } c8 c c] c32[ c32] }
2283 Fragmentos de código:
2287 @node Longitud de la línea
2288 @subsection Longitud de la línea
2289 @translationof Line length
2291 @cindex saltos de página
2292 @cindex página, saltos de
2295 @funindex line-width
2296 @funindex ragged-right
2297 @funindex ragged-last
2299 @c Although line-width can be set in \layout, it should be set in paper
2300 @c block, to get page layout right.
2301 @c Setting indent in \paper block makes not much sense, but it works.
2303 @c Bit verbose and vague, use examples?
2304 Los ajustes más básicos que influyen en el espaciado son @code{indent}
2305 y @code{line-width}. Se definen en el bloque @code{\layout}.
2306 Controlan el sangrado de la primera línea de música y la longitud de
2309 Si se fija un valor verdadero para @code{ragged-right} en el bloque
2310 @code{\layout}, entonces los sistemas terminan en su longitud
2311 horizontal natural, en lugar de repartirse horizontalmente hasta
2312 llenar toda la línea. Esto es útil para fragmentos cortos, y para
2313 comprobar qué tan apretado es el espaciado natural.
2314 El valor normal predeterminado es falso, pero si la partitura
2315 tiene un solo sistema, el valor predeterminado es verdadero.
2318 @cindex diseño de página
2319 @cindex página, disposición de la
2320 @cindex vertical, espaciado
2322 La opción @code{ragged-last} es similar a @code{ragged-right}, pero
2323 afecta sólo a la última línea de la pieza. No se efectúa ninguna
2324 restricción sobre dicha línea. El resultado es similar al formateo de
2325 los párrafos de texto. En un párrafo, la última línea sencillamente
2326 ocupa su longitud horizontal natural.
2327 @c Note that for text there are several options for the last line.
2328 @c While Knuth TeX uses natural length, lead typesetters use the same
2329 @c stretch as the previous line. eTeX uses \lastlinefit to
2330 @c interpolate between both these solutions.
2344 Fragmentos de código:
2348 @node Notación proporcional
2349 @subsection Notación proporcional
2350 @translationof Proportional notation
2352 LilyPond contempla la notación proporcional, un tipo de espaciado
2353 horizontal en el que cada nota consume una medida horizontal que
2354 equivale exactamente a su duración rítmica. Este tipo de espaciado
2355 proporcional es comparable al espaciado horizontal hecho sobre un
2356 papel milimetrado. Ciertas partituras del finales del s.XX y
2357 principios del s.XXI utilizan notación proporcional para clarificar
2358 relaciones rítmicas complejas o para facilitar la colocación de líneas
2359 cronométricas u otros gráficos directamente en la partitura.
2361 LilyPond contempla cinco ajustes distintos para la notación
2362 proporcional, que se pueden usar solos o combinados:
2365 @item @code{proportionalNotationDuration}
2366 @item @code{uniform-stretching}
2367 @item @code{strict-note-spacing}
2368 @item @code{\remove Separating_line_group_engraver}
2369 @item @code{\override PaperColumn #'used = ##t}
2372 En los ejemplos que siguen, exploramos el uso de estos cinco ajustes
2373 de la notación proporcional y examinamos la forma en que interactúan.
2375 Comenzamos con el siguiente ejemplo de un solo compás, que usa un
2376 espaciado clásico sin justificación por la derecha.
2378 @lilypond[quote,verbatim,ragged-right]
2380 \new RhythmicStaff {
2384 c'16 c'16 c'16 c'16 c'16
2390 Observe que la blanca que inicia el compás ocupa mucho menos de la
2391 mitad de todo el espacio horizontal del compás. De forma similar, las
2392 semicorcheas y el cinquillo de semicorcheas con que finaliza el compás
2393 ocupan en conjunto mucho más de la mitad de todo el espacio horizontal
2396 En el grabado clásico, este espaciado puede ser exactamente el que
2397 deseamos porque podemos tomar prestado el espacio horizontal de la
2398 blanca y conservar el espacio horizontal a lo largo del compás como un
2401 Por otro lado, si queremos insertar una línea de tiempo graduada o
2402 algún otro gráfico encima o debajo de la partitura, necesitamos la
2403 notación proporcional. Se activa la notación proporcional con el
2404 ajuste @code{proportionalNotationDuration}.
2406 @lilypond[quote,verbatim,ragged-right]
2408 proportionalNotationDuration = #(ly:make-moment 1 20)
2410 \new RhythmicStaff {
2414 c'16 c'16 c'16 c'16 c'16
2420 La blanca al principio del compás y las notas rápidas de la segunda
2421 mitad del compás ocupan ahora cantidades iguales de espacio
2422 horizontal. Podríamos colocar una línea de tiempo graduada o un
2423 gráfico encima o debajo de este ejemplo.
2425 El ajuste @code{proportionalNotationDuration} es un ajuste de contexto
2426 que reside en @code{Score}. Recordemos que los ajustes de contexto
2427 aparecen en uno de tres posibles lugares del archivo de entrada: en un
2428 bloque @code{\with}, en un bloque @code{\context}, o directamente
2429 entre la música precedido por la instrucción @code{\set}. Como con
2430 todos los ajustes de contexto, el usuario puede elegir en cuál de los
2431 tres lugares diferentes prefiere establecer el valor de
2432 @code{proportionalNotationDuration}.
2434 El ajuste @code{proportionalNotationDuration} acepta un solo
2435 argumento, que es la duración de referencia contra el que se aplica el
2436 espaciado de toda la música. La función Scheme de LilyPond
2437 @code{make-moment} acepta dos argumentos: un numerador y un
2438 denominador que, juntos, expresan una cierta fracción de redonda. La
2439 llamada @code{#(ly:make-moment 1 20)}, por tanto, produce una duración
2440 de referencia de una nota de un veinteavo de redonda (semicorcheas de
2441 cinquillo). Los valores @code{#(ly:make-moment 1 16)},
2442 @code{#(ly:make-moment 1 8)} y @code{#(ly:make-moment 3 97)} son
2445 ¿Cómo seleccionamos la duración correcta de referencia para pasarla a
2446 @code{proportionalNotationDuration}? Normalmente mediante un proceso
2447 de ensayo y error, comenzando con una duración cercana a la más rápida
2448 (o más breve) duración de la pieza. Las duraciones de referencia más
2449 pequeñas aplican un espaciado más suelto; las duraciones de referencia
2450 más largas aplican un espaciado más apretado.
2452 @lilypond[quote,verbatim,ragged-right]
2454 proportionalNotationDuration = #(ly:make-moment 1 8)
2456 \new RhythmicStaff {
2460 c'16 c'16 c'16 c'16 c'16
2466 proportionalNotationDuration = #(ly:make-moment 1 16)
2468 \new RhythmicStaff {
2472 c'16 c'16 c'16 c'16 c'16
2478 proportionalNotationDuration = #(ly:make-moment 1 32)
2480 \new RhythmicStaff {
2484 c'16 c'16 c'16 c'16 c'16
2490 Observe que una duración de referencia demasiado grande (como la
2491 corchea, en el ejemplo de arriba) produce un espaciado excesivamente
2492 apretado y puede ser causa de colisiones entre las cabezas de nota.
2493 Observe también que la notación proporcional en general ocupa más
2494 espacio horizontal que el espaciado clásico. El espaciado
2495 proporcional aporta claridad rítmica a expensas del espacio
2498 Ahora veremos cómo espaciar de forma óptima grupos de valoración
2499 especial que se superponen.
2501 Empezamos por examinar qué le ocurre a nuestro ejemplo original, con
2502 espaciado clásico, cuando añadimos un segundo pentagrama con un tipo
2503 diferente de grupo especial.
2505 @lilypond[quote,verbatim,ragged-right]
2507 \new RhythmicStaff {
2511 c'16 c'16 c'16 c'16 c'16
2514 \new RhythmicStaff {
2516 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8
2522 El espaciado es defectuoso porque las notas regularmente espaciadas
2523 del pentagrama inferior no se amplían de manera uniforme. El grabado
2524 clásico incluye muy pocos tresillos complejos y así las reglas del
2525 grabado clásico pueden generar este tipo de resultado. El
2526 establecimiento de @code{proportionalNotationDuration} remedia esta
2527 situación considerablemente.
2529 @lilypond[quote,verbatim,ragged-right]
2531 proportionalNotationDuration = #(ly:make-moment 1 20)
2533 \new RhythmicStaff {
2537 c'16 c'16 c'16 c'16 c'16
2540 \new RhythmicStaff {
2542 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8
2548 Pero si observamos con mucho cuidado podremos ver que las notas de la
2549 segunda mitad del 9-illo están espaciadas de forma ligeramente más
2550 ancha que las de la primera mitad del 9-illo. Para asegurar una
2551 ampliación uniforme, activamos @code{uniform-stretching}, que es una
2552 propiedad de @code{SpacingSpanner}.
2554 @lilypond[quote,verbatim,ragged-right]
2556 proportionalNotationDuration = #(ly:make-moment 1 20)
2557 \override SpacingSpanner #'uniform-stretching = ##t
2559 \new RhythmicStaff {
2563 c'16 c'16 c'16 c'16 c'16
2566 \new RhythmicStaff {
2568 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8 c'8
2574 Nuestro ejemplo de dos pentagramas ahora está espaciado exactamente,
2575 nuestras relaciones rítmicas son visualmente claras, y podemos incluir
2576 una línea de tiempo graduada o un gráfico, si queremos.
2578 Observe que el paquete de notación proporcional de LilyPond espera que
2579 todas las partituras proporcionales establezcan el atributo
2580 @code{uniform-stretching} de @code{SpacingSpanner} al valor ##t. El
2581 establecimiento de @code{proportionalNotationDuration} sin ajustar
2582 también el atributo @code{uniform-stretching} de @code{SpacingSpanner}
2583 al valor ##t causará, por ejemplo, que los desplazamientos
2584 (@code{skips}) consuman una cantidad de espacio horizontal incorrecta.
2586 El @code{SpacingSpanner} es un grob abstracto que reside en el
2587 contexto de @code{Score}. Como con nuestros ajustes de
2588 @code{proportionalNotationDuration}, las sobreescrituras al
2589 @code{SpacingSpanner} sólo pueden ocurrir en uno de estos tres lugares
2590 dentro del archivo de entrada: en el bloque @code{\with}, en el bloque
2591 @code{\context} o directamente dentro de la escritura de notas.
2593 De manera predeterminada, sólo hay un @code{SpacingSpanner} por
2594 @code{Score}. Esto supone que, por omisión, @code{uniform-stretching}
2595 está activado para la partitura completa o desactivado para la
2596 partitura completa. Sin embargo, podemos sobreescribir este
2597 comportamiento y activar distintas posibilidades de espaciado en
2598 distintos lugares de la partitura. Lo hacemos con la instrucción
2599 @code{\newSpacingSection}. Consulte @ref{Área de espaciado nueva} para más
2602 A continuación examinamos los efectos del grabador
2603 @code{Separating_line_group_engraver} y veremos por qué las partituras
2604 proporcionales con frecuencia eliminan este grabador. El ejemplo
2605 siguiente muestra que hay una pequeña cantidad de espacio
2606 @qq{preparatorio} justo antes de la primera nota de cada sistema.
2608 @lilypond[quote,verbatim,ragged-right]
2621 Esta cantidad de espacio preparatorio es la misma ya sea después de
2622 una indicación de compás, una armadura o una clave. El grabador
2623 @code{Separating_line_group_engraver} es responsable de este espacio.
2624 La eliminación de @code{Separating_line_group_engraver} reduce este
2627 @lilypond[quote,verbatim,ragged-right]
2633 \remove Separating_line_group_engraver
2641 Los elementos no musicales como la indicación de compás, la armadura,
2642 la clave y las alteraciones son problemáticos en notación
2643 proporcional. Ninguno de estos elementos tiene duración rítmica.
2644 Pero todos ellos consumen espacio horizontal. Las distintas
2645 partituras proporcionales abordan este problema de distinta manera.
2647 Sería posible evitar los problemas de espaciado con las armaduras,
2648 simplemente evitando tenerlas. Esta es una opción válida pues casi
2649 todas las partituras proporcionales son música contemporánea. Lo
2650 mismo puede valer para las indicaciones de compás, especialmente para
2651 las partituras que incluyen una línea de tiempo graduada u otro
2652 gráfico. Pero estas partituras son excepcionales y casi todas las
2653 partituras proporcionales incluyen al menos unas pocas indicaciones de
2654 compás. Las claves y las alteraciones son aún más esenciales.
2656 Así pues ¿qué estrategias existen para el espaciado de los elementos
2657 no musicales en un contexto proporcional? Una buena opción es la
2658 propiedad @code{strict-note-spacing} de @code{SpacingSpanner}.
2659 Compare las dos partituras siguientes:
2661 @lilypond[quote,verbatim,ragged-right]
2663 \set Score.proportionalNotationDuration = #(ly:make-moment 1 16)
2673 \set Score.proportionalNotationDuration = #(ly:make-moment 1 16)
2674 \override Score.SpacingSpanner #'strict-note-spacing = ##t
2684 Las dos partituras son proporcionales, pero el espaciado de la
2685 primera es muy suelto a causa del cambio de clave. Sin embargo, el
2686 espaciado de la segunda partitura se mantiene estricto, porque
2687 @code{strict-note-spacing} está activado. La activación de
2688 @code{strict-note-spacing} hace que el ancho de las indicaciones de
2689 compás, armaduras, cambios de clave y alteraciones no tomen parte en
2690 el algoritmo de espaciado.
2692 Además de los ajustes dados aquí, hay otros que aparecen con
2693 frecuencia en las partituras proporcionales. Entre ellos están:
2696 @item @code{\override SpacingSpanner #'strict-grace-spacing = ##t}
2697 @item @code{tupletFullLength = ##t}
2698 @item @code{\override Beam #'breakable = ##t}
2699 @item @code{\override Glissando #'breakable = ##t}
2700 @item @code{\override TextSpanner #'breakable = ##t}
2701 @item @code{\remove Forbid_line_break_engraver in the Voice context}
2704 Estos ajustes dan a las notas de adorno un espaciado estricto,
2705 extienden los corchetes de grupo especial para que marquen tanto los
2706 puntos de comienzo como de final, y permiten que los elementos de
2707 extensión se dividan entre los sistemas y las páginas. Consulte las
2708 partes respectivas del manual para ver estos ajustes relacionados.
2712 Referencia de la notación:
2713 @ref{Área de espaciado nueva}.
2715 Fragmentos de código:
2719 @node Encajar la música en menos páginas
2720 @section Encajar la música en menos páginas
2721 @translationof Fitting music onto fewer pages
2723 En ocasiones, podemos terminar con uno o dos pentagramas en una
2724 segunda página (o tercera, o cuarta...). Es fastidioso, especialmente
2725 cuando vemos que las páginas anteriores parecen tener espacio de
2728 Al investigar los problemas de disposición, una herramienta de valor
2729 incalculable es @code{annotate-spacing}. Esta instrucción imprime los
2730 valores de un cierto número de variables de espaciado; para ver más
2731 detalles consulte la sección siguiente, @ref{Mostrar el espaciado}.
2734 * Mostrar el espaciado::
2735 * Cambiar el espaciado::
2739 @node Mostrar el espaciado
2740 @subsection Mostrar el espaciado
2741 @translationof Displaying spacing
2743 @cindex espaciado, presentación del
2744 @funindex annotate-spacing
2746 Para presentar gráficamente las dimensiones de las variables de
2747 disposición vertical que pueden verse alteradas por el formato de la
2748 página, establezca @code{annotate-spacing} en el bloque @code{\paper}:
2750 @c need to have \book{} otherwise we get the separate systems. -hwn
2751 @lilypond[verbatim,quote]
2752 #(set-default-paper-size "a6" 'landscape)
2755 \paper { annotate-spacing = ##t }
2760 Todas las dimensiones de disposición se muestran en espacios de
2761 pentagrama, independientemente de las unidades especificadas en los
2762 bloques @code{\paper} o @code{\layout}. En el ejemplo anterior,
2763 @code{paper-height} tiene un valor de 59.75 @code{staff-spaces}
2764 (espacios de pentagrama), y el @code{staff-size} (tamaño del
2765 pentagrama) es de 20 puntos, el valor predeterminado. Observe que:
2767 @multitable {1 staff-space} {staff-size)/4 * (25.4/72.27) mm}
2770 @tab = (25.4/72.27) mm
2773 @tab = (@code{staff-size})/4 pts
2775 @tab = (@code{staff-size})/4 * (25.4/72.27) mm
2780 En este caso, un @code{staff-space} equivale aproximadamente a
2781 1.757mm. Así, la medida @code{paper-height} de 59.75
2782 @code{staff-spaces} equivale a 105 milímetros, la altura de una hoja
2783 @code{a6} en orientación apaisada. Las parejas (@var{a},@var{b}) son
2784 intervalos, donde @var{a} es el límite inferior y @var{b} es el límite
2785 superior del intervalo.
2789 Referencia de la notación:
2790 @ref{Establecer el tamaño del pentagrama}.
2792 Fragmentos de código:
2796 @node Cambiar el espaciado
2797 @subsection Cambiar el espaciado
2798 @translationof Changing spacing
2800 La salida de @code{annotate-spacing} revela las dimensiones verticales
2801 con gran detalle. Para ver más detalles acerca de la modificación de
2802 los márgenes y otras variables de diseño de la página, consulte
2803 @ref{Formateo de las páginas}.
2805 Aparte de los márgenes, hay algunas otras opciones para ahorrar espacio:
2809 Forzar los sistemas para que se junten lo más posible entre sí (de
2810 forma que quepan la mayor cantidad de ellos en la página) y al mismo
2811 tiempo estén espaciados de forma que no exista un espacio vacío en la
2812 parte baja del papel.
2816 between-system-spacing = #'((padding . 0) (space . 0.1))
2817 ragged-last-bottom = ##f
2823 Forzar el número de sistemas. Puede ser de utilidad de dos formas.
2824 Si tan sólo se establece un valor, incluso el mismo valor que el
2825 número de sistemas que se están trazando de forma predeterminada, ello
2826 ocasionará a veces que se traten de introducir más sistemas en cada
2827 página, pues en este caso se omite un paso en que se produce una
2828 estimación, dando así un encaje mejor en cada página. Asimismo, el
2829 forzar una reducción neta en el número de sistemas puede producir el
2830 ahorro de una página adicional. Por ejemplo, si la disposición
2831 predeterminada tiene 11 sistemas, la asignación siguiente fuerza una
2832 disposición con 10 sistemas.
2841 Evitar (o reducir en número) los objetos que aumentan el tamaño
2842 vertical de un sistema. Por ejemplo, las repeticiones de primera y
2843 segunda vez (o repeticiones con finales alternativos) necesitan
2844 espacio adicional. Si estas repeticiones se reparten a lo largo de
2845 dos sistemas, ocupan más espacio que un sistema con las casillas de
2846 repetición y otro sistema sin ellas. Por ejemplo, las indicaciones
2847 dinámicas que se @q{salen} de un sistema se pueden acercar al
2850 @lilypond[verbatim,quote,relative=1]
2852 \override DynamicText #'extra-offset = #'( -2.2 . 2.0)
2857 Alterar el espaciado horizontal por medio de @code{SpacingSpanner}.
2858 Para ver más detalles, consulte @ref{Cambiar el espaciado horizontal}. El
2859 ejemplo siguiente ilustra el espaciado predeterminado:
2861 @lilypond[verbatim,quote]
2874 El ejemplo siguiente modifica @code{common-shortest-duration} de un
2875 valor de @code{1/4} (negra) a @code{1/2} (blanca). La negra es la
2876 nota más común y la más breve del ejemplo, por lo que al agrandar esta
2877 duración se produce un efecto de @q{apretujamiento}:
2879 @lilypond[verbatim,quote]
2891 \override SpacingSpanner
2892 #'common-shortest-duration = #(ly:make-moment 1 2)
2899 La propiedad @code{common-shortest-duration} no se puede modificar de
2900 manera dinámica, por lo que se debe situar siempre dentro de un
2901 bloque @code{\context} de forma que se aplique a la partitura
2908 Referencia de la notación:
2909 @ref{Formateo de las páginas},
2910 @ref{Cambiar el espaciado horizontal}.
2912 Fragmentos de código: