@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
-Translation of GIT committish: f0978ed121192fee9bdf2453a325d98693148acf
+Translation of GIT committish: ffb5c20633459831cea21859f3423ea50060d705
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
* Modificar los complementos (plug-ins) de contexto::
* Cambiar los valores por omisión de los contextos::
* Definir contextos nuevos::
-* Alinear los contextos::
+* Orden de disposición de los contextos::
@end menu
Se pueden realizar de forma similar modificaciones al contexto
@code{Score} o a todos los contextos @code{Voice}.
-@knownissues
+Los cambios de contexto se pueden poner dentro de una variable y
+aplicarse a una definición de contexto @code{\context} anteponiendo la
+modificación mediante @code{\with}:
-No es posible recolectar cambios de contexto dentro de una variable y
-aplicarlos a una definición de @code{\context} por referencia a dicha
-variable.
+@lilypond[quote,verbatim]
+blubb = \with {
+ fontSize = #-4
+ \override Stem #'thickness = #4.0
+ \remove "Time_signature_engraver"
+}
-La instrucción @code{\RemoveEmptyStaves} sobreescribe nuestros ajustes
-en curso para el contexto @code{\Staff}. Si queremos cambiar los
-valores predeterminados para un pentagrama que utilice
-@code{\RemoveEmptyStaves}, debemos hacerlo después de llamar a
-@code{\RemoveEmptyStaves}, o sea
+bla = \with {
+ fontSize = #3
+ \override Stem #'thickness = #-2.0
+}
-@example
-\layout @{
- \context @{
- \Staff \RemoveEmptyStaves
+melody = \relative c'' {
+ a4 a a a |
+ a4 a a a |
+}
- \override Stem #'thickness = #4.0
- @}
-@}
-@end example
+\score {
+ <<
+ \new Staff <<
+ \melody
+ s1*0^"Small, thicker stems, no time signature"
+ >>
+ \new Staff \bla <<
+ \melody
+ s1*0^"Different"
+ >>
+ >>
+ \layout {
+ \context {
+ \Staff
+ \blubb
+ }
+ }
+}
+@end lilypond
@c TODO: add \with in here.
@end example
-@node Alinear los contextos
-@subsection Alinear los contextos
-@translationof Aligning contexts
-
-Los contextos nuevos se pueden alinear por encima o por debajo de
-otros contextos existentes. Esto podría ser de utilidad al preparar
-un pentagrama vocal (@rlearning{Conjuntos vocales}) y en el ossia,
-
-@cindex ossia
-@funindex alignAboveContext
-@funindex alignBelowContext
-
-@lilypond[quote,ragged-right]
-ossia = { f4 f f f }
-\score{
- \relative c' \new Staff = "main" {
- c4 c c c
- <<
- \new Staff \with { alignAboveContext = #"main" } \ossia
- { d8 f d f d f d f }
- >>
- }
-}
-@end lilypond
-
-@cindex nested contexts
-@cindex contexts, nested
+@node Orden de disposición de los contextos
+@subsection Orden de disposición de los contextos
+@translationof Context layout order
+@cindex contextos, orden de disposición
@funindex \accepts
@funindex \denies
-Los contextos como @code{PianoStaff} pueden llevar dentro otros
-contextos anidados. Los contextos que se pueden aceptar para su
-anidamiento están definidos por la lista @qq{accepts} (acepta) de un
-contexto. Los contextos que no están en esta lista se colocan debajo
-del contexto exterior en la partitura impresa. Por ejemplo, el
-contexto @code{PianoStaff} está definido para que acepte contextos
-@code{Staff} y @code{FiguredBass} de forma predeterminada, pero no un
-contexto @code{Lyrics}, por ejemplo. Así pues, en la siguiente
-estructura la letra se sitúa debajo del sistema de piano en lugar de
-colocarse entre los dos pentagramas:
+Los contextos se disponen en un sistema normalmente desde arriba hacia
+abajo en el orden en que se encuentran en el archivo de entrada.
+Cuando los contextos se anidan unos dentro de otros, el contexto
+exterior incluye a los contextos anidados tal y como se especifica en
+el archivo de entrada, siempre y cuando los contextos interiores estén
+incluidos en la lista @qq{accepts} del contexto externo. Los
+contextos anidados que no está nincluidos en la lista @qq{accepts} del
+contexto externo se recolocan debajo del contexto externo en lugar de
+anidarse dentro de él.
+
+La lista @qq{accepts} de un contexto se puede cambiar con las
+instrucciones @code{\accepts} (acepta) y @code{\denies} (niega).
+@code{\accepts} añade un contexto a la lista @qq{accepts} y
+@code{\denies} elimina un contexto de la lista. Por ejemplo,
+normalmente no sería deseable que los acordes de cifrado americano
+estuvieran anidados dentro de un contexto @code{Staff}, por lo que el
+contexto @code{ChordNames} no se incluye de forma predeterminada
+dentro de la lista @qq{accepts} del contexto @code{Staff}, pero podría
+hacerse si fuera necesario:
-@lilypond[verbatim,quote,relative=1]
-\new PianoStaff
-<<
- \new Staff { e4 d c2 }
- \addlyrics { Three blind mice }
+@lilypond[verbatim,quote]
+\score {
\new Staff {
- \clef "bass"
- { c,1 }
+ c' d' e' f'
+ \chords { d1:m7 b1:min7.5- }
}
->>
+}
@end lilypond
-La lista @qq{accepts} de un contexto se puede modificar para que
-incluya contextos anidados adicionales, y así si quisiéramos que la
-letra apareciese entre los dos pentagramas podríamos usar:
-
-@lilypond[verbatim,quote,relative=1]
-\new PianoStaff \with { \accepts Lyrics }
-<<
- \new Staff { e4 d c2 }
- \addlyrics { Three blind mice }
+@lilypond[verbatim,quote]
+\score {
\new Staff {
- \clef "bass"
- { c,1 }
+ c' d' e' f'
+ \chords { d1:m7 b1:min7.5- }
}
->>
+ \layout {
+ \context {
+ \Staff
+ \accepts "ChordNames"
+ }
+ }
+}
@end lilypond
-Lo contrario de @code{\accepts} (acepta) es @code{\denies} (deniega);
-esto suprime un contexto de la lista @qq{accepts}.
+@code{\denies} se usa principalmente cuando un contexto nuevo se está
+basando en otro, pero los anidamientos requeridos difieren. Por
+ejemplo, el contexto @code{VaticanaStaff} está basado en el contexto
+@code{Staff}, pero con el contexto @code{VaticanaVoice} sustituido por
+el contexto @code{Voice} en la lista @qq{accepts}.
+
+Observe que discretamente se crea un contexto de forma implícita si se
+encuentra una instrucción donde no hay un contexto apropiado para
+contenerlo. Esto puede dar lugar a pentagramas o partituras nuevos no
+esperados.
+
+@seealso
+Manual de utilización del programa:
+@rprogram{Aparece un pentagrama de más}.
+
+Archivos instalados:
+@file{ly/engraver-init.ly}.
@node Explicación del Manual de referencia de funcionamiento interno
@end example
Una forma de acercar los pentagramas entre sí es reducir el valor de
-la clave @code{basic-distance} (@code{9}) para que se corresponda con el valor
-de @code{minimum-distance} (@code{7}). Para modificar una única clave
-de forma individual, utilice una @emph{declaración anidada}:
+la clave @code{basic-distance} (@code{9}) para que se corresponda con
+el valor de @code{minimum-distance} (@code{7}). Para modificar una
+única clave de forma individual, utilice una @emph{declaración
+anidada}:
@lilypond[quote,verbatim]
% default space between staves
Ahora, supongamos que deseamos que los pentagramas estén tan próximos
como sea posible sin que se superpongan. La manera más sencilla de
hacerlo es establecer las cuatro claves de la lista-A a cero. Sin
-embargo, no es necesario escribir cuatro declaraciones anidadas,
-una por cada clave. En lugar de eso, se puede redefinir
-completamente la propiedad con una sola declaración, como una lista-A:
+embargo, no es necesario escribir cuatro declaraciones anidadas, una
+por cada clave. En lugar de eso, se puede redefinir completamente la
+propiedad con una sola declaración, como una lista-A:
@lilypond[quote,verbatim]
\new PianoStaff \with {
valores @emph{predeterminados si no se han fijado}. En el caso de
@code{staff-staff-spacing}, el valor de cualquier clave no fijada se
reiniciaría a cero (excepto @code{stretchability}, que toma el valor
-de @code{basic-distance} si no se fija). Así, las dos declaraciones siguientes
-son equivalentes:
+de @code{basic-distance} si no se fija). Así, las dos declaraciones
+siguientes son equivalentes:
@example
\override StaffGrouper #'staff-staff-spacing =
@end example
Una consecuencia de esto (posiblemente no intencionada) es la
-eliminación de cualquier valor estándar que
-se establezca en un archivo de inicio y que se carga cada vez que se
-compila un archivo de entrada. En el ejemplo anterior, los ajustes
-estándar para @code{padding} y
-@code{minimum-distance} (definidos en @file{scm/define-grobs.scm}) se
-reinician a sus valores predeterminados si no se han fijado (cero para
-las dos claves). La definición de una propiedad o variable como una
-lista-A (de cualquier tamaño) siempre reinicia todos los valores de
-clave no establecidos a sus valores predeterminados si no se han
-fijado. Ano ser que este sea el resultado deseado, es más seguro
-actualizar los valores de clave individualmente con una declaración
-anidada.
+eliminación de cualquier valor estándar que se establezca en un
+archivo de inicio y que se carga cada vez que se compila un archivo de
+entrada. En el ejemplo anterior, los ajustes estándar para
+@code{padding} y @code{minimum-distance} (definidos en
+@file{scm/define-grobs.scm}) se reinician a sus valores
+predeterminados si no se han fijado (cero para las dos claves). La
+definición de una propiedad o variable como una lista-A (de cualquier
+tamaño) siempre reinicia todos los valores de clave no establecidos a
+sus valores predeterminados si no se han fijado. Ano ser que este sea
+el resultado deseado, es más seguro actualizar los valores de clave
+individualmente con una declaración anidada.
@warning{Las declaraciones anidadas no funcionan para las listas-A de
propiedades de contexto (como @code{beamExceptions},
@menu
* Modos de entrada::
* Dirección y posición::
-* Orden de disposición de los contextos::
* Distancias y medidas::
* Propiedades del símbolo del pentagrama::
* Objetos de extensión::
@c TODO Add table showing these
Se puede sobreescribir la acción predeterminada mediante el prefijado
-de la articulación por un @emph{indicacor de dirección}. Están disponibles
-tres indicadores de dirección: @code{^} (que significa @qq{arriba}), @code{_}
-(que significa @qq{abajo}) o @code{-} (que significa @qq{usar la
-dirección predeterminada}). El indicador de dirección se puede normalmente
-omitir, en cuyo caso se supone el indicador predeterminado
-@code{-}, pero se necesita un indicador de dirección @strong{siempre}
-antes de:
+de la articulación por un @emph{indicacor de dirección}. Están
+disponibles tres indicadores de dirección: @code{^} (que significa
+@qq{arriba}), @code{_} (que significa @qq{abajo}) o @code{-} (que
+significa @qq{usar la dirección predeterminada}). El indicador de
+dirección se puede normalmente omitir, en cuyo caso se supone el
+indicador predeterminado @code{-}, pero se necesita un indicador de
+dirección @strong{siempre} antes de:
@itemize
@item las instrucciones @code{\tweak}
El valor de la propiedad @code{direction} se puede establecer al valor
@code{1}, con el significado de @qq{hacia arriba} o @qq{encima}, o a
-@w{@code{-1}}, con el significado de @qq{hacia abajo} o @qq{debajo}. Se
-pueden usar los símbolos @code{UP} y @code{DOWN} en sustitución de
-@code{1} y @w{@code{-1}} respectivamente. La dirección predeterminada se
-puede especificar estableciendo @code{direction} a @code{0} ó a
+@w{@code{-1}}, con el significado de @qq{hacia abajo} o @qq{debajo}.
+Se pueden usar los símbolos @code{UP} y @code{DOWN} en sustitución de
+@code{1} y @w{@code{-1}} respectivamente. La dirección predeterminada
+se puede especificar estableciendo @code{direction} a @code{0} ó a
@code{CENTER}. De forma alternativa, en muchos casos existen
instrucciones predefinidas para especificar la dirección. Todas ellas
son de la forma:
En alguna que otra ocasión, con el único ejemplo usual del arpegio, el
valor de la propiedad @code{direction} especifica si el objeto se debe
colocar a la izquierda o a la derecha del objeto padre. En este caso
-@w{@code{-1}} ó @code{LEFT} significan @qq{a la izquierda} y @code{1} ó
-@code{RIGHT} significan @qq{a la derecha}. @code{0} ó @code{CENTER}
+@w{@code{-1}} ó @code{LEFT} significan @qq{a la izquierda} y @code{1}
+ó @code{RIGHT} significan @qq{a la derecha}. @code{0} ó @code{CENTER}
significan @qq{utilizar la dirección predeterminada}, como antes.
Estas indicaciones afectan a todas las notas hasta que son canceladas.
@end lilypond
-@node Orden de disposición de los contextos
-@subsection Orden de disposición de los contextos
-@translationof Context layout order
-
-@cindex contextos, orden de disposición
-
-Los contextos se disponen en un sistema normalmente desde arriba hacia
-abajo en el orden en que se encuentran en el archivo de entrada.
-Cuando los contextos se anidan unos dentro de otros, el contexto
-exterior incluye a los contextos anidados tal y como se especifica en
-el archivo de entrada, siempre y cuando los contextos interiores estén
-incluidos en la lista @qq{accepts} del contexto externo. Los
-contextos anidados que no está nincluidos en la lista @qq{accepts} del
-contexto externo se recolocan debajo del contexto externo en lugar de
-anidarse dentro de él.
-
-Observe que discretamente se crea un contexto de forma implícita si se
-encuentra una instrucción donde no hay un contexto apropiado para
-contenerlo. Esto puede dar lugar a pentagramas o partituras nuevos no
-esperados.
-
-El orden predeterminado en que los contextos se disponen, así como la
-lista @qq{accepts}, pueden cambiarse; véase @ref{Alinear los
-contextos}.
-
-@seealso
-Manual de utilización del programa:
-@rprogram{Aparece un pentagrama de más}.
-
@node Distancias y medidas
@subsection Distancias y medidas
@translationof Distances and measurements
sobreescribir su propiedad @code{break-visibility}. Las tres primeras
se aplican a todos los objetos de presentación; la última sólo a unos
pocos: los objetos @emph{divisibles}. El Manual de aprendizaje
-introduce estas cuatro técnicas, véase @rlearning{Visibilidad y color de los objetos}.
+introduce estas cuatro técnicas,
+véase @rlearning{Visibilidad y color de los objetos}.
Hay también algunas otras técnicas que son específicas de ciertos
objetos de presentación. Se estudian bajo Consideraciones especiales.
predeterminado de @code{1}, se dibuja después de las líneas del
pentagrama (valor @code{layer} predeterminado de @code{0}),
sobreimpresionándolas. Para cambiarlo, se debe dar al objeto
-@code{Clef} un valor de @code{layer} más bajo, digamos @w{@code{-1}}, para
-que se dibuje antes:
+@code{Clef} un valor de @code{layer} más bajo, digamos @w{@code{-1}},
+para que se dibuje antes:
@lilypond[quote,verbatim,relative=2]
\override Staff.Clef #'color = #white
@subsection Agrupación vertical de objetos gráficos
@translationof Vertical grouping of grobs
+@c TODO Expand this section
+
Los grobs (objetos gráficos) @code{VerticalAlignment} y
@code{VerticalAxisGroup} trabajan de manera coordinada.
@code{VerticalAxisGroup} agrupa distintos grobs como @code{Staff},
No es posible modificar la forma de las ligaduras de unión o de
expresión cambiando la propiedad @code{control-points} si hay más de
una en el mismo momento musical, ni siquiera usando la instrucción
-@code{\tweak}. Sin embargo, se puede sobreescribir la propiedad @code{tie-configuration} de
-@code{TieColumn} para fijar la línea de inicio y la dirección según se requiera.
+@code{\tweak}. Sin embargo, se puede sobreescribir la propiedad
+@code{tie-configuration} de @code{TieColumn} para fijar la línea de
+inicio y la dirección según se requiera.
@seealso
Referencia de funcionamiento interno:
debe devolver @code{#t}.
@item @code{@var{@dots{}música@dots{}}}
-@tab entrada de LilyPond normal, que utiliza @code{$} para
-referenciar argumentos (p.ej. @samp{$arg1}).
+@tab código de entrada normal de LilyPond, que utiliza @code{$} (en los
+lugares en que sólo se permiten construcciones de Lilypond) o @code{#}
+(para usarlo como un valor de Scheme o un argumento de función
+musical) para referenciar argumentos (p.ej. @samp{#arg1}).
@end multitable
-
Los argumentos @code{parser} y @code{location} son necesarios, y se
utilizan en algunas situaciones avanzadas como se encuentra descrito
en @rextend{Sintaxis de las funciones musicales}. Para las funciones
@example
boolean?
cheap-list? @emph{(utilizar en lugar de }@q{list?}@emph{ para un procesado más rápido)}
+ly:duration?
ly:music?
+ly:pitch?
markup?
number?
pair?
(parser location padding)
(number?)
#{
- \once \override TextScript #'padding = $padding
+ \once \override TextScript #'padding = #padding
#})
\relative c''' {
(parser location padding tempotext)
(number? string?)
#{
- \once \override Score.MetronomeMark #'padding = $padding
+ \once \override Score.MetronomeMark #'padding = #padding
\tempo \markup { \bold #tempotext }
#})
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: 4ca01b6da8d60b0d8575be05ae974429c91becd5
+ Translation of GIT committish: 0d0a674ba7bfa052e277861427c0a2d7a6d2cdde
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@cindex trastes, instrumentos con, afinaciones predefinidas
@cindex predefinidas, afinaciones, para instrumentos de traste
-@funindex StringTunings
+@funindex stringTunings
La tablatura en LilyPond calcula automáticamente el traste para cada
nota, basándose en la cuerda a que está asignada la nota. Para
con Sol Mayor al aire). Las afinaciones predefinidas están en
@file{ly/string-tuning-init.ly}.
-@funindex contextStringTunings
-@funindex \contextStringTunings
+@funindex stringTuning
+@funindex \stringTuning
@cindex tablaturas, afinaciones personalizadas
@cindex personalizadas, afinaciones de cuerdas
-Es posible crear cualquier afinación de cuerdas que se desee. Se
-puede usar la función @code{\contextStringTuning} para definir una
-afinación de cuerdas y establecerla como el valor de
+Es posible crear cualquier afinación de cuerdas que se desee.
+Se puede usar la función @code{\stringTuning} para definir una
+afinación de cuerdas y que puede usarse para
+establecerla como el valor de
@code{stringTunings} para el contexto actual.
-@code{\contextStringTuning} admite dos argumentos: el símbolo en que
-se almacena la afinación de cuerdas y una construcción de acorde
+
+Su argumento es una construcción de acorde
que define la altura de las notas de cada cuerda al aire en dicha
afinación. La construcción de acorde debe estar en el modo de
octava absoluto, véase @ref{Escritura de octava absoluta}.
\mynotes
}
\new TabStaff {
- #(define custom-tuning #{ \stringTuning <c' g' d'' a''> #})
- \set stringTunings = #custom-tuning
+ \set stringTunings = \stringTuning <c' g' d'' a''>
\mynotes
}
>>
La propiedad @code{stringTunings} también se utiliza por parte de
@code{FretBoards} para calcular los diagramas de posición automáticos.
-@funindex makeStringTuning
-@funindex \makeStringTuning
-
Las afinaciones de cuerdas se utilizan como parte de la clave de
asociación para los diagramas de posición predefinidos (véase
-@ref{Diagramas predefinidos de trastes}). Se usa la función
-@code{\makeStringTuning} para crear una afinación sin fijar el valor
-de la propiedad @code{stringTunings} en el contexto actual. Los
-argumentos de @code{\makeStringTuning} son el símbolo que usar para la
-nueva afinación y una construcción de acorde que se usa para definir
-la afinación. El ejemplo anterior también se podría haber escrito
+@ref{Diagramas predefinidos de trastes}).
+
+El ejemplo anterior también se podría haber escrito
como sigue:
@lilypond[quote,verbatim]
función de Scheme @code{ly:make-pitch} (véase
@ref{Funciones de Scheme}).
-Se así se desea, puede crearse una afinación de cuerdas como un
-literal de Scheme. El ejemplo de abajo recrea los ejemplos
-anteriores, pero la afinación no se guarda como un objeto separado:
-
-@lilypond[quote,verbatim]
-mynotes = {
- c'4 e' g' c'' |
- e''4 g'' b'' c'''
-}
-
-<<
- \new Staff {
- \clef treble
- \mynotes
- }
- \new TabStaff {
- \set TabStaff.stringTunings = #`(,(ly:make-pitch 1 5 0)
- ,(ly:make-pitch 1 1 0)
- ,(ly:make-pitch 0 4 0)
- ,(ly:make-pitch 0 0 0))
- \mynotes
- }
->>
-@end lilypond
+@code{\stringTuning} crea dicho objeto a partir de la entrada de
+acordes.
LilyPond calcula automáticamente el número de líneas dentro del
@code{TabStaff} y el número de cuerdas dentro de un @code{FretBoard}
calculado automáticamente como el número de elementos de
@code{stringTunings}.
+Para permitir a todos los contextos TabStaff usar la misma afinación
+personalizada por omisión, podemos usar
+
+@example
+\layout @{
+ \context @{
+ \TabStaff
+ stringTunings = \stringTuning \notemode @{ <c' g' d'' a''> @}
+ @}
+@}
+@end example
+
+
@cindex moderntab, clave
@cindex clave moderntab
@cindex clave de tablatura
@funindex banjo-open-dm-tuning
@funindex four-string-banjo
-En LilyPond se encuentran predefinidas varias afinaciones comunes para
-el banjo: @code{banjo-c-tuning} (sol-Do-Sol-Si-Re),
+Se encuentran predefinidas varias afinaciones comunes para
+el banjo de cinco cuerdas:
+@code{banjo-c-tuning} (sol-Do-Sol-Si-Re),
@code{banjo-modal-tuning} (sol-Re-Sol-Do-Re),
@code{banjo-open-d-tuning} (Re Mayor al aire, la-Re-Fa#-La-Re) y
@code{banjo-open-dm-tuning} (Re menor al aire, la-Re-Fa-La-Re).
-Estas afinaciones se pueden convertir a afinaciones para bajo de
+Estas afinaciones se pueden convertir a afinaciones para banjo de
cuatro cuerdas utilizando la función @code{four-string-banjo}:
@example
\set TabStaff.stringTunings = #(four-string-banjo banjo-c-tuning)
@end example
-
@seealso
Fragmentos de código:
@rlsr{Fretted strings}.
Archivos de inicio:
-@file{scm/string-tunings-init.scm} contiene las afinaciones
-predefinidas para el banjo.
+@file{ly/string-tunings-init.ly}