On 2020-11-02 11:48 am, Dimitris Marinakis wrote:
Is it possible to modify this tweak to include padding (left & right)
for
the individual gliss lines?
[...]
\glissTweak needs to be able to handle using
ly:grob-set-nested-property!:
%%%%
glissTweak =
#(define-music-function
(parser location lst) (pair?)
(define (proc grob)
(let ((gliss-count (ly:grob-property grob 'glissando-index)))
(for-each
(lambda (x)
(let ((gliss-nmbr (car x))
(property-value-alist (cdr x)))
(if (eq? gliss-nmbr gliss-count)
(for-each
(lambda (y)
(let ((prop (car y)) (val (cdr y)))
(or (list? prop) (set! prop (list prop)))
(ly:grob-set-nested-property! grob prop val)))
property-value-alist))))
lst)))
#{ \once \override Glissando.after-line-breaking = #proc
<>\glissando #})
%%%%
Then you can do something like this:
%%%%
\glissTweak
#`((0 . ((style . dashed-line)
((bound-details right padding) . 2)
((bound-details right arrow) . #t)
(normalized-endpoints . (0 . -2.1))))
(1 . ((stencil . #f)))
(2 . ((stencil . #f)))
(3 . ((stencil . #f)))
(4 . ((style . dashed-line)
((bound-details left padding) . 2)
((bound-details left arrow) . #t)
(normalized-endpoints . (0 . -1.5)))))
<c' e g bes d>2^"\"some other tweaks\""
<d, a' fis' c' e'>
%%%%
-- Aaron Hill