5.3.4 Der \tweak-Befehl

In einigen Fällen ist es möglich, mit einem abgekürzten Befehl graphische Objekte zu verändern. Wenn Objekte direkt von einem Element des Quelltextes erstellt werden, kann der \tweak-Befehl eingesetzt werden:

< c
  \tweak #'color #red
  d
  g
  \tweak #'duration-log #1
  a
> 4
-\tweak #'padding #8
-^

[image of music]

Die hauptsächliche Benutzung von \tweak ist dann, wenn man nur ein Element von einer Ansammlung an Elementen verändern will, die alle zum gleichen musikalischen Moment beginnen. Das kann eine Noten in einem Akkord sein, oder eine von mehreren Triolenklammern, die zur gleichen Zeit beginnen.

Eine Einleitung der Syntax für den \tweakBefehl findet sich in Optimierungsmethoden.

Der \tweak-Befehl verändert die Eigenschaft des folgenden Objekts direkt, ohne dass die Bezeichnung des Objekts (Grobs) oder des Kontextes angegeben werden muss. Damit das funktioniert, muss das Objekt direkt auf den \tweak-Befehl folgen, auf das er sich auswirken soll. Das ist in manchen Fällen nicht gegeben, da viele Objekte durch LilyPond automatisch eingesetzt werden. Wenn etwa eine Note interpretiert wird, die nicht Teil eines Akkords ist, fügt LilyPond implizit einen ChordEvent vor die Note ein, sodass der \tweak-Befehl von der Note getrennt wird. Wenn aber Akkord-Klammern um die Note und den \tweak-Befehl gesetzt werden, folgt der ChordEvent auf den \tweak-Befehl und befindet sich deshalb direkt vor der Note, auf die er einwirken soll, sodass die Veränderung funktioniert.

An einem Beispiel demonstriert: Das funktioniert:

<\tweak #'color #red c>4

[image of music]

und das nicht:

\tweak #'color #red c4

[image of music]

Wenn mehrere gleichartige Elemente zum gleichen musikalischen Moment auftreten, kann der \override-Befehl nicht benutzt werden, um nur einen von ihnen zu verändern: hier braucht man den \tweak-Befehl. Elemente, die mehrfach zum gleichen musikalischen Moment auftreten können sind unter Anderem:

\tweak kann eingesetzt werden, um ein einzelnes Element aus der Gruppe zu verändern.

Der \tweak-Befehl kann nicht eingesetzt werden, um Hälse, Balken oder Versetzungszeichen zu verändern, weil diese später durch den Notenkopf erstellt werden und nicht direkt durch den Quelltext. \tweak kann auch nicht verwendet werden, um Schlüssel oder Taktarten zu verändern, denn sie werden von dem \tweak-Befehl während der Interpretation durch automatisches Einfügen von zusätzlichen Kontextelementen getrennt.

Der \tweak-Befehl kann aber als Alternative des \override-Befehls eingesetzt werden, wenn die zu verändernden Elemente keine zusätzlichen impliziten Elemente während der Interpretation hinzufügen. Legatobögen können also auch auf die folgende Weise verändert werden:

c-\tweak #'thickness #5 ( d e f)

[image of music]

Mehrere \tweak-Befehle können vor ein Notatioselement gesetzt werden und alle werden interpretiert:

c
-\tweak #'style #'dashed-line
-\tweak #'dash-fraction #0.2
-\tweak #'thickness #3
-\tweak #'color #red
 \glissando
f'

[image of music]

Der Strom der musikalischen Ereignisse (engl. music stream), der aus dem Quelltext erstellt wird, und zu dem auch die automatisch eingefügten Elemente gehören, kann betrachtet werden, siehe @ref{Musikalische Funktionen darstellen}. Das kann nützlich sein, wenn man herausfinden will, was mit dem \tweak-Befehl verändert werden kann.

Siehe auch

Handbuch zum Lernen: Optimierungsmethoden.

Notationsreferenz: @ref{Musikalische Funktionen darstellen}.

Bekannte Probleme und Warnungen

Der \tweak-Befehl kann nicht innerhalb von einer Variable eingesetzt werden.

Der \tweak-Befehl kann nicht innerhalb von \lyricmode eingesetzt werden.

Der \tweak-Befehl kann nicht benutzt werden, um die Kontrollpunkte eines von mehreren Bindebögen eines Akkorden zu verändern. Anstelle dessen wird der erste Bogen verändert, der in der Eingabedatei auftritt.


Andere Sprachen: English, español, français.

LilyPond – Notationsreferenz