Hi all, In the snippet below, I want to tweak a dynamic grob created using Shevek's dynText function (cf. http://lists.gnu.org/archive/html/lilypond-user/2017-07/msg00043.html). But unfortunately, tweaks don't seem to affect it.
How can I change the function such that I can still apply tweaks (X-offset, self-alignment-X, etc.) to the combined dynamic-text grob "at runtime"? Thanks, Kieren. %%% SNIPPET BEGINS \version "2.19.64" dynText = #(define-event-function (parser location dyn expr) (markup? markup?) (let* ( (mark #{ \markup { \dynamic $dyn \hspace #0.2 \normal-text \fontsize #0.625 \italic $expr } #}) (offset (lambda (grob) (let* ( (layout (ly:grob-layout grob)) (props (ly:grob-alist-chain grob (ly:output-def-lookup layout 'text-font-defaults))) (target-X-extent (ly:stencil-extent (ly:text-interface::interpret-markup layout props dyn) X)) (width (abs (- (cdr target-X-extent) (car target-X-extent)))) ) (display target-X-extent) (- 1 (/ width 2)) ) ) ) ) #{ \tweak DynamicText.X-offset #offset #(make-dynamic-script mark) #} ) ) { c''1-\tweak self-alignment-X #RIGHT \dynText "mp" "test" } %%% SNIPPET ENDS ________________________________ Kieren MacMillan, composer ‣ website: www.kierenmacmillan.info ‣ email: i...@kierenmacmillan.info _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user