- 1, 0, 0, (SCM pb),
- "Break (pages and lines) the @code{Paper_book} object @var{pb}"
- " without looking for optimal spacing: stack as many lines on"
- " a page before moving to the next one.")
+ 1, 0, 0, (SCM pb),
+ "Break (pages and lines) the @code{Paper_book} object @var{pb}"
+ " without looking for optimal spacing: stack as many lines on"
+ " a page before moving to the next one.")
+{
+ Minimal_page_breaking b (unsmob<Paper_book> (pb));
+ return b.solve ();
+}
+
+LY_DEFINE (ly_one_page_breaking, "ly:one-page-breaking",
+ 1, 0, 0, (SCM pb),
+ "Put each score on a single page. The paper-height settings"
+ " are modified so each score fits on one page, and the"
+ " height of the page matches the height of the full score.")
+{
+ One_page_breaking b (unsmob<Paper_book> (pb));
+ return b.solve ();
+}
+
+LY_DEFINE (ly_one_line_breaking, "ly:one-line-breaking",
+ 1, 0, 0, (SCM pb),
+ "Put each score on a single line, and put each line on its own"
+ " page. Modify the paper-width setting so that every page"
+ " is wider than the widest line.")
+{
+ One_line_page_breaking b (unsmob<Paper_book> (pb));
+ return b.solve ();
+}
+
+LY_DEFINE (ly_one_line_auto_height_breaking, "ly:one-line-auto-height-breaking",
+ 1, 0, 0, (SCM pb),
+ "Put each score on a single line, and put each line on its own"
+ " page. Modify the paper-width setting so that every page"
+ " is wider than the widest line. Modify the paper-height"
+ " setting to fit the height of the tallest line.")