|
From: | Michael Käppler |
Subject: | Re: \score inside define-markup-command |
Date: | Mon, 23 Feb 2009 10:36:57 +0100 |
User-agent: | Thunderbird 2.0.0.12 (X11/20071114) |
Hi,
good idea! But it still doesn't work. Let's look at the following minimal example:I don't know if it will work, but perhaps you can try to type\displayMusic {<< \clef #testclef a4 h c >>} to get the scheme version of your music,and to copy/paste the output you got after the #:score markup ...
#(define-markup-command (testmusic layout props a b c) (number? number? number?)
(interpret-markup layout props (markup #:score (make-music 'SequentialMusic 'elements (list (make-music 'EventChord 'elements (list (make-music 'NoteEvent 'duration (ly:make-duration 2 0 1 1) 'pitch (ly:make-pitch a b c)))))) ))) << c2^\markup \testmusic #-1 #0 #0 >>It fails with a bunch of error messages for which my knowledge of scheme isn't enough to understand.
/usr/local/lilypond/usr/share/lilypond/current/scm/markup.scm:208:10: In procedure string-append in expression (string-append make-name ": " ...): /usr/local/lilypond/usr/share/lilypond/current/scm/markup.scm:208:10: Wrong type (expecting string): (1 "unknown" #<Prob: Music C++: Music((elements #<Prob: Music C++: Music((elements #<Prob: Music C++: Music((pitch . #<Pitch c >) (duration . #<Duration 4 >))((display-methods #<procedure #f (note parser)>) (name . NoteEvent) (types general-music event note-event rhythmic-event melodic-event)) > ))((display-methods #<procedure #f (expr parser)> #<procedure #f (expr parser)> #<procedure #f (chord parser)>) (name . EventChord) (iterator-ctor . #<primitive-procedure ly:event-chord-iterator::constructor>) (length-callback . #<primitive-procedure ly:music-sequence::maximum-length-callback>) (to-relative-callback . #<primitive-procedure ly:music-sequence::event-chord-relative-callback>) (types general-music event-chord simultaneous-music)) > ))((display-methods #<procedure #f (seq parser)>) (name . SequentialMusic) (length-callback . #<primitive-procedure ly:music-sequence::cumulative-length-callback>) (start-callback . #<primitive-procedure ly:music-sequence::first-start-callback>) (elements-callback . #<procedure #f (m)>) (iterator-ctor . #<primitive-procedure ly:sequential-iterator::constructor>) (types general-music sequential-music)) >
) Can anyone help? Michael
[Prev in Thread] | Current Thread | [Next in Thread] |