#include <cstdio>
using namespace std;
-#include "lilypond-key.hh"
#include "main.hh"
#include "music.hh"
#include "output-def.hh"
#include "warn.hh"
#include "performance.hh"
#include "paper-score.hh"
+#include "page-marker.hh"
#include "ly-smobs.icc"
Score *newscore = unsmob_score (scm_car (p))->clone ();
*t = scm_cons (newscore->self_scm (), SCM_EOL);
- t = SCM_CDRLOC(*t);
+ t = SCM_CDRLOC (*t);
newscore->unprotect ();
}
}
{
Book *book = (Book *) SCM_CELL_WORD_1 (s);
-#if 0
- if (book->key_)
- scm_gc_mark (book->key_->self_scm ());
-#endif
-
if (book->paper_)
scm_gc_mark (book->paper_->self_scm ());
scm_gc_mark (book->scores_);
Real scale = scm_to_double (paper->c_variable ("output-scale"));
Output_def *scaled_bookdef = scale_output_def (paper, scale);
- Object_key *key = new Lilypond_general_key (0, user_key_, 0);
- SCM scm_key = key->unprotect ();
-
paper_book->paper_ = scaled_bookdef;
scaled_bookdef->unprotect ();
if (Score *score = unsmob_score (scm_car (s)))
{
SCM outputs = score
- ->book_rendering (paper_book->paper_, default_layout, key);
+ ->book_rendering (paper_book->paper_, default_layout);
while (scm_is_pair (outputs))
{
outputs = scm_cdr (outputs);
}
}
- else if (Text_interface::is_markup (scm_car (s)))
+ else if (Text_interface::is_markup_list (scm_car (s))
+ || unsmob_page_marker (scm_car (s)))
paper_book->add_score (scm_car (s));
else
assert (0);
}
- scm_remember_upto_here_1 (scm_key);
return paper_book;
}