lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: \score inside define-markup-command


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,
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 ...
good idea! But it still doesn't work. Let's look at the following minimal example:

#(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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]