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'' { c1 \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,relative=2,verbatim]
1514 De forma predeterminada se ignora cualquier @code{\break} en la mitad
1515 de un compás, y se imprime una advertencia. Para forzar un salto de
1516 línea en medio de un compás, añada una barra de compás invisible con
1519 @lilypond[quote,ragged-right,relative=2,verbatim]
1526 También se ignora un @code{\break} que se produce en la línea
1527 divisoria si el compás anterior termina en medio de una nota, como
1528 cuando un grupo de valoración especial inicia y termina en compases
1529 diferentes. Para permitir que las instrucciones @code{\break}
1530 funcionen en estas situaciones, elimine el grabador
1531 @code{Forbid_line_break_engraver} del contexto @code{Voice}. Observe
1532 que los saltos de línea forzados manualmente se deben añadir en
1533 paralelo con la música:
1535 @lilypond[quote,ragged-right,verbatim]
1537 \remove "Forbid_line_break_engraver"
1540 { c2. \tuplet 3/2 { c4 c c } c2. | }
1541 { s1 | \break s1 | }
1546 De forma similar, los saltos de línea están normalmente prohibidos
1547 cuando hay barras de corchea que cruzan la línea divisoria. Se
1548 puede cambiar este comportamiento fijando
1549 @code{\override Beam.breakable = ##t}:
1551 @lilypond[quote,ragged-right,relative=2,verbatim]
1552 \override Beam.breakable = ##t
1557 La instrucción @code{\noBreak}, prohíbe un salto de línea en
1558 la barra divisoria en que se inserta.
1560 Los ajustes más básicos que influyen sobre el espaciado de las líneas
1561 son @code{indent} y @code{line-width}. Se establecen dentro del bloque
1562 @code{\layout}. Controlan el sangrado de la primera línea de música,
1563 y la longitud de las líneas.
1565 Si se establece @code{ragged-right} a verdadero en el bloque
1566 @code{\layout}, los sistemas terminan en su longitud horizontal
1567 natural, en lugar de distribuirse horizontalmente para llenar toda la
1568 línea. Esto es de utilidad para fragmentos cortos, y para efectuar una
1569 comprobación de lo apretado que es el espaciado natural.
1571 @c TODO Check and add para on default for ragged-right
1573 La opción @code{ragged-last} es similar a @code{ragged-right}, pero
1574 afecta sólo a la última línea de la pieza.
1584 @cindex saltos de línea normales
1585 @cindex música de cuatro compases por línea
1587 Para saltos de línea a intervalos regulares utilice @code{\break}
1588 separado mediante desplazamientos con @code{\skip} y repetidos con
1589 @code{\repeat}. Por ejemplo, esto haría que los 28 compases
1590 siguientes (suponiendo un compás de 4/4) se dividan cada cuatro
1591 compases, y sólo en dichos lugares:
1596 s1 \noBreak s1 \noBreak
1597 s1 \noBreak s1 \break
1599 @{ @var{la música real@dots{}} @}
1612 Referencia de la notación:
1613 @ref{Variables de paper para los saltos de línea,,Variables de @code{@bs{}paper} para los saltos de línea}.
1615 Fragmentos de código:
1618 Referencia de funcionamiento interno:
1619 @rinternals{LineBreakEvent}.
1622 @node Saltos de página
1623 @subsection Saltos de página
1624 @translationof Page breaking
1626 Se puede sobreescribir el mecanismo predeterminado de salto de página
1627 insertando instrucciones @code{\pageBreak} o @code{\noPageBreak}.
1628 Estas instrucciones son análogas a @code{\break} y @code{\noBreak}.
1629 Se deben insertar en una línea divisoria. Estas instrucciones fuerzan
1630 y prohíben, respectivamente, la eventualidad de un salto de página.
1631 Por supuesto, la instrucción @code{\pageBreak} también fuerza un salto
1634 Las instrucciones @code{\pageBreak} y @code{\noPageBreak} también se
1635 pueden insertar en el nivel más alto, entre las partituras y los
1636 elementos de marcado situados en el nivel superior.
1638 Hay ajustes análogos a @code{ragged-right} y @code{ragged-last} que
1639 tienen el mismo efecto sobre el espaciado vertical:
1640 @code{ragged-bottom} y @code{ragged-last-bottom}. Si están
1641 establecidos a @code{#t} los sistemas de todas las páginas o sólo de
1642 la última página, respectivamente, no se verán justificados
1643 verticalmente. Véase
1644 @ref{Variables de espaciado de paper verticales fijas,,Variables de espaciado de @code{@bs{}paper} verticales fijas}.
1646 Los saltos de página se calculan por medio de la función
1647 @code{page-breaking}. LilyPond ofrece tres algoritmos para el cómputo
1648 de los saltos de página: @code{ly:optimal-breaking},
1649 @code{ly:page-turn-breaking} y @code{ly:minimal-breaking}. El
1650 predeterminado es @code{ly:optimal-breaking}, pero el valor se puede
1651 cambiar en el bloque @code{\paper}:
1655 page-breaking = #ly:page-turn-breaking
1661 Cuando un libro tiene muchas partituras y páginas, puede ser difícil
1662 resolver el problema de los saltos de página, necesitando mucha
1663 memoria y prolongados tiempos de procesamiento. Para facilitar el
1664 proceso de división en páginas, se usan los bloques @code{\bookpart}
1665 para dividir el libro en varias partes: los saltos de página se
1666 producen de manera independiente en cada parte. También se pueden
1667 usar diferentes funciones de división en páginas para las distintas
1673 subtitle = "Prefacio"
1676 %% En una parte que consiste en texto principalmente,
1677 %% puede ser preferible ly:minimal-breaking
1678 page-breaking = #ly:minimal-breaking
1680 \markup @{ @dots{} @}
1684 %% En esta parte, consistente en música, se usa la función
1685 %% óptima predeterminada de saltos de página.
1687 subtitle = "Primer movimiento"
1689 \score @{ @dots{} @}
1695 @funindex \pageBreak
1697 @funindex \noPageBreak
1698 @code{\noPageBreak}.
1702 Referencia de la notación:
1703 @ref{Variables de paper para los saltos de página,,Variables de @code{@bs{}paper} para los saltos de página}.
1705 Fragmentos de código:
1709 @node Saltos de página óptimos
1710 @subsection Saltos de página óptimos
1711 @translationof Optimal page breaking
1713 @funindex ly:optimal-breaking
1715 La función @code{ly:optimal-breaking} es el método predeterminado de
1716 LilyPond para determinar los saltos de página. Intenta hallar una
1717 división de páginas que haga mínimos el apretujamiento y la
1718 distensión, tanto horizontal como verticalmente. A diferencia de
1719 @code{ly:page-turn-breaking}, no tiene un concepto de los pasos de
1723 Fragmentos de código:
1727 @node Paso de página óptimo
1728 @subsection Paso de página óptimo
1729 @translationof Optimal page turning
1731 @funindex ly:page-turn-breaking
1733 Con frecuencia es necesario encontrar una configuración de división de
1734 páginas de manera que haya un silencio al final de una página de cada
1735 dos. De esta forma, el músico puede pasar la página sin perder notas.
1736 La función @code{ly:page-turn-breaking} trata de encontrar una
1737 división de páginas que haga mínimos el apretujamiento y el
1738 estiramiento, pero con la restricción añadida de que sólo se permite
1739 introducir vueltas de página en los lugares especificados.
1741 Hay dos etapas en el uso de esta función de división de páginas. En
1742 primer lugar debemos habilitarlo en el bloque @code{\paper}, como se
1743 explicó en @ref{Saltos de página}. Entonces debemos decirle a la función
1744 dónde nos gustaría permitir los saltos de página.
1746 Hay dos formas de conseguir la segunda tarea. Primero, podemos
1747 especificar manualmente cada uno de los pasos de página potenciales,
1748 insertando @code{\allowPageTurn} en nuestro archivo de entrada en los
1751 Si esto es demasiado tedioso, podemos añadir un grabador
1752 @code{Page_turn_engraver} a un contexto Staff o Voice. El grabador
1753 @code{Page_turn_engraver} analizará el contexto en busca de secciones
1754 sin notas (observe que no busca silencios, sino la ausencia de notas.
1755 Se hace así para que la polifonía en un solo pentagrama con silencios
1756 en una de las voces no arruine la labor del grabador
1757 @code{Page_turn_engraver}). Cuando encuentra una sección sin notas
1758 suficientemente larga, el grabador @code{Page_turn_engraver} inserta
1759 un @code{\allowPageTurn} en la última barra de compás de dicha
1760 sección, a no ser que haya una barra @q{especial} de compás (como una
1761 doble barra), en cuyo caso se insertará el @code{\allowPageTurn} en la
1762 última barra @q{especial} de compás de la sección.
1764 @funindex minimumPageTurnLength
1765 El grabador @code{Page_turn_engraver} lee la propiedad de contexto
1766 @code{minimumPageTurnLength} para determinar qué longitud debe tener
1767 una sección sin notas antes de que se considere la posibilidad de un
1768 paso de página. El valor predeterminado para
1769 @code{minimumPageTurnLength} es @code{(ly:make-moment 1/1)}. Si
1770 quiere inhabilitar las vueltas de página, puede establecerlo a algún
1774 \new Staff \with @{ \consists "Page_turn_engraver" @}
1777 R1 | % aquí se permite un salto de página
1779 \set Staff.minimumPageTurnLength = #(ly:make-moment 5/2)
1780 R1 | % aquí no se permite un salto de página
1782 R1*2 | % aquí se permite un salto de página
1787 @funindex minimumRepeatLengthForPageTurn
1788 El grabador @code{Page_turn_engraver} detecta las repeticiones de
1789 primera y segunda vez. Sólo permite un pase de página durante la
1790 repetición si hay suficiente tiempo al principio y al final de la
1791 repetición para volver a pasar la página hacia atrás. El grabador
1792 @code{Page_turn_engraver} también puede inhabilitar los pasos de
1793 página si la repetición es muy corta. Si establecemos la propiedad de
1794 contexto @code{minimumRepeatLengthForPageTurn} entonces el grabador
1795 @code{Page_turn_engraver} sólo permitirá los pases de página en las
1796 repeticiones cuya duración sea mayor que este valor.
1798 Las instrucciones de paso de página, @code{\pageTurn},
1799 @code{\noPageTurn} y @code{\allowPageTurn}, se pueden usar también en
1800 el nivel más elevado del código, entre las partituras y los elementos
1801 de marcado del nivel superior.
1806 @funindex \noPageTurn
1808 @funindex \allowPageTurn
1809 @code{\allowPageTurn}.
1813 Referencia de la notación:
1814 @ref{Variables de paper para los saltos de línea,,Variables de @code{@bs{}paper} para los saltos de línea}.
1816 Fragmentos de código:
1820 Sólo debería haber un grabador @code{Page_turn_engraver} dentro de una
1821 partitura. Si hay más de uno, se interferirán entre sí.
1824 @node Saltos de página mínimos
1825 @subsection Saltos de página mínimos
1826 @translationof Minimal page breaking
1828 @funindex ly:minimal-breaking
1830 La función @code{ly:minimal-breaking} efectúa unos cálculos mínimos
1831 para determinar los saltos de página: completa una página con tantos
1832 sistemas como sea posible antes de continuar con la siguiente. Así,
1833 puede preferirse para partituras con muchas páginas, donde las otras
1834 funciones de salto de página pueden resultar demasiado lentas o ávidas
1835 de memoria, o con una gran cantidad de textos. Se habilita utilizando:
1839 page-breaking = #ly:minimal-breaking
1844 Fragmentos de código:
1847 @node Saltos de página de una línea
1848 @subsection Saltos de página de una línea
1849 @translationof One-line page breaking
1851 @funindex ly:one-line-breaking
1853 La función @code{ly:one-line-breaking} es un algoritmo de saltos de
1854 página para uso especial que pone cada partitura en una página y en
1855 una sola línea. Esta función de salto de página no compone los
1856 títulos ni los márgenes; solamente se imprime la partitura.
1858 El ancho de la página se ajusta de forma que la partitura más larga
1859 quepa en una línea. Concretamente, las variables @code{paper-width},
1860 @code{line-width} y @code{indent} del bloque @code{\paper} se ignoran,
1861 aunque @code{left-margin} y @code{right-margin} aún se respetan. La
1862 altura de la página se deja sin cambios.
1864 @node Saltos de línea explícitos
1865 @subsection Saltos de línea explícitos
1866 @translationof Explicit breaks
1868 Lily a veces rechaza las instrucciones @code{\break} y
1869 @code{\pageBreak} explícitas. Hay dos instrucciones para
1870 sobreescribir este comportamiento:
1873 \override NonMusicalPaperColumn.line-break-permission = ##f
1874 \override NonMusicalPaperColumn.page-break-permission = ##f
1877 Cuando se sobreescribe el valor de @code{line-break-permission} a
1878 falso, Lily inserta saltos de línea en las instrucciones @code{\break}
1879 explícitas y en ningún otro lugar. Cuando se sobreescribe el valor de
1880 @code{page-break-permission} a falso, Lily inserta saltos de página en
1881 las instrucciones @code{\pageBreak} explícitas y en ningún otro lugar.
1883 @lilypond[quote,verbatim]
1890 music = \relative c'' { c8 c c c }
1894 \repeat unfold 2 { \music } \break
1895 \repeat unfold 4 { \music } \break
1896 \repeat unfold 6 { \music } \break
1897 \repeat unfold 8 { \music } \pageBreak
1898 \repeat unfold 8 { \music } \break
1899 \repeat unfold 6 { \music } \break
1900 \repeat unfold 4 { \music } \break
1901 \repeat unfold 2 { \music }
1906 \override NonMusicalPaperColumn.line-break-permission = ##f
1907 \override NonMusicalPaperColumn.page-break-permission = ##f
1914 Fragmentos de código:
1918 @node Utilizar una voz adicional para los saltos de línea
1919 @subsection Utilizar una voz adicional para los saltos de línea
1920 @translationof Using an extra voice for breaks
1922 La información sobre saltos de línea y de página suele aparecer
1923 directamente entremezclado dentro del código de notas.
1926 music = \relative c'' @{ c4 c c c @}
1930 \repeat unfold 2 @{ \music @} \break
1931 \repeat unfold 3 @{ \music @}
1936 Esto hace sencillas de introducir a las instrucciones @code{\break} y
1937 @code{\pageBreak}, pero mezcla la escritura de música con información
1938 que especifica cómo se debe disponer la música sobre la página.
1939 Podemos mantener la introducción de música y la información de saltos
1940 de línea y de página en dos lugares separados mediante la introducción
1941 de una voz adicional que contenga los saltos. Esta voz adicional
1942 contiene solamente desplazamientos o @q{skips} junto con los
1943 @code{\break}, @code{pageBreak} y otras informaciones sobre la
1944 disposición de los saltos.
1946 @lilypond[quote,verbatim]
1947 music = \relative c'' { c4 c c c }
1949 \header { tagline = ##f }
1950 \paper { left-margin = 0\mm }
1961 \repeat unfold 2 { \music }
1962 \repeat unfold 3 { \music }
1963 \repeat unfold 6 { \music }
1964 \repeat unfold 5 { \music }
1971 Este patrón resulta especialmente útil cuando se sobreescribe
1972 @code{line-break-system-details} y las otras útiles (pero largas)
1973 propiedades de @code{NonMusicalPaperColumnGrob}, como se explica en
1974 @ref{Espaciado vertical}.
1976 @lilypond[quote,verbatim]
1977 music = \relative c'' { c4 c c c }
1979 \header { tagline = ##f }
1980 \paper { left-margin = 0\mm }
1985 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
1989 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
1993 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
1997 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2002 \repeat unfold 2 { \music }
2003 \repeat unfold 3 { \music }
2004 \repeat unfold 6 { \music }
2005 \repeat unfold 5 { \music }
2013 Referencia de la notación:
2014 @ref{Espaciado vertical}.
2016 Fragmentos de código:
2020 @node Espaciado vertical
2021 @section Espaciado vertical
2022 @translationof Vertical spacing
2024 @cindex espaciado vertical
2025 @cindex vertical, espaciado
2027 El espaciado vertical está controlado por tres factores: la cantidad
2028 de espacio disponible (es decir, el tamaño del papel y los márgenes),
2029 la separación entre los sistemas, y la separación entre los
2030 pentagramas dentro de un sistema.
2033 * Espaciado vertical flexible dentro de los sistemas::
2034 * Posicionamiento explícito de los pentagramas y los sistemas::
2035 * Evitar las colisiones verticales::
2039 @node Espaciado vertical flexible dentro de los sistemas
2040 @subsection Espaciado vertical flexible dentro de los sistemas
2041 @translationof Flexible vertical spacing within systems
2043 @cindex distancia entre pentagramas
2044 @cindex pentagrama, distancia entre los
2045 @cindex espacio entre pentagramas
2046 @cindex espacio dentro de los sistemas
2048 Tres mecanismos distintos controlan el espaciado vertical flexible
2049 dentro de los sistemas, uno por cada una de las categorías siguientes:
2054 @emph{pautas sin agrupar},
2057 @emph{pautas agrupadas} (pautas dentro de un grupo de pentagramas como
2058 @code{ChoirStaff}, etc.), y
2061 @emph{líneas que no son pautas} (como @code{Lyrics},
2062 @code{ChordNames}, etc.).
2066 @c TODO: Clarify this. This almost implies that non-staff lines
2067 @c have NO effect on the spacing between staves. -mp
2069 La altura de cada sistema se determina en dos fases. Primero, todos
2070 los pentagramas se disponen según la cantidad de espacio vacío
2071 disponible. Después, las líneas que no son pautas se distribuyen
2074 Observe que los mecanismos de espaciado estudiados en esta sección
2075 solamente controlan el espaciado vertical de las pautas y líneas que
2076 no son pautas dentro de los sistemas individuales. El espaciado
2077 vertical entre distintos sistemas, partituras, marcados y márgenes se
2078 controla mediante variables de @code{\paper} que se estudian en
2079 @ref{Variables de espaciado de paper verticales flexibles,,Variables de espaciado de @code{@bs{}paper} verticales flexibles}.
2082 * Propiedades de espaciado dentro de los sistemas::
2083 * Espaciado de pautas no agrupadas::
2084 * Espaciado de pautas agrupadas::
2085 * Espaciado de las líneas que no son pautas::
2089 @node Propiedades de espaciado dentro de los sistemas
2090 @unnumberedsubsubsec Propiedades de espaciado dentro de los sistemas
2091 @translationof Within-system spacing properties
2093 @funindex staff-affinity
2094 @funindex staffgroup-staff-spacing
2095 @funindex staff-staff-spacing
2096 @funindex nonstaff-unrelatedstaff-spacing
2097 @funindex nonstaff-relatedstaff-spacing
2098 @funindex nonstaff-nonstaff-spacing
2099 @funindex default-staff-staff-spacing
2100 @funindex minimum-Y-extent
2101 @funindex extra-offset
2102 @funindex self-alignment-X
2104 @funindex VerticalAxisGroup
2106 Los mecanismos de espaciado vertical dentro del sistema están
2107 controlados por dos conjuntos de propiedades de grob. El primer
2108 conjunto está asociado con el grob @code{VerticalAxisGroup}, que se
2109 crea por parte de todas las pautas y líneas que no son pautas. El
2110 segundo conjunto está asociado con el grob @code{StaffGrouper}, que
2111 puede crearse por parte de los grupos de pentagramas, pero solamente
2112 si se le llama explícitamente. Estas propiedades se describen
2113 individualmente al final de la presente sección.
2115 Los nombres de estas propiedades (excepto para @code{staff-affinity})
2116 siguen el formato @code{@var{elemento1}-@var{elemento2}-spacing},
2117 donde @code{@var{elemento1}} y @code{@var{elemento2}} son los
2118 elementos que se van a espaciar. Observe que @code{@var{elemento2}}
2119 no está necesariamente por debajo de @code{@var{elemento1}}; por
2120 ejemplo, @code{nonstaff-relatedstaff-spacing} mide hacia arriba a
2121 partir de la línea del tipo no-pauta si @code{staff-affinity} es
2124 Cada distancia se mide entre los @emph{puntos de referencia} de los
2125 dos elementos. El @emph{punto de referencia} para un pentagrama y
2126 otro tipo de pauta es el centro vertical de su @code{StaffSymbol} (es
2127 decir, la línea central si @code{line-count} es un número impar; el
2128 espacio central si @code{line-count} es par). Los puntos de
2129 referencia para las líneas individuales que no son pautas aparecen en
2132 @multitable {Línea que no es una pauta} {Punto de referencia}
2133 @headitem Línea que no es una pauta @tab Punto de referencia
2134 @item @code{ChordNames} @tab línea de base
2135 @item @code{NoteNames} @tab línea de base
2136 @item @code{Lyrics} @tab línea de base
2137 @item @code{Dynamics} @tab la mitad de la altura de la @q{m}
2138 @item @code{FiguredBass} @tab punto más alto
2139 @item @code{FretBoards} @tab línea superior
2142 En la siguiente imagen, las líneas horizontales indican las posiciones
2143 de estos puntos de referencia:
2145 @lilypond[quote,noragged-right,line-width=110\mm]
2146 #(define zero-space '((padding . -inf.0) (basic-distance . 0)))
2148 alignToZero = \with {
2149 \override VerticalAxisGroup.nonstaff-relatedstaff-spacing = #zero-space
2150 \override VerticalAxisGroup.nonstaff-nonstaff-spacing = #zero-space
2151 \override VerticalAxisGroup.staff-affinity = #DOWN
2152 \remove Text_engraver % avoid having two
2153 \consists Text_engraver
2155 lowerCaseChords = \with {
2156 chordNameLowercaseMinor = ##t
2159 #(define-music-function
2160 (parser location context)
2162 #{ s1*0^\markup { \upright {\typewriter #context } } #})
2165 \context { \Dynamics \alignToZero }
2166 \context { \FiguredBass \alignToZero }
2167 \context { \Lyrics \alignToZero }
2168 \context { \NoteNames \alignToZero }
2169 \context { \ChordNames \alignToZero \lowerCaseChords }
2170 \context { \FretBoards \alignToZero }
2173 \override DynamicText.self-alignment-X = #-1
2174 \override FretBoard.X-offset = #1.75
2175 \override InstrumentName.minimum-Y-extent = #'(-1 . 2)
2181 %% These contexts have reference points at the baseline:
2182 %% ChordNames, NoteNames, and Lyrics
2184 \new ChordNames { \chords { \labelContext "ChordNames" g1:m } }
2185 \new NoteNames { s1 |\labelContext "NoteNames" g1 | }
2186 \new Lyrics { \lyrics { \skip 1*2 | \labelContext "Lyrics" ghijk1 | } }
2187 \new RhythmicStaff \with { instrumentName = #"baseline " } s1*3
2190 %% The reference point for Dynamics is the midline of 'm' in the font
2192 \new Dynamics { \labelContext "Dynamics" s1\mp s\fp }
2193 \new RhythmicStaff \with { instrumentName = #"mid-height " } s1*3
2196 %% The reference point for FiguredBass is its highest point
2198 \new FiguredBass { \labelContext "FiguredBass" \figuremode { <6 5>1 } }
2199 \new RhythmicStaff \with { instrumentName = #"highest point " } s1
2202 %% The reference point for FretBoards is the top line
2203 \include "predefined-guitar-fretboards.ly"
2205 \new FretBoards { \labelContext "FretBoards" \chordmode { e1 } }
2206 \new RhythmicStaff \with { instrumentName = #"top line " } s1
2210 Cada una de las propiedades de grob del espaciado vertical (excepto
2211 @code{staff-affinity})
2212 usa la misma estructura de lista-A que las
2213 variables de espaciado del bloque @code{\paper} que se han estudiado
2214 en @ref{Variables de espaciado de paper verticales flexibles,,Variables de espaciado de @code{@bs{}paper} verticales flexibles}.
2215 En @ref{Modificación de las listas-A}
2216 se estudian métodos específicos para la modificación de
2217 las listas-A. Las propiedades de los grobs deben ajustarse con un
2218 @code{\override} dentro de un bloque @code{\score} o @code{\layout}, y
2219 no dentro de un bloque @code{\paper}.
2221 El ejemplo que sigue muestra las dos maneras en que pueden modificarse
2222 estas listas-A. La primera declaración actualiza un par clave-valor de
2223 forma individual, y la segunda redefine la propiedad completamente:
2227 \override VerticalAxisGroup.default-staff-staff-spacing.basic-distance = #10
2231 \override VerticalAxisGroup.default-staff-staff-spacing =
2232 #'((basic-distance . 10)
2233 (minimum-distance . 9)
2235 (stretchability . 10))
2239 Para modificar globalmente cualquiera de los ajustes de espaciado,
2240 póngalos dentro del bloque @code{\layout}:
2246 \override VerticalAxisGroup.default-staff-staff-spacing.basic-distance = #10
2251 Los ajustes estándar para las propiedades de grob del espaciado
2252 vertical están relacionadas en @rinternals{VerticalAxisGroup} y en
2253 @rinternals{StaffGrouper}. Las sobreescrituras predeterminadas para
2254 los tipos específicos de líneas que no son pautas están relacionadas
2255 en las descripciones de contexto correspondientes en
2256 @rinternals{Contexts}.
2258 @subsubheading Propiedades del grob @code{VerticalAxisGroup}
2260 Las propiedades de @code{VerticalAxisGroup} se suelen ajustar con una
2261 instrucción @code{\override} en el nivel de @code{Staff} (o
2265 @item staff-staff-spacing
2266 Se utiliza para determinar la distancia entre la pauta actual
2267 y la pauta que está justo por debajo
2268 de ella dentro del mismo sistema, incluso si hay más líneas que no son
2269 pautas (tales como @code{Lyrics}) entre las dos pautas. No se aplica
2270 a la pauta inferior de un sistema.
2272 Inicialmente, el valor de espaciado @code{staff-staff-spacing} de un
2273 grupo @code{VerticalAxisGroup} es una función de Scheme que aplica las
2274 propiedades del @code{StaffGrouper} si la pauta forma parte de un
2275 grupo, o el @code{default-staff-staff-spacing} de la pauta en caso
2276 contrario. Esto hace posible que las pautas estén espaciadas de forma
2277 diferente cuando están agrupadas. Para conseguir un espaciado regular
2278 sin importar el agrupamiento, esta función se puede sustituir por una
2279 lista-A de espaciado flexible, utilizando la forma de
2280 sobreescritura de redefinición completa que se ha mostrado más arriba.
2282 @item default-staff-staff-spacing
2283 Una lista-A de espaciado flexible que define el
2284 espacio @code{staff-staff-spacing} que se usará para las pautas sin
2285 agrupar, a no ser que se haya sobreescrito explícitamente
2286 @code{staff-staff-spacing} con una instrucción @code{\override}.
2288 @item staff-affinity
2289 Dirección de la pauta que utilizar para el espaciado de la línea
2290 actual que no es pauta. Se puede elegir entre @code{UP} (arriba),
2291 @code{DOWN} (abajo) y @code{CENTER} (centro). Si es @code{CENTER}, la
2292 línea del tipo no-pauta se coloca equidistante entre las dos pautas
2293 contiguas a ambos lados, a no ser que lo impidan colisiones u otras
2294 restricciones de espaciado. Las líneas del tipo no-pauta adyacentes
2295 han de llevar valores de @code{staff-affinity} no crecientes desde la
2296 parte superior hasta la inferior, p.ej. una línea del tipo no-pauta
2297 establecida a @code{UP} no debería seguir inmediatamente a otra que
2298 esté establecida a @code{DOWN}. Las líneas del tipo no-pauta en la
2299 parte superior de un sistema deben usar @code{DOWN}; las de la parte
2300 inferior deben usar @code{UP}. El ajuste de @code{staff-affinity}
2301 para una pauta hace que se le trate como una línea que no es una
2302 pauta. El establecimiento de @code{staff-affinity} a @code{#f} para
2303 una línea que no es una pauta hace que se trate como una pauta.
2304 Establecer @code{staff-affinity} a @code{UP}, @code{CENTER}, o
2305 @code{DOWN} hace que el pentagrama resulte espaciado como si fuera una
2306 línea que no es una pauta.
2308 @item nonstaff-relatedstaff-spacing
2309 Distancia entre la línea del tipo no-pauta actual y la pauta más
2310 próxima en la dirección de @code{staff-affinity}, si no hay ninguna
2311 línea que no sea una pauta entre las dos, y @code{staff-affinity} es
2312 @code{UP} o @code{DOWN}. Si @code{staff-affinity} es @code{CENTER},
2313 entonces se usa @code{nonstaff-relatedstaff-spacing} para las pautas
2314 más próximas @emph{a los dos lados}, incluso aunque aparezcan otras
2315 líneas del tipo no-pauta entre la pauta actual y una de las otras.
2316 Esto significa que la colocación de una línea que no es una pauta
2317 depende tanto de las pautas que la rodean como de las líneas que no
2318 son pautas y que la rodean. Establecer la ampliabilidad
2319 @code{stretchability} de uno de estos tipos de espaciado a un valor
2320 más pequeño provoca que este espaciado domine. El establecimiento de
2321 @code{stretchability} a un valor mayor hace que dicho espaciado tenga
2324 @item nonstaff-nonstaff-spacing
2325 Distancia entre la línea actual del tipo no-pauta y la siguiente línea
2326 del tipo no-pauta en la dirección de @code{staff-affinity}, si las dos
2327 están al mismo lado de la pauta relacionada, y @code{staff-affinity}
2328 es @code{UP} o @code{DOWN}.
2330 @item nonstaff-unrelatedstaff-spacing
2331 Distancia entre la línea actual del tipo no-pauta y la pauta en la
2332 dirección opuesta de @code{staff-affinity}, si no hay ninguna otra
2333 línea del tipo no-pauta entre las dos, y @code{staff-affinity} es
2334 @code{UP} o @code{DOWN}. Se puede usar, por ejemplo, para requerir
2335 una cantidad de relleno mínima entre una línea de @code{Lyrics} y la
2336 pauta a la que no pertenece.
2339 @subsubheading Propiedades del grob @code{StaffGrouper}
2341 Las propiedades de @code{StaffGrouper} se suelen ajustar con una
2342 instrucción @code{\override} en el nivel de @code{StaffGroup} (o
2346 @item staff-staff-spacing
2347 Distancia entre pautas consecutivas dentro del grupo de pautas actual.
2348 La propiedad @code{staff-staff-spacing} del grob
2349 @code{VerticalAxisGroup} de una pauta individual se puede
2350 sobreescribir con distintos ajustes de espaciado para dicha
2353 @item staffgroup-staff-spacing
2354 Distancia entre la última pauta del grupo en curso y la pauta que está
2355 justo por debajo de ella dentro del mismo sistema, incluso si existen
2356 una o más líneas que no son pautas (tales como @code{Lyrics}) entre
2357 las dos pautas. No se aplica al pentagrama o pauta inferior de un
2358 sistema. La propiedad @code{staff-staff-spacing} del grob
2359 @code{VerticalAxisGroup} de una pauta individual se puede
2360 sobreescribir con distintos ajustes de espaciado para dicha
2365 Referencia de la notación:
2366 @ref{Variables de espaciado de paper verticales flexibles,,Variables de espaciado de @code{@bs{}paper} verticales flexibles},
2367 @ref{Modificación de las listas-A}.
2370 @file{ly/engraver-init.ly},
2371 @file{scm/define-grobs.scm}.
2373 Referencia de funcionamiento interno:
2374 @rinternals{Contexts},
2375 @rinternals{VerticalAxisGroup},
2376 @rinternals{StaffGrouper}.
2380 @node Espaciado de pautas no agrupadas
2381 @unnumberedsubsubsec Espaciado de pautas no agrupadas
2382 @translationof Spacing of ungrouped staves
2384 Las @emph{pautas}, tales como los pentagramas (@code{Staff}), pautas
2385 de percusión (@code{DrumStaff}) o de tablatura (@code{TabStaff}),
2386 etc. son contextos que pueden contener uno o más contextos de voz,
2387 pero no pueden contener otras pautas.
2389 Las siguientes propiedades afectan al espaciado de las pautas @emph{no
2393 @item Propiedades de @code{VerticalAxisGroup}:
2395 @item @code{default-staff-staff-spacing}
2396 @item @code{staff-staff-spacing}
2400 Estas propiedades de grob se describen individualmente más arriba;
2401 véase @ref{Propiedades de espaciado dentro de los sistemas}.
2403 Están implicadas ciertas propiedades adicionales para las pautas que
2404 son parte de un grupo; véase @ref{Espaciado de pautas agrupadas}.
2406 El ejemplo siguiente muestra cómo la propiedad
2407 @code{default-staff-staff-spacing} puede afectar al espaciado de pautas no
2408 agrupadas. Las mismas sobreescrituras aplicadas a
2409 @code{staff-staff-spacing}
2410 tendrían el mismo efecto, pero también se aplicaría en caso de que las
2411 pautas estuvieran combinadas en un grupo o grupos.
2413 @lilypond[verbatim,quote,staffsize=16]
2417 \override VerticalAxisGroup.default-staff-staff-spacing =
2418 #'((basic-distance . 8)
2419 (minimum-distance . 7)
2425 % The very low note here needs more room than 'basic-distance
2426 % can provide, so the distance between this staff and the next
2427 % is determined by 'padding.
2428 \new Staff { b,2 r | }
2430 % Here, 'basic-distance provides enough room, and there is no
2431 % need to compress the space (towards 'minimum-distance) to make
2432 % room for anything else on the page, so the distance between
2433 % this staff and the next is determined by 'basic-distance.
2434 \new Staff { \clef bass g2 r | }
2436 % By setting 'padding to a negative value, staves can be made to
2437 % collide. The lowest acceptable value for 'basic-distance is 0.
2439 \override VerticalAxisGroup.default-staff-staff-spacing =
2440 #'((basic-distance . 3.5)
2442 } { \clef bass g2 r | }
2443 \new Staff { \clef bass g2 r | }
2449 @file{scm/define-grobs.scm}.
2451 Fragmentos de código:
2454 Referencia de funcionamiento interno:
2455 @rinternals{VerticalAxisGroup}.
2458 @node Espaciado de pautas agrupadas
2459 @unnumberedsubsubsec Espaciado de pautas agrupadas
2460 @translationof Spacing of grouped staves
2462 En partituras grandes como las orquestales, es común colocar los
2463 pentagramas en grupos. El espacio entre los grupos suele ser mayor
2464 que el espacio que hay entre los pentagramas dentro del mismo grupo.
2466 Los grupos de pautas, @emph{Staff-groups} (tales como
2467 @code{StaffGroup}, @code{ChoirStaff}, etc.) son contextos que pueden
2468 contener al mismo tiempo uno o más pentagramas o pautas.
2470 Las siguientes propiedades afectan al espaciado de las pautas dentro
2474 @item Propiedades de @code{VerticalAxisGroup}:
2476 @item @code{staff-staff-spacing}
2478 @item Propiedades de @code{StaffGrouper}:
2480 @item @code{staff-staff-spacing}
2481 @item @code{staffgroup-staff-spacing}
2485 Estas propiedades de grob se describen individualmente más arriba;
2486 véase @ref{Propiedades de espaciado dentro de los sistemas}.
2488 El ejemplo siguiente muestra cómo pueden afectar las propiedades del
2489 grob @code{StaffGrouper} al espaciado de las pautas agrupadas:
2491 @lilypond[verbatim,quote,staffsize=16]
2495 \override StaffGrouper.staff-staff-spacing.padding = #0
2496 \override StaffGrouper.staff-staff-spacing.basic-distance = #1
2501 \new PianoStaff \with {
2502 \override StaffGrouper.staffgroup-staff-spacing.basic-distance = #20
2517 @file{scm/define-grobs.scm}.
2519 Fragmentos de código:
2522 Referencia de funcionamiento interno:
2523 @rinternals{VerticalAxisGroup},
2524 @rinternals{StaffGrouper}.
2527 @node Espaciado de las líneas que no son pautas
2528 @unnumberedsubsubsec Espaciado de las líneas que no son pautas
2529 @translationof Spacing of non-staff lines
2531 Las @emph{Líneas que no son pautas} (tales como @code{Lyrics},
2532 @code{ChordNames}, etc.) son contextos cuyos objetos de presentación
2533 se imprimen como pentagramas (es decir, en líneas horizontales dentro
2534 de los sistemas). Específicamente, las líneas que no son pautas son
2535 contextos del tipo no-pauta que crean el objeto de presentación
2536 @code{VerticalAxisGroup}.
2538 Las siguientes propiedades afectan al espaciado de las líneas que no
2542 @item Propiedades de @code{VerticalAxisGroup}:
2544 @item @code{staff-affinity}
2545 @item @code{nonstaff-relatedstaff-spacing}
2546 @item @code{nonstaff-nonstaff-spacing}
2547 @item @code{nonstaff-unrelatedstaff-spacing}
2551 Estas propiedades de grob se describen individualmente más arriba;
2552 véase @ref{Propiedades de espaciado dentro de los sistemas}.
2554 El ejemplo siguiente muestra cómo la propiedad
2555 @code{nonstaff-nonstaff-spacing} puede afectar el espaciado de líneas
2556 consecutivas que no son pautas. Aquí, mediante el establecimiento de
2557 la clave de ampliabilidad @code{stretchability} a un valor muy grande,
2558 la línea de letra es capaz de ampliarse mucho más de lo que es usual:
2560 @lilypond[verbatim,quote,staffsize=16]
2564 \override VerticalAxisGroup.nonstaff-nonstaff-spacing.stretchability = #1000
2571 \override VerticalAxisGroup.staff-staff-spacing = #'((basic-distance . 30))
2574 \override VerticalAxisGroup.staff-affinity = #UP
2577 \override VerticalAxisGroup.staff-affinity = #CENTER
2578 } \lyricmode { center }
2580 \override VerticalAxisGroup.staff-affinity = #DOWN
2581 } \lyricmode { down }
2588 @file{ly/engraver-init.ly},
2589 @file{scm/define-grobs.scm}.
2591 Fragmentos de código:
2594 @c @lsr{spacing,page-spacing.ly},
2595 @c @lsr{spacing,alignment-vertical-spacing.ly}.
2597 Referencia de funcionamiento interno:
2598 @rinternals{Contexts},
2599 @rinternals{VerticalAxisGroup}.
2602 @node Posicionamiento explícito de los pentagramas y los sistemas
2603 @subsection Posicionamiento explícito de los pentagramas y los sistemas
2604 @translationof Explicit staff and system positioning
2606 Una forma de entender los mecanismos del espaciado vertical
2607 flexible que se han explicado más arriba es como una
2608 colección de ajustes que controlan la cantidad de relleno
2609 vertical entre los pentagramas y los sistemas.
2611 Es posible enfrentarse al espaciado vertical de una forma distinta
2612 utilizando @code{NonMusicalPaperColumn.line-break-system-details}.
2613 Mientras que los mecanismos del espaciado vertical flexible
2614 especifican relleno vertical,
2615 @code{NonMusicalPaperColumn.line-break-system-details} puede
2616 especificar posiciones verticales exactas sobre la página.
2618 @code{NonMusicalPaperColumn.line-break-system-details} acepta una
2619 lista asociativa de tres ajustes diferentes:
2622 @item @code{X-offset} (desplazamiento en X)
2623 @item @code{Y-offset} (desplazamiento en Y)
2624 @item @code{alignment-distances} (distancias de alineación)
2627 Las sobreescrituras de los objetos gráficos, entre ellas las de
2628 @code{NonMusicalPaperColumn} que aparecen más abajo, pueden ocurrir en
2629 tres lugares distintos dentro de un archivo de entrada:
2632 @item directamente en medio de las notas
2633 @item en un bloque @code{\context}
2634 @item en el bloque @code{\with}
2637 Cuando sobreescribimos @code{NonMusicalPaperColumn}, usamos la
2638 instrucción @code{\override} usual en los bloques @code{\context} y en
2639 el bloque @code{\with}. Por otra parte, cuando sobreescribimos
2640 @code{NonMusicalPaperColumn} en medio de las notas, debemos usar la
2641 instrucción especial @code{\overrideProperty}. He aquí algunas
2642 sobreescrituras de @code{NonMusicalPaperColumn} de ejemplo con la
2643 instrucción especial @code{\overrideProperty}:
2646 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2649 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2652 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2656 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2657 #'((alignment-distances . (15)))
2659 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2662 (alignment-distances . (15)))
2665 Para entender cómo funciona cada uno de los distintos ajustes,
2666 empezamos observando un ejemplo que no incluye absolutamente ninguna
2669 @c \book { } is required in these examples to ensure the spacing
2670 @c overrides can be seen between systems. -np
2672 @lilypond[verbatim,quote,staffsize=16]
2673 \header { tagline = ##f }
2674 \paper { left-margin = 0\mm }
2684 \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2687 \repeat unfold 15 { d'4 d' d' d' }
2694 Esta partitura mantiene aislada la información de los saltos de línea
2695 y de página en una voz dedicada a ello. Esta técnica de crear una voz
2696 de saltos ayuda a mantener separada de la escritura de notas conforme
2697 el ejemplo se vuelve más complicado. Consulte
2698 @ref{Utilizar una voz adicional para los saltos de línea}.
2700 Los saltos explícitos dividen la música de forma regular en seis
2701 compases por línea. El espaciado vertical es el resultado de los
2702 ajustes predeterminados de LilyPond. Para establecer explícitamente
2703 el punto de origen vertical de cada sistema, podemos establecer el par
2704 @code{Y-offset} en el atributo @code{line-break-system-details} del
2705 grob (objeto gráfico) @code{NonMusicalPaperColumn}:
2707 @lilypond[verbatim,quote,staffsize=16]
2708 \header { tagline = ##f }
2709 \paper { left-margin = 0\mm }
2715 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2718 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2721 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2725 \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2728 \repeat unfold 15 { d'4 d' d' d' }
2735 Observe que @code{line-break-system-details} toma una lista asociativa
2736 de una cantidad de valores potencialmente elevada, pero aquí sólo
2737 fijamos un valor. Observe también que aquí la propiedad
2738 @code{Y-offset} determina la posición vertical exacta sobre la página
2739 en la que se trazará cada uno de los nuevos sistemas.
2741 Ahora que hemos establecido explícitamente el punto de origen vertical
2742 de cada sistema, podemos también establecer manualmente las distancias
2743 verticales entre los pentagramas dentro de cada sistema. Lo hacemos
2744 usando la subpropiedad @code{alignment-distances} de
2745 @code{line-break-system-details}.
2747 @lilypond[verbatim,quote,staffsize=16]
2748 \header { tagline = ##f }
2749 \paper { left-margin = 0\mm }
2755 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2757 (alignment-distances . (10)))
2759 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2761 (alignment-distances . (15)))
2763 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2765 (alignment-distances . (20)))
2768 \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2771 \repeat unfold 15 { d'4 d' d' d' }
2778 Observe que aquí asignamos dos valores distintos al atributo
2779 @code{line-break-system-details} del grob
2780 @code{NonMusicalPaperColumn}. Aunque el atributo alist de
2781 @code{line-break-system-details} acepta muchos parámetros de espaciado
2782 adicionales (entre ellos, por ejemplo, un par @code{X-offset}
2783 correspondiente), sólo tenemos que establecer el desplazamiento
2784 @code{Y-offset} y los pares @code{alignment-distances} para controlar
2785 el punto de origen vertical de cada sistema y pentagrama. Finalmente,
2786 observe que @code{alignment-distances} especifica el posicionamiento
2787 vertical de los pentagramas pero no de los grupos de pentagramas.
2789 @lilypond[verbatim,quote,staffsize=16]
2790 \header { tagline = ##f }
2791 \paper { left-margin = 0\mm }
2797 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2799 (alignment-distances . (30 10)))
2801 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2803 (alignment-distances . (10 10)))
2805 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2807 (alignment-distances . (10 30)))
2810 \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2813 \new Staff { \repeat unfold 15 { d'4 d' d' d' } }
2814 \new Staff { \repeat unfold 15 { e'4 e' e' e' } }
2821 Algunos puntos que tener en cuenta:
2824 @item Al usar @code{alignment-distances}, la letra
2825 y otras líneas que no son pautas, no cuentan como un pentagrama.
2827 @item Las unidades de los números que se pasan a @code{X-offset},
2828 @code{Y-offset} y @code{alignment-distances} se interpretan como
2829 múltiplos de la distancia entre líneas de pentagrama adyacentes. Los
2830 valores positivos mueven a los pentagramas y a la letra hacia arriba,
2831 los valores negativos mueven los pentagramas y la letra hacia abajo.
2833 @item A causa de que los ajustes a
2834 @code{NonMusicalPaperColumn.line-break-system-details} dados aquí
2835 permiten el posicionamiento de pentagramas y sistemas en cualquier
2836 lugar de la página, es posible violar los márgenes o los límites
2837 del papel, o incluso imprimir pentagramas o sistemas unos encima
2838 de otros. Esto se evitaría pasando a los diferentes ajustes unos
2843 Fragmentos de código:
2847 @node Evitar las colisiones verticales
2848 @subsection Evitar las colisiones verticales
2849 @translationof Vertical collision avoidance
2851 @funindex outside-staff-priority
2852 @funindex outside-staff-padding
2853 @funindex outside-staff-horizontal-padding
2855 Podemos decir intuitivamente que algunos objetos de la notación
2856 musical pertenecen al pentagrama y otros se sitúan fuera del
2857 pentagrama. Entre los objetos que pertenecen al exterior del
2858 pentagrama están las marcas de ensayo, las marcas textuales y las
2859 indicaciones de dinámica (en lo sucesivo, les llamaremos objetos fuera
2860 del pentagrama). La regla de LilyPond para la colocación vertical de
2861 los objetos fuera del pentagrama es ponerlos tan cerca del pentagrama
2862 como sea posible pero no tan próximos como para que choquen con otro
2865 LilyPond utiliza la propiedad @code{outside-staff-priority} para
2866 determinar si un grob es un objeto fuera del pentagrama: si
2867 @code{outside-staff-priority} es un número, el grob es un objeto fuera
2868 del pentagrama. Además, @code{outside-staff-priority} informa a
2869 LilyPond en qué orden se debe situar los objetos.
2871 En primer lugar, LilyPond sitúa todos los objetos que no pertenecen al
2872 exterior del pentagrama. Después ordena los objetos fuera del
2873 pentagrama de acuerdo a su prioridad @code{outside-staff-priority} (en
2874 orden creciente). LilyPond toma los objetos fuera del pentagrama uno
2875 a uno y los coloca de forma que no choquen con ningún objeto que ya
2876 haya sido colocado. Esto es, si dos grobs fuera del pentagrama
2877 compiten por el mismo espacio, el que tiene la prioridad
2878 @code{outside-staff-priority} más baja se colocará más próximo al
2881 @lilypond[quote,ragged-right,relative=2,verbatim]
2884 \once \override TextScript.outside-staff-priority = #1
2885 c4_"Text"\pp % this time the text will be closer to the staff
2887 % by setting outside-staff-priority to a non-number,
2888 % we disable the automatic collision avoidance
2889 \once \override TextScript.outside-staff-priority = ##f
2890 \once \override DynamicLineSpanner.outside-staff-priority = ##f
2891 c4_"Text"\pp % now they will collide
2894 El relleno vertical que rodea a los objetos fuera del pentagrama
2895 se puede controlar con @code{outside-staff-padding}.
2897 @lilypond[quote,ragged-right,relative=2,verbatim,staffsize=18]
2898 \once \override TextScript.outside-staff-padding = #0
2899 a4-"outside-staff-padding = #0"
2900 \once \override TextScript.outside-staff-padding = #3
2901 d-"outside-staff-padding = #3"
2902 c-"default outside-staff-padding"
2903 b-"default outside-staff-padding"
2907 De forma predeterminada, los objetos fuera del pentagrama se
2908 colocan de forma que eviten una colisión horizontal con los grobs
2909 posicionados previamente. Esto puede llevar a situaciones en las
2910 que los objetos se colocan muy próximos entre sí en el sentido
2911 horizontal. Como se muestra en el ejemplo que aparece más abajo,
2912 al establecer @code{outside-staff-horizontal-padding} se
2913 incrementa el espacio horicontal necesario, y en este caso mueve
2914 el texto hacia arriba para evitar que quede demasiado cerca de las
2917 @lilypond[quote,ragged-right,relative=2,verbatim]
2920 \once \override TextScript.outside-staff-horizontal-padding = #1
2925 Fragmentos de código:
2929 @node Espaciado horizontal
2930 @section Espaciado horizontal
2931 @translationof Horizontal spacing
2933 @cindex horizontal, espaciado
2934 @cindex espaciado horizontal
2937 * Panorámica del espaciado horizontal::
2938 * Área de espaciado nueva::
2939 * Cambiar el espaciado horizontal::
2940 * Longitud de la línea::
2941 * Notación proporcional::
2945 @node Panorámica del espaciado horizontal
2946 @subsection Panorámica del espaciado horizontal
2947 @translationof Horizontal spacing overview
2949 El motor de espaciado traduce las diferencias en las duraciones a
2950 distancias ampliables (@q{muelles}) de distintas longitudes. Las
2951 duraciones más largas reciben un espacio mayor y las duraciones más
2952 cortas reciben menos. Las duraciones más breves reciben un espacio de
2953 tamaño fijo (que se controla mediante @code{shortest-duration-space}
2954 en el objeto @rinternals{SpacingSpanner}). Cuanto más larga es la
2955 duración, más espacio recibe: al doblar una duración se añade un
2956 espacio de tamaño fijo (este tamaño se controla mediante
2957 @code{spacing-increment}) a la nota.
2959 Por ejemplo, la pieza siguiente contiene numerosas blancas, negras y
2960 corcheas; la corchea va seguida de un ancho de cabeza de blanca (ACB).
2961 La negra va seguida de 2 ACB, la blanca por 3 ACB, etc.
2963 @lilypond[quote,verbatim,relative=1]
2969 Normalmente, el valor de @code{spacing-increment} está establecido en
2970 1.2 espacios de pentagrama, lo que es aproximadamente el ancho de una
2971 cabeza, y @code{shortest-duration-space} está establecido en 2.0, lo
2972 que significa que la nota más breve recibe 2.4 espacios de pentagrama
2973 (2.0 multiplicado por el @code{spacing-increment}) de espacio
2974 horizontal. Este espacio se cuenta a partir del borde izquierdo del
2975 símbolo, de manera que las notas más breves van seguidas generalmente
2976 por un espacio de 1 ACB.
2978 Si siguiésemos el procedimiento anterior exactamente, entonces la
2979 adición de una sola fusa a una partitura que usa corcheas y
2980 semicorcheas, aumentaría enormemente la anchura de la partitura
2981 completa. La nota más breve ya no es la semicorchea, sino la fusa,
2982 añadiendo así 1 ACB a cada una de las notas. Para evitarlo, la
2983 duración más breve a efectos de espaciado no es la nota más breve de
2984 la partitura, sino la que ocurre con más frecuencia.
2986 La duración más breve que es más común se determina de la siguiente
2987 manera: en cada compás se determina la duración más breve. La menor
2988 duración más común se toma como base para el espaciado, habiendo
2989 estipulado que esta duración menor siempre debe ser igual o menor que
2990 una corchea. La duración más breve se imprime cuando se ejecuta
2991 @code{lilypond} con la opción @option{--verbose}.
2993 Estas duraciones también se pueden personalizar. Si establecemos la
2994 @code{common-shortest-duration} en @rinternals{SpacingSpanner},
2995 entonces éste establece la duración base para el espaciado. La
2996 duración máxima para esta base (normalmente una corchea), se fija a
2997 través de @code{base-shortest-duration}.
2999 @funindex common-shortest-duration
3000 @funindex base-shortest-duration
3001 @funindex stem-spacing-correction
3004 Las notas que son aún más breves que la nota común más breve van
3005 seguidas por un espacio proporcional a su duración en relación con la
3006 nota común más breve. Así pues, si fuésemos a añadir tan sólo algunas
3007 semicorcheas al ejemplo anterior, irían seguidas por medio ACB:
3009 @lilypond[quote,verbatim,relative=2]
3010 c2 c4. c8 c4. c16[ c] c4. c8 c8 c8 c4 c4 c4
3013 En el @emph{Ensayo sobre grabado musical automatizado},
3015 direcciones de las plicas influyen en el espaciado
3016 (véase @ressay{Espaciado óptico}). Esto se controla
3017 con la propiedad @code{stem-spacing-correction} en el objeto
3018 @rinternals{NoteSpacing}. Estos se generan para cada uno de los
3019 contextos de @rinternals{Voice}. El objeto @code{StaffSpacing}
3020 (generado en el contexto de @rinternals{Staff}) contiene la misma
3021 propiedad para controlar el espaciado de las líneas de plica o
3022 divisorias. El ejemplo siguiente muestra estas correcciones, una vez
3023 con los valores predeterminados y otra con correcciones exageradas:
3025 @lilypond[quote,ragged-right]
3029 \override Staff.NoteSpacing.stem-spacing-correction = #1.5
3030 \override Staff.StaffSpacing.stem-spacing-correction = #1.5
3036 Está contemplada la notación proporcional; consulte
3037 @ref{Notación proporcional}.
3040 Ensayo sobre grabado musical automatizado:
3041 @ressay{Espaciado óptico}.
3043 Fragmentos de código:
3046 Referencia de funcionamiento interno:
3047 @rinternals{SpacingSpanner},
3048 @rinternals{NoteSpacing},
3049 @rinternals{StaffSpacing},
3050 @rinternals{NonMusicalPaperColumn}.
3053 No existe ningún mecanismo conveniente para sobreescribir el espaciado
3054 manualmente. Se puede usar el siguiente rodeo para insertar espacio
3055 adicional en una partitura, ajustando el valor del relleno en la
3059 \override Score.NonMusicalPaperColumn.padding = #10
3062 No existe ningún rodeo para disminuir la magnitud de la separación.
3065 @node Área de espaciado nueva
3066 @subsection Área de espaciado nueva
3067 @translationof New spacing area
3069 @funindex \newSpacingSection
3070 @cindex área de espaciado nueva
3071 @cindex espaciado, nueva área de
3072 @cindex notas, espaciar horizontalmente
3074 Se pueden iniciar secciones nuevas con diferentes parámetros de
3075 espaciado, con @code{newSpacingSection}. Esto es útil cuando hay
3076 secciones que tienen distinta noción de las notas largas y cortas.
3078 En el ejemplo siguiente, el cambio de compás introduce una sección
3079 nueva, y por ello las semicorcheas se separan automáticamente
3080 de manera ligeramente más amplia.
3082 @lilypond[relative=1,verbatim,quote]
3085 c8 c c4 c16[ c c8] c4
3091 La instrucción @code{\newSpacingSection} crea un nuevo objeto
3092 @code{SpacingSpanner} en ese momento musical. Si los ajustes de
3093 espaciado automáticos no dan el espaciado deseado, pueden
3094 aplicarse sobreescrituras manuales a sus propiedades con
3095 @code{\override}. Las sobreescrituras se deben aplicar en el
3096 mismo momento musical que la propia instrucción
3097 @code{\newSpacingSection}. Entonces afectarán al espaciado de
3098 toda la música que venga a continuación hasta que las propiedades
3099 se cambien en una nueva sección de espaciado, por ejemplo:
3101 @lilypond[relative=1,verbatim,quote]
3105 \override Score.SpacingSpanner.spacing-increment = #2
3108 \revert Score.SpacingSpanner.spacing-increment
3114 Fragmentos de código:
3117 Referencia de funcionamiento interno:
3118 @rinternals{SpacingSpanner}.
3121 @node Cambiar el espaciado horizontal
3122 @subsection Cambiar el espaciado horizontal
3123 @translationof Changing horizontal spacing
3125 Se puede alterar el espaciado horizontal con la propiedad
3126 @code{base-shortest-duration}. Aquí compararemos la misma música, una
3127 vez sin alterar la propiedad, y luego alterándola. Los valores
3128 mayores de @code{ly:make-moment} producen música más pequeña. Observe
3129 que @code{ly:make-moment} construye una duración, por lo que @code{1
3130 4} es una duración mayor que @code{1 16}.
3132 @lilypond[verbatim,line-width=12\cm]
3135 g4 e e2 | f4 d d2 | c4 d e f | g4 g g2 |
3136 g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3137 d4 d d d | d4 e f2 | e4 e e e | e4 f g2 |
3138 g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3143 @lilypond[verbatim,line-width=12\cm]
3146 g4 e e2 | f4 d d2 | c4 d e f | g4 g g2 |
3147 g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3148 d4 d d d | d4 e f2 | e4 e e e | e4 f g2 |
3149 g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3154 \override SpacingSpanner.base-shortest-duration = #(ly:make-moment 1/16)
3162 De forma predeterminada, el espaciado en los grupos de valoración
3163 especial depende de varios factores ajenos a la duración (como
3164 alteraciones, cambios de clave, etc.). Para pasar por alto estos
3165 símbolos y forzar un espaciado de duraciones iguales uniforme, use
3166 @code{Score.SpacingSpanner.uniform-stretching}. Esta propiedad sólo
3167 puede cambiarse al principio de la partitura:
3169 @lilypond[quote,ragged-right,verbatim]
3173 \tuplet 5/4 { c8 c c c c } c8 c c c
3176 c8 c c c \tuplet 5/4 { c8 c c c c }
3182 \override SpacingSpanner.uniform-stretching = ##t
3188 Cuando se establece @code{strict-note-spacing}, las notas se separan
3189 sin tener en cuenta las claves, líneas divisorias ni notas de adorno:
3191 @lilypond[quote,ragged-right,relative=2,verbatim]
3192 \override Score.SpacingSpanner.strict-note-spacing = ##t
3193 \new Staff { c8[ c \clef alto c \grace { c16 c } c8 c c] c32[ c] }
3197 Fragmentos de código:
3201 @node Longitud de la línea
3202 @subsection Longitud de la línea
3203 @translationof Line length
3205 @cindex saltos de página
3206 @cindex página, saltos de
3209 @funindex line-width
3210 @funindex ragged-right
3211 @funindex ragged-last
3213 @c Although line-width can be set in \layout, it should be set in paper
3214 @c block, to get page layout right.
3215 @c Setting indent in \paper block makes not much sense, but it works.
3217 @c Bit verbose and vague, use examples?
3218 Los ajustes más básicos que influyen en el espaciado son @code{indent}
3219 y @code{line-width}. Se definen en el bloque @code{\layout}.
3220 Controlan el sangrado de la primera línea de música y la longitud de
3223 Si se fija un valor verdadero para @code{ragged-right} en el bloque
3224 @code{\layout}, entonces los sistemas terminan en su longitud
3225 horizontal natural, en lugar de repartirse horizontalmente hasta
3226 llenar toda la línea. Esto es útil para fragmentos cortos, y para
3227 comprobar qué tan apretado es el espaciado natural.
3228 El valor normal predeterminado es falso, pero si la partitura
3229 tiene un solo sistema, el valor predeterminado es verdadero.
3231 @cindex diseño de página
3232 @cindex página, disposición de la
3233 @cindex vertical, espaciado
3235 La opción @code{ragged-last} es similar a @code{ragged-right}, pero
3236 afecta sólo a la última línea de la pieza. No se efectúa ninguna
3237 restricción sobre dicha línea. El resultado es similar al formateo de
3238 los párrafos de texto. En un párrafo, la última línea sencillamente
3239 ocupa su longitud horizontal natural.
3240 @c Note that for text there are several options for the last line.
3241 @c While Knuth TeX uses natural length, lead typesetters use the same
3242 @c stretch as the previous line. eTeX uses \lastlinefit to
3243 @c interpolate between both these solutions.
3254 Fragmentos de código:
3258 @node Notación proporcional
3259 @subsection Notación proporcional
3260 @translationof Proportional notation
3262 LilyPond contempla la notación proporcional, un tipo de espaciado
3263 horizontal en el que cada nota consume una medida horizontal que
3264 equivale exactamente a su duración rítmica. Este tipo de espaciado
3265 proporcional es comparable al espaciado horizontal hecho sobre un
3266 papel milimetrado. Ciertas partituras del finales del s.XX y
3267 principios del s.XXI utilizan notación proporcional para clarificar
3268 relaciones rítmicas complejas o para facilitar la colocación de líneas
3269 cronométricas u otros gráficos directamente en la partitura.
3271 LilyPond contempla cinco ajustes distintos para la notación
3272 proporcional, que se pueden usar solos o combinados:
3275 @item @code{proportionalNotationDuration}
3276 @item @code{uniform-stretching}
3277 @item @code{strict-note-spacing}
3278 @item @code{\remove "Separating_line_group_engraver"}
3279 @item @code{\override PaperColumn.used = ##t}
3282 En los ejemplos que siguen, exploramos el uso de estos cinco ajustes
3283 de la notación proporcional y examinamos la forma en que interactúan.
3285 Comenzamos con el siguiente ejemplo de un solo compás, que usa un
3286 espaciado clásico sin justificación por la derecha.
3288 @lilypond[quote,verbatim,ragged-right]
3291 \new RhythmicStaff {
3292 c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
3298 Observe que la blanca que inicia el compás ocupa mucho menos de la
3299 mitad de todo el espacio horizontal del compás. De forma similar, las
3300 semicorcheas y el cinquillo de semicorcheas con que finaliza el compás
3301 ocupan en conjunto mucho más de la mitad de todo el espacio horizontal
3304 En el grabado clásico, este espaciado puede ser exactamente el que
3305 deseamos porque podemos tomar prestado el espacio horizontal de la
3306 blanca y conservar el espacio horizontal a lo largo del compás como un
3309 Por otro lado, si queremos insertar una línea de tiempo graduada o
3310 algún otro gráfico encima o debajo de la partitura, necesitamos la
3311 notación proporcional. Se activa la notación proporcional con el
3312 ajuste @code{proportionalNotationDuration}.
3314 @lilypond[quote,verbatim,ragged-right]
3317 \new RhythmicStaff {
3318 c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
3324 proportionalNotationDuration = #(ly:make-moment 1/20)
3330 La blanca al principio del compás y las notas rápidas de la segunda
3331 mitad del compás ocupan ahora cantidades iguales de espacio
3332 horizontal. Podríamos colocar una línea de tiempo graduada o un
3333 gráfico encima o debajo de este ejemplo.
3335 El ajuste @code{proportionalNotationDuration} es un ajuste de contexto
3336 que reside en @code{Score}. Recordemos que los ajustes de contexto
3337 aparecen en uno de tres posibles lugares del archivo de entrada: en un
3338 bloque @code{\with}, en un bloque @code{\context}, o directamente
3339 entre la música precedido por la instrucción @code{\set}. Como con
3340 todos los ajustes de contexto, el usuario puede elegir en cuál de los
3341 tres lugares diferentes prefiere establecer el valor de
3342 @code{proportionalNotationDuration}.
3344 El ajuste @code{proportionalNotationDuration} acepta un solo
3345 argumento, que es la duración de referencia contra el que se aplica el
3346 espaciado de toda la música. La función Scheme de LilyPond
3347 @code{make-moment} acepta dos argumentos: un numerador y un
3348 denominador que, juntos, expresan una cierta fracción de redonda. La
3349 llamada @code{(ly:make-moment 1/20)}, por tanto, produce una duración
3350 de referencia de una nota de un veinteavo de redonda (semicorcheas de
3351 cinquillo). Son también posibles valores como
3352 @code{(ly:make-moment 1/16)},
3353 @code{(ly:make-moment 1/8)} y @code{(ly:make-moment 3/97)}.
3355 ¿Cómo seleccionamos la duración correcta de referencia para pasarla a
3356 @code{proportionalNotationDuration}? Normalmente mediante un proceso
3357 de ensayo y error, comenzando con una duración cercana a la más rápida
3358 (o más breve) duración de la pieza. Las duraciones de referencia más
3359 pequeñas aplican un espaciado más suelto; las duraciones de referencia
3360 más largas aplican un espaciado más apretado.
3362 @lilypond[quote,verbatim,ragged-right]
3365 \new RhythmicStaff {
3366 c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
3372 proportionalNotationDuration = #(ly:make-moment 1/8)
3379 \new RhythmicStaff {
3380 c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
3386 proportionalNotationDuration = #(ly:make-moment 1/16)
3393 \new RhythmicStaff {
3394 c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
3400 proportionalNotationDuration = #(ly:make-moment 1/32)
3406 Observe que una duración de referencia demasiado grande (como la
3407 corchea, en el ejemplo de arriba) produce un espaciado excesivamente
3408 apretado y puede ser causa de colisiones entre las cabezas de nota.
3409 Observe también que la notación proporcional en general ocupa más
3410 espacio horizontal que el espaciado clásico. El espaciado
3411 proporcional aporta claridad rítmica a expensas del espacio
3414 Ahora veremos cómo espaciar de forma óptima grupos de valoración
3415 especial que se superponen.
3417 Empezamos por examinar qué le ocurre a nuestro ejemplo original, con
3418 espaciado clásico, cuando añadimos un segundo pentagrama con un tipo
3419 diferente de grupo especial.
3421 @lilypond[quote,verbatim,ragged-right]
3424 \new RhythmicStaff {
3425 c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
3427 \new RhythmicStaff {
3428 \tuplet 9/8 { c'8 c' c' c' c' c' c' c' c' }
3434 El espaciado es defectuoso porque las notas regularmente espaciadas
3435 del pentagrama inferior no se amplían de manera uniforme. Los grabados
3436 clásicos incluyen muy pocos tresillos complejos y así las reglas del
3437 grabado clásico pueden generar este tipo de resultado. El
3438 establecimiento de @code{proportionalNotationDuration} lo
3441 @lilypond[quote,verbatim,ragged-right]
3444 \new RhythmicStaff {
3445 c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
3447 \new RhythmicStaff {
3448 \tuplet 9/8 { c'8 c' c' c' c' c' c' c' c' }
3454 proportionalNotationDuration = #(ly:make-moment 1/20)
3460 Pero si observamos con mucho cuidado podremos ver que las notas de la
3461 segunda mitad del 9-illo están espaciadas de forma ligeramente más
3462 ancha que las de la primera mitad del 9-illo. Para asegurar una
3463 ampliación uniforme, activamos @code{uniform-stretching}, que es una
3464 propiedad de @code{SpacingSpanner}.
3466 @lilypond[quote,verbatim,ragged-right]
3469 \new RhythmicStaff {
3470 c'2 c'16 c' c' c' \tuplet 5/4 { c'16 c' c' c' c' }
3472 \new RhythmicStaff {
3473 \tuplet 9/8 { c'8 c' c' c' c' c' c' c' c' }
3479 proportionalNotationDuration = #(ly:make-moment 1/20)
3480 \override SpacingSpanner.uniform-stretching = ##t
3486 Nuestro ejemplo de dos pentagramas ahora está espaciado exactamente,
3487 nuestras relaciones rítmicas son visualmente claras, y podemos incluir
3488 una línea de tiempo graduada o un gráfico, si queremos.
3490 Observe que el paquete de notación proporcional de LilyPond espera que
3491 todas las partituras proporcionales establezcan el atributo
3492 @code{uniform-stretching} de @code{SpacingSpanner} al valor ##t. El
3493 establecimiento de @code{proportionalNotationDuration} sin ajustar
3494 también el atributo @code{uniform-stretching} de @code{SpacingSpanner}
3495 al valor ##t causará, por ejemplo, que los desplazamientos
3496 (@code{skips}) consuman una cantidad de espacio horizontal incorrecta.
3498 El @code{SpacingSpanner} es un grob abstracto que reside en el
3499 contexto de @code{Score}. Como con nuestros ajustes de
3500 @code{proportionalNotationDuration}, las sobreescrituras al
3501 @code{SpacingSpanner} sólo pueden ocurrir en uno de estos tres lugares
3502 dentro del archivo de entrada: en el bloque @code{\with}, en el bloque
3503 @code{\context} o directamente dentro de la escritura de notas.
3505 De manera predeterminada, sólo hay un @code{SpacingSpanner} por
3506 @code{Score}. Esto supone que, por omisión, @code{uniform-stretching}
3507 está activado para la partitura completa o desactivado para la
3508 partitura completa. Sin embargo, podemos sobreescribir este
3509 comportamiento y activar distintas posibilidades de espaciado en
3510 distintos lugares de la partitura. Lo hacemos con la instrucción
3511 @code{\newSpacingSection}. Consulte @ref{Área de espaciado nueva}
3512 para más información.
3514 A continuación examinamos los efectos del grabador
3515 @code{Separating_line_group_engraver} y veremos por qué las partituras
3516 proporcionales con frecuencia eliminan este grabador. El ejemplo
3517 siguiente muestra que hay una pequeña cantidad de espacio
3518 @qq{preliminar} justo antes de la primera nota de cada sistema.
3520 @lilypond[quote,verbatim,ragged-right]
3532 Esta cantidad de espacio preliminar es la misma ya sea después de
3533 una indicación de compás, una armadura o una clave. El grabador
3534 @code{Separating_line_group_engraver} es responsable de este espacio.
3535 La eliminación de @code{Separating_line_group_engraver} reduce este
3538 @lilypond[quote,verbatim,ragged-right]
3544 \remove "Separating_line_group_engraver"
3552 Los elementos no musicales como la indicación de compás, la armadura,
3553 la clave y las alteraciones son problemáticos en notación
3554 proporcional. Ninguno de estos elementos tiene duración rítmica.
3555 Pero todos ellos consumen espacio horizontal. Las distintas
3556 partituras proporcionales abordan este problema de distinta manera.
3558 Sería posible evitar los problemas de espaciado con las armaduras,
3559 simplemente evitando tenerlas. Esta es una opción válida pues casi
3560 todas las partituras proporcionales son música contemporánea. Lo
3561 mismo puede valer para las indicaciones de compás, especialmente para
3562 las partituras que incluyen una línea de tiempo graduada u otro
3563 gráfico. Pero estas partituras son excepcionales y casi todas las
3564 partituras proporcionales incluyen al menos unas pocas indicaciones de
3565 compás. Las claves y las alteraciones son aún más esenciales.
3567 Así pues ¿qué estrategias existen para el espaciado de los elementos
3568 no musicales en un contexto proporcional? Una buena opción es la
3569 propiedad @code{strict-note-spacing} de @code{SpacingSpanner}.
3570 Compare las dos partituras siguientes:
3572 @lilypond[quote,verbatim,ragged-right]
3574 \set Score.proportionalNotationDuration = #(ly:make-moment 1/16)
3575 c''8 c'' c'' \clef alto d' d'2
3579 \set Score.proportionalNotationDuration = #(ly:make-moment 1/16)
3580 \override Score.SpacingSpanner.strict-note-spacing = ##t
3581 c''8 c'' c'' \clef alto d' d'2
3585 Las dos partituras son proporcionales, pero el espaciado de la
3586 primera es muy suelto a causa del cambio de clave. Sin embargo, el
3587 espaciado de la segunda partitura se mantiene estricto, porque
3588 @code{strict-note-spacing} está activado. La activación de
3589 @code{strict-note-spacing} hace que el ancho de las indicaciones de
3590 compás, armaduras, cambios de clave y alteraciones no tomen parte en
3591 el algoritmo de espaciado.
3593 Además de los ajustes dados aquí, hay otros que aparecen con
3594 frecuencia en las partituras proporcionales. Entre ellos están:
3597 @item @code{\override SpacingSpanner.strict-grace-spacing = ##t}
3598 @item @code{\set tupletFullLength = ##t}
3599 @item @code{\override Beam.breakable = ##t}
3600 @item @code{\override Glissando.breakable = ##t}
3601 @item @code{\override TextSpanner.breakable = ##t}
3602 @item @code{\remove "Forbid_line_break_engraver" in the Voice context}
3605 Estos ajustes dan a las notas de adorno un espaciado estricto,
3606 extienden los corchetes de grupo especial para que marquen tanto los
3607 puntos de comienzo como de final, y permiten que los elementos de
3608 extensión se dividan entre los sistemas y las páginas. Consulte las
3609 partes respectivas del manual para ver estos ajustes relacionados.
3612 Referencia de la notación:
3613 @ref{Área de espaciado nueva}.
3615 Fragmentos de código:
3619 @node Encajar la música en menos páginas
3620 @section Encajar la música en menos páginas
3621 @translationof Fitting music onto fewer pages
3623 En ocasiones, podemos terminar con uno o dos pentagramas en una
3624 segunda página (o tercera, o cuarta@dots{}). Es fastidioso,
3625 especialmente cuando vemos que las páginas anteriores parecen tener
3628 Al investigar los problemas de disposición, una herramienta de valor
3629 incalculable es @code{annotate-spacing}. Esta instrucción imprime los
3630 valores de un cierto número de variables de espaciado; para ver más
3631 detalles consulte la sección siguiente, @ref{Mostrar el espaciado}.
3634 * Mostrar el espaciado::
3635 * Cambiar el espaciado::
3639 @node Mostrar el espaciado
3640 @subsection Mostrar el espaciado
3641 @translationof Displaying spacing
3643 @cindex espaciado, presentación del
3644 @funindex annotate-spacing
3646 Para presentar gráficamente las dimensiones de las variables de
3647 disposición vertical que pueden verse alteradas por el formato de la
3648 página, establezca @code{annotate-spacing} en el bloque @code{\paper}:
3650 @lilypond[verbatim,quote,papersize=a6landscape]
3653 \paper { annotate-spacing = ##t }
3658 Todas las dimensiones de disposición se muestran en espacios de
3659 pentagrama, independientemente de las unidades especificadas en los
3660 bloques @code{\paper} o @code{\layout}. En el ejemplo anterior,
3661 @code{paper-height} tiene un valor de 59.75 @code{staff-spaces}
3662 (espacios de pentagrama), y el @code{staff-size} (tamaño del
3663 pentagrama) es de 20 puntos, el valor predeterminado. Observe que:
3665 @multitable {1 staff-space} {staff-size)/4 * (25.4/72.27) mm}
3668 @tab = (25.4/72.27) mm
3671 @tab = (@code{staff-size})/4 pts
3673 @tab = (@code{staff-size})/4 * (25.4/72.27) mm
3678 En este caso, un @code{staff-space} equivale aproximadamente a
3679 1.757mm. Así, la medida @code{paper-height} de 59.75
3680 @code{staff-spaces} equivale a 105 milímetros, la altura de una hoja
3681 @code{a6} en orientación apaisada. Las parejas (@var{a},@var{b}) son
3682 intervalos, donde @var{a} es el límite inferior y @var{b} es el límite
3683 superior del intervalo.
3686 Referencia de la notación:
3687 @ref{Establecer el tamaño del pentagrama}.
3689 Fragmentos de código:
3693 @node Cambiar el espaciado
3694 @subsection Cambiar el espaciado
3695 @translationof Changing spacing
3697 La salida de @code{annotate-spacing} revela las dimensiones verticales
3698 con gran detalle. Para ver más detalles acerca de la modificación de
3699 los márgenes y otras variables de diseño de la página, consulte
3700 @ref{Disposición de la página}.
3702 Aparte de los márgenes, hay algunas otras opciones para ahorrar espacio:
3706 Forzar los sistemas para que se junten lo más posible entre sí (de
3707 forma que quepan la mayor cantidad de ellos en la página) y al mismo
3708 tiempo estén espaciados de forma que no exista un espacio vacío en la
3709 parte baja del papel.
3713 system-system-spacing = #'((basic-distance . 0.1) (padding . 0))
3714 ragged-last-bottom = ##f
3720 Forzar el número de sistemas. Puede ser de utilidad de dos formas.
3721 Si tan sólo se establece un valor, incluso el mismo valor que el
3722 número de sistemas que se están trazando de forma predeterminada, ello
3723 ocasionará a veces que se traten de introducir más sistemas en cada
3724 página, pues en este caso se omite un paso en que se produce una
3725 estimación, dando así un encaje mejor en cada página. Asimismo, el
3726 forzar una reducción neta en el número de sistemas puede producir el
3727 ahorro de una página adicional. Por ejemplo, si la disposición
3728 predeterminada tiene 11 sistemas, la asignación siguiente fuerza una
3729 disposición con 10 sistemas.
3738 Forzar el número de páginas. Por ejemplo, la asignación
3739 siguiente fuerza una disposición con dos páginas.
3748 Evitar (o reducir en número) los objetos que aumentan el tamaño
3749 vertical de un sistema. Por ejemplo, las repeticiones de primera y
3750 segunda vez (o repeticiones con finales alternativos) necesitan
3751 espacio adicional. Si estas repeticiones se reparten a lo largo de
3752 dos sistemas, ocupan más espacio que un sistema con las casillas de
3753 repetición y otro sistema sin ellas. Por ejemplo, las indicaciones
3754 dinámicas que se @q{salen} de un sistema se pueden acercar al
3757 @lilypond[verbatim,quote,relative=1]
3759 e4 c g-\tweak X-offset #-2.7 \f c
3763 Alterar el espaciado horizontal por medio de @code{SpacingSpanner}.
3764 Para ver más detalles, consulte @ref{Cambiar el espaciado horizontal}.
3765 El ejemplo siguiente ilustra el espaciado predeterminado:
3767 @lilypond[verbatim,quote]
3780 El ejemplo siguiente modifica @code{common-shortest-duration} de un
3781 valor de @code{1/4} (negra) a @code{1/2} (blanca). La negra es la
3782 nota más común y la más breve del ejemplo, por lo que al agrandar esta
3783 duración se produce un efecto de @q{apretujamiento}:
3785 @lilypond[verbatim,quote]
3797 \override SpacingSpanner.common-shortest-duration =
3798 #(ly:make-moment 1/2)
3805 La propiedad @code{common-shortest-duration} no se puede modificar de
3806 manera dinámica, por lo que se debe situar siempre dentro de un
3807 bloque @code{\context} de forma que se aplique a la partitura
3813 Referencia de la notación:
3814 @ref{Disposición de la página},
3815 @ref{Cambiar el espaciado horizontal}.
3817 Fragmentos de código: