Wouldn't it be easier to define an independent \kierenTime function
that expects an integer (index?) numerator and a music (ly:music?)
denominator? Then we could just write
\version "2.22"
kierenTime =
#(define-void-function (num den) (index? ly:music?)
(format #t "~a\n" num)
(display-lily-music den))
\kierenTime 3 { 8~8. }
\kierenTime 3 4. % the dot is important :-)
... or, of course, a helper function that can be used after \time, like
Aaron proposed.
\version "2.22"
time =
#(define-music-function (beat-structure fraction)
((number-list? '()) pair?) ; note that pair? is way too general.
(_i "Set @var{fraction} as time signature, with optional
number list @var{beat-structure} before it.")
(if (fraction? fraction)
(make-music 'TimeSignatureMusic
'numerator (car fraction)
'denominator (cdr fraction)
'beat-structure beat-structure)
(begin
(ly:warning "Non-fraction time signature not yet implemented.")
(format #t "Given denominator:\n")
(display-lily-music (cdr fraction))
(empty-music))))
kieren =
#(define-scheme-function (num den) (exact? ly:music?)
(cons num den))
{
\time 4/4
c'1
\time \kieren 5 { 8~8.} c'4
}
Lukas