Dnia 2021-02-17, o godz. 16:41:24 David Nalesnik <david.nales...@gmail.com> napisaĆ(a):
> Don't forget to "reply all" > Sorry... I'll reply all. Write me, that well or wrong... Well... thank you - very helpful people I prepared line spanner useful to drum part. Bravura font is required because special symbol. I think, that best will if I share this code for other users. %%% \version "2.21.5" %%% wiggleCircularChar = \markup { \concat { \scale #'(1.5 . 1) \override #'(font-name . "Bravura") \char ##xEAC3 } } #(define (wiggleCircular grob) (if (ly:stencil? (ly:line-spanner::print grob)) (let* ((stencil (ly:line-spanner::print grob)) ;(dot (ly:font-get-glyph (ly:grob-default-font grob) "scripts.turn")) (X-ext (ly:stencil-extent stencil X)) (Y-ext (ly:stencil-extent stencil Y)) ;(width 0.1) (len (interval-length X-ext)) (sym-stencil (grob-interpret-markup grob wiggleCircularChar)) (sym-X-ext (ly:stencil-extent sym-stencil X)) (sym-len (interval-length sym-X-ext))) (ly:stencil-translate (grob-interpret-markup grob (markup (#:pattern (inexact->exact (round (/ len sym-len))) X 0 (markup #:scale (cons 1 1) wiggleCircularChar)))) (cons (interval-start X-ext) (interval-start Y-ext)))) #f)) %%%% { \override Score.TextSpanner.stencil = #wiggleCircular \override Score.TextSpanner.to-barline = ##t c'1\startTextSpan c' c' c' c' c' c' c' c' c' c' c' c' c'\stopTextSpan } %%%
\version "2.21.5" %%% wiggleCircularChar = \markup { \concat { \scale #'(1.5 . 1) \override #'(font-name . "Bravura") \char ##xEAC3 } } #(define (wiggleCircular grob) (if (ly:stencil? (ly:line-spanner::print grob)) (let* ((stencil (ly:line-spanner::print grob)) ;(dot (ly:font-get-glyph (ly:grob-default-font grob) "scripts.turn")) (X-ext (ly:stencil-extent stencil X)) (Y-ext (ly:stencil-extent stencil Y)) ;(width 0.1) (len (interval-length X-ext)) (sym-stencil (grob-interpret-markup grob wiggleCircularChar)) (sym-X-ext (ly:stencil-extent sym-stencil X)) (sym-len (interval-length sym-X-ext))) (ly:stencil-translate (grob-interpret-markup grob (markup (#:pattern (inexact->exact (round (/ len sym-len))) X 0 (markup #:scale (cons 1 1) wiggleCircularChar)))) (cons (interval-start X-ext) (interval-start Y-ext)))) #f)) %%%% { \override Score.TextSpanner.stencil = #wiggleCircular \override Score.TextSpanner.to-barline = ##t c'1\startTextSpan c' c' c' c' c' c' c' c' c' c' c' c' c'\stopTextSpan }