| [ << Scheme tutorial ] | [Arriba][Índice general][Índice][ ? ] | [ GNU Free Documentation License >> ] | ||
| [ < Scheme tutorial ] | [ Subir : Scheme tutorial ] | [ GNU Free Documentation License > ] | ||
B.1 Tweaking with Scheme
Hemos visto cómo la salida de LilyPond se puede modificar
profundamente usando instrucciones como \override TextScript
#'extra-offset = ( 1 . -1). Pero tenemos incluso mucho más poder si
utilizamos Scheme. Para ver una explicación completa de esto,
consulte el Scheme tutorial, y
programmers
Interfaces for programmers.
Podemos usar Scheme simplemente para sobreescribir instrucciones con
\override,
Lo podemos usar para crear instrucciones nuevas:
tempoMark = #(define-music-function (parser location padding marktext)
(number? string?)
#{
\once \override Score . RehearsalMark #'padding = $padding
\once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0)
\mark \markup { \bold $marktext }
#})
\relative c'' {
c2 e
\tempoMark #3.0 #"Allegro"
g c
}
Incluso se le pueden pasar expresiones musicales:
pattern = #(define-music-function (parser location x y) (ly:music? ly:music?)
#{
$x e8 a b $y b a e
#})
\relative c''{
\pattern c8 c8\f
\pattern {d16 dis} { ais16-> b\p }
}
| [ << Scheme tutorial ] | [Arriba][Índice general][Índice][ ? ] | [ GNU Free Documentation License >> ] | ||
| [ < Scheme tutorial ] | [ Subir : Scheme tutorial ] | [ GNU Free Documentation License > ] | ||