LilyPond Benutzerhandbuch: 5.3.3 Der \\override-Befehl

### 5.3.3 Der `\\override`-Befehl

Es gibt eine besondere Art von Kontexteigenschaft: die Grob-Beschreibung. Grob-Beschreibungen werden mit `GroßGroßbuchstabe` benannt. Sie enthalten „Standardeinstellungen“ für ein bestimmtes Grob als eine assoziative Liste. Siehe ‘`scm/define-grobs.scm`’ für die Einstellungen aller Grob-Beschreibungen. Grob-Beschreibungen werden mit `\override` verändert.

`\override` ist eigentlich eine Kurzform, der Befehl

>     \override Kontext.GrobBezeichnung #'Eigenschaft = #Wert

ist äquivalent zu

>     \set Kontext.GrobBezeichnung  =
>       #(cons (cons 'Eigenschaft Wert)
>              <vorheriger Wert von Kontext.GrobBezeichnung>)

Der Wert von `Kontext`.`GrobBezeichnung` (die assoz. Liste „alist“) wird benutzt um die Eigenschaften von individuellen Grobs zu initialisieren. Grobs haben Eigenschaften, die im Scheme-Stil mit `bindestrich-wörtern` benannt sind. Diese Werte der Grob-Eigenschaften verändern sich während des Notensetzens: LilyPonds Notensatz heißt im Grunde, die Eigenschaften mit Callback-Fuktionen auszurechnen.

Beispielsweise kann die Dicke eines Notenhalses verändert werden, indem man die `thickness`-Eigenschaft des `Stem`-Objekts verändert:

>     c4 c
>     \override Voice.Stem.thickness = #3.0
>     c4 c

Wenn kein Kontext angegeben wird, wird der tiefste aktuelle Kontext benutzt:

>     { \override Staff.Stem.thickness = #3.0
>       <<
>         {
>           e4 e
>           \override Stem.thickness = #0.5
>           e4 e
>         } \\ {
>           c4 c c c
>         }
>       >>
>     }

Die Auswirkungen von `\override` können mit `\revert` wieder rückgängig gemacht werden:

>     c4
>     \override Voice.Stem.thickness = #3.0
>     c4 c
>     \revert Voice.Stem.thickness
>     c4

Die Auswirkungen von `\override` und `\revert` wirken sich auf alle Grobs im entsprechenden Kontext aber der Stelle aus, an der sie gesetzt werden:

>     {
>       <<
>         {
>           e4
>           \override Staff.Stem.thickness = #3.0
>           e4 e e
>         } \\ {
>           c4 c c
>           \revert Staff.Stem.thickness
>           c4
>         }
>       >>
>     }

`\once` kann zusammen mit `\override` benutzt werden, um nur den aktuellen Zeitwert zu verändern:

>     {
>       <<
>         {
>           \override Stem.thickness = #3.0
>           e4 e e e
>         } \\ {
>           c4
>           \once \override Stem.thickness = #3.0
>           c4 c c
>         }
>       >>
>     }

#### Siehe auch

Referenz der Interna: Backend.

#### LilyPond – Notationsreferenz v2.24.4 (stabiler Zweig).