B.8 Código de Scheme en línea
La principal desventaja de \tweak
es su inflexibilidad
sintáctica. Por ejemplo, lo siguiente produce un error de sintaxis.
F = \tweak #'font-size #-3 -\flageolet \relative c'' { c4^\F c4_\F }
Usando Scheme, se puede dar un rodeo a este problema. La ruta hacia
el resultado se da en Añadir articulaciones a las notas (ejemplo), especialmente cómo usar \displayMusic
como guía de
ayuda.
F = #(let ((m (make-music 'ArticulationEvent 'articulation-type "flageolet"))) (set! (ly:music-property m 'tweaks) (acons 'font-size -3 (ly:music-property m 'tweaks))) m) \relative c'' { c4^\F c4_\F }
Aquí, las propiedades tweaks
del objeto flageolet m
(creado con make-music
) se extraen con
ly:music-property
, se antepone un nuevo par clave-valor para
cambiar el tamaño de la tipografía a la lista de propiedades con la
función de Scheme acons
, y finalmente el resultado se escribe
de nuevo con set!
. El último elemento del bloque let
es
el valor de retorno, el propio m
.
Otros idiomas: English, deutsch, français.
Acerca de la selección automática del idioma.