GNU LilyPond Handbuch zum Lernen: B.1 Tweaking with Scheme

## B.1 Tweaking with 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 tutorial und in Interfaces for programmers.

Scheme kann auch in einfachen `\override`-Befehlen benutzt werden:

TODO Find a simple example

Es kann auch benutzt werden, um Befehle zu erstellen:

>     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
>     }

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 }
>     }

Other languages: English, español.

#### Handbuch zum Lernen