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.


Reply via email to