1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
4 Translation of GIT committish: 24dd6365d3d05f13b9259f547be9b2517851a5d1
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..
16 Negative numbers are allowed:
17 > Are you sure? The following works well
19 > first-page-number = -2
21 > and prints page number -1 on the second page, for example.
25 http://code.google.com/p/lilypond/issues/detail?id=68
30 @node Problemas de espaciado
31 @chapter Problemas de espaciado
32 @translationof Spacing issues
34 La disposición global sobre el papel viene determinada por tres
35 factores: el diseño de página, los saltos de línea y el espaciado.
36 Estos factores influyen entre sí. La elección de uno u otro
37 espaciado determina qué densidad termina teniendo cada sistema de
38 música. Esto influye en el lugar en que se eligen los saltos de
39 línea y, en último término, en el número de páginas que tiene una
42 Considerado globalmente, este proceso se produce en cuatro fases:
43 en primer lugar se eligen unas distancias elásticas o @q{muelles},
44 basados en la duración de las figuras. Se prueban todas las
45 combinaciones de saltos de línea posibles, y para cada una de
46 ellas se calcula una puntuación de @q{maldad}. Después se hace
47 una estimación de la altura de cada uno de los posibles sistemas.
48 Finalmente se selecciona una combinación de saltos de página y de
49 línea de tal forma que ni el espaciado horizontal ni el vertical
50 estén demasiado estrechos ni estirados.
52 Hay dos tipos de bloques que pueden contener ajustes de
53 disposición: @code{\paper @{@dots{}@}} y @code{\layout
54 @{@dots{}@}}. El bloque @code{\paper} contiene ajustes de
55 disposición de la página que se espera sean los mismos para todas
56 las partituras de un libro o parte de libro, como la altura de la
57 hoja o si se imprimen los números de página, etc. Véase
58 @ref{Disposición de la página}. El bloque @code{\layout} contiene
59 ajustes de disposición de la partitura, como el número de sistemas
60 que utilizar, o la separación entre grupos de pentagramas, etc.
61 Véase @ref{Disposición de la partitura}.
64 * Disposición de la página::
65 * Disposición de la partitura::
67 * Espaciado vertical::
68 * Espaciado horizontal::
69 * Encajar la música en menos páginas::
73 @node Disposición de la página
74 @section Disposición de la página
75 @translationof Page layout
77 Esta sección estudia las opciones de disposición de la página para
78 el bloque @code{\paper}.
82 * Tamaño del papel y escalado automático::
83 * Variables de espaciado de paper verticales fijas::
84 * Variables de espaciado de paper verticales flexibles::
85 * Variables de espaciado de paper horizontales::
86 * Otras variables de paper::
91 @subsection El bloque @code{@bs{}paper}
92 @translationof The paper block
94 Los bloques @code{\paper} pueden aparecer en tres lugares
95 diferentes para formar una jerarquía descendente de bloques
101 Al principio del archivo de entrada, antes de cualquier bloque
102 @code{\book}, @code{\bookpart}, o @code{\score}.
105 Dentro de un bloque @code{\book} pero fuera de cualquier bloque
106 @code{\bookpart} o @code{\score} que estén dentro de ese libro.
109 Dentro de un bloque @code{\bookpart} pero fuera de cualquier
110 bloque @code{\score} que esté dentro de esa parte de libro.
114 No se puede poner un bloque @code{\paper} dentro de un bloque
117 Los valores de los campos filtran esta jerarquía, persistiendo los
118 valores establecidos más arriba en la jerarquía a no ser que se
119 sobreescriban por algún valor establecido más abajo en la
122 Pueden aparecer varios bloques @code{\paper} en cada uno de los
123 niveles, por ejemplo como parte de distintos archivos incluidos
124 con @code{\include}. Si es el caso, los campos en cada nivel se
125 combinan, tomando precedencia los campos que aparecen más tarde si
126 se producen campos duplicados.
128 Entre los ajustes que pueden aparecer dentro de un bloque
129 @code{\paper} están los siguientes:
134 la función de Scheme @code{set-paper-size},
137 variables de @code{\paper} utilizadas para personalizar la
138 disposición de la página, y
141 definiciones de marcado utilizadas para personalizar la
142 disposición de los encabezamientos, pies y títulos.
146 La función @code{set-paper-size} se estudia en la sección
147 siguiente, @ref{Tamaño del papel y escalado automático}. Las
148 variables de @code{\paper} que se ocupan de la disposición de la
149 página se estudian en secciones posteriores. Las definiciones de
150 elementos de marcado que se encargan de los encabezamientos, pies
151 y títulos se estudian en
152 @ref{Títulos encabezamientos y pies de página personalizados}.
154 Casi todas las variables de @code{\paper} funcionan solamente
155 dentro de un bloque @code{\paper}. Las pocas que funcionan
156 también en un bloque @code{\layout} están relacionadas en @ref{El
157 bloque layout,,El bloque @code{@bs{}layout}}.
159 Excepto cuando se especifica lo contrario, todas las variables de
160 @code{\paper} que corresponden a distancias sobre la página se
161 miden en milímetros, a no ser que el usuario especifique unas
162 unidades diferentes. Por ejemplo, la declaración siguiente
163 establece el margen superior @code{top-margin} a diez milímetros:
171 Para fijarlo en @code{0.5} pulgadas, utilice el sufijo de unidades
180 Los sufijos de unidades que están disponibles son @code{\mm},
181 @code{\cm}, @code{\in} y @code{\pt}. Estas unidades son valores
182 simples para convertir a partir de milímetros; están definidos en
183 @file{ly/paper-defaults-init.ly}. Por claridad, al usar
184 milímetros, se suele escribir el sufijo @code{\mm} aunque no es
185 necesario técnicamente.
187 También es posible definir valores de @code{\paper} utilizando
188 Scheme. El equivalente de Scheme del ejemplo anterior es:
192 #(define top-margin (* 0.5 in))
197 Referencia de la notación:
198 @ref{Tamaño del papel y escalado automático},
199 @ref{Títulos encabezamientos y pies de página personalizados},
200 @ref{El bloque layout,,El bloque @code{@bs{}layout}}.
203 @file{ly/paper-defaults-init.ly}.
206 @node Tamaño del papel y escalado automático
207 @subsection Tamaño del papel y escalado automático
208 @translationof Paper size and automatic scaling
210 @cindex tamaño del papel
211 @cindex tamaño de la página
216 * Fijar el tamaño del papel::
217 * Escalado automático al tamaño del papel::
221 @node Fijar el tamaño del papel
222 @unnumberedsubsubsec Fijar el tamaño del papel
223 @translationof Setting paper size
225 @q{A4} es el valor predeterminado si no se establece ningún tamaño
226 de página explícitamente. Sin embargo, existen dos funciones que
227 se pueden usar para modificarlo:
230 @item set-default-paper-size
233 #(set-default-paper-size "quarto")
236 que siempre se debe colocar en el ámbito superior, y
242 #(set-paper-size "tabloid")
246 que se debe colocar siempre dentro de un bloque @code{\paper}.
249 Si se usa la función @code{set-default-paper-size} en el ámbito
250 superior jerárquico, debe ir antes de cualquier bloque
251 @code{\paper}. @code{set-default-paper-size} establece el tamaño
252 de todas las páginas, mientras que @code{set-paper-size} establece
253 sólo el tamaño de las páginas a las que se aplica el bloque
254 @code{\paper}. Por ejemplo, si el bloque @code{\paper} está al
255 principio del archivo, aplica el tamaño de papel a todas las
256 páginas. Si el bloque @code{\paper} está dentro de un bloque
257 @code{\book}, entonces el tamaño del papel sólo se aplica a ese
260 Cuando se usa la función @code{set-paper-size}, se debe colocar
261 @emph{antes} de cualquier otra función que se utilice dentro del
262 mismo bloque @code{\paper}. Véase
263 @ref{Escalado automático al tamaño del papel}.
265 Los tamaños de página están definidos en el archivo
266 @file{scm/paper.scm}, y aunque es posible añadir tamaños
267 personalizados, se sobreescribirán en las actualizaciones del
268 software posteriores. La lista de todos los tamaños de papel
269 disponibles está en @ref{Tamaños de página predefinidos}.
271 @c An appendix entry exists for paper sizes but is not auto-generated
273 Se puede usar la siguiente instrucción en el archivo para añadir
274 un tamaño de página personalizado que se puede usar después con
275 @code{set-default-paper-size} o con @code{set-paper-size} según
279 #(set! paper-alist (cons '("mi tamaño" . (cons (* 15 in) (* 3 in))) paper-alist))
282 #(set-paper-size "mi tamaño")
286 Se puede usar cualquiera de las unidades @code{in} (pulgadas),
287 @code{cm} (centímetros) o @code{mm} (milímetros).
289 @cindex papel, tamaño, orientación
290 @cindex página, orientación de la
291 @cindex papel, tamaño, apaisado
293 Si se añade el símbolo @code{'landscape} a la función del tamaño
294 de la página, el papel se gira 90 grados y se establece
295 adecuadamente la anchura de las líneas.
298 #(set-default-paper-size "a6" 'landscape)
301 Se pueden intercambiar las dimensiones del papel @emph{sin que la
302 impresión resulte girada} (como cuando se imprime en tamaño
303 tarjeta postal, o al crear gráficos para su inclusión en lugar de
304 un documento independiente) añadiendo @samp{landscape} después del
305 nombre del propio tamaño del papel:
308 #(set-default-paper-size "a6landscape")
311 Cuando el tamaño del papel termina de forma explícita con
312 @samp{landscape} o con @samp{portrait}, la presencia de un símbolo
313 @code{'landscape} @emph{solamente} afecta a la orientación de la
314 impresión, no a las dimensiones del papel que se usan para la
318 Referencia de la notación:
319 @ref{Escalado automático al tamaño del papel},
320 @ref{Tamaños de página predefinidos}.
323 @file{scm/paper.scm}.
326 @node Escalado automático al tamaño del papel
327 @unnumberedsubsubsec Escalado automático al tamaño del papel
328 @translationof Automatic scaling to paper size
330 Si se cambia el tamaño del papel con una de las funciones de
331 Scheme (@code{set-default-paper-size} o @code{set-paper-size}),
332 los valores de algunas variables de @code{\paper} se escalan
333 automáticamente al nuevo tamaño. Para sortear el escalado
334 automático para una variable determinada, fije el valor de la
335 variable después de establecer el tamaño del papel. Observe que
336 el escalado automático no se activa mediante el ajuste de las
337 variables @code{paper-height} o de @code{paper-width}, incluso
338 aunque @code{paper-width} puede influir sobre otros valores (esto
339 es distinto al escalado y se estudia más abajo). Las funciones
340 @code{set-default-paper-size} y @code{set-paper-size} se describen
341 en @ref{Fijar el tamaño del papel}.
343 Las dimensiones verticales afectadas por el escalado automático
344 son @code{top-margin} y @code{bottom-margin} (véase @ref{Variables
345 de espaciado de paper verticales fijas,,Variables de espaciado de
346 @code{@bs{}paper} verticales fijas}). Las dimensiones
347 horizontales afectadas por el escalado automático son
348 @code{left-margin}, @code{right-margin}, @code{inner-margin},
349 @code{outer-margin}, @code{binding-offset}, @code{indent} y
350 @code{short-indent} (véase @ref{Variables de espaciado de paper
351 horizontales,,Variables de espaciado de @code{@bs{}paper}
354 Los valores predeterminados para estas dimensiones están fijados
355 en el archivo @file{ly/paper-defaults-init.ly}, usando variables
356 internas llamadas @code{top-margin-default},
357 @code{bottom-margin-default}, etc. Estos son los valores que
358 resultan del tamaño predeterminado del papel @code{a4}. Como
359 referencia, con el papel @code{a4} la altura @code{paper-height}
360 es @code{297\mm} y la anchura @code{paper-width} es @code{210\mm}.
363 Referencia de la notación:
364 @ref{Variables de espaciado de paper verticales fijas},
365 @ref{Variables de espaciado de paper horizontales}.
368 @file{ly/paper-defaults-init.ly},
369 @file{scm/paper.scm}.
372 @node Variables de espaciado de paper verticales fijas
373 @subsection Variables de espaciado de @code{@bs{}paper} verticales fijas
374 @translationof Fixed vertical spacing paper variables
376 @warning{Algunas dimensiones de @code{@bs{}paper} se escalan
377 automáticamente al tamaño del papel, lo que puede llevar a un
378 comportamiento no esperado. Véase
379 @ref{Escalado automático al tamaño del papel}.}
381 Los valores predeterminados (previos al escalado) están definidos
382 en el archivo @file{ly/paper-defaults-init.ly}.
385 @item paper-height (altura del papel)
386 @funindex paper-height
388 Altura de la página, no fijada de forma predeterminada. Observe
389 que el escalado automático de algunas dimensiones verticales no
390 resulta afectado por esto.
392 @item top-margin (margen superior)
395 Margen entre el extremo superior de la página y la parte superior
396 de la zona imprimible. Si se modifica el tamaño del papel, el
397 valor predeterminado de esta dimensión se escala de acuerdo con
400 @item bottom-margin (margen inferior)
401 @funindex bottom-margin
403 Margen entre la parte inferior de la zona imprimible y el extremo
404 inferior de la página. Si se modifica el tamaño del papel, se
405 escala de acuerdo con ello el valor predeterminado de esta
408 @item ragged-bottom (sin justificar por abajo)
409 @funindex ragged-bottom
411 Si esto se fija al valor verdadero, los sistemas se disponen según
412 su espaciado natural, ni comprimido ni ampliado verticalmente para
415 @item ragged-last-bottom (sin justificar la última por abajo)
416 @funindex ragged-last-bottom
418 Si se establece al valor falso, entonces la última página (tanto
419 del documento como de cada sección que se hubiera creado con un
420 bloque @code{\bookpart}) se justifica verticalmente de la misma
421 forma que las páginas anteriores.
425 Referencia de la notación:
426 @ref{Escalado automático al tamaño del papel}.
429 @file{ly/paper-defaults-init.ly}.
431 Fragmentos de código:
435 Los títulos (extraídos del bloque @code{\header}) se tratan como
436 sistemas, así pues @code{ragged-bottom} y
437 @code{ragged-last-bottom} aumentan la separación entre los títulos
438 y el primer sistema de la partitura.
440 Los tamaños de papel definidos explícitamente sobreescriben
441 cualquier ajuste de los márgenes superior o inferior definidos por
445 @node Variables de espaciado de paper verticales flexibles
446 @subsection Variables de espaciado de @code{@bs{}paper} verticales flexibles
447 @translationof Flexible vertical spacing paper variables
449 En casi todos los casos es preferible que las distancias
450 verticales entre ciertos elementos (como márgenes, títulos,
451 sistemas y las distintas partituras) sean flexibles, de manera que
452 se amplíen y compriman adecuadamente dependiendo de la situación.
453 Están disponibles un cierto número de variables del bloque
454 @code{\paper} (relacionadas más abajo) para realizar un ajuste
455 fino del comportamiento de estas dimensiones frente a su
456 ampliación o compresión.
458 Observe que las variables de @code{\paper} que se estudian en esta
459 sección no controlan el espaciado de los pentagramas que están
460 dentro de los sistemas individuales. El espaciado dentro de los
461 sistemas se controla por medio de propiedades de grob, con ajustes
462 que se escriben normalmente dentro de un bloque @code{\score} o
463 @code{\layout}, y no dentro del bloque @code{\paper}. Véase
464 @ref{Espaciado vertical flexible dentro de los sistemas}.
467 * Estructura de las listas-A de espaciado vertical flexible::
468 * Lista de variables de espaciado de paper verticales flexibles::
472 @node Estructura de las listas-A de espaciado vertical flexible
473 @unnumberedsubsubsec Estructura de las listas-A de espaciado vertical flexible
474 @translationof Structure of flexible vertical spacing alists
476 Cada una de las variables de espaciado de @code{\paper} flexibles
477 es una lista-A (lista asociativa) que contiene cuatro
483 @code{basic-distance} (distancia básica):
484 distancia vertical, medida en espacios de pentagrama, entre los
485 @emph{puntos de referencia} de los dos elementos, cuando no
486 resulte ninguna colisión, y no se produzca ninguna ampliación o
487 compresión. El punto de referencia de un elemento de marcado (de
488 título o del nivel jerárquico superior) es su punto más alto, y el
489 punto de referencia de un sistema es el centro vertical del
490 @code{StaffSymbol} más cercano (incluso si se trata de una línea
491 que no es un pentagrama, como un contexto @code{Lyrics}). Los
492 valores de @code{distancia básica} menores de @code{padding} o de
493 @code{minimum-distance} no son significativos, porque la distancia
494 resultante nunca será menor de @code{padding} o de
495 @code{minimum-distance}.
498 @code{minimum-distance} (distancia mínima):
499 la distancia vertical mínima permitida, medida en espacios de
500 pentagrama, entre los puntos de referencia de los dos elementos,
501 cuando se produce una compresión. Los valores de
502 @code{minimum-distance} menores de @code{padding} no son
503 significativos, porque la distancia resultante nunca será menor de
506 @c TODO: explain skylines somewhere and xref to it from here.
509 @code{padding} (relleno):
510 mínimo espacio vertical vacío necesario entre los rectángulos
511 circundantes (o las líneas de horizonte) de los dos elementos,
512 medido en espacios de pentagrama.
515 @code{stretchability} (ampliabilidad):
516 medida sin unidades de la propensión relativa de esta dimensión a
517 ampliarse. Si es cero, la distancia no se ampliará (a no ser que
518 resultasen colisiones). Si es positiva, la significación del
519 valor de ampliabilidad de una dimensión concreta depende solamente
520 de su relación con los valores de @code{stretchability} de las
521 otras dimensiones. Por ejemplo, si una dimensión tiene el doble
522 de @code{stretchability} que otra, se ampliará con el doble de
523 facilidad. Los valores deben ser no negativos y finitos. El
524 valor @code{+inf.0} desencadena un error de programación y se
525 ignora, pero se puede usar @code{1.0e7} para un muelle casi
526 infinitamente ampliable. Si no se fija un valor, el valor
527 predeterminado se establece a @code{basic-distance}. Observe que
528 la propensión de la dimensión a @emph{comprimirse} no se puede
529 establecer directamente por el usuario y es igual a
530 (@code{basic-distance}@tie{}@minus{}@tie{}@code{minimum-distance}).
534 Si una página tiene un margen inferior no justificado, la
535 distancia resultante es la mayor de:
540 @code{basic-distance},
543 @code{minimum-distance}, y
546 @code{padding} más la menor distancia necesaria para eliminar las
551 Para partituras de varias páginas con la parte inferior no
552 justificada en la última página, ésta usará el mismo espaciado que
553 la página anterior siempre y cuando haya espacio suficiente para
556 Los métodos específicos para la modificación de las listas-A se
557 estudian en @ref{Modificación de las listas-A}. El siguiente
558 ejemplo muestra las dos formas en que pueden modificarse estas
559 listas-A. La primera declaración actualiza un par clave-valor
560 individualmente, y la segunda redefine la variable completamente:
564 system-system-spacing.basic-distance = #8
565 score-system-spacing =
566 #'((basic-distance . 12)
567 (minimum-distance . 6)
569 (stretchability . 12))
574 @node Lista de variables de espaciado de paper verticales flexibles
575 @unnumberedsubsubsec Lista de variables de espaciado de @code{@bs{}paper} verticales flexibles
576 @translationof List of flexible vertical spacing paper variables
578 Los nombres de estas variables siguen el formato
579 @code{@var{superior}-@var{inferior}-spacing}, donde
580 @code{@var{superior}} e @code{@var{inferior}} son los elementos
581 que van a ser espaciados. Cada distancia se mide entre los puntos
582 de referencia de los dos elementos (véase más arriba la
583 descripción de la estructura de la lista-A). Observe que en estos
584 nombres de variable, el término @q{@code{markup}} se refiere tanto
585 a @emph{elementos de marcado de título} (@code{bookTitleMarkup} o
586 @code{scoreTitleMarkup}) como a @emph{elementos de marcado del
587 nivel superior} (véase @ref{Estructura del archivo}). Todas las
588 distancias se miden en espacios de pentagrama.
590 Los ajustes predeterminados están definidos en el archivo
591 @file{ly/paper-defaults-init.ly}.
593 @c TODO: Where do headers/footers fit in? -mp
596 @item markup-system-spacing
597 @funindex markup-system-spacing
599 distancia entre un elemento de marcado (de título o del nivel
600 superior) y el sistema que le sigue.
602 @item score-markup-spacing
603 @funindex score-markup-spacing
605 distancia entre el último sistema de una partitura y el elemento
606 de marcado (de título o del nivel superior) que le sigue.
608 @item score-system-spacing
609 @funindex score-system-spacing
611 distancia entre el último sistema de una partitura y el primer
612 sistema de la partitura que le sigue, cuando no existe ningún
613 elemento de marcado (de título o del nivel superior) entre ellos.
615 @item system-system-spacing
616 @funindex system-system-spacing
618 distancia entre dos sistemas dentro de la misma partitura.
620 @item markup-markup-spacing
621 @funindex markup-markup-spacing
623 distancia entre dos elementos de marcado (de título o del nivel
626 @item last-bottom-spacing
627 @funindex last-bottom-spacing
629 distancia desde el último sistema o elemento de marcado del nivel
630 superior en una página, hasta la parte inferior de la zona
631 imprimible (es decir, el extremo superior del margen inferior).
633 @item top-system-spacing
634 @funindex top-system-spacing
636 distancia desde la parte superior de la zona imprimible (es decir,
637 el extremo inferior del margen superior) hasta el primer sistema
638 de una página, cuando no hay ningún elemento de marcado (de título
639 o del nivel superior) entre los dos.
641 @item top-markup-spacing
642 @funindex top-markup-spacing
644 distancia desde el extremo superior de la zona imprimible (es
645 decir, el extremo inferior del margen superior) hasta el primer
646 elemento de marcado (de título o del nivel superior) sobre una
647 página, cuando no hay ningún sistema entre los dos.
651 Referencia de la notación:
652 @ref{Espaciado vertical flexible dentro de los sistemas}.
655 @file{ly/paper-defaults-init.ly}.
657 Fragmentos de código:
661 @node Variables de espaciado de paper horizontales
662 @subsection Variables de espaciado de @code{@bs{}paper} horizontales
663 @translationof Horizontal spacing paper variables
665 @warning{Algunas dimensiones de @code{@bs{}paper} se escalan
666 automáticamente al tamaño del papel, lo que puede dar lugar a un
667 comportamiento distinto al esperado. Véase
668 @ref{Escalado automático al tamaño del papel}.}
671 * Variables de paper para la anchura y los márgenes::
672 * Variables de paper para el modo de doble cara::
673 * Variables de paper para desplazamientos y sangrados::
677 @node Variables de paper para la anchura y los márgenes
678 @unnumberedsubsubsec Variables de @code{@bs{}paper} para la anchura y los márgenes
679 @translationof paper variables for widths and margins
681 Los valores predeterminados (antes del escalado) que no están
682 relacionados aquí se encuentran definidos en el archivo
683 @file{ly/paper-defaults-init.ly}.
687 @item paper-width (anchura del papel)
688 @funindex paper-width
690 Anchura de la página, sin fijar de forma predeterminada. Aunque
691 @code{paper-width} no tiene ningún efecto sobre el escalado
692 automático de algunas dimensiones horizontales, sí influye sobre
693 la variable @code{line-width}. Si están establecidas las dos
694 variables @code{paper-width} y @code{line-width}, entonces también
695 se actualizan @code{left-margin} y @code{right-margin}. Véase
696 también @code{check-consistency}.
698 @item line-width (longitud de la línea)
701 Cuando se especifica dentro de un bloque @code{\paper}, define las
702 dimensiones horizontales del espacio disponible para las líneas
703 del pentagrama en los sistemas sin sangrado por la izquierda. Si
704 se deja sin especificar, la longitud @code{line-width} del papel
705 se determina a partir de
706 @code{(paper-width@tie{}@minus{}@tie{}left-margin@tie{}@minus{}@tie{}right-margin)}.
707 Si se especifica la longitud @code{line-width} del papel, y no se
708 especifican el margen izquierdo @code{left-margin} ni el margen
709 derecho @code{right-margin}, entonces los márgenes se actualizan
710 de forma que los sistemas se centran automáticamente sobre la
711 página. Véase también @code{check-consistency}.
713 Los valores de @code{line-width} para las partituras individuales
714 se pueden especificar dentro de los bloques @code{\layout} de las
715 partituras. Estos valores controlan la longitud de las líneas
716 producidas partitura a partitura. Si la longitud
717 @code{line-width} no se especifica para una partitura, su valor
718 predeterminado es el @code{line-width} del bloque paper. El hecho
719 de fijar la longitud @code{line-width} de una partitura no tiene
720 efecto sobre los márgenes del papel. Las líneas del pentagrama,
721 de una longitud determinada por el valor @code{line-width} de la
722 partitura, se alinean por la izquierda dentro del área definida
723 por la longitud @code{line-width} del papel. Si la longitud
724 @code{line-width} del papel y de la partitura son iguales, las
725 líneas del pentagrama se extienden exactamente desde el margen
726 izquierdo hasta el margen derecho, pero si la longitud
727 @code{line-width} de la partitura es mayor que la
728 @code{line-width} del papel, las líneas del pentagrama se
729 imprimirán encima del espacio reservado al margen derecho.
731 @item left-margin (margen izquierdo)
732 @funindex left-margin
734 Margen entre el extremo izquierdo de la página y el comienzo de
735 las líneas del pentagrama en los sistemas sin sangrado. Si el
736 tamaño del papel se modifica, el valor predeterminado de esta
737 dimensión se escala de acuerdo con ello. Si no se fija el valor
738 de @code{left-margin}, y tanto @code{line-width} como
739 @code{right-margin} están fijados, entonces se establece el valor
740 de @code{left-margin} a
741 @code{(paper-width@tie{}@minus{}@tie{}line-width@tie{}@minus{}@tie{}right-margin)}.
742 Si solamente está fijado @code{line-width}, entonces los dos
743 márgenes se establecen a
744 @code{((paper-width@tie{}@minus{}@tie{}line-width)@tie{}/@tie{}2)},
745 y como consecuencia los sistemas se centran sobre la página.
746 Véase también @code{check-consistency}.
748 @item right-margin (margen derecho)
749 @funindex right-margin
751 Margen entre el extremo derecho de la página y el final de las
752 líneas del pentagrama en sistemas justificados. Si el tamaño de
753 la página se modifica, el valor predeterminado de esta dimensión
754 se escala de acuerdo con ello. Si @code{right-margin} está sin
755 fijar, y tanto @code{line-width} como @code{left-margin} están
756 fijados, el valor de @code{right-margin} se establece a
757 @code{(paper-width@tie{}@minus{}@tie{}line-width@tie{}@minus{}@tie{}left-margin)}.
758 Si solamente está fijado @code{line-width}, los dos márgenes se
760 @code{((paper-width@tie{}@minus{}@tie{}line-width)@tie{}/@tie{}2)},
761 y como consecuencia los sistemas aparecen centrados sobre la
762 página. Véase también @code{check-consistency}.
764 @item check-consistency (comprobar la consistencia)
765 @funindex check-consistency
767 Si esto es verdadero (su valor predeterminado), se imprime una
768 advertencia en caso de que la suma de @code{left-margin},
769 @code{line-width} y @code{right-margin} no coincida exactamente
770 con el valor de @code{paper-width}, y se sustituye cada uno de
771 estos valores (excepto @code{paper-width}) con su valor
772 predeterminado (escalado al tamaño del papel si es necesario). Si
773 está fijado al valor falso, se ignora cualquier inconsistencia y
774 se permite que los sistemas se salgan del borde del papel.
776 @item ragged-right (no justificar por la derecha)
777 @funindex ragged-right
779 Si está fijado al valor verdadero, los sistemas no cubren el ancho
780 de la línea. En lugar de ello, los sistemas finalizan en su
781 longitud horizontal natural. Valor predeterminado: @code{#t} para
782 las partituras con un solo sistema, y @code{#f} para partituras
783 que tienen dos o más sistemas. Esta variable también se puede
784 establecer dentro de un bloque @code{\layout}.
786 @item ragged-last (no justificar el último)
787 @funindex ragged-last
789 Si está fijado al valor verdadero, el último sistema de la
790 partitura no llena toda la anchura de la línea. En lugar de ello,
791 el último sistema finaliza en su longitud horizontal natural.
792 Valor predeterminado: @code{#f}. Esta variable también puede
793 ajustarse dentro de un bloque @code{\layout}.
798 Referencia de la notación:
799 @ref{Escalado automático al tamaño del papel}.
802 @file{ly/paper-defaults-init.ly}.
805 Los tamaños de papel definidos explícitamente sobreescriben
806 cualquier ajuste de los márgenes izquierdo o derecho definidos por
810 @node Variables de paper para el modo de doble cara
811 @unnumberedsubsubsec Variables de @code{@bs{}paper} para el modo de doble cara
812 @translationof paper variables for two-sided mode
814 Los valores predeterminados (antes del escalado) se definen en
815 @file{ly/paper-defaults-init.ly}.
819 @item two-sided (dos caras)
822 @cindex encuadernación
823 @cindex margen de encuadernación
825 Si tiene el valor verdadero, utilizar @code{inner-margin},
826 @code{outer-margin} y @code{binding-offset} para determinar los
827 márgenes dependiendo de si el número de la página es par o impar.
828 Esto sobreescribe a @code{left-margin} y a @code{right-margin}.
830 @item inner-margin (margen interno)
831 @funindex inner-margin
833 Margen que todas las páginas tienen en el lado interno si forman
834 parte de un libro. Si el tamaño del papel se modifica, el valor
835 predeterminado de esta dimensión se escala de acuerdo con ello.
836 Solamente funciona con @code{two-sided} fijado al valor verdadero.
838 @item outer-margin (margen externo)
839 @funindex outer-margin
841 Margen que todas las páginas tienen en el lado externo si forman
842 parte de un libro. Si el tamaño del papel se modifica, el valor
843 predeterminado de esta dimensión se escala de acuerdo con ello.
844 Solamente funciona con @code{two-sided} fijado al valor verdadero.
846 @item binding-offset (margen de encuadernación)
847 @funindex binding-offset
849 Medida en que se aumenta @code{inner-margin} para asegurar que no
850 se oculta nada a causa de la encuadernación. Si el tamaño del
851 papel se modifica, el valor predeterminado de esta dimensión se
852 escala de acuerdo con ello. Solamente funciona con
853 @code{two-sided} fijado al valor verdadero.
858 Referencia de la notación:
859 @ref{Escalado automático al tamaño del papel}.
862 @file{ly/paper-defaults-init.ly}.
865 @node Variables de paper para desplazamientos y sangrados
866 @unnumberedsubsubsec Variables de @code{@bs{}paper} para desplazamientos y sangrados
867 @translationof paper variables for shifts and indents
869 Los valores predeterminados (antes del escalado) que no se
870 relacionan aquí están definidos en el archivo
871 @file{ly/paper-defaults-init.ly}.
875 @item horizontal-shift (desplazamiento horizontal)
876 @funindex horizontal-shift
878 @c This default value is buried in the middle of page.scm. -mp
880 Medida en que todos los sistemas (incluidos los títulos de
881 cabecera y los separadores de sistemas) se desplazan a la derecha.
882 Predeterminado: @code{0.0}.
884 @item indent (sangrado)
887 Nivel de sangrado para el primer sistema de una partitura. Si se
888 modifica el tamaño del papel, el valor predeterminado de esta
889 dimensión se escala de acuerdo con ello. El espacio dentro de
890 @code{line-width} que está disponible para el primer sistema se
891 reduce en esta cantidad. @code{indent} se puede también
892 especificar dentro de los bloques @code{\layout} para ajustar los
893 sangrados partitura a partitura.
895 @item short-indent (sangrado reducido)
896 @funindex short-indent
898 Nivel de sangrado para todos los sistemas de una partitura excepto
899 el primero. Si el tamaño del papel se modifica, el valor
900 predeterminado de esta dimensión se escala de acuerdo con ello.
901 El espacio dentro de @code{line-width} que está disponible para
902 los sistemas que no son el primero, se reduce en esta cantidad.
903 También se puede especificar @code{short-indent} dentro de los
904 bloques @code{\layout} para ajustar los sangrados reducidos
905 partitura a partitura.
910 Referencia de la notación:
911 @ref{Escalado automático al tamaño del papel}.
914 @file{ly/paper-defaults-init.ly}.
916 Fragmentos de código:
920 @node Otras variables de paper
921 @subsection Otras variables de @code{@bs{}paper}
922 @translationof Other paper variables
925 * Variables de paper para los saltos de línea::
926 * Variables de paper para los saltos de página::
927 * Variables de paper para la numeración de las páginas::
928 * Variables de paper diversas::
932 @node Variables de paper para los saltos de línea
933 @unnumberedsubsubsec Variables de @code{@bs{}paper} para los saltos de línea
934 @translationof paper variables for line breaking
938 @item max-systems-per-page
939 @funindex max-systems-per-page
941 Número máximo de sistemas que se colocan sobre una página. Solo
942 está contemplado por el algoritmo @code{ly:optimal-breaking}.
943 Valor predeterminado: no fijado.
945 @item min-systems-per-page
946 @funindex min-systems-per-page
948 Número mínimo de sistemas que se colocan sobre una página. Puede
949 causar que las páginas aparezcan atiborradas si el valor es
950 demasiado grande En el momento actual solo está contemplado por el
951 algoritmo @code{ly:optimal-breaking}. Valor predeterminado: no
954 @item systems-per-page
955 @funindex systems-per-page
957 Número de sistemas que se deben colocar en cada página. En el
958 momento actual solo está contemplado por el algoritmo
959 @code{ly:optimal-breaking}. Valor predeterminado: no fijado.
962 @funindex system-count
964 Número de sistemas que utilizar para una partitura. Valor
965 predeterminado: no fijado. Esta variables también se puede
966 ajustar dentro de un bloque @code{\layout}.
971 Referencia de la notación:
972 @ref{Saltos de línea}.
975 @node Variables de paper para los saltos de página
976 @unnumberedsubsubsec Variables de @code{@bs{}paper} para los saltos de página
977 @translationof paper variables for page breaking
979 Los valores predeterminados que no están relacionados aquí, se
980 definen en el archivo @file{ly/paper-defaults-init.ly}
985 @funindex page-breaking
987 Algoritmo de saltos de página que utilizar. Se puede elegir entre
988 @code{ly:minimal-breaking}, @code{ly:page-turn-breaking},
989 @code{ly:one-page-breaking}, @code{ly:one-line-breaking},
990 @code{ly:one-line-auto-height-breaking} y
991 @code{ly:optimal-breaking} (predeterminado).
993 @item page-breaking-system-system-spacing
994 @funindex page-breaking-system-system-spacing
996 Engaña a la parte del programa encargada de los saltos de página
997 para que piense que @code{system-system-spacing} está establecido
998 a un valor distinto al que tiene realmente. Por ejemplo, si
999 @code{page-breaking-system-system-spacing #'padding} está
1000 establecido a algo que es mucho mayor que
1001 @code{system-system-spacing #'padding}, entonces el divisor de
1002 páginas pone menos sistemas en cada página. Valor predeterminado:
1006 @funindex page-count
1008 Número de páginas que utilizar en una partitura, no ajustado de
1009 forma predeterminada.
1013 Las siguientes variables son efectivas solamente cuando
1014 @code{page-breaking} está sijado a @code{ly:page-turn-breaking}.
1015 Los saltos de página se seleccionan entonces de forma que se
1016 minimice el número de pasos de página. Dado que los pasos de
1017 página son necesarios cuando se pasa de una página impar a una
1018 página par, normalmente resultará favorecida aquella disposición
1019 en que la última página sea impar. Los lugares en que se
1020 prefieran pasos de página pueden indicarse manualmente insertando
1021 @code{\allowPageTurn} o automáticamente incluyendo el grabador
1022 @code{Page_turn_engraver} (véase @ref{Paso de página óptimo}).
1024 Si no hay un número suficiente de posibilidades para escoger a la
1025 hora de insertar unos pasos de página adecuados, LilyPond puede
1026 insertar una página vacía dentro de una partitura, entre
1027 partituras (si hay dos o más partituras) o finalizando una
1028 partitura en una página de numeración par. Los valores de las
1029 tres siguientes variables pueden incrementarse para que estas
1030 acciones se vuelvan menos probables.
1032 Los valores son penalizaciones, es decir, cuando más alto es el
1033 valor menos probables será la acción asociada relativa a otras
1038 @item blank-page-penalty (penalización por página vacía)
1039 @funindex blank-page-penalty
1041 Penalización por tener una página vacía en mitad de una partitura.
1042 Si @code{blank-page-penalty} es grande y está seleccionado
1043 @code{ly:page-turn-breaking}, entonces será menos probable que
1044 LilyPond inserte una página en medio de una partitura. En lugar
1045 de ello, intercala espacio en la música hasta que se rellene la
1046 página vacía y la siguiente. Predeterminado: 5.
1048 @item blank-last-page-penalty (penalización por última página vacía)
1049 @funindex blank-last-page-penalty
1051 Penalización por terminar la partitura sobre una página par. Si
1052 @code{blank-last-page-penalty} es grande y está seleccionado
1053 @code{ly:page-turn-breaking}, entonces será menos probable que
1054 LilyPond produzca una partitura en que la última página tenga
1055 numeración par. En su lugar, ajustará el espaciado de manera que
1056 use una página más o una página menos. Predeterminado: 0.
1058 @item blank-after-score-page-penalty (penalización por página vacía después de una partitura)
1059 @funindex blank-after-score-page-penalty
1061 Penalización por tener una página vacía después del final de una
1062 partitura y antes de la siguiente. De forma predeterminada, esta
1063 penalización es más pequeña que @code{blank-page-penalty}, de
1064 forma que se insertan páginas vacías después de las partituras
1065 como preferencia sobre la inserción de páginas vacías dentro de
1066 una partitura. Predeterminado: 2.
1072 Referencia de la notación:
1073 @ref{Saltos de página},
1074 @ref{Saltos de página óptimos},
1075 @ref{Paso de página óptimo},
1076 @ref{Saltos de página mínimos},
1077 @ref{Saltos de página del tipo página única},
1078 @ref{Saltos de página del tipo una-línea}
1079 @ref{Saltos de página del tipo una-línea-altura-automática}.
1082 @file{ly/paper-defaults-init.ly}.
1085 @node Variables de paper para la numeración de las páginas
1086 @unnumberedsubsubsec Variables de @code{@bs{}paper} para la numeración de las páginas
1087 @translationof paper variables for page numbering
1089 Los valores predeterminados que no se relacionan aquí están
1090 definidos en el archivo @file{ly/paper-defaults-init.ly}
1094 @cindex números de página, automáticos
1095 @item auto-first-page-number
1096 @funindex auto-first-page-number
1098 El algoritmo de división de páginas está afectado por el hecho de
1099 que el número de la primera página sea par o impar. Si está
1100 establecido al valor verdadero, el algoritmo de división de
1101 páginas decide si comenzar con un número par o impar. Esto hace
1102 que el número de la primera página se quede como está, o que se
1103 aumente en una unidad. Predeterminado: @code{#f}.
1105 @cindex números de página, especificar el primero
1106 @item first-page-number
1107 @funindex first-page-number
1109 Valor del número de pátina en la primera página.
1111 @item print-first-page-number
1112 @funindex print-first-page-number
1114 Si está fijado a verdadero, se imprime un número de página en la
1117 @cindex números de página, suprimir
1118 @item print-page-number
1119 @funindex print-page-number
1121 Si está fijado a falso, no se imprimen los números de página.
1123 @cindex números de página, romanos
1124 @item page-number-type
1125 @funindex page-number-type
1127 Tipo de numeración para las páginas. Entre las posibilidades
1128 están @code{roman-lower} (números romanos en minúsculas),
1129 @code{roman-upper} (números romanos en mayúsculas) y @code{arabic}
1130 (cifras arábigas). Valor predeterminado: @code{'arabic}.
1136 @file{ly/paper-defaults-init.ly}.
1139 Los números de página impares siempre están a la derecha. Si
1140 quiere que la música comience en la página 1 debe haber una página
1141 en blanco en el reverso de la página de cubierta de manera que la
1142 página 1 esté en el lado derecho.
1145 @node Variables de paper diversas
1146 @unnumberedsubsubsec Variables de @code{@bs{}paper} diversas
1147 @translationof Miscellaneous paper variables
1151 @item page-spacing-weight
1152 @funindex page-spacing-weight
1154 Importancia relativa del espacio (vertical) de las páginas y el
1155 espaciado (horizontal) de las líneas. Los valores altos hacen que
1156 el espaciado de la página tenga más importancia. Predeterminado:
1159 @item print-all-headers
1160 @funindex print-all-headers
1162 Si está fijado a verdadero, imprime todos los encabezamientos para
1163 cada una de las partituras @code{\score} de la salida.
1164 Normalmente sólo se imprimen las variables de encabezamiento
1165 @code{piece} y @code{opus}. Valor predeterminado: @code{#f}.
1167 @item system-separator-markup
1168 @funindex system-separator-markup
1170 Objeto de marcado que se inserta entre los sistemas. Se suele
1171 usar para partituras orquestales. Predeterminado: sin establecer.
1172 El elemento de marcado @code{\slashSeparator}, definido en el
1173 archivo @file{ly/titling-init.ly}, se aporta como un valor
1174 predeterminado adecuado, por ejemplo:
1176 @lilypond[quote,verbatim,noragged-right,line-width=30\mm]
1177 #(set-default-paper-size "a8")
1181 system-separator-markup = \slashSeparator
1187 \relative { c''1 \break c1 \break c1 }
1196 @file{ly/titling-init.ly}.
1198 Fragmentos de código:
1202 El encabezamiento de página predeterminado pone el número de
1203 página y el campo @code{instrument} del bloque @code{\header}
1204 sobre la misma línea.
1207 @node Disposición de la partitura
1208 @section Disposición de la partitura
1209 @translationof Score layout
1211 Esta sección trata de las opciones de disposición de la partitura
1212 para el bloque @code{\layout}.
1215 * El bloque layout::
1216 * Establecer el tamaño del pentagrama::
1220 @node El bloque layout
1221 @subsection El bloque @code{@bs{}layout}
1222 @translationof The layout block
1226 Así como el bloque @code{\paper} contiene ajustes relativos al
1227 formateo de la página para todo el documento, el bloque
1228 @code{\layout} contiene ajustes para la disposición específica de
1229 las partituras. Para fijar las opciones de disposición de
1230 partituras de forma global, escríbalas en un bloque @code{\layout}
1231 del nivel jerárquico superior. Para fijar opciones de disposición
1232 para una partitura individual escríbalas dentro de un bloque
1233 @code{\layout} dentro del bloque @code{\score}, después de la
1234 música. Entre los ajustes que pueden aparecer en un bloque
1235 @code{\layout} se encuentran los siguientes:
1238 @item la función de Scheme @code{layout-set-staff-size},
1239 @item las modificaciones de contexto de los bloques @code{\context}, y
1240 @item las variables de @code{\paper} que afectan a la disposición de la partitura.
1243 La función @code{layout-set-staff-size} se estudia en la sección
1244 siguiente, @ref{Establecer el tamaño del pentagrama}. Las
1245 modificaciones de contexto se estudian en un capítulo distinto;
1246 véase @ref{Modificar los complementos (plug-ins) de contexto} y
1247 @ref{Cambiar los valores por omisión de los contextos}.
1249 Las variables de @code{\paper} que pueden aparecer dentro de un
1250 bloque @code{\layout}, y cuyos valores predeterminados se toman
1251 del bloque @code{paper}, son:
1256 @code{line-width}, @code{ragged-right} y @code{ragged-last} (véase
1257 @ref{Variables de paper para la anchura y los márgenes,,Variables
1258 de @code{@bs{}paper} para la anchura y los márgenes})
1261 @code{indent} y @code{short-indent}
1262 (véase @ref{Variables de paper para desplazamientos y sangrados,,Variables de @code{@bs{}paper} para desplazamientos y sangrados})
1266 (véase @ref{Variables de paper para los saltos de línea,,Variables de @code{@bs{}paper} para los saltos de línea})
1270 He aquí un ejemplo de un bloque @code{\layout}:
1277 \override StaffGrouper.staff-staff-spacing.basic-distance = #8
1281 \override TextScript.padding = #1
1282 \override Glissando.thickness = #3
1287 Se pueden escribir varios bloques @code{\layout} como expresiones
1288 del nivel superior. Esto puede ser útil, por ejemplo, si hay
1289 distintos ajustes almacenados en diversos archivos y se incluyen
1290 opcionalmente. Internamente, cuando se evalúa un bloque
1291 @code{\layout}, se hace una copia de la configuración de
1292 @code{\layout} actual, y después se aplican los cambios definidos
1293 en el bloque; el resultado se guarda como la nueva configuración
1294 actual. Desde el punto de vista del usuario, los bloques
1295 @code{\layout} se combinan, pero en situaciones de conflicto
1296 (cuando se cambia la misma propiedad en diferentes bloques) las
1297 definiciones más tarías toman precedencia.
1299 Por ejemplo: si este bloque:
1305 \override TextScript.color = #magenta
1306 \override Glissando.thickness = #1.5
1311 se coloca después del del ejemplo anterior, las sobreescrituras de
1312 @code{'padding} y de @code{'color} para @code{TextScript} se
1313 combinan, pero la última sobreescritura @code{'thickness} para
1314 @code{Glissando} sustituye (u oculta) a la anterior.
1316 Los bloques @code{\layout} se pueden asignar a variables para una
1317 reutilización posterior, pero la forma en que esto funciona es
1318 ligera y significativamente diferente del hecho de escribirlas
1321 Si se define una variable de la siguiente manera:
1324 variable_de_Layout = \layout @{
1327 \override NoteHead.font-size = #4
1332 guardará la configuración actual de @code{\layout} con la
1333 sobreescritura añadida de @code{NoteHead.font-size}, pero esta
1334 combinación @emph{no} se guarda como la nueva configuración
1335 actual. Tenga en cuenta que la @q{configuración actual} se lee
1336 cuando la variable se define y no cuando se usa, de manera que el
1337 contenido de la variable depende de su posición dentro del código
1340 La variable se puede entonces usar dentro de otro bloque
1341 @code{\layout}, por ejemplo:
1348 \override NoteHead.color = #red
1353 Un bloque @code{\layout} que contiene una variable, como en el
1354 ejemplo anterior, @emph{no} copia la configuración actual, sino
1355 que en lugar de ello usa el contenido de
1356 @code{\variable_de_layout} como la configuración base para las
1357 adiciones posteriores. Esto significa que cualquier cambio
1358 definido entre la definición y el uso de la variable, se pierde.
1360 Si la @code{variable_de_layout} se define (o se incluye con
1361 @code{\include}) inmediatamente antes de que se utilice, su
1362 contenido es sencillamente la configuración en curso más las
1363 sobreescrituras que se hayan definido dentro de él. Así pues, en
1364 el ejemplo anterior que muestra el uso de
1365 @code{\variable_de_layout} el último bloque @code{\layout}
1369 TextScript.padding = #1
1370 TextScript.color = #magenta
1371 Glissando.thickness = #1.5
1372 NoteHead.font-size = #4
1373 NoteHead.color = #red
1376 más las sobreescrituras de @code{indent} y de @code{StaffGrouper}.
1378 Pero si la variable ya hubiera sido definida antes del primer
1379 bloque @code{\layout} la configuración actual contendría ahora
1383 NoteHead.font-size= #4 % (escrita en la definición de la variable)
1384 NoteHead.color = #red % (añadida después del uso de la variable)
1387 Si se planifica cuidadosamente, las variables de @code{\layout}
1388 pueden ser una herramienta valiosa para estructurar el diseño de
1389 la disposición de las fuentes, y tambiién para reiniciar la
1390 configuración de @code{\layout} a un estado conocido.
1393 Referencia de la notación:
1394 @ref{Cambiar los valores por omisión de los contextos}.
1396 Fragmentos de código:
1400 @node Establecer el tamaño del pentagrama
1401 @subsection Establecer el tamaño del pentagrama
1402 @translationof Setting the staff size
1404 @cindex tipografía, fijar el tamaño de
1405 @cindex pentagrama, fijar el tamaño de
1406 @funindex disposición, archivo de
1407 @funindex magnification->font-size
1409 @funindex set-global-staff-size
1410 @funindex layout-set-staff-size
1413 El @strong{tamaño de pentagrama} predeterminado es de 20 puntos,
1414 que corresponde a una altura del pentagrama de 7.03 mm (un punto
1415 es 100/7227 de pulgada, o 2540/7227 mm). El tamaño del pentagrama
1416 se puede modificar de tres formas:
1421 Para establecer globalmente el tamaño del pentagrama para todas
1422 las partituras de un archivo (o en un bloque @code{\book}, para
1423 ser exactos), utilice @code{set-global-staff-size}:
1426 #(set-global-staff-size 14)
1430 El ejemplo de arriba establece el tamaño global predeterminado del
1431 pentagrama a 14 pt (4.92 mm) y escala todas las tipografías según
1435 Para fijar el tamaño del pentagrama para una sola partitura dentro
1436 de un libro, use @code{layout-set-staff-size} dentro del bloque
1437 @code{\layout} de dicha partitura:
1443 #(layout-set-staff-size 14)
1449 Para fijar el tamaño del pentagrama para una sola pauta dentro de
1450 un sistema, use la instrucción @code{\magnifyStaff}. Por ejemplo,
1451 las partituras de música de cámara editadas de la forma
1452 tradicional, con piano, usan habitualmente pautas de 7 mm para el
1453 piano, mientras que los otros pentagramas suelen estar entre 3/5 y
1454 5/7 de reducción (entre el 60% y el 71%). Para obtener la
1455 proporción de 5/7, escriba:
1463 \new PianoStaff @{ @dots{} @}
1468 En caso de que usted sepa qué tamaño de @code{fontSize} quiere
1469 usar, puede emplear la forma siguiente:
1475 \magnifyStaff #(magstep -3)
1477 \new PianoStaff @{ @dots{} @}
1482 Para imitar la apariencia de las ediciones tradicionales, es mejor
1483 evitar reducir el grosor de las líneas del pentagrama.
1488 @subheading Peso automático de la tipografía a distintos tamaños
1490 La tipografía Emmentaler ofrece el conjunto de glifos musicales
1491 @emph{Feta} en ocho tamaños distintos, cada uno de ellos ajustado
1492 a un tamaño de pentagrama. Cuanto más pequeño es el tamaño de los
1493 glifos, más @qq{pesados} se vuelven, de manera que armonicen con
1494 las líneas del pentagrama, que son también relativamente más
1495 gruesas. Los tamaños de glifo recomendados se relacionan en la
1498 @multitable @columnfractions .15 .2 .22 .2
1500 @item @b{nombre de la fuente} @tab @b{altura del pentagrama (pt)} @tab @b{altura del pentagrama (mm)} @tab @b{usos}
1501 @item feta11 @tab 11.22 @tab 3.9 @tab partituras de bolsillo
1502 @item feta13 @tab 12.60 @tab 4.4 @tab
1503 @item feta14 @tab 14.14 @tab 5.0 @tab
1504 @item feta16 @tab 15.87 @tab 5.6 @tab
1505 @item feta18 @tab 17.82 @tab 6.3 @tab cancioneros
1506 @item feta20 @tab 20 @tab 7.0 @tab particellas estándar
1507 @item feta23 @tab 22.45 @tab 7.9 @tab
1508 @item feta26 @tab 25.2 @tab 8.9 @tab @c modern rental material?
1512 Referencia de la notación:
1513 @ref{Seleccionar el tamaño de la tipografía para la notación},
1514 @ref{La tipografía Emmentaler}.
1516 Fragmentos de código:
1520 @code{layout-set-staff-size} no cambia la distancia entre las
1521 líneas del pentagrama.
1526 @translationof Breaks
1530 * Saltos de página::
1534 @node Saltos de línea
1535 @subsection Saltos de línea
1536 @translationof Line breaking
1540 @funindex \autoBreaksOff
1541 @funindex \autoBreaksOn
1542 @funindex \autoLineBreaksOff
1543 @funindex \autoLineBreaksOn
1544 @cindex saltos de línea
1545 @cindex línea, saltos de
1547 Normalmente los saltos de línea se determinan automáticamente. Se
1548 eligen de forma que las líneas no aparezcan demasiado apretadas ni
1549 demasiado sueltas, y que las líneas consecutivas tengan una
1552 Para forzar manualmente un salto de línea sobre la línea
1553 divisoria, utilice la instrucción @code{\break}:
1555 @lilypond[quote,ragged-right,verbatim]
1562 De forma predeterminada se ignora cualquier instrucción
1563 @code{\break} insertada en la mitad de un compás, y se imprime un
1564 mensaje de advertencia durante la compilación del archivo de
1565 entrada de LilyPond. Para forzar un salto de línea en medio de un
1566 compás, añada una línea divisoria invisible con @w{@samp{\bar
1569 @lilypond[quote,ragged-right,verbatim]
1579 También se ignora cualquier instrucción @code{\break} que se
1580 produzca en la línea divisoria si el compás anterior termina en
1581 medio de una nota, como cuando un grupo de valoración especial
1582 comienza en un compás y termina en otro distinto. En este caso,
1583 elimine el grabador @code{Forbid_line_break_engraver} del contexto
1584 @code{Voice} y use una construcción de música simultánea
1585 insertando el @code{break} en el lugar adecuado dentro de la
1588 @lilypond[quote,ragged-right,verbatim]
1590 \remove "Forbid_line_break_engraver"
1593 { c''2. \tuplet 3/2 { c4 c c } c2. | }
1594 { s1 | \break s1 | }
1599 De forma similar, el funcionamiento predeterminado es que los
1600 saltos de línea resulten ignorados cuando hay barras de corchea
1601 que cruzan la línea divisoria. Utilice la instrucción
1602 @code{\override Beam.breakable = ##t} para forzar esto:
1604 @lilypond[quote,ragged-right,verbatim]
1606 \override Beam.breakable = ##t
1612 La instrucción @code{\noBreak}, evita que se produzca
1613 un salto de línea en la barra divisoria en que se inserta.
1615 Dentro de una partitura, se evitan los saltos de línea automáticos
1616 dento de la música que se encuentra entre las instrucciones
1617 @code{\autoLineBreaksOff} y @code{\autoLineBreaksOn}. Si también
1618 se quieren evitar los saltos de página automáticos, deben usarse
1619 las instrucciones @code{\autoBreaksOff} y @code{\autoBreaksOn}.
1620 Los saltos manuales no están afectados por estas instrucciones.
1621 Observe que el hecho de inhibir los saltos de línea automáticos
1622 puede hacer que la música se extienda sobre el margen derecho
1623 cuandoquiera que no cabe completamente dentro de una sola línea.
1625 Los saltos automáticos de línea (no de página) se pueden habilitar
1626 sobre líneas divisorias individuales mediante el uso de
1627 @code{\once \autoLineBreaksOn} en una barra. La instrucción
1628 identifica un salto de línea permitido, en lugar de uno prohibido.
1630 Los ajustes más básicos que influyen sobre el espaciado de las
1631 líneas son @code{indent} y @code{line-width}. Se establecen dentro
1632 del bloque @code{\layout}. Controlan el sangrado de la primera
1633 línea de música, y la longitud de las líneas.
1635 Si se establece @code{ragged-right} a verdadero en el bloque
1636 @code{\layout}, los sistemas terminan en su longitud horizontal
1637 natural, en lugar de distribuirse horizontalmente para llenar toda
1638 la línea. Esto es de utilidad para fragmentos cortos, y para
1639 efectuar una comprobación de lo apretado que es el espaciado
1642 @c TODO Check and add para on default for ragged-right
1644 La opción @code{ragged-last} es similar a @code{ragged-right},
1645 pero afecta sólo a la última línea de la pieza.
1655 @cindex saltos de línea normales
1656 @cindex música de cuatro compases por línea
1658 Para saltos de línea a intervalos regulares utilice @code{\break}
1659 separado mediante desplazamientos con @code{\skip} y repetidos con
1660 @code{\repeat}. Por ejemplo, esto haría que los 28 compases
1661 siguientes (suponiendo un compás de 4/4) se dividan cada cuatro
1662 compases, y sólo en dichos lugares:
1667 s1 \noBreak s1 \noBreak
1668 s1 \noBreak s1 \break
1670 @{ @var{la música real@dots{}} @}
1678 @code{\autoBreaksOff},
1679 @code{\autoBreaksOn},
1680 @code{\autoLineBreaksOff},
1681 @code{\autoLineBreaksOn}.
1686 @lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
1687 {using-an-extra-voice-for-breaks.ly}
1690 Referencia de la notación:
1691 @ref{Variables de paper para los saltos de línea},
1692 @ref{The layout block}.
1694 Fragmentos de código:
1697 Referencia de funcionamiento interno:
1698 @rinternals{LineBreakEvent}.
1702 Si se escribe @code{\autoLineBreaksOff} o @code{\autoBreaksOff}
1703 antes de cualquier contenido musical, aparecerán mensajes de
1704 error. Escriba siempre estas instrucciones después de algo de
1708 @node Saltos de página
1709 @subsection Saltos de página
1710 @translationof Page breaking
1712 Esta sección describe los distintos métodos para crear saltos de
1713 página, y cómo modificarlos.
1716 * Saltos de página manuales::
1717 * Saltos de página óptimos::
1718 * Saltos de página mínimos::
1719 * Saltos de página del tipo página única::
1720 * Saltos de página del tipo una-línea::
1721 * Saltos de página del tipo una-línea-altura-automática::
1722 * Paso de página óptimo::
1726 @node Saltos de página manuales
1727 @unnumberedsubsubsec Saltos de página manuales
1728 @translationof Manual page breaking
1730 @funindex \pageBreak
1731 @funindex \noPageBreak
1732 @funindex \autoPageBreaksOn
1733 @funindex \autoPageBreaksOff
1734 @cindex página, saltos manuales
1736 Se puede sobreescribir el mecanismo predeterminado de salto de
1737 página insertando instrucciones @code{\pageBreak} o
1738 @code{\noPageBreak}. Estas instrucciones son análogas a
1739 @code{\break} y @code{\noBreak}. Se deben insertar en una línea
1740 divisoria. Estas instrucciones fuerzan y prohíben,
1741 respectivamente, la eventualidad de un salto de página en dicha
1742 línea divisoria. Por supuesto, la instrucción @code{\pageBreak}
1743 también fuerza un salto de línea.
1745 Las instrucciones @code{\pageBreak} y @code{\noPageBreak} también
1746 se pueden insertar en el nivel más alto, entre las partituras y
1747 los elementos de marcado situados en el nivel superior.
1749 Dentro de una partitura, no se producen saltos de página
1750 automáticos en el interior de la música que se encuentra entre las
1751 instrucciones @code{\autoPageBreaksOff} y
1752 @code{\autoPageBreaksOn}. Los saltos de página manuales no
1753 reultan afectados por estas instrucciones.
1755 Hay ajustes análogos a @code{ragged-right} y @code{ragged-last}
1756 que tienen el mismo efecto sobre el espaciado vertical. Si
1757 @code{ragged-bottom} se establece a @code{#t} los sistemas no se
1758 justifican verticalmente. Cuando el valor de
1759 @code{ragged-last-bottom} se fija a @code{#t}, como lo está de
1760 forma predeterminada, se permite una separación al final de la
1761 última página (o la última página de cada uno de las partes de
1762 libro @code{\bookpart}). Véase
1763 @ref{Variables de espaciado de paper verticales fijas,,Variables de espaciado de @code{@bs{}paper} verticales fijas}.
1765 Los saltos de página se calculan por medio de la función
1766 @code{page-breaking}. LilyPond ofrece varios algoritmos para el
1767 cómputo de los saltos de página, entre ellos
1768 @code{ly:optimal-breaking}, @code{ly:page-turn-breaking} y
1769 @code{ly:minimal-breaking}. El predeterminado es
1770 @code{ly:optimal-breaking}, pero el valor se puede cambiar en el
1771 bloque @code{\paper}:
1775 page-breaking = #ly:page-turn-breaking
1781 Cuando un libro tiene muchas partituras y páginas, puede ser
1782 difícil resolver el problema de los saltos de página, necesitando
1783 mucha memoria y prolongados tiempos de procesamiento. Para
1784 facilitar el proceso de división en páginas, se usan los bloques
1785 @code{\bookpart} para dividir el libro en varias partes: los
1786 saltos de página se producen de manera independiente en cada
1787 parte. También se pueden usar diferentes funciones de división en
1788 páginas para las distintas partes del libro.
1793 subtitle = "Prefacio"
1796 %% En una parte que consiste en texto principalmente,
1797 %% puede ser preferible ly:minimal-breaking
1798 page-breaking = #ly:minimal-breaking
1800 \markup @{ @dots{} @}
1804 %% En esta parte, consistente en música, se usa la función
1805 %% óptima predeterminada de saltos de página.
1807 subtitle = "Primer movimiento"
1809 \score @{ @dots{} @}
1816 @funindex \pageBreak
1818 @code{\noPageBreak},
1819 @code{\autoPageBreaksOn},
1820 @code{\autoPageBreaksOff}.
1824 Referencia de la notación:
1825 @ref{Variables de paper para los saltos de página}.
1827 Fragmentos de código:
1832 El prefijo @code{\once} no es efectivo con
1833 @code{\autoPageBreaksOn} y @code{\autoPageBreaksOff}. Si se ha
1834 desactivado la división automática de páginas y después se vuelve
1835 a activar para permitir un salto, debe continuar activada durante
1836 algunos compases (cuyo número exacto dependerá de la partitura)
1837 antes de volverse a desactivar, pues en caso contrario podría
1838 perderse la oportunidad de que el salto se produzca.
1840 @node Saltos de página óptimos
1841 @unnumberedsubsubsec Saltos de página óptimos
1842 @translationof Optimal page breaking
1844 @funindex ly:optimal-breaking
1846 La función @code{ly:optimal-breaking} es el método predeterminado
1847 de LilyPond para determinar los saltos de página. Intenta hallar
1848 una división de páginas que haga mínimos el apretujamiento y la
1849 distensión, tanto horizontal como verticalmente. A diferencia de
1850 @code{ly:page-turn-breaking}, no tiene un concepto de los pasos de
1854 Fragmentos de código:
1858 @node Saltos de página mínimos
1859 @unnumberedsubsubsec Saltos de página mínimos
1860 @translationof Minimal page breaking
1862 @funindex ly:minimal-breaking
1864 La función @code{ly:minimal-breaking} efectúa unos cálculos
1865 mínimos para determinar los saltos de página: completa una página
1866 con tantos sistemas como sea posible antes de continuar con la
1867 siguiente. Así, puede preferirse para partituras con muchas
1868 páginas, donde las otras funciones de salto de página pueden
1869 resultar demasiado lentas o ávidas de memoria, o con una gran
1870 cantidad de textos. Se habilita utilizando:
1874 page-breaking = #ly:minimal-breaking
1883 @node Saltos de página del tipo página única
1884 @unnumberedsubsubsec Saltos de página del tipo página única
1885 @translationof One-page page breaking
1887 @funindex ly:one-page-breaking
1889 La función @code{ly:one-page-breaking} (saltos de página única) es
1890 un algoritmo de saltos de página de proósito especial que ajusta
1891 automáticamente la altura de la página para que quepa toda la
1892 música en una sola página. La variable @code{paper-height} del
1893 bloque @code{paper} se ignora, pero los otros ajustes funcionan de
1894 la manera acostumbrada. Concretamente, el espaciado entre el
1895 último sistema (o elemento de marcado de nivel superior) y el pie
1896 de página se puede personalizar con @code{last-bottom-spacing}
1897 dentro del bloque @code{paper}. La anchura de la página se queda
1898 sin alterar por omisión, pero se puede fijar con la variable
1899 @code{paper-width} del bloque @code{paper}.
1902 @code{ly:one-page-breaking} no es compatible, de momento, con
1906 @node Saltos de página del tipo una-línea
1907 @unnumberedsubsubsec Saltos de página del tipo una-línea
1908 @translationof One-line page breaking
1910 @funindex ly:one-line-breaking
1912 La función @code{ly:one-line-breaking} es un algoritmo de saltos
1913 de página para uso especial que pone cada partitura en una página
1914 y en una sola línea. Esta función de salto de página no compone
1915 los títulos ni los márgenes; solamente se imprime la partitura.
1917 El ancho de la página se ajusta de forma que la partitura más
1918 larga quepa en una línea. Concretamente, las variables
1919 @code{paper-width}, @code{line-width} y @code{indent} del bloque
1920 @code{\paper} se ignoran, aunque @code{left-margin} y
1921 @code{right-margin} aún se respetan. La altura de la página se
1925 @node Saltos de página del tipo una-línea-altura-automática
1926 @unnumberedsubsubsec Saltos de página del tipo una-línea-altura-automática
1927 @translationof One-line-auto-height page breaking
1929 @funindex ly:one-line-auto-height-breaking
1931 La función @code{ly:one-line-auto-height-breaking} funciona igual
1932 que @code{ly:one-line-breaking} excepro que la altura de la página
1933 se modifica automáticamente para hacerse corresponder con la
1934 altura de la música. De forma específica, la variable
1935 @code{paper-height} del bloque @code{\paper} se ajusta de tal
1936 manera que abarca los extremos superior e inferior de la partitura
1937 más alta más los márgenes superior e inferior @code{top-margin} y
1938 @code{bottom-margin}.
1940 Observe que el ajuste @code{top-system-spacing} afecta a la
1941 posición vertical de la música. Fíjelo al valor @code{##f} dentro
1942 de un bloque @code{paper} para disponer la música sencillamente
1943 entre los márgenes superior e inferior.
1946 @node Paso de página óptimo
1947 @unnumberedsubsubsec Paso de página óptimo
1948 @translationof Optimal page turning
1950 @funindex ly:page-turn-breaking
1952 Con frecuencia es necesario encontrar una configuración de
1953 división de páginas de manera que haya un silencio al final de una
1954 página de cada dos. De esta forma, el músico puede pasar la
1955 página sin perder notas. La función @code{ly:page-turn-breaking}
1956 trata de encontrar una división de páginas que haga mínimos el
1957 apretujamiento y el estiramiento, pero con la restricción añadida
1958 de que sólo se permite introducir vueltas de página en los lugares
1961 Hay dos etapas en el uso de esta función de división de páginas.
1962 En primer lugar debemos habilitarlo en el bloque @code{\paper},
1963 como se explicó en @ref{Saltos de página}. Entonces debemos
1964 decirle a la función dónde nos gustaría permitir los saltos de
1967 Hay dos formas de conseguir la segunda tarea. Primero, podemos
1968 especificar manualmente cada uno de los pasos de página
1969 potenciales, insertando @code{\allowPageTurn} en nuestro archivo
1970 de entrada en los lugares adecuados.
1972 Si esto es demasiado tedioso, podemos añadir un grabador
1973 @code{Page_turn_engraver} a un contexto Staff o Voice. El
1974 grabador @code{Page_turn_engraver} analizará el contexto en busca
1975 de secciones sin notas (observe que no busca silencios, sino la
1976 ausencia de notas. Se hace así para que la polifonía en un solo
1977 pentagrama con silencios en una de las voces no arruine la labor
1978 del grabador @code{Page_turn_engraver}). Cuando encuentra una
1979 sección sin notas suficientemente larga, el grabador
1980 @code{Page_turn_engraver} inserta un @code{\allowPageTurn} en la
1981 última barra de compás de dicha sección, a no ser que haya una
1982 barra @q{especial} de compás (como una doble barra), en cuyo caso
1983 se insertará el @code{\allowPageTurn} en la última barra
1984 @q{especial} de compás de la sección.
1986 @funindex minimumPageTurnLength
1987 El grabador @code{Page_turn_engraver} lee la propiedad de contexto
1988 @code{minimumPageTurnLength} para determinar qué longitud debe
1989 tener una sección sin notas antes de que se considere la
1990 posibilidad de un paso de página. El valor predeterminado para
1991 @code{minimumPageTurnLength} es @code{(ly:make-moment 1/1)}. Si
1992 quiere inhabilitar las vueltas de página, fíjelo a algún valor
1996 \new Staff \with @{ \consists "Page_turn_engraver" @}
1999 R1 | % aquí se permite un salto de página
2001 \set Staff.minimumPageTurnLength = #(ly:make-moment 5/2)
2002 R1 | % aquí no se permite un salto de página
2004 R1*2 | % aquí se permite un salto de página
2009 @funindex minimumRepeatLengthForPageTurn
2011 Al usar repeticiones de primera y segunda vez, el grabador
2012 @code{Page_turn_engraver} solo permite un pase de página durante
2013 la repetición si hay suficiente tiempo al principio y al final de
2014 la repetición para volver a pasar la página hacia atrás. Si la
2015 repetición es demasiado corta, se puede usar el grabador
2016 @code{Page_turn_engraver} para @emph{inhabilitar} los pasos de
2017 página mediante el establecimiento de un valor adecuado para la
2018 propiedad de contexto @code{minimumRepeatLengthForPageTurn}. En
2019 este caso el grabador @code{Page_turn_engraver} sólo permitirá los
2020 pases de página en las repeticiones cuya duración sea mayor que el
2023 Las instrucciones de paso de página, @code{\pageTurn},
2024 @code{\noPageTurn} y @code{\allowPageTurn}, se pueden usar también
2025 en el nivel más elevado del código, dentro de elementos de marcado
2026 del nivel superior y entre las partituras.
2031 @funindex \noPageTurn
2033 @funindex \allowPageTurn
2034 @code{\allowPageTurn}.
2038 Referencia de la notación:
2039 @ref{Variables de paper para los saltos de línea}.
2041 Fragmentos de código:
2045 Utilice un solo grabador @code{Page_turn_engraver} en cada
2046 partitura. Si hay más de uno, se interferirán entre sí.
2051 @ref{Vertical spacing}.
2053 Fragmentos de código:
2057 @node Espaciado vertical
2058 @section Espaciado vertical
2059 @translationof Vertical spacing
2061 @cindex espaciado vertical
2062 @cindex vertical, espaciado
2064 El espaciado vertical está controlado por tres factores: la
2065 cantidad de espacio disponible (es decir, el tamaño del papel y
2066 los márgenes), la separación entre los sistemas, y la separación
2067 entre los pentagramas dentro de un sistema.
2070 * Espaciado vertical flexible dentro de los sistemas::
2071 * Posicionamiento explícito de los pentagramas y los sistemas::
2072 * Evitar las colisiones verticales::
2076 @node Espaciado vertical flexible dentro de los sistemas
2077 @subsection Espaciado vertical flexible dentro de los sistemas
2078 @translationof Flexible vertical spacing within systems
2080 @cindex distancia entre pentagramas
2081 @cindex pentagrama, distancia entre los
2082 @cindex espacio entre pentagramas
2083 @cindex espacio dentro de los sistemas
2085 Tres mecanismos distintos controlan el espaciado vertical flexible
2086 dentro de los sistemas, uno por cada una de las categorías
2092 @emph{pautas sin agrupar},
2095 @emph{pautas agrupadas} (pautas dentro de un grupo de pentagramas como
2096 @code{ChoirStaff}, etc.), y
2099 @emph{líneas que no son pautas} (como @code{Lyrics},
2100 @code{ChordNames}, etc.).
2104 @c TODO: Clarify this. This almost implies that non-staff lines
2105 @c have NO effect on the spacing between staves. -mp
2107 La altura de cada sistema se determina en dos fases. Primero,
2108 todos los pentagramas se disponen según la cantidad de espacio
2109 vacío disponible. Después, las líneas que no son pautas se
2110 distribuyen entre las pautas.
2112 Observe que los mecanismos de espaciado estudiados en esta sección
2113 solamente controlan el espaciado vertical de las pautas y líneas
2114 que no son pautas dentro de los sistemas individuales. El
2115 espaciado vertical entre distintos sistemas, partituras, marcados
2116 y márgenes se controla mediante variables de @code{\paper} que se
2118 @ref{Variables de espaciado de paper verticales flexibles,,Variables de espaciado de @code{@bs{}paper} verticales flexibles}.
2121 * Propiedades de espaciado dentro de los sistemas::
2122 * Espaciado de pautas no agrupadas::
2123 * Espaciado de pautas agrupadas::
2124 * Espaciado de las líneas que no son pautas::
2128 @node Propiedades de espaciado dentro de los sistemas
2129 @unnumberedsubsubsec Propiedades de espaciado dentro de los sistemas
2130 @translationof Within-system spacing properties
2132 @funindex staff-affinity
2133 @funindex staffgroup-staff-spacing
2134 @funindex staff-staff-spacing
2135 @funindex nonstaff-unrelatedstaff-spacing
2136 @funindex nonstaff-relatedstaff-spacing
2137 @funindex nonstaff-nonstaff-spacing
2138 @funindex default-staff-staff-spacing
2139 @funindex minimum-Y-extent
2140 @funindex extra-offset
2141 @funindex self-alignment-X
2143 @funindex VerticalAxisGroup
2145 Los mecanismos de espaciado vertical dentro del sistema están
2146 controlados por dos conjuntos de propiedades de grob. El primer
2147 conjunto está asociado con el grob @code{VerticalAxisGroup}, que
2148 se crea por parte de todas las pautas y líneas que no son pautas.
2149 El segundo conjunto está asociado con el grob @code{StaffGrouper},
2150 que puede crearse por parte de los grupos de pentagramas, pero
2151 solamente si se le llama explícitamente. Estas propiedades se
2152 describen individualmente al final de la presente sección.
2154 Los nombres de estas propiedades (excepto para
2155 @code{staff-affinity}) siguen el formato
2156 @code{@var{elemento1}-@var{elemento2}-spacing}, donde
2157 @code{@var{elemento1}} y @code{@var{elemento2}} son los elementos
2158 que se van a espaciar. Observe que @code{@var{elemento2}} no está
2159 necesariamente por debajo de @code{@var{elemento1}}; por ejemplo,
2160 @code{nonstaff-relatedstaff-spacing} mide hacia arriba a partir de
2161 la línea del tipo no-pauta si @code{staff-affinity} es @code{UP}.
2163 Cada distancia se mide entre los @emph{puntos de referencia} de
2164 los dos elementos. El @emph{punto de referencia} para un
2165 pentagrama y otro tipo de pauta es el centro vertical de su
2166 @code{StaffSymbol} (es decir, la línea central si
2167 @code{line-count} es un número impar; el espacio central si
2168 @code{line-count} es par). Los puntos de referencia para las
2169 líneas individuales que no son pautas aparecen en la tabla
2172 @multitable {Línea que no es una pauta} {Punto de referencia}
2173 @headitem Línea que no es una pauta @tab Punto de referencia
2174 @item @code{ChordNames} @tab línea de base
2175 @item @code{NoteNames} @tab línea de base
2176 @item @code{Lyrics} @tab línea de base
2177 @item @code{Dynamics} @tab la mitad de la altura de la @q{m}
2178 @item @code{FiguredBass} @tab punto más alto
2179 @item @code{FretBoards} @tab línea superior
2182 En la siguiente imagen, las líneas horizontales indican las
2183 posiciones de estos puntos de referencia:
2185 @lilypond[quote,noragged-right,line-width=110\mm]
2186 #(define zero-space '((padding . -inf.0) (basic-distance . 0)))
2188 alignToZero = \with {
2189 \override VerticalAxisGroup.nonstaff-relatedstaff-spacing = #zero-space
2190 \override VerticalAxisGroup.nonstaff-nonstaff-spacing = #zero-space
2191 \override VerticalAxisGroup.staff-affinity = #DOWN
2192 \remove Text_engraver % avoid having two
2193 \consists Text_engraver
2195 lowerCaseChords = \with {
2196 chordNameLowercaseMinor = ##t
2199 #(define-music-function
2202 #{ s1*0^\markup { \upright {\typewriter #context } } #})
2205 \context { \Dynamics \alignToZero }
2206 \context { \FiguredBass \alignToZero }
2207 \context { \Lyrics \alignToZero }
2208 \context { \NoteNames \alignToZero }
2209 \context { \ChordNames \alignToZero \lowerCaseChords }
2210 \context { \FretBoards \alignToZero }
2213 \override DynamicText.self-alignment-X = #-1
2214 \override FretBoard.X-offset = #1.75
2215 \override InstrumentName.minimum-Y-extent = #'(-1 . 2)
2221 %% These contexts have reference points at the baseline:
2222 %% ChordNames, NoteNames, and Lyrics
2224 \new ChordNames { \chords { \labelContext "ChordNames" g1:m } }
2225 \new NoteNames { s1 |\labelContext "NoteNames" g1 | }
2226 \new Lyrics { \lyrics { \skip 1*2 | \labelContext "Lyrics" ghijk1 | } }
2227 \new RhythmicStaff \with { instrumentName = #"baseline " } s1*3
2230 %% The reference point for Dynamics is the midline of 'm' in the font
2232 \new Dynamics { \labelContext "Dynamics" s1\mp s\fp }
2233 \new RhythmicStaff \with { instrumentName = #"mid-height " } s1*3
2236 %% The reference point for FiguredBass is its highest point
2238 \new FiguredBass { \labelContext "FiguredBass" \figuremode { <6 5>1 } }
2239 \new RhythmicStaff \with { instrumentName = #"highest point " } s1
2242 %% The reference point for FretBoards is the top line
2243 \include "predefined-guitar-fretboards.ly"
2245 \new FretBoards { \labelContext "FretBoards" \chordmode { e1 } }
2246 \new RhythmicStaff \with { instrumentName = #"top line " } s1
2250 Cada una de las propiedades de grob del espaciado vertical
2251 (excepto @code{staff-affinity}) usa la misma estructura de lista-A
2252 que las variables de espaciado del bloque @code{\paper} que se han
2254 @ref{Variables de espaciado de paper verticales flexibles,,Variables de espaciado de @code{@bs{}paper} verticales flexibles}.
2255 En @ref{Modificación de las listas-A} se estudian métodos
2256 específicos para la modificación de las listas-A. Las propiedades
2257 de los grobs deben ajustarse con un @code{\override} dentro de un
2258 bloque @code{\score} o @code{\layout}, y no dentro de un bloque
2261 El ejemplo que sigue muestra las dos maneras en que pueden
2262 modificarse estas listas-A. La primera declaración actualiza un
2263 par clave-valor de forma individual, y la segunda redefine la
2264 propiedad completamente:
2268 \override VerticalAxisGroup.default-staff-staff-spacing.basic-distance = #10
2272 \override VerticalAxisGroup.default-staff-staff-spacing =
2273 #'((basic-distance . 10)
2274 (minimum-distance . 9)
2276 (stretchability . 10))
2280 Para modificar globalmente cualquiera de los ajustes de espaciado,
2281 póngalos dentro del bloque @code{\layout}:
2287 \override VerticalAxisGroup.default-staff-staff-spacing.basic-distance = #10
2292 Los ajustes estándar para las propiedades de grob del espaciado
2293 vertical están relacionadas en @rinternals{VerticalAxisGroup} y en
2294 @rinternals{StaffGrouper}. Las sobreescrituras predeterminadas
2295 para los tipos específicos de líneas que no son pautas están
2296 relacionadas en las descripciones de contexto correspondientes en
2297 @rinternals{Contexts}.
2299 @subsubheading Propiedades del grob @code{VerticalAxisGroup}
2301 Las propiedades de @code{VerticalAxisGroup} se suelen ajustar con
2302 una instrucción @code{\override} en el nivel de @code{Staff} (o
2306 @item staff-staff-spacing
2307 Se utiliza para determinar la distancia entre la pauta actual y la
2308 pauta que está justo por debajo de ella dentro del mismo sistema,
2309 incluso si hay más líneas que no son pautas (tales como
2310 @code{Lyrics}) entre las dos pautas. No se aplica a la pauta
2311 inferior de un sistema.
2313 Inicialmente, el valor de espaciado @code{staff-staff-spacing} de
2314 un grupo @code{VerticalAxisGroup} es una función de Scheme que
2315 aplica las propiedades del @code{StaffGrouper} si la pauta forma
2316 parte de un grupo, o el @code{default-staff-staff-spacing} de la
2317 pauta en caso contrario. Esto hace posible que las pautas estén
2318 espaciadas de forma diferente cuando están agrupadas. Para
2319 conseguir un espaciado regular sin importar el agrupamiento, esta
2320 función se puede sustituir por una lista-A de espaciado flexible,
2321 utilizando la forma de sobreescritura de redefinición completa que
2322 se ha mostrado más arriba.
2324 @item default-staff-staff-spacing
2325 Una lista-A de espaciado flexible que define el espacio
2326 @code{staff-staff-spacing} que se usará para las pautas sin
2327 agrupar, a no ser que se haya sobreescrito explícitamente
2328 @code{staff-staff-spacing} con una instrucción @code{\override}.
2330 @item staff-affinity
2331 Dirección de la pauta que utilizar para el espaciado de la línea
2332 actual que no es pauta. Se puede elegir entre @code{UP} (arriba),
2333 @code{DOWN} (abajo) y @code{CENTER} (centro). Si es
2334 @code{CENTER}, la línea del tipo no-pauta se coloca equidistante
2335 entre las dos pautas contiguas a ambos lados, a no ser que lo
2336 impidan colisiones u otras restricciones de espaciado. Las líneas
2337 del tipo no-pauta adyacentes han de llevar valores de
2338 @code{staff-affinity} no crecientes desde la parte superior hasta
2339 la inferior, p.ej. una línea del tipo no-pauta establecida a
2340 @code{UP} no debería seguir inmediatamente a otra que esté
2341 establecida a @code{DOWN}. Las líneas del tipo no-pauta en la
2342 parte superior de un sistema deben usar @code{DOWN}; las de la
2343 parte inferior deben usar @code{UP}. El ajuste de
2344 @code{staff-affinity} para una pauta hace que se le trate como una
2345 línea que no es una pauta. El establecimiento de
2346 @code{staff-affinity} a @code{#f} para una línea que no es una
2347 pauta hace que se trate como una pauta. Establecer
2348 @code{staff-affinity} a @code{UP}, @code{CENTER}, o @code{DOWN}
2349 hace que el pentagrama resulte espaciado como si fuera una línea
2350 que no es una pauta.
2352 @item nonstaff-relatedstaff-spacing
2353 Distancia entre la línea del tipo no-pauta actual y la pauta más
2354 próxima en la dirección de @code{staff-affinity}, si no hay
2355 ninguna línea que no sea una pauta entre las dos, y
2356 @code{staff-affinity} es @code{UP} o @code{DOWN}. Si
2357 @code{staff-affinity} es @code{CENTER}, entonces se usa
2358 @code{nonstaff-relatedstaff-spacing} para las pautas más próximas
2359 @emph{a los dos lados}, incluso aunque aparezcan otras líneas del
2360 tipo no-pauta entre la pauta actual y una de las otras. Esto
2361 significa que la colocación de una línea que no es una pauta
2362 depende tanto de las pautas que la rodean como de las líneas que
2363 no son pautas y que la rodean. Establecer la ampliabilidad
2364 @code{stretchability} de uno de estos tipos de espaciado a un
2365 valor más pequeño provoca que este espaciado domine. El
2366 establecimiento de @code{stretchability} a un valor mayor hace que
2367 dicho espaciado tenga un menor efecto.
2369 @item nonstaff-nonstaff-spacing
2370 Distancia entre la línea actual del tipo no-pauta y la siguiente
2371 línea del tipo no-pauta en la dirección de @code{staff-affinity},
2372 si las dos están al mismo lado de la pauta relacionada, y
2373 @code{staff-affinity} es @code{UP} o @code{DOWN}.
2375 @item nonstaff-unrelatedstaff-spacing
2376 Distancia entre la línea actual del tipo no-pauta y la pauta en la
2377 dirección opuesta de @code{staff-affinity}, si no hay ninguna otra
2378 línea del tipo no-pauta entre las dos, y @code{staff-affinity} es
2379 @code{UP} o @code{DOWN}. Se puede usar, por ejemplo, para
2380 requerir una cantidad de relleno mínima entre una línea de
2381 @code{Lyrics} y la pauta a la que no pertenece.
2384 @subsubheading Propiedades del grob @code{StaffGrouper}
2386 Las propiedades de @code{StaffGrouper} se suelen ajustar con una
2387 instrucción @code{\override} en el nivel de @code{StaffGroup} (o
2391 @item staff-staff-spacing
2392 Distancia entre pautas consecutivas dentro del grupo de pautas
2393 actual. La propiedad @code{staff-staff-spacing} del grob
2394 @code{VerticalAxisGroup} de una pauta individual se puede
2395 sobreescribir con distintos ajustes de espaciado para dicha pauta.
2397 @item staffgroup-staff-spacing
2398 Distancia entre la última pauta del grupo en curso y la pauta que
2399 está justo por debajo de ella dentro del mismo sistema, incluso si
2400 existen una o más líneas que no son pautas (tales como
2401 @code{Lyrics}) entre las dos pautas. No se aplica al pentagrama o
2402 pauta inferior de un sistema. La propiedad
2403 @code{staff-staff-spacing} del grob @code{VerticalAxisGroup} de
2404 una pauta individual se puede sobreescribir con distintos ajustes
2405 de espaciado para dicha pauta.
2409 Referencia de la notación:
2410 @ref{Variables de espaciado de paper verticales flexibles,,Variables de espaciado de @code{@bs{}paper} verticales flexibles},
2411 @ref{Modificación de las listas-A}.
2414 @file{ly/engraver-init.ly},
2415 @file{scm/define-grobs.scm}.
2417 Referencia de funcionamiento interno:
2418 @rinternals{Contexts},
2419 @rinternals{VerticalAxisGroup},
2420 @rinternals{StaffGrouper}.
2424 @node Espaciado de pautas no agrupadas
2425 @unnumberedsubsubsec Espaciado de pautas no agrupadas
2426 @translationof Spacing of ungrouped staves
2428 Las @emph{pautas}, tales como los pentagramas (@code{Staff}),
2429 pautas de percusión (@code{DrumStaff}) o de tablatura
2430 (@code{TabStaff}), etc. son contextos que pueden contener uno o
2431 más contextos de voz, pero no pueden contener otras pautas.
2433 Las siguientes propiedades afectan al espaciado de las pautas
2434 @emph{no agrupadas}:
2437 @item Propiedades de @code{VerticalAxisGroup}:
2439 @item @code{default-staff-staff-spacing}
2440 @item @code{staff-staff-spacing}
2444 Estas propiedades de grob se describen individualmente más arriba;
2445 véase @ref{Propiedades de espaciado dentro de los sistemas}.
2447 Están implicadas ciertas propiedades adicionales para las pautas
2448 que son parte de un grupo; véase
2449 @ref{Espaciado de pautas agrupadas}.
2451 El ejemplo siguiente muestra cómo la propiedad
2452 @code{default-staff-staff-spacing} puede afectar al espaciado de
2453 pautas no agrupadas. Las mismas sobreescrituras aplicadas a
2454 @code{staff-staff-spacing} tendrían el mismo efecto, pero también
2455 se aplicaría en caso de que las pautas estuvieran combinadas en un
2458 @lilypond[verbatim,quote,staffsize=16]
2462 \override VerticalAxisGroup.default-staff-staff-spacing =
2463 #'((basic-distance . 8)
2464 (minimum-distance . 7)
2470 % The very low note here needs more room than 'basic-distance
2471 % can provide, so the distance between this staff and the next
2472 % is determined by 'padding.
2473 \new Staff { b,2 r | }
2475 % Here, 'basic-distance provides enough room, and there is no
2476 % need to compress the space (towards 'minimum-distance) to make
2477 % room for anything else on the page, so the distance between
2478 % this staff and the next is determined by 'basic-distance.
2479 \new Staff { \clef bass g2 r | }
2481 % By setting 'padding to a negative value, staves can be made to
2482 % collide. The lowest acceptable value for 'basic-distance is 0.
2484 \override VerticalAxisGroup.default-staff-staff-spacing =
2485 #'((basic-distance . 3.5)
2487 } { \clef bass g2 r | }
2488 \new Staff { \clef bass g2 r | }
2494 @file{scm/define-grobs.scm}.
2496 Fragmentos de código:
2499 Referencia de funcionamiento interno:
2500 @rinternals{VerticalAxisGroup}.
2503 @node Espaciado de pautas agrupadas
2504 @unnumberedsubsubsec Espaciado de pautas agrupadas
2505 @translationof Spacing of grouped staves
2507 En partituras grandes como las orquestales, es común colocar los
2508 pentagramas en grupos. El espacio entre los grupos suele ser
2509 mayor que el espacio que hay entre los pentagramas dentro del
2512 Los grupos de pautas, @emph{Staff-groups} (tales como
2513 @code{StaffGroup}, @code{ChoirStaff}, etc.) son contextos que
2514 pueden contener al mismo tiempo uno o más pentagramas o pautas.
2516 Las siguientes propiedades afectan al espaciado de las pautas
2517 dentro de los grupos:
2520 @item Propiedades de @code{VerticalAxisGroup}:
2522 @item @code{staff-staff-spacing}
2524 @item Propiedades de @code{StaffGrouper}:
2526 @item @code{staff-staff-spacing}
2527 @item @code{staffgroup-staff-spacing}
2531 Estas propiedades de grob se describen individualmente más arriba;
2532 véase @ref{Propiedades de espaciado dentro de los sistemas}.
2534 El ejemplo siguiente muestra cómo pueden afectar las propiedades
2535 del grob @code{StaffGrouper} al espaciado de las pautas agrupadas:
2537 @lilypond[verbatim,quote,staffsize=16]
2541 \override StaffGrouper.staff-staff-spacing.padding = #0
2542 \override StaffGrouper.staff-staff-spacing.basic-distance = #1
2547 \new PianoStaff \with {
2548 \override StaffGrouper.staffgroup-staff-spacing.basic-distance = #20
2563 @file{scm/define-grobs.scm}.
2565 Fragmentos de código:
2568 Referencia de funcionamiento interno:
2569 @rinternals{VerticalAxisGroup},
2570 @rinternals{StaffGrouper}.
2573 @node Espaciado de las líneas que no son pautas
2574 @unnumberedsubsubsec Espaciado de las líneas que no son pautas
2575 @translationof Spacing of non-staff lines
2577 Las @emph{Líneas que no son pautas} (tales como @code{Lyrics},
2578 @code{ChordNames}, etc.) son contextos cuyos objetos de
2579 presentación se imprimen como pentagramas (es decir, en líneas
2580 horizontales dentro de los sistemas). Específicamente, las líneas
2581 que no son pautas son contextos del tipo no-pauta que contienen el
2582 grabador @rinternals{Axis_group_engraver}.
2584 Las siguientes propiedades afectan al espaciado de las líneas que
2588 @item Propiedades de @code{VerticalAxisGroup}:
2590 @item @code{staff-affinity}
2591 @item @code{nonstaff-relatedstaff-spacing}
2592 @item @code{nonstaff-nonstaff-spacing}
2593 @item @code{nonstaff-unrelatedstaff-spacing}
2597 Estas propiedades de grob se describen individualmente más arriba;
2598 véase @ref{Propiedades de espaciado dentro de los sistemas}.
2600 El ejemplo siguiente muestra cómo la propiedad
2601 @code{nonstaff-nonstaff-spacing} puede afectar el espaciado de
2602 líneas consecutivas que no son pautas. Aquí, mediante el
2603 establecimiento de la clave de ampliabilidad @code{stretchability}
2604 a un valor muy grande, la línea de letra es capaz de ampliarse
2605 mucho más de lo que es usual:
2607 @lilypond[verbatim,quote,staffsize=16]
2611 \override VerticalAxisGroup.nonstaff-nonstaff-spacing.stretchability = #1000
2618 \override VerticalAxisGroup.staff-staff-spacing = #'((basic-distance . 30))
2621 \override VerticalAxisGroup.staff-affinity = #UP
2624 \override VerticalAxisGroup.staff-affinity = #CENTER
2625 } \lyricmode { center }
2627 \override VerticalAxisGroup.staff-affinity = #DOWN
2628 } \lyricmode { down }
2635 @file{ly/engraver-init.ly},
2636 @file{scm/define-grobs.scm}.
2638 Fragmentos de código:
2641 @c @lsr{spacing,page-spacing.ly},
2642 @c @lsr{spacing,alignment-vertical-spacing.ly}.
2644 Referencia de funcionamiento interno:
2645 @rinternals{Contexts},
2646 @rinternals{VerticalAxisGroup}.
2649 @node Posicionamiento explícito de los pentagramas y los sistemas
2650 @subsection Posicionamiento explícito de los pentagramas y los sistemas
2651 @translationof Explicit staff and system positioning
2653 Una forma de entender los mecanismos del espaciado vertical
2654 flexible que se han explicado más arriba es como una colección de
2655 ajustes que controlan la cantidad de relleno vertical entre los
2656 pentagramas y los sistemas.
2658 Es posible enfrentarse al espaciado vertical de una forma distinta
2659 utilizando @code{NonMusicalPaperColumn.line-break-system-details}.
2660 Mientras que los mecanismos del espaciado vertical flexible
2661 especifican relleno vertical,
2662 @code{NonMusicalPaperColumn.line-break-system-details} puede
2663 especificar posiciones verticales exactas sobre la página.
2665 @code{NonMusicalPaperColumn.line-break-system-details} acepta una
2666 lista asociativa de cuatro ajustes diferentes:
2669 @item @code{X-offset} (desplazamiento en X)
2670 @item @code{Y-offset} (desplazamiento en Y)
2671 @item @code{extra-offset} (desplazamiento adicional)
2672 @item @code{alignment-distances} (distancias de alineación)
2675 Las sobreescrituras de los objetos gráficos, entre ellas las de
2676 @code{NonMusicalPaperColumn} que aparecen más abajo, pueden
2677 ocurrir en tres lugares distintos dentro de un archivo de entrada:
2680 @item directamente en medio de las notas
2681 @item en un bloque @code{\context}
2682 @item en el bloque @code{\with}
2685 Cuando sobreescribimos @code{NonMusicalPaperColumn}, usamos la
2686 instrucción @code{\override} usual en los bloques @code{\context}
2687 y en el bloque @code{\with}. Por otra parte, cuando
2688 sobreescribimos @code{NonMusicalPaperColumn} en medio de las
2689 notas, debemos usar la instrucción especial
2690 @code{\overrideProperty}. He aquí algunas sobreescrituras de
2691 @code{NonMusicalPaperColumn} de ejemplo con la instrucción
2692 especial @code{\overrideProperty}:
2695 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2698 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2701 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2705 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2706 #'((alignment-distances . (15)))
2708 \overrideProperty NonMusicalPaperColumn.line-break-system-details
2711 (alignment-distances . (15)))
2714 Para entender cómo funciona cada uno de los distintos ajustes,
2715 empezamos observando un ejemplo que no incluye absolutamente
2716 ninguna sobreescritura.
2718 @c \book { } is required in these examples to ensure the spacing
2719 @c overrides can be seen between systems. -np
2721 @lilypond[verbatim,quote,staffsize=16]
2722 \header { tagline = ##f }
2723 \paper { left-margin = 0\mm }
2733 \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2736 \repeat unfold 15 { d'4 d' d' d' }
2743 Esta partitura mantiene aislada tanto la información de los saltos
2744 de línea como los de página en una voz dedicada a ello. Esta
2745 técnica de crear una voz de saltos ayuda a mantener separada de la
2746 escritura de notas conforme el ejemplo se vuelve más complicado.
2747 Consulte @ref{Saltos}.
2749 Utilizando instrucciones @code{\break} explícitas, la música se
2750 divide líneas de cinco compases cada una. El espaciado vertical
2751 proviene de los ajustes predeterminados de LilyPond pero el punto
2752 de origen vertical de cada sistema se fija explícitamente usando
2753 el par @code{Y-offset} en el atributo
2754 @code{line-break-system-details} del grob (objeto gráfico)
2755 @code{NonMusicalPaperColumn}:
2757 @lilypond[verbatim,quote,staffsize=16]
2758 \header { tagline = ##f }
2759 \paper { left-margin = 0\mm }
2765 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2768 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2771 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2775 \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2778 \repeat unfold 15 { d'4 d' d' d' }
2785 Observe que @code{line-break-system-details} toma una lista
2786 asociativa de una cantidad de valores potencialmente elevada, pero
2787 aquí sólo fijamos un valor. Observe también que aquí la propiedad
2788 @code{Y-offset} determina la posición vertical exacta sobre la
2789 página en la que se trazará cada uno de los nuevos sistemas.
2791 En contraste con el posicionado absoluto que está disponible a
2792 través de @code{Y-offset} y de @code{X-offset}, es posible un
2793 posicionamiento relativo con la propiedad @code{extra-offset} de
2794 @code{line-break-system-details}. La colocación es relativa a la
2795 disposición predeterminada o al posicionamiento absoluto creado
2796 mediante el establecimiento de los valores de @code{X-offset} y de
2797 @code{Y-offset}. La propiedad @code{extra-offset} acepta una
2798 pareja de números (un @code{pair}) que consiste en desplazamientos
2799 a lo largo de los ejes X e Y.
2801 @lilypond[verbatim,quote,staffsize=16]
2802 \header { tagline = ##f }
2803 \paper { left-margin = 0\mm }
2810 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2811 #'((extra-offset . (0 . 10)))
2813 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2814 #'((extra-offset . (0 . 10)))
2817 \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2820 \repeat unfold 15 { d'4 d' d' d' }
2827 Ahora que hemos establecido explícitamente el punto de origen
2828 vertical de cada sistema, podemos también establecer manualmente
2829 las distancias verticales entre los pentagramas dentro de cada
2830 sistema. Lo hacemos usando la subpropiedad
2831 @code{alignment-distances} de @code{line-break-system-details}.
2833 @lilypond[verbatim,quote,staffsize=16]
2834 \header { tagline = ##f }
2835 \paper { left-margin = 0\mm }
2841 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2843 (alignment-distances . (10)))
2845 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2847 (alignment-distances . (15)))
2849 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2851 (alignment-distances . (20)))
2854 \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2857 \repeat unfold 15 { d'4 d' d' d' }
2864 Observe que aquí asignamos dos valores distintos al atributo
2865 @code{line-break-system-details} del grob
2866 @code{NonMusicalPaperColumn}. Aunque el atributo alist de
2867 @code{line-break-system-details} acepta muchos parámetros de
2868 espaciado adicionales (entre ellos, por ejemplo, un par
2869 @code{X-offset} correspondiente), sólo tenemos que establecer el
2870 desplazamiento @code{Y-offset} y los pares
2871 @code{alignment-distances} para controlar el punto de origen
2872 vertical de cada sistema y pentagrama. Finalmente, observe que
2873 @code{alignment-distances} especifica el posicionamiento vertical
2874 de los pentagramas pero no de los grupos de pentagramas.
2876 @lilypond[verbatim,quote,staffsize=16]
2877 \header { tagline = ##f }
2878 \paper { left-margin = 0\mm }
2884 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2886 (alignment-distances . (30 10)))
2888 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2890 (alignment-distances . (10 10)))
2892 \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details
2894 (alignment-distances . (10 30)))
2897 \new Voice { \repeat unfold 15 { c'4 c' c' c' } }
2900 \new Staff { \repeat unfold 15 { d'4 d' d' d' } }
2901 \new Staff { \repeat unfold 15 { e'4 e' e' e' } }
2908 Algunos puntos que tener en cuenta:
2911 @item Al usar @code{alignment-distances}, la letra y otras líneas que no
2912 son pautas, no cuentan como un pentagrama.
2914 @item Las unidades de los números que se pasan a @code{X-offset},
2915 @code{Y-offset}, @code{extra-offset} y @code{alignment-distances}
2916 se interpretan como múltiplos de la distancia entre líneas de
2917 pentagrama adyacentes. Los valores positivos mueven a los
2918 pentagramas y a la letra hacia arriba, los valores negativos
2919 mueven los pentagramas y la letra hacia abajo.
2921 @item A causa de que los ajustes a
2922 @code{NonMusicalPaperColumn.line-break-system-details} dados aquí
2923 permiten el posicionamiento de pentagramas y sistemas en cualquier
2924 lugar de la página, es posible violar los márgenes o los límites
2925 del papel, o incluso imprimir pentagramas o sistemas unos encima
2926 de otros. Esto se evitaría pasando a los diferentes ajustes unos
2931 Fragmentos de código:
2935 @node Evitar las colisiones verticales
2936 @subsection Evitar las colisiones verticales
2937 @translationof Vertical collision avoidance
2939 @funindex outside-staff-priority
2940 @funindex outside-staff-padding
2941 @funindex outside-staff-horizontal-padding
2943 Podemos decir intuitivamente que algunos objetos de la notación
2944 musical pertenecen al pentagrama y otros se sitúan fuera del
2945 pentagrama. Entre los objetos que pertenecen al exterior del
2946 pentagrama están las marcas de ensayo, las marcas textuales y las
2947 indicaciones de dinámica (en lo sucesivo, les llamaremos objetos
2948 fuera del pentagrama). La regla de LilyPond para la colocación
2949 vertical de los objetos fuera del pentagrama es ponerlos tan cerca
2950 del pentagrama como sea posible pero no tan próximos como para que
2951 choquen con otro objeto.
2953 LilyPond utiliza la propiedad @code{outside-staff-priority} para
2954 determinar si un grob es un objeto fuera del pentagrama: si
2955 @code{outside-staff-priority} es un número, el grob es un objeto
2956 fuera del pentagrama. Además, @code{outside-staff-priority}
2957 informa a LilyPond en qué orden se debe situar los objetos.
2959 En primer lugar, LilyPond sitúa todos los objetos que no
2960 pertenecen al exterior del pentagrama. Después ordena los objetos
2961 fuera del pentagrama de acuerdo a su prioridad
2962 @code{outside-staff-priority} (en orden creciente). LilyPond toma
2963 los objetos fuera del pentagrama uno a uno y los coloca de forma
2964 que no choquen con ningún objeto que ya haya sido colocado. Esto
2965 es, si dos grobs fuera del pentagrama compiten por el mismo
2966 espacio, el que tiene la prioridad @code{outside-staff-priority}
2967 más baja se colocará más próximo al pentagrama.
2969 Hay un listado completo de las prioridades
2970 outside-staff-priorities en
2971 @rlearning{La propiedad outside-staff-priority (prioridad fuera del pentagrama)}.
2973 @lilypond[quote,ragged-right,verbatim]
2977 \once \override TextScript.outside-staff-priority = #1
2978 c4_"Text"\pp % this time the text will be closer to the staff
2980 % by setting outside-staff-priority to a non-number,
2981 % we disable the automatic collision avoidance
2982 \once \override TextScript.outside-staff-priority = ##f
2983 \once \override DynamicLineSpanner.outside-staff-priority = ##f
2984 c4_"Text"\pp % now they will collide
2988 El relleno vertical que rodea a los objetos fuera del pentagrama
2989 se puede controlar con @code{outside-staff-padding}.
2991 @lilypond[quote,ragged-right,verbatim,staffsize=18]
2993 \once \override TextScript.outside-staff-padding = #0
2994 a'4-"outside-staff-padding = #0"
2995 \once \override TextScript.outside-staff-padding = #3
2996 d-"outside-staff-padding = #3"
2997 c-"default outside-staff-padding"
2998 b-"default outside-staff-padding"
3003 De forma predeterminada, los objetos fuera del pentagrama se
3004 colocan de forma que eviten una colisión horizontal con los grobs
3005 posicionados previamente. Esto puede llevar a situaciones en las
3006 que los objetos se colocan muy próximos entre sí en el sentido
3007 horizontal. Como se muestra en el ejemplo que aparece más abajo,
3008 al establecer @code{outside-staff-horizontal-padding} se
3009 incrementa el espacio horicontal necesario, y en este caso mueve
3010 el texto hacia arriba para evitar que quede demasiado cerca de las
3013 @lilypond[quote,ragged-right,verbatim]
3017 \once \override TextScript.outside-staff-horizontal-padding = #1
3023 Fragmentos de código:
3027 @node Espaciado horizontal
3028 @section Espaciado horizontal
3029 @translationof Horizontal spacing
3031 @cindex horizontal, espaciado
3032 @cindex espaciado horizontal
3035 * Panorámica del espaciado horizontal::
3036 * Sección de espaciado nueva::
3037 * Cambiar el espaciado horizontal::
3038 * Longitud de la línea::
3039 * Notación proporcional::
3043 @node Panorámica del espaciado horizontal
3044 @subsection Panorámica del espaciado horizontal
3045 @translationof Horizontal spacing overview
3047 El motor de espaciado traduce las diferencias en las duraciones a
3048 distancias ampliables (@q{muelles}) de distintas longitudes. Las
3049 duraciones más largas reciben un espacio mayor y las duraciones
3050 más cortas reciben menos. Las duraciones más breves reciben un
3051 espacio de tamaño fijo (que se controla mediante
3052 @code{shortest-duration-space} en el objeto
3053 @rinternals{SpacingSpanner}). Cuanto más larga es la duración,
3054 más espacio recibe: al doblar una duración se suma
3055 @code{spacing-increment} al espacio que ocupa la nota.
3057 Por ejemplo, la pieza siguiente contiene numerosas blancas, negras
3058 y corcheas; la corchea va seguida de un ancho de cabeza de blanca
3059 (ACB). La negra va seguida de 2 ACB, la blanca por 3 ACB, etc.
3061 @lilypond[quote,verbatim]
3069 Normalmente, el valor de @code{spacing-increment} está establecido
3070 en 1.2 espacios de pentagrama, lo que es aproximadamente el ancho
3071 de una cabeza, y @code{shortest-duration-space} está establecido
3072 en 2.0, lo que significa que la nota más breve recibe 2.4 espacios
3073 de pentagrama (2.0 multiplicado por el @code{spacing-increment})
3074 de espacio horizontal. Este espacio se cuenta a partir del borde
3075 izquierdo del símbolo, de manera que las notas más breves van
3076 seguidas generalmente por un espacio de 1 ACB.
3078 Si siguiésemos el procedimiento anterior exactamente, entonces la
3079 adición de una sola fusa a una partitura que usa corcheas y
3080 semicorcheas, aumentaría enormemente la anchura de la partitura
3081 completa. La nota más breve ya no es la semicorchea, sino la
3082 fusa, añadiendo así 1 ACB a cada una de las notas. Para evitarlo,
3083 la duración más breve a efectos de espaciado no es la nota más
3084 breve de la partitura, sino la que ocurre con más frecuencia.
3086 La duración más breve que es más común se determina de la
3087 siguiente manera: en cada compás se determina la duración más
3088 breve. La menor duración más común se toma como base para el
3089 espaciado, habiendo estipulado que esta duración menor siempre
3090 debe ser igual o menor que una corchea. La duración más breve se
3091 imprime cuando se ejecuta @code{lilypond} con la opción
3094 Estas duraciones también se pueden personalizar. Si establecemos
3095 la @code{common-shortest-duration} en @rinternals{SpacingSpanner},
3096 entonces éste establece la duración base para el espaciado. La
3097 duración máxima para esta base (normalmente una corchea), se fija
3098 a través de @code{base-shortest-duration}.
3100 @funindex common-shortest-duration
3101 @funindex base-shortest-duration
3102 @funindex stem-spacing-correction
3105 Las notas que son aún más breves que la nota común más breve van
3106 seguidas por un espacio proporcional a su duración en relación con
3107 la nota común más breve. Así pues, si fuésemos a añadir tan sólo
3108 algunas semicorcheas al ejemplo anterior, irían seguidas por medio
3111 @lilypond[quote,verbatim]
3112 \relative { c''2 c4. c8 | c4. c16[ c] c4. c8 | c8 c c4 c c }
3115 Como se explicó en el @emph{Ensayo sobre grabado musical
3116 automatizado}, las direcciones de las plicas influyen en el
3117 espaciado (véase @ressay{Espaciado óptico}) y se puede ajustar con
3118 la propiedad @code{stem-spacing-correction} del objeto
3119 @rinternals{NoteSpacing}. Estos se generan para cada uno de los
3120 contextos de @rinternals{Voice}.
3122 El objeto @code{StaffSpacing} (generado en el contexto de
3123 @rinternals{Staff}) contiene la misma propiedad para controlar el
3124 espaciado de las líneas de plica o divisorias.
3126 El ejemplo siguiente muestra estas correcciones, una vez con los
3127 valores predeterminados y otra con un ajuste exagerado:
3129 @lilypond[quote,ragged-right]
3133 \override Staff.NoteSpacing.stem-spacing-correction = #1.5
3134 \override Staff.StaffSpacing.stem-spacing-correction = #1.5
3140 Está contemplada la notación proporcional; consulte
3141 @ref{Notación proporcional}.
3144 Ensayo sobre grabado musical automatizado:
3145 @ressay{Espaciado óptico}.
3147 Fragmentos de código:
3150 Referencia de funcionamiento interno:
3151 @rinternals{SpacingSpanner},
3152 @rinternals{NoteSpacing},
3153 @rinternals{StaffSpacing},
3154 @rinternals{NonMusicalPaperColumn}.
3157 No existe ningún mecanismo conveniente para sobreescribir el
3158 espaciado manualmente. Se puede usar el siguiente rodeo para
3159 insertar espacio adicional en una partitura, ajustando el valor
3160 del relleno en la medida necesaria.
3163 \override Score.NonMusicalPaperColumn.padding = #10
3166 No existe ningún rodeo para disminuir la magnitud de la
3170 @node Sección de espaciado nueva
3171 @subsection Sección de espaciado nueva
3172 @translationof New spacing section
3174 @funindex \newSpacingSection
3175 @cindex sección de espaciado nueva
3176 @cindex espaciado, nueva seccción de
3177 @cindex notas, espaciar horizontalmente
3179 Se pueden iniciar secciones nuevas con diferentes parámetros de
3180 espaciado, con la instrucción @code{newSpacingSection}. Esto es
3181 útil para las secciones que tienen distinta noción de las notas
3182 @q{largas} y @q{cortas}. La instrucción @code{\newSpacingSection}
3183 crea un nuevo objeto @code{SpacingSpanner} en ese momento musical.
3185 En el ejemplo siguiente, el cambio de compás introduce una sección
3186 nueva, y por ello las semicorcheas se separan automáticamente de
3187 manera ligeramente más amplia.
3189 @lilypond[verbatim,quote]
3193 c8 c c4 c16[ c c8] c4
3200 Si los ajustes de espaciado automáticos no dan el espaciado
3201 deseado, pueden aplicarse sobreescrituras manuales a sus
3202 propiedades con @code{\override}. Las sobreescrituras se deben
3203 aplicar en el mismo momento musical que la propia instrucción
3204 @code{\newSpacingSection} y afectarán entonces al espaciado de
3205 toda la música que venga a continuación hasta que las propiedades
3206 se cambien en una nueva sección de espaciado, por ejemplo:
3208 @lilypond[verbatim,quote]
3213 \override Score.SpacingSpanner.spacing-increment = #2
3216 \revert Score.SpacingSpanner.spacing-increment
3223 Fragmentos de código:
3226 Referencia de funcionamiento interno:
3227 @rinternals{SpacingSpanner}.
3230 @node Cambiar el espaciado horizontal
3231 @subsection Cambiar el espaciado horizontal
3232 @translationof Changing horizontal spacing
3234 Se puede alterar el espaciado horizontal con la propiedad
3235 @code{base-shortest-duration}. Aquí compararemos la misma música,
3236 una vez sin alterar la propiedad, y luego alterándola. Los
3237 valores mayores de @code{ly:make-moment} producen música más
3238 pequeña. Observe que @code{ly:make-moment} construye una
3239 duración, por lo que @code{1 4} es una duración mayor que @code{1
3242 @lilypond[verbatim,line-width=12\cm]
3245 g'4 e e2 | f4 d d2 | c4 d e f | g4 g g2 |
3246 g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3247 d4 d d d | d4 e f2 | e4 e e e | e4 f g2 |
3248 g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3253 @lilypond[verbatim,line-width=12\cm]
3256 g'4 e e2 | f4 d d2 | c4 d e f | g4 g g2 |
3257 g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3258 d4 d d d | d4 e f2 | e4 e e e | e4 f g2 |
3259 g4 e e2 | f4 d d2 | c4 e g g | c,1 |
3264 \override SpacingSpanner.base-shortest-duration = #(ly:make-moment 1/16)
3272 De forma predeterminada, el espaciado en los grupos de valoración
3273 especial depende de varios factores ajenos a la duración (como
3274 alteraciones, cambios de clave, etc.). Para pasar por alto estos
3275 símbolos y forzar un espaciado de duraciones iguales uniforme, use
3276 @code{Score.SpacingSpanner.uniform-stretching}. Esta propiedad
3277 sólo puede cambiarse al principio de la partitura:
3279 @lilypond[quote,ragged-right,verbatim]
3283 \tuplet 5/4 { c8 c c c c } c8 c c c
3286 c8 c c c \tuplet 5/4 { c8 c c c c }
3292 \override SpacingSpanner.uniform-stretching = ##t
3298 Cuando se establece @code{strict-note-spacing}, las notas se
3299 separan sin tener en cuenta las claves, líneas divisorias ni notas
3302 @lilypond[quote,ragged-right,fragment,verbatim]
3303 \override Score.SpacingSpanner.strict-note-spacing = ##t
3304 \new Staff \relative {
3305 c''8[ c \clef alto c \grace { c16 c } c8 c c] c32[ c] }
3309 Fragmentos de código:
3313 @node Longitud de la línea
3314 @subsection Longitud de la línea
3315 @translationof Line width
3317 @cindex saltos de página
3318 @cindex página, saltos de
3321 @funindex line-width
3322 @funindex ragged-right
3323 @funindex ragged-last
3325 @c Although line-width can be set in \layout, it should be set in paper
3326 @c block, to get page layout right.
3327 @c Setting indent in \paper block makes not much sense, but it works.
3329 @c Bit verbose and vague, use examples?
3330 Los ajustes más básicos que influyen en el espaciado son
3331 @code{indent} y @code{line-width}. Se definen en el bloque
3332 @code{\layout}. Controlan el sangrado de la primera línea de
3333 música y la longitud de las líneas.
3335 Si se fija un valor verdadero para @code{ragged-right} en el
3336 bloque @code{\layout}, entonces los sistemas terminan en su
3337 longitud horizontal natural, en lugar de repartirse
3338 horizontalmente hasta llenar toda la línea. Esto es útil para
3339 fragmentos cortos, y para comprobar qué tan apretado es el
3340 espaciado natural. El valor normal predeterminado es falso, pero
3341 si la partitura tiene un solo sistema, el valor predeterminado es
3344 @cindex diseño de página
3345 @cindex página, disposición de la
3346 @cindex vertical, espaciado
3348 La opción @code{ragged-last} es similar a @code{ragged-right},
3349 pero afecta sólo a la última línea de la pieza. No se efectúa
3350 ninguna restricción sobre dicha línea. El resultado es similar al
3351 formateo de los párrafos de texto. En un párrafo, la última línea
3352 sencillamente ocupa su longitud horizontal natural.
3353 @c Note that for text there are several options for the last line.
3354 @c While Knuth TeX uses natural length, lead typesetters use the same
3355 @c stretch as the previous line. eTeX uses \lastlinefit to
3356 @c interpolate between both these solutions.
3367 Fragmentos de código:
3371 @node Notación proporcional
3372 @subsection Notación proporcional
3373 @translationof Proportional notation
3375 LilyPond contempla la notación proporcional, un tipo de espaciado
3376 horizontal en el que cada nota consume una medida horizontal que
3377 equivale exactamente a su duración rítmica. Este tipo de
3378 espaciado proporcional es comparable al espaciado horizontal hecho
3379 sobre un papel milimetrado. Ciertas partituras del finales del
3380 s.XX y principios del s.XXI utilizan notación proporcional para
3381 clarificar relaciones rítmicas complejas o para facilitar la
3382 colocación de líneas cronométricas u otros gráficos directamente
3385 LilyPond contempla cinco ajustes distintos para la notación
3386 proporcional, que se pueden usar solos o combinados:
3389 @item @code{proportionalNotationDuration}
3390 @item @code{uniform-stretching}
3391 @item @code{strict-note-spacing}
3392 @item @code{\remove "Separating_line_group_engraver"}
3393 @item @code{\override PaperColumn.used = ##t}
3396 En los ejemplos que siguen, exploramos el uso de estos cinco
3397 ajustes de la notación proporcional y examinamos la forma en que
3400 Comenzamos con el siguiente ejemplo de un solo compás, que usa un
3401 espaciado clásico sin justificación por la derecha.
3403 @c The initial pitch is not necessary as long as RhythmicStaff is
3404 @c not preceded by other material in the score, but we don't want
3406 @lilypond[quote,verbatim,ragged-right]
3409 \new RhythmicStaff {
3410 c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
3416 Observe que la blanca que inicia el compás ocupa mucho menos de la
3417 mitad de todo el espacio horizontal del compás. De forma similar,
3418 las semicorcheas y el cinquillo de semicorcheas con que finaliza
3419 el compás ocupan en conjunto mucho más de la mitad de todo el
3420 espacio horizontal del compás.
3422 En el grabado clásico, este espaciado puede ser exactamente el que
3423 deseamos porque podemos tomar prestado el espacio horizontal de la
3424 blanca y conservar el espacio horizontal a lo largo del compás
3427 Por otro lado, si queremos insertar una línea de tiempo graduada o
3428 algún otro gráfico encima o debajo de la partitura, necesitamos la
3429 notación proporcional. Se activa la notación proporcional con el
3430 ajuste @code{proportionalNotationDuration}.
3432 @lilypond[quote,verbatim,ragged-right]
3435 \new RhythmicStaff {
3436 c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
3442 proportionalNotationDuration = #(ly:make-moment 1/20)
3448 La blanca al principio del compás y las notas rápidas de la
3449 segunda mitad del compás ocupan ahora cantidades iguales de
3450 espacio horizontal. Podríamos colocar una línea de tiempo
3451 graduada o un gráfico encima o debajo de este ejemplo.
3453 El ajuste @code{proportionalNotationDuration} es un ajuste de
3454 contexto que reside en @code{Score}. Recordemos que los ajustes
3455 de contexto aparecen en uno de tres posibles lugares del archivo
3456 de entrada: en un bloque @code{\with}, en un bloque
3457 @code{\context}, o directamente entre la música precedido por la
3458 instrucción @code{\set}. Como con todos los ajustes de contexto,
3459 el usuario puede elegir en cuál de los tres lugares diferentes
3460 prefiere establecer el valor de
3461 @code{proportionalNotationDuration}.
3463 El ajuste @code{proportionalNotationDuration} acepta un solo
3464 argumento, que es la duración de referencia contra el que se
3465 aplica el espaciado de toda la música. La función Scheme de
3466 LilyPond @code{make-moment} acepta dos argumentos: un numerador y
3467 un denominador que, juntos, expresan una cierta fracción de
3468 redonda. La llamada @code{(ly:make-moment 1/20)}, por tanto,
3469 produce una duración de referencia de una nota de un veinteavo de
3470 redonda (semicorcheas de cinquillo). Son también posibles valores
3471 como @code{(ly:make-moment 1/16)}, @code{(ly:make-moment 1/8)} y
3472 @code{(ly:make-moment 3/97)}.
3474 ¿Cómo seleccionamos la duración correcta de referencia para
3475 pasarla a @code{proportionalNotationDuration}? Normalmente
3476 mediante un proceso de ensayo y error, comenzando con una duración
3477 cercana a la más rápida (o más breve) duración de la pieza. Las
3478 duraciones de referencia más pequeñas aplican un espaciado más
3479 suelto; las duraciones de referencia más largas aplican un
3480 espaciado más apretado.
3482 @lilypond[quote,verbatim,ragged-right]
3485 \new RhythmicStaff {
3486 c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
3492 proportionalNotationDuration = #(ly:make-moment 1/8)
3499 \new RhythmicStaff {
3500 c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
3506 proportionalNotationDuration = #(ly:make-moment 1/16)
3513 \new RhythmicStaff {
3514 c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
3520 proportionalNotationDuration = #(ly:make-moment 1/32)
3526 Observe que una duración de referencia demasiado grande (como la
3527 corchea, en el ejemplo de arriba) produce un espaciado
3528 excesivamente apretado y puede ser causa de colisiones entre las
3529 cabezas de nota. Observe también que la notación proporcional en
3530 general ocupa más espacio horizontal que el espaciado clásico. El
3531 espaciado proporcional aporta claridad rítmica a expensas del
3534 Ahora veremos cómo espaciar de forma óptima grupos de valoración
3535 especial que se superponen.
3537 Empezamos por examinar qué le ocurre a nuestro ejemplo original,
3538 con espaciado clásico, cuando añadimos un segundo pentagrama con
3539 un tipo diferente de grupo especial.
3541 @lilypond[quote,verbatim,ragged-right]
3544 \new RhythmicStaff {
3545 c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
3547 \new RhythmicStaff {
3548 \tuplet 9/8 { c8 8 8 8 8 8 8 8 8 }
3554 El espaciado es defectuoso porque las notas regularmente
3555 espaciadas del pentagrama inferior no se amplían de manera
3556 uniforme. Los grabados clásicos incluyen muy pocos tresillos
3557 complejos y así las reglas del grabado clásico pueden generar este
3558 tipo de resultado. El establecimiento de
3559 @code{proportionalNotationDuration} lo soluciona.
3561 @lilypond[quote,verbatim,ragged-right]
3564 \new RhythmicStaff {
3565 c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
3567 \new RhythmicStaff {
3568 \tuplet 9/8 { c8 8 8 8 8 8 8 8 8 }
3574 proportionalNotationDuration = #(ly:make-moment 1/20)
3580 Pero si observamos con mucho cuidado podremos ver que las notas de
3581 la segunda mitad del 9-illo están espaciadas de forma ligeramente
3582 más ancha que las de la primera mitad del 9-illo. Para asegurar
3583 una ampliación uniforme, activamos @code{uniform-stretching}, que
3584 es una propiedad de @code{SpacingSpanner}.
3586 @lilypond[quote,verbatim,ragged-right]
3589 \new RhythmicStaff {
3590 c2 16 16 16 16 \tuplet 5/4 { 16 16 16 16 16 }
3592 \new RhythmicStaff {
3593 \tuplet 9/8 { c8 8 8 8 8 8 8 8 8 }
3599 proportionalNotationDuration = #(ly:make-moment 1/20)
3600 \override SpacingSpanner.uniform-stretching = ##t
3606 Nuestro ejemplo de dos pentagramas ahora está espaciado
3607 exactamente, nuestras relaciones rítmicas son visualmente claras,
3608 y podemos incluir una línea de tiempo graduada o un gráfico, si
3611 Observe que el paquete de notación proporcional de LilyPond espera
3612 que todas las partituras proporcionales establezcan el atributo
3613 @code{uniform-stretching} de @code{SpacingSpanner} al valor ##t.
3614 El establecimiento de @code{proportionalNotationDuration} sin
3615 ajustar también el atributo @code{uniform-stretching} de
3616 @code{SpacingSpanner} al valor ##t causará, por ejemplo, que los
3617 desplazamientos (@code{skips}) consuman una cantidad de espacio
3618 horizontal incorrecta.
3620 El @code{SpacingSpanner} es un grob abstracto que reside en el
3621 contexto de @code{Score}. Como con nuestros ajustes de
3622 @code{proportionalNotationDuration}, las sobreescrituras al
3623 @code{SpacingSpanner} sólo pueden ocurrir en uno de estos tres
3624 lugares dentro del archivo de entrada: en el bloque @code{\with},
3625 en el bloque @code{\context} o directamente dentro de la escritura
3628 De manera predeterminada, sólo hay un @code{SpacingSpanner} por
3629 @code{Score}. Esto supone que, por omisión,
3630 @code{uniform-stretching} está activado para la partitura completa
3631 o desactivado para la partitura completa. Sin embargo, podemos
3632 sobreescribir este comportamiento y activar distintas
3633 posibilidades de espaciado en distintos lugares de la partitura.
3634 Lo hacemos con la instrucción @code{\newSpacingSection}. Consulte
3635 @ref{Sección de espaciado nueva} para más información.
3637 A continuación examinamos los efectos del grabador
3638 @code{Separating_line_group_engraver} y veremos por qué las
3639 partituras proporcionales con frecuencia eliminan este grabador.
3640 El ejemplo siguiente muestra que hay una pequeña cantidad de
3641 espacio @qq{preliminar} justo antes de la primera nota de cada
3644 @lilypond[quote,verbatim,ragged-right]
3656 Esta cantidad de espacio preliminar es la misma ya sea después de
3657 una indicación de compás, una armadura o una clave. El grabador
3658 @code{Separating_line_group_engraver} es responsable de este
3659 espacio. La eliminación de @code{Separating_line_group_engraver}
3660 reduce este espacio a cero.
3662 @lilypond[quote,verbatim,ragged-right]
3668 \remove "Separating_line_group_engraver"
3676 Los elementos no musicales como la indicación de compás, la
3677 armadura, la clave y las alteraciones son problemáticos en
3678 notación proporcional. Ninguno de estos elementos tiene duración
3679 rítmica. Pero todos ellos consumen espacio horizontal. Las
3680 distintas partituras proporcionales abordan este problema de
3683 Sería posible evitar los problemas de espaciado con las armaduras,
3684 simplemente evitando tenerlas. Esta es una opción válida pues
3685 casi todas las partituras proporcionales son música contemporánea.
3686 Lo mismo puede valer para las indicaciones de compás,
3687 especialmente para las partituras que incluyen una línea de tiempo
3688 graduada u otro gráfico. Pero estas partituras son excepcionales
3689 y casi todas las partituras proporcionales incluyen al menos unas
3690 pocas indicaciones de compás. Las claves y las alteraciones son
3693 Así pues ¿qué estrategias existen para el espaciado de los
3694 elementos no musicales en un contexto proporcional? Una buena
3695 opción es la propiedad @code{strict-note-spacing} de
3696 @code{SpacingSpanner}. Compare las dos partituras siguientes:
3698 @lilypond[quote,verbatim,ragged-right]
3700 \set Score.proportionalNotationDuration = #(ly:make-moment 1/16)
3701 c''8 8 8 \clef alto d'2 2
3705 \set Score.proportionalNotationDuration = #(ly:make-moment 1/16)
3706 \override Score.SpacingSpanner.strict-note-spacing = ##t
3707 c''8 8 8 \clef alto d'2 2
3711 Las dos partituras son proporcionales, pero el espaciado de la
3712 primera es muy suelto a causa del cambio de clave. Sin embargo, el
3713 espaciado de la segunda partitura se mantiene estricto, porque
3714 @code{strict-note-spacing} está activado. La activación de
3715 @code{strict-note-spacing} hace que el ancho de las indicaciones
3716 de compás, armaduras, cambios de clave y alteraciones no tomen
3717 parte en el algoritmo de espaciado.
3719 Además de los ajustes dados aquí, hay otros que aparecen con
3720 frecuencia en las partituras proporcionales. Entre ellos están:
3723 @item @code{\override SpacingSpanner.strict-grace-spacing = ##t}
3724 @item @code{\set tupletFullLength = ##t}
3725 @item @code{\override Beam.breakable = ##t}
3726 @item @code{\override Glissando.breakable = ##t}
3727 @item @code{\override TextSpanner.breakable = ##t}
3728 @item @code{\remove "Forbid_line_break_engraver" in the Voice context}
3731 Estos ajustes dan a las notas de adorno un espaciado estricto,
3732 extienden los corchetes de grupo especial para que marquen tanto
3733 los puntos de comienzo como de final, y permiten que los elementos
3734 de extensión se dividan entre los sistemas y las páginas.
3735 Consulte las partes respectivas del manual para ver estos ajustes
3739 Referencia de la notación:
3740 @ref{Sección de espaciado nueva}.
3742 Fragmentos de código:
3746 @node Encajar la música en menos páginas
3747 @section Encajar la música en menos páginas
3748 @translationof Fitting music onto fewer pages
3750 En ocasiones, podemos terminar con uno o dos pentagramas en una
3751 segunda página (o tercera, o cuarta@dots{}). Es fastidioso,
3752 especialmente cuando vemos que las páginas anteriores parecen
3753 tener espacio de sobra.
3755 Al investigar los problemas de disposición, una herramienta de
3756 valor incalculable es @code{annotate-spacing}. Esta instrucción
3757 imprime los valores de un cierto número de variables de espaciado;
3758 para ver más detalles consulte la sección siguiente,
3759 @ref{Mostrar el espaciado}.
3762 * Mostrar el espaciado::
3763 * Cambiar el espaciado::
3767 @node Mostrar el espaciado
3768 @subsection Mostrar el espaciado
3769 @translationof Displaying spacing
3771 @cindex espaciado, presentación del
3772 @funindex annotate-spacing
3774 Para presentar gráficamente las dimensiones de las variables de
3775 disposición vertical que pueden verse alteradas por el formato de
3776 la página, establezca @code{annotate-spacing} en el bloque
3779 @lilypond[verbatim,quote,papersize=a6landscape]
3782 \paper { annotate-spacing = ##t }
3787 Todas las dimensiones de disposición se muestran en espacios de
3788 pentagrama, independientemente de las unidades especificadas en
3789 los bloques @code{\paper} o @code{\layout}. En el ejemplo
3790 anterior, @code{paper-height} tiene un valor de 59.75
3791 @code{staff-spaces} (espacios de pentagrama), y el
3792 @code{staff-size} (tamaño del pentagrama) es de 20 puntos, el
3793 valor predeterminado. Observe que:
3795 @multitable {1 staff-space} {staff-size)/4 * (25.4/72.27) mm}
3798 @tab = (25.4/72.27) mm
3801 @tab = (@code{staff-size})/4 pts
3803 @tab = (@code{staff-size})/4 * (25.4/72.27) mm
3808 En este caso, un @code{staff-space} equivale aproximadamente a
3809 1.757mm. Así, la medida @code{paper-height} de 59.75
3810 @code{staff-spaces} equivale a 105 milímetros, la altura de una
3811 hoja @code{a6} en orientación apaisada. Las parejas
3812 (@var{a},@var{b}) son intervalos, donde @var{a} es el límite
3813 inferior y @var{b} es el límite superior del intervalo.
3816 Referencia de la notación:
3817 @ref{Establecer el tamaño del pentagrama}.
3819 Fragmentos de código:
3823 @node Cambiar el espaciado
3824 @subsection Cambiar el espaciado
3825 @translationof Changing spacing
3827 La salida de @code{annotate-spacing} revela las dimensiones
3828 verticales con gran detalle. Para ver más detalles acerca de la
3829 modificación de los márgenes y otras variables de diseño de la
3830 página, consulte @ref{Disposición de la página}.
3832 Aparte de los márgenes, hay algunas otras opciones para ahorrar
3837 Forzar los sistemas para que se junten lo más posible entre sí (de
3838 forma que quepan la mayor cantidad de ellos en la página) y al
3839 mismo tiempo estén espaciados de forma que no exista un espacio
3840 vacío en la parte baja del papel.
3844 system-system-spacing = #'((basic-distance . 0.1) (padding . 0))
3845 ragged-last-bottom = ##f
3851 Forzar el número de sistemas. Puede ser de utilidad de dos
3852 formas. Si tan sólo se establece un valor, incluso el mismo valor
3853 que el número de sistemas que se están trazando de forma
3854 predeterminada, ello ocasionará a veces que se traten de
3855 introducir más sistemas en cada página, pues en este caso se omite
3856 un paso en que se produce una estimación, dando así un encaje
3857 mejor en cada página. Asimismo, el forzar una reducción neta en
3858 el número de sistemas puede producir el ahorro de una página
3859 adicional. Por ejemplo, si la disposición predeterminada tiene 11
3860 sistemas, la asignación siguiente fuerza una disposición con 10
3870 Forzar el número de páginas. Por ejemplo, la asignación siguiente
3871 fuerza una disposición con dos páginas.
3880 Evitar (o reducir en número) los objetos que aumentan el tamaño
3881 vertical de un sistema. Por ejemplo, los corchetes de las
3882 repeticiones de primera y segunda vez (o repeticiones con finales
3883 alternativos) necesitan espacio adicional. Si estas casillas se
3884 reparten a lo largo de dos sistemas, ocupan más espacio que si
3885 estuvieran sobre el mismo sistema. Como otro ejemplo, las
3886 indicaciones dinámicas que se @q{salen} de un sistema se pueden
3887 acercar al pentagrama:
3889 @lilypond[verbatim,quote]
3892 e4 c g-\tweak X-offset #-2.7 \f c
3897 Alterar el espaciado horizontal por medio de
3898 @code{SpacingSpanner}. Para ver más detalles, consulte
3899 @ref{Cambiar el espaciado horizontal}. El ejemplo siguiente
3900 ilustra el espaciado predeterminado:
3902 @lilypond[verbatim,quote]
3915 El ejemplo siguiente modifica @code{common-shortest-duration} de
3916 un valor de @code{1/4} (negra) a @code{1/2} (blanca). La negra es
3917 la nota más común y la más breve del ejemplo, por lo que al
3918 agrandar esta duración se produce un efecto de @q{apretujamiento}:
3920 @lilypond[verbatim,quote]
3932 \override SpacingSpanner.common-shortest-duration =
3933 #(ly:make-moment 1/2)
3940 La propiedad @code{common-shortest-duration} no se puede modificar
3941 de manera dinámica, por lo que se debe situar siempre dentro de un
3942 bloque @code{\context} de forma que se aplique a la partitura
3948 Referencia de la notación:
3949 @ref{Disposición de la página},
3950 @ref{Cambiar el espaciado horizontal}.
3952 Fragmentos de código: