Deutschsprachiges LilyPond-Forum

Allgemeine Fragen und Probleme => Fragen und Probleme aller Art => Thema gestartet von: rgree am Donnerstag, 20. Juni 2024, 12:32

Titel: Variable mit \tweak(s) ? [gelöst]
Beitrag von: rgree am Donnerstag, 20. Juni 2024, 12:32
Hallo,

ich möchte erreichen, dass ein Triller in einer Bindung unter den Bogen gesetzt wird.
Das erreiche ich auch zuverlässig z.B. so :

\version "2.20.0"
% setBelow = -\tweak avoid-slur #'inside -\tweak outside-staff-priority ##f 
{
  c''4 ^( 4 -\tweak avoid-slur #'inside -\tweak outside-staff-priority ##f ^\trill 4 4)
}

Ich möchte nun die zwei \tweaks in eine Variable packen,
damit ich nicht immer diesen komplizierten Ausdruck angeben muss.

Das gelingt mit aber nicht.
Der Ausdruck "setBelow" oben klappt nicht; es kommen dann allerlei kryptische Fehlermeldungen.
Geht das überhaupt oder mache ich etwas falsch ?

Gruß,
Reinhard

Titel: Antw:Variable mit \tweak(s) ?
Beitrag von: harm6 am Donnerstag, 20. Juni 2024, 21:08
\tweak braucht zwei Argumente, wobei das letzte music sein muss.
Für kompliziertere Sachen gibts define-event-function. Hier reicht \etc stellvertretend zu verwenden:

\version "2.20.0"
setBelow = -\tweak avoid-slur #'inside -\tweak outside-staff-priority ##f \etc
{
  c''4 ^( 4 -\tweak avoid-slur #'inside -\tweak outside-staff-priority ##f ^\trill 4 4)
  c''4 ^( 4 ^\trill 4 4)
  c''4 ^( 4 \setBelow ^\trill 4 4)
}

HTH,
  Harm

P.S. 2.20.0 ist veraltet, mach ein upgrade!
Titel: Antw:Variable mit \tweak(s) ?
Beitrag von: rgree am Freitag, 21. Juni 2024, 08:00
Danke!

Gruß,
Reinhard