[ << Scheme-Übung ] | [Anfang][Inhalt][Index][ ? ] | [ Schnittstellen für Programmierer >> ] | ||
[ < Scheme-Übung ] | [ Nach oben : Scheme-Übung ] | [ Schnittstellen für Programmierer > ] |
A.1 Optimierungen mit Scheme
Wir haben gesehen wie LilyPond-Eingabe massiv beeinflusst
werden kann, indem Befehle wie etwa
\override TextScript #'extra-offset = ( 1 . -1)
benutzt werden. Aber es wurde gezeigt, dass Scheme noch
mächtiger ist. Eine bessere Erklärung findet sich in derScheme-Übung und in
Schnittstellen für Programmierer.
Scheme kann auch in einfachen \override
-Befehlen
benutzt werden:
TODO Find a simple example
Es kann auch benutzt werden, um Befehle zu erstellen:
tempoPadded = #(define-music-function (parser location padding tempotext) (number? string?) #{ \once \override Score.MetronomeMark #'padding = $padding \tempo \markup { \bold $tempotext } #}) \relative c'' { \tempo \markup { "Low tempo" } c4 d e f g1 \tempoPadded #4.0 #"High tempo" g4 f e d c1 }
Sogar ganze Musikausdrücke können eingefügt werden:
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-Übung ] | [Anfang][Inhalt][Index][ ? ] | [ Schnittstellen für Programmierer >> ] | ||
[ < Scheme-Übung ] | [ Nach oben : Scheme-Übung ] | [ Schnittstellen für Programmierer > ] |
Andere Sprachen: español.