From 49e4c7ee898f09c6fd6ffd73d49f091344d0c7d7 Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Wed, 3 Jan 2007 00:26:00 +0100 Subject: [PATCH] for lp-book, output empty *-systems.tex* for an empty file. --- ly/init.ly | 5 +++-- ly/lilypond-book-preamble.ly | 23 +++++++++++++++++++++++ scm/framework-eps.scm | 11 +++++++---- 3 files changed, 33 insertions(+), 6 deletions(-) diff --git a/ly/init.ly b/ly/init.ly index 2f718ed93d..da97ded0e6 100644 --- a/ly/init.ly +++ b/ly/init.ly @@ -15,7 +15,8 @@ #(define $defaultheader #f) #(define version-seen #f) #(define expect-error #f) - +#(define output-empty-score-list #f) + #(use-modules (scm clip-region)) \maininput %% there is a problem at the end of the input file @@ -33,7 +34,7 @@ (defined? 'input-file-name)) (version-not-seen-message input-file-name)) -#(if (pair? toplevel-scores) +#(if (or (pair? toplevel-scores) output-empty-score-list) ((if (defined? 'default-toplevel-book-handler) default-toplevel-book-handler toplevel-book-handler) diff --git a/ly/lilypond-book-preamble.ly b/ly/lilypond-book-preamble.ly index 91fde7c84b..063c69680b 100644 --- a/ly/lilypond-book-preamble.ly +++ b/ly/lilypond-book-preamble.ly @@ -6,6 +6,29 @@ #(define default-toplevel-book-handler print-book-with-defaults-as-systems ) +#(define toplevel-book-handler + + (lambda ( . rest) + (set! output-empty-score-list #f) + (apply print-book-with-defaults rest))) + +#(define toplevel-music-handler + (lambda ( . rest) + (set! output-empty-score-list #f) + (apply collect-music-for-book rest))) + +#(define toplevel-score-handler + (lambda ( . rest) + (set! output-empty-score-list #f) + (apply collect-scores-for-book rest))) +#(define toplevel-text-handler + (lambda ( . rest) + (set! output-empty-score-list #f) + (apply collect-scores-for-book rest))) + +#(set! output-empty-score-list #t) + + #(ly:set-option (quote no-point-and-click)) #(define inside-lilypond-book #t) #(define version-seen #t) diff --git a/scm/framework-eps.scm b/scm/framework-eps.scm index e2215ede41..f7003bac2a 100644 --- a/scm/framework-eps.scm +++ b/scm/framework-eps.scm @@ -28,11 +28,14 @@ stencil, so LaTeX includegraphics doesn't fuck up the alignment." (define left - (apply min - (map (lambda (stc) - (interval-start (ly:stencil-extent stc X))) - stencils))) + (if (pair? stencils) + (apply min + (map (lambda (stc) + (interval-start (ly:stencil-extent stc X))) + stencils)) + 0.0)) + (map (lambda (stil) (ly:make-stencil -- 2.39.2