Autor Thema: Nur Akzente "^" ausserhalb von Boegen setzen  (Gelesen 1919 mal)

fugenkomponist

  • Member
Nur Akzente "^" ausserhalb von Boegen setzen
« am: Sonntag, 14. August 2011, 15:13 »
Hallo,

gibt es irgendeine Moeglichkeit,
\override Script #'avoid-slur = #'outsidenicht auf alls Scripts, sondern nur auf ^ bzw. \marcato anzuwenden? Es sieht naemlich meiner Meinung nach ueberhaupt nicht gut aus, wenn die sich innerhalb der Boegen befinden. Fuer andere Artikulationszeichen (insbesondere Staccatopunkte) soll sich dabei nichts aendern, weil die wiederum ausserhalb nicht gut aussehen.
Falls man dafuer einen eigenen Befehl bauen muss, hab ich kein Problem damit, wenn die Akzente immer ueber den Noten sind (ich brauche also nichts, was zwischen scripts.umarcato und scripts.dmarcato unterscheidet). Nur hab ich leider mit Scheme noch ueberhaupt keine Erfahrung und fuerchte, dass man ohne nicht auskommt (ich wuesste jedenfalls nicht, wie ich von Scripts auf Marcato spezialisieren sollte).

fugenkomponist

  • Member
Re: Nur Akzente "^" ausserhalb von Boegen setzen
« Antwort #1 am: Sonntag, 14. August 2011, 18:06 »
k =
#(let ((m (make-music 'ArticulationEvent
'articulation-type "marcato")))
(set! (ly:music-property m 'tweaks)
(acons 'avoid-slur 'outside
(ly:music-property m 'tweaks)))
(set! (ly:music-property m 'tweaks)
(acons 'direction UP
(ly:music-property m 'tweaks)))
m
)
Quelle, die mir dabei geholfen hat: http://lilypond.org/doc/v2.14/Documentation/extending-big-page#inline-scheme-code
Es geht doch. Ich glaube, ich werde mich mal intensiver mit Scheme befassen. was ich da genau gemacht habe, hab ich nicht verstanden.