Hi, for the first time since I use LilyPond I have to deal with figured bass notation and noticed some problems. Here the first:
The following works as expected: \figures { <6 4>2 } \figures { <"a" "b">2 } \figures { <\markup \with-color #red "a" \markup \with-color #green "b"> } even this works: one = \markup \with-color #red "a" two = \markup \with-color #green "b" \figures { <\one \two>2 } Though using a scheme-function to create mrkups returns an error: foo = #(define-scheme-function (parser location strg)(markup?) strg) \figures { <\foo "a" \foo "b">2 } -> syntax error, unexpected SCM_FUNCTION \figures { < \foo "a" \foo "b">2 } Well, I can make it work with: #(define (make-bass-figure-event fig dur) (make-music 'BassFigureEvent 'duration dur (if (markup? fig) 'text 'figure) fig)) #(define (make-bass-figure-ev-chrd lst dur) (make-event-chord (map (lambda (e) (make-bass-figure-event e dur)) lst))) buzz = #(define-music-function (parser location lst duration)(list? ly:duration?) (make-bass-figure-ev-chrd lst duration)) \figures { \buzz #'("a" "b") 1 } \figures { \buzz #`(,one ,two) 1 } \figures { \buzz #`(,#{ \foo "a" #} ,#{ \foo "b" #}) 1 } Probably the syntax could be simplified, though I assume it will stay not very nice. Is there a better way to use a scheme-function here? or Can \figures { <\foo "a" \foo "b">2 } be made work? Cheers, Harm _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user