From ae1a02bf99b8c91edf6a91b799328c45c6e15ebd Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Sun, 20 Jun 2004 20:43:52 +0000 Subject: [PATCH] * lily/my-lily-parser.cc (parse_string): init parser variable when lexer_ is set, ie. in parse_string and parse_file. * scm/lily.scm (collect-scores-for-book): new function. * lily/my-lily-parser.cc (LY_DEFINE): define parser in parser scope, not in lily module. --- ChangeLog | 3 +++ lily/my-lily-parser.cc | 10 +++++++--- scm/lily.scm | 13 +++++++------ scm/safe-lily.scm | 1 - 4 files changed, 17 insertions(+), 10 deletions(-) diff --git a/ChangeLog b/ChangeLog index 60ac76a11f..e220bc8905 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2004-06-20 Han-Wen Nienhuys + * lily/my-lily-parser.cc (parse_string): init parser variable when + lexer_ is set, ie. in parse_string and parse_file. + * lily/book.cc (LY_DEFINE): new function. ly:make-book. Supercedes ly:score-bookify. diff --git a/lily/my-lily-parser.cc b/lily/my-lily-parser.cc index 1abe0fe85a..100b2c4771 100644 --- a/lily/my-lily-parser.cc +++ b/lily/my-lily-parser.cc @@ -85,6 +85,9 @@ void My_lily_parser::parse_file (String init, String name, String out_name) { lexer_ = new My_lily_lexer (sources_); + // TODO: use $parser + lexer_->set_identifier (ly_symbol2scm ("parser"), + self_scm ()); output_basename_ = out_name; lexer_->main_input_name_ = name; @@ -117,6 +120,10 @@ My_lily_parser::parse_string (String ly_code) lexer_ = (parent == 0 ? new My_lily_lexer (sources_) : new My_lily_lexer (*parent)); + // TODO: use $parser + lexer_->set_identifier (ly_symbol2scm ("parser"), + self_scm ()); + lexer_->main_input_name_ = ""; lexer_->main_input_b_ = true; @@ -280,9 +287,6 @@ LY_DEFINE (ly_parse_file, "ly:parse-file", My_lily_parser *parser = new My_lily_parser (&sources); - // TODO: use $parser - parser->lexer_->set_identifier (ly_symbol2scm ("parser"), - parser->self_scm ()); parser->parse_file (init, file_name, out_file); bool error = parser->error_level_; diff --git a/scm/lily.scm b/scm/lily.scm index ecd29e3876..57a5f337c7 100644 --- a/scm/lily.scm +++ b/scm/lily.scm @@ -94,21 +94,22 @@ ;; parser stuff. (define-public (print-music-as-book parser music) - (let* ( - (head (ly:parser-lookup parser '$globalheader)) - (book (ly:score-bookify score head))) + (let* ((head (ly:parser-lookup parser '$globalheader)) + (book (ly:make-book (ly:parser-lookup parser $defaultbookpaper) + head score))) (ly:parser-print-book parser book))) (define-public (print-score-as-book parser score) (let* ((head (ly:parser-lookup parser '$globalheader)) - (book (ly:score-bookify score head))) - + (book (ly:make-book (ly:parser-lookup parser $defaultbookpaper) + head score))) (ly:parser-print-book parser book))) (define-public (print-score parser score) (let* ((head (ly:parser-lookup parser '$globalheader)) - (book (ly:score-bookify score head))) + (book (ly:make-book (ly:parser-lookup parser $defaultbookpaper) + head score))) (ly:parser-print-score parser book))) (define-public (collect-scores-for-book parser score) diff --git a/scm/safe-lily.scm b/scm/safe-lily.scm index 47752e3bed..5a9cbe0348 100644 --- a/scm/safe-lily.scm +++ b/scm/safe-lily.scm @@ -122,7 +122,6 @@ ly:round-filled-box ly:run-translator ly:set-option - ly:score-bookify ly:set-point-and-click ly:spanner-broken-into ly:spanner-get-bound -- 2.39.2