X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=scm%2Fparser-ly-from-scheme.scm;h=a17edb63f9e59ff2445734b5f38aa5b5b26267b2;hb=77f4957eea552e8fde98d0c27fab0896cad89f6f;hp=05701bbcd92d1c822638cf8ce8d709ca20bc01f8;hpb=b7a0cffbf9d1069860368f289a5b50e9d1d90ba8;p=lilypond.git diff --git a/scm/parser-ly-from-scheme.scm b/scm/parser-ly-from-scheme.scm index 05701bbcd9..a17edb63f9 100644 --- a/scm/parser-ly-from-scheme.scm +++ b/scm/parser-ly-from-scheme.scm @@ -1,6 +1,6 @@ ;;;; This file is part of LilyPond, the GNU music typesetter. ;;;; -;;;; Copyright (C) 2004--2009 Nicolas Sceaux +;;;; Copyright (C) 2004--2011 Nicolas Sceaux ;;;; Jan Nieuwenhuizen ;;;; ;;;; LilyPond is free software: you can redistribute it and/or modify @@ -28,19 +28,11 @@ (char->integer #\0))))) (string->list (number->string var-idx))))))))) -(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)) - (ly:parser-lookup parser 'parseStringResult)) - (define-public (read-lily-expression chr port) - "Read a #{ lily music expression #} from port and return -the scheme music expression. The $ character may be used to introduce -scheme forms, typically symbols. $$ may be used to simply write a `$' -character." + "Read a lilypond music expression enclosed within @code{#@}} and @code{#@}} +from @var{port} and return the corresponding Scheme music expression. +The @samp{$} character may be used to introduce Scheme forms, typically +symbols. @code{$$} may be used to simply write a @samp{$} character itself." (let ((bindings '())) (define (create-binding! val) @@ -93,6 +85,6 @@ character." ,@(map (lambda (binding) `(ly:parser-define! parser-clone ',(car binding) ,(cdr binding))) (reverse bindings)) - (parse-string-result ,lily-string parser-clone))))) + (ly:parse-string-expression parser-clone ,lily-string))))) (read-hash-extend #\{ read-lily-expression)