X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=scm%2Fparser-ly-from-scheme.scm;h=0bc41722cc821d54a9ef6fce097856c0b209cdf1;hb=26af8b19da5ea2b74fc169e28230f3e5f011a79f;hp=d7a83a1f4d513d8d496f17ca77a616b629c6fc23;hpb=bee08e5734bb9ba7b2e9a6a72902c80bb9b3c108;p=lilypond.git diff --git a/scm/parser-ly-from-scheme.scm b/scm/parser-ly-from-scheme.scm index d7a83a1f4d..0bc41722cc 100644 --- a/scm/parser-ly-from-scheme.scm +++ b/scm/parser-ly-from-scheme.scm @@ -2,7 +2,7 @@ ;;;; ;;;; source file of the GNU LilyPond music typesetter ;;;; -;;;; (c) 2004--2006 Nicolas Sceaux +;;;; (c) 2004--2008 Nicolas Sceaux ;;;; Jan Nieuwenhuizen (define gen-lily-sym @@ -17,8 +17,9 @@ (char->integer #\0))))) (string->list (number->string var-idx))))))))) -(define-public (ly:parse-string-result str parser) +(define-public (parse-string-result str parser) "Parse `str', which is supposed to contain a music expression." + (ly:parser-parse-string parser (format #f "parseStringResult = \\notemode { ~a }" str)) @@ -77,10 +78,10 @@ character." ;; other caracters (else (display c out)))))))) - `(let ((parser-clone (ly:clone-parser parser))) + `(let ((parser-clone (ly:parser-clone parser))) ,@(map (lambda (binding) `(ly:parser-define! parser-clone ',(car binding) ,(cdr binding))) (reverse bindings)) - (ly:parse-string-result ,lily-string parser-clone))))) + (parse-string-result ,lily-string parser-clone))))) (read-hash-extend #\{ read-lily-expression)