For pieces I write I often use the format where the \time is presented as a number and a notehead. I have used the same code to do this for many a year withour a problem. However with the update to lilypond version 2.22.0 the solution is broken and returns a fatal error 'make-note-markup' and 'expected: duration, found: "2"

I have run the code through convert-ly, no changes were needed. I compiled on an older pc with an older version of lilypond without problems. So it seems there is some difference between 2.20.0 and 2.22.0 that breaks the code.

This is the code:

#(define-public (format-time-sig-note grob)
   (let* ((frac (ly:grob-property grob 'fraction))
          (num (if (pair? frac) (car frac) 4))
          (den (if (pair? frac) (cdr frac) 4))
          (m (markup #:override '(baseline-skip . 0.5)
                     #:center-column (#:number (number->string num)
#:override '(style . default) #:note (number->string den) DOWN))))
     (grob-interpret-markup grob m)))

this is the command to invoke that code, I normally put in in the global section
\override Staff.TimeSignature.stencil = #format-time-sig-note
and then
\time 1/2 (or whatever I need)

I use this very often and would like it to be replaced or fixed so I can use this again.
Does anyone know how?

Thanks, Ursus

Reply via email to