Hi Simon (et al.),
Just curious, from the perspective of someone still trying to figure out where
custom engravers fit into the Lilypond code ecosystem:
> I’m trying to update a library function of mine that automatically adds
> \newSpacingSection and overrides SpacingSpanner for every new time signature
> in its music argument.
> #(define (convrter m)
> (cond ((eq? (ly:music-property m 'name) 'TimeSignatureMusic)
> (let ((denom (ly:music-property m 'denominator)))
> #{
> $m
> \newSpacingSection
> \override Score.SpacingSpanner.common-shortest-duration =
> #(ly:make-moment (/ denom 2))
> #}))
> (else m)))
>
>
> convrt =
> #(define-music-function (mus) (ly:music?)
> (music-map convrter mus))
Why would / wouldn’t one want to make this a custom engraver, versus a music
function?
Thanks for any clarification!
Kieren
__________________________________________________
My work day may look different than your work day. Please do not feel obligated
to read or respond to this email outside of your normal working hours.