Aaron Hill <lilyp...@hillvisions.com> writes: > On 2023-12-12 12:06 pm, Stefano Antonelli wrote: >> On Tue, 2023-12-12 at 02:31 -0800, Aaron Hill wrote: >>> Would this not work? >>> %%%% >>> #(define (add-midi-to-score score) >>> #{ \score { $score \midi {} } #}) >>> toplevel-score-handler = >>> #(lambda (score) >>> (collect-scores-for-book (add-midi-to-score score))) >>> %%%% >> Indeed it does! >> Without a \midi block one midi file is produced. >> However, if there is already a \midi block, two midi files are >> produced. I'm not sure if that's going to be a problem aside from the >> extra processing time. > > Any better? > > %%%% > #(define (add-midi-to-score score) > (define (has-midi? score) > (any (lambda (x) (ly:output-def-lookup x 'is-midi))
Wouldn't that need to be (ly:output-def-lookup x 'is-midi #f) ? > (ly:score-output-defs score))) > (if (has-midi? score) score > #{ \score { $score \midi {} } #})) -- David Kastrup