X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=scm%2Flily.scm;h=8c680eeda9afa341b7f9811c6dd1c5a9274f6a6a;hb=88a236914aa32c6d05861ca944f6259c98d94cd0;hp=e5c27d303aed555e2a1d689f91df7212e3e29c97;hpb=207ff3900c435070d808a685429068f444b02406;p=lilypond.git diff --git a/scm/lily.scm b/scm/lily.scm index e5c27d303a..8c680eeda9 100644 --- a/scm/lily.scm +++ b/scm/lily.scm @@ -11,6 +11,8 @@ (if (defined? 'set-debug-cell-accesses!) (set-debug-cell-accesses! #f)) +;(set-debug-cell-accesses! 5000) + (use-modules (ice-9 regex) (ice-9 safe) (oop goops) @@ -56,7 +58,8 @@ (define ifdef "First run this through cpp.") (define ifndef "First run this through cpp.") - +;; gettext wrapper +(define-public _ ly:gettext) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; @@ -120,6 +123,8 @@ (define-public (collect-music-for-book parser music) (collect-scores-for-book parser (ly:music-scorify music))) + + ;;;;;;;;;;;;;;;; ; alist @@ -331,7 +336,8 @@ L1 is copied, L2 not. (define-public (write-me message x) - "Return X. Display MESSAGE and write X. Handy for debugging, possibly turned off." + "Return X. Display MESSAGE and write X. Handy for debugging, +possibly turned off." (display message) (write x) (newline) x) ;; x) @@ -529,8 +535,7 @@ L1 is copied, L2 not. (outfile (open-file (string-append "gcstat-" (number->string gc-protect-stat-count) ".scm" - ) "w")) - ) + ) "w"))) (display "DUMPING...\n") (display @@ -553,36 +558,54 @@ L1 is copied, L2 not. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (define-public (postscript->pdf papersize name) - (display - (string-append - "Converting to " - (regexp-substitute/global #f "\\.ps" name 'pre ".pdf" 'post) - "\n")) - (system (string-append "ps2pdf -sPAPERSIZE=" papersize - " " - name))) + (let* ((cmd (string-append "ps2pdf -sPAPERSIZE=" papersize " " name)) + (output-name + (regexp-substitute/global #f "\\.ps" name 'pre ".pdf" 'post))) + + (newline (current-error-port)) + (display (format (_ "Converting to `~a'...") output-name) + (current-error-port)) + (newline (current-error-port)) + + (if (ly:get-option 'verbose) + (display (format "Invoking `~a'..." cmd) (current-error-port))) + (system cmd))) (define-public (postscript->png resolution name) - (system (string-append + (let + ((cmd (string-append "ps2png --resolution=" (if (number? resolution) (number->string resolution) "90") - " " + (if (ly:get-option 'verbose) + "--verbose " + " ") name))) + (if (ly:get-option 'verbose) + (begin + (display (format (_ "Invoking `~a'...") cmd) (current-error-port)) + (newline (current-error-port)))) + (system cmd))) (define-public (lilypond-main files) "Entry point for LilyPond." (let* ((failed '()) (handler (lambda (key arg) (set! failed (cons arg failed))))) (for-each - (lambda (f) (catch 'ly-file-failed (lambda () (ly:parse-file f)) handler)) + (lambda (f) + (catch 'ly-file-failed (lambda () (ly:parse-file f)) handler) +;;; (dump-gc-protects) + ) files) (if (pair? failed) (begin - (display - (string-append "\n *** Failed files: " (string-join failed) "\n")) + (newline (current-error-port)) + (display (_ "error: failed files: ") (current-error-port)) + (display (string-join failed) (current-error-port)) + (newline (current-error-port)) + (newline (current-error-port)) (exit 1)) (exit 0))))