@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: d6b6b53d09a0fb8e137e7cfcec39fe22dc7b6872
+ Translation of GIT committish: 26a079ca2393d053315ef8dbef626c897dc9645a
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
Guide, node Updating translation committishes..
@end ignore
-@c \version "2.15.10"
+@c \version "2.16.0"
@node Trucar la salida
@chapter Trucar la salida
ejemplos siguientes. Veremos más tarde cuándo se debe especificar.
Las últimas secciones tratan de forma exhaustiva las propiedades y sus
-valores, pero para ilustrar el formato y utilización de estas
-instrucciones usaremos sólo unas cuantas propiedades y valores
-sencillos que sean fáciles de entender.
+valores, véase @ref{Tipos de propiedades}. Pero en esta sección
+usaremos sólo unas cuantas propiedades y valores
+sencillos que sean fáciles de entender, para ilustrar el formato
+y la utilización de estas instrucciones.
Por ahora no se preocupe por el @code{#'}, que debe anteponerse a la
propiedad de presentación, y el@tie{}@code{#}, que debe preceder al valor.
@funindex tweak
La última instrucción de trucaje que está disponible es @code{\tweak}.
-Se debe utilizar para cambiar las propiedades de objetos que suceden
-en el mismo momento musical, como las notas de un acorde. El uso de
+Se debe utilizar cuando varios objetos tienen lugar
+en el mismo momento musical pero solo queremos cambiar las propiedades
+de algunos de ellos, como una sola nota dentro de un acorde.
+El uso de
@code{\override} para la sobreescritura afectaría a todas las notas
del acorde, mientras que @code{\tweak} afecta solamente al siguiente
elemento del flujo de entrada.
musical que la propia instrucción de sobreescritura @code{\override}.
La instrucción @code{\tweak} opera de una forma distinta. Actúa sobre
-el elemento inmediatamente siguiente dentro del flujo de entrada. Sin
-embargo, es efectivo solamente sobre objetos que se crean directamente
-a partir del flujo de entrada, en esencia las cabezas y las
-articulaciones; los objetos como las plicas y las alteraciones se
-crean con posterioridad y no se pueden trucar de esta forma. Es más,
-cuando se aplica a las cabezas de las notas, éstas @emph{deben} estar
-dentro de un acorde, es decir, dentro de ángulos simples, así que para
-trucar una sola nota la instrucción @code{\tweak} se debe colocar
-dentro de ángulos simples junto con la nota.
+el elemento inmediatamente siguiente dentro del flujo de entrada.
+En su forma más sencilla es efectivo solamente sobre objetos
+que se crean directamente
+a partir del elemento siguiente, en esencia las cabezas y las
+articulaciones.
Así pues, volviendo a nuestro ejemplo, el tamaño de la nota intermedia
se cambiaría de la siguiente forma:
@end lilypond
Observe que la sintaxis de @code{\tweak} no es igual que la de
-@code{\override}. Ni el contexto ni el objeto de presentación se
-deben especificar; de hecho, generaría un error hacerlo. Los dos
+@code{\override}. El contexto no se
+debe especificar; de hecho, generaría un error hacerlo.
+Tanto el contexto como el objeto de presentación
están implícitos por el siguiente elemento del flujo de entrada.
Observe también que no debe haber un signo igual. Así que la sintaxis
-genérica de la instrucción @code{\tweak} es, simplemente,
+de la instrucción @code{\tweak} en su forma sencilla es:
@example
\tweak #'@var{propiedad-de-presentación} #@var{valor}
@noindent
Observe que la instrucción @code{\tweak} debe venir precedida de una
-marca de articulación como si ella misma fuera una articulación.
+marca de articulación porque la propia expresión trucada debe aplicarse
+como una articulación. En el caso de más de una sobreescritura de dirección
+(@code{^} o @code{_}), gana la sobreescritura situada más a la izquierda
+porque se aplica en último lugar.
+
+@cindex @code{\tweak}, Accidental
+@cindex @code{\tweak}, specific layout object
+
+Los objetos tales como plicas y alteraciones accidentales se crean más
+tarde, y no directamente a partir del evento que viene a continuación.
+Aún es posible utilizar @code{\tweak} sobre tales objetos creados
+indirectamente mediante el nombrado explícito del objeto de
+presentación, siempre y cuando LilyPond pueda rastrear su origen hasta
+el evento original:
+
+@lilypond[quote,fragment,ragged-right,verbatim,relative=2]
+<\tweak Accidental #'color #red cis4
+ \tweak Accidental #'color #green es
+ g>
+@end lilypond
+
+Esta forma extensa de la instrucción @code{\tweak} se puede describir
+como
+@example
+\tweak @var{layout-object} #'@var{layout-property} @var{value}
+@end example
@cindex grupos especiales anidados
@cindex tresillos anidados
<<
{ c2 aes4. bes8 }
\\
- { aes2 f4 fes }
+ { <ees, c>2 des }
\\
- {
- \voiceFour
- <ees c>2 des
- }
+ \\
+ { aes'2 f4 fes }
>> |
<c ees aes c>1 |
}
@end lilypond
@noindent
-Las dos notas inferiores del primer acorde (es decir, las que están en
-al tercera voz) no deberían separarse de la columna de notas de las dos
-notas agudas. Para corregir esto, establecemos el valor de
-@code{force-hshift} (que es una propiedad de @code{NoteColumn}) de
-esas notas a cero. La nota más grave del segundo acorde se sitúa
-mejor justo a la derecha de las más agudas. Lo conseguimos
-estableciendo el valor de @code{force-hshift} de esta nota a 0.5, o
-sea, la anchura de media cabeza de nota a la derecha de la columna de
-las notas agudas.
+Es necesario que la nota interior del primer acorde (el La bemol de la
+cuarta voz) no se aparte de la columna vertical de la nota aguda.
+Para corregirlo, ajustamos a cero el valor para esta nota de
+@code{force-hshift}, que es una propiedad de @code{NoteColumn}.
+
+En el segundo acorde preferimos que el Fa esté alineado con el La y
+que la nota grave se coloque ligeramente a la derecha para evitar una
+colisión de las plicas. Lo conseguimos ajustando el valor de
+@code{force-hshift} en la @code{NoteColumn} del Re bemol grave para
+moverlo a la derecha medio espacio de pentagrama.
Presentamos a continuación el resultado final:
<<
{ c2 aes4. bes8 }
\\
- { aes2 f4 fes }
- \\
{
- \voiceFour
- \once \override NoteColumn #'force-hshift = #0
- <ees c>2
+ <ees, c>2
\once \override NoteColumn #'force-hshift = #0.5
des2
}
+ \\
+ \\
+ {
+ \override NoteColumn #'force-hshift = #0
+ aes'2 f4 fes
+ }
>> |
<c ees aes c>1 |
}
% Stem on the d2 must be down to permit merging
\stemDown
% Stem on the d2 should be invisible
- \once \override Stem #'transparent = ##t
- \once \override Flag #'transparent = ##t
+ \tweak Stem #'transparent ##t
+ \tweak Flag #'transparent ##t
d2
}
\new Voice {
% Stem on the d2 must be down to permit merging
\stemDown
% Stem on the d2 should be invisible
- \once \override Stem #'transparent = ##t
- \once \override Flag #'transparent = ##t
+ \tweak Stem #'transparent ##t
+ \tweak Flag #'transparent ##t
d2
}
\new Voice {
@lilypond[quote,fragment,relative=2,verbatim]
<<
{
- \once \override Stem #'transparent = ##t
- \once \override Flag #'transparent = ##t
+ \tweak Stem #'transparent ##t
+ \tweak Flag #'transparent ##t
b8~ b\noBeam
}
\\
@lilypond[quote,fragment,relative=2,verbatim]
<<
{
- \once \override Stem #'transparent = ##t
- \once \override Flag #'transparent = ##t
- \once \override Stem #'length = #8
+ \tweak Stem #'transparent ##t
+ \tweak Flag #'transparent ##t
+ \tweak Stem #'length #8
b8~ b\noBeam
}
\\
}
VerseTwo = \lyricmode {
- O | \emphasize Christ, \normal whose voice the | wa -- ters heard,
+ O | \once \emphasize Christ, whose voice the | wa -- ters heard,
}
VerseThree = \lyricmode {
@lilypond[quote,verbatim,ragged-right]
mpdolce =
#(make-dynamic-script
- (markup #:hspace 0
- #:translate '(5 . 0)
- #:line (#:dynamic "mp"
- #:text #:italic "dolce")))
+ #{ \markup { \hspace #0
+ \translate #'(5 . 0)
+ \line { \dynamic "mp"
+ \text \italic "dolce" } }
+ #})
inst =
#(define-music-function
(parser location string)
(string?)
- (make-music
- 'TextScriptEvent
- 'direction UP
- 'text (markup #:bold (#:box string))))
+ #{ ^\markup \bold \box #string #})
\relative c'' {
\tempo 4=50
}
@end lilypond
-Existen varios problemas con la salida que se superpone; los
-arreglaremos utilizando las técnicas descritas en @ref{Mover objetos}.
-Pero también haremos algo respecto a las definiciones @code{mpdolce} e
+Hagamos algo respecto a las definiciones @code{mpdolce} e
@code{inst}. Éstas producen la salida que deseamos, pero quizá las
querríamos utilizar en otra pieza. Podríamos simplemente copiarlas y
pegarlas al principio de cada archivo, pero sería bastante molesto.
%%% guardar esto en un archivo de nombre "definiciones.ily"
mpdolce =
#(make-dynamic-script
- (markup #:hspace 0
- #:translate '(5 . 0)
- #:line (#:dynamic "mp"
- #:text #:italic "dolce")))
+ #@{ \markup @{ \hspace #0
+ \translate #'(5 . 0)
+ \line @{ \dynamic "mp"
+ \text \italic "dolce" @} @}
+ #@})
inst =
#(define-music-function
(parser location string)
(string?)
- (make-music
- 'TextScriptEvent
- 'direction UP
- 'text (markup #:bold (#:box string))))
+ #@{ ^\markup \bold \box #string #@})
@end example
Haremos referencia a este archivo utilizando la instrucción
@lilypond[quote,ragged-right]
mpdolce =
#(make-dynamic-script
- (markup #:hspace 0
- #:translate '(5 . 0)
- #:line (#:dynamic "mp"
- #:text #:italic "dolce")))
+ #{ \markup { \hspace #0
+ \translate #'(5 . 0)
+ \line { \dynamic "mp"
+ \text \italic "dolce" } }
+ #})
inst =
#(define-music-function
(parser location string)
(string?)
- (make-music
- 'TextScriptEvent
- 'direction UP
- 'text (markup #:bold (#:box string))))
+ #{ ^\markup \bold \box #string #})
\relative c'' {
\tempo 4=50
%%% definiciones.ily
mpdolce =
#(make-dynamic-script
- (markup #:hspace 0
- #:translate '(5 . 0)
- #:line (#:dynamic "mp"
- #:text #:italic "dolce")))
+ #@{ \markup @{ \hspace #0
+ \translate #'(5 . 0)
+ \line @{ \dynamic "mp"
+ \text \italic "dolce" @} @}
+ #@})
inst =
#(define-music-function
(parser location string)
(string?)
- (make-music
- 'TextScriptEvent
- 'direction UP
- 'text (markup #:bold (#:box string))))
+ #@{ ^\markup \bold \box #string #@})
\layout@{
\context @{
@lilypond[quote,ragged-right]
mpdolce =
#(make-dynamic-script
- (markup #:hspace 0
- #:translate '(5 . 0)
- #:line (#:dynamic "mp"
- #:text #:italic "dolce")))
+ #{ \markup { \hspace #0
+ \translate #'(5 . 0)
+ \line { \dynamic "mp"
+ \text \italic "dolce" } }
+ #})
inst =
#(define-music-function
(parser location string)
(string?)
- (make-music
- 'TextScriptEvent
- 'direction UP
- 'text (markup #:bold (#:box string))))
+ #{ ^\markup \bold \box #string #})
\layout{
\context {
%%% definiciones.ily
mpdolce =
#(make-dynamic-script
- (markup #:hspace 0
- #:translate '(5 . 0)
- #:line (#:dynamic "mp"
- #:text #:italic "dolce")))
+ #@{ \markup @{ \hspace #0
+ \translate #'(5 . 0)
+ \line @{ \dynamic "mp"
+ \text \italic "dolce" @} @}
+ #@})
inst =
#(define-music-function
(parser location string)
(string?)
- (make-music
- 'TextScriptEvent
- 'direction UP
- 'text (markup #:bold (#:box string))))
+ #@{ ^\markup \bold \box #string #@})
#(set-global-staff-size 23)
@lilypond[quote,ragged-right]
mpdolce =
#(make-dynamic-script
- (markup #:hspace 0
- #:translate '(5 . 0)
- #:line (#:dynamic "mp"
- #:text #:italic "dolce")))
+ #{ \markup { \hspace #0
+ \translate #'(5 . 0)
+ \line { \dynamic "mp"
+ \text \italic "dolce" } }
+ #})
inst =
#(define-music-function
(parser location string)
(string?)
- (make-music
- 'TextScriptEvent
- 'direction UP
- 'text (markup #:bold (#:box string))))
+ #{ ^\markup \bold \box #string #})
#(set-global-staff-size 23)
correspondiente a su sistema. La ubicación de esta carpeta depende
(a) de si consiguió el programa LilyPond descargando un binario
precompilado desde el sitio web lilypond.org o si lo instaló mediante
-un gestor de paquetes (es decir, distribuido con Linux, o instalado
+un gestor de paquetes (es decir, distribuido con GNU/Linux, o instalado
bajo fink o cygwin) o fue compilado a partir de la fuente, y (b) de
qué sistema operativo está utilizando:
@strong{Descargado de lilypond.org}
@itemize @bullet
-@item Linux
+@item GNU/Linux
Diríjase a
@example