;;;;
;;;; source file of the GNU LilyPond music typesetter
;;;;
-;;;; (c) 2004--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; (c) 2004--2008 Han-Wen Nienhuys <hanwen@xs4all.nl>
(define-module (scm framework-tex)
#:export (output-framework-tex
(scm kpathsea)
(lily))
+(define format ergonomic-simple-format)
+
(define (output-formats)
(define formats (ly:output-formats))
(set! formats (completize-formats formats))
(define-public (tex-font-command-raw name magnification)
(string-append
"magfont"
- (digits->letters (format #f "~a" name))
+ (digits->letters (format "~a" name))
"m"
(string-encode-integer
(inexact->exact (round (* 1000 magnification))))))
(apply string-append
(map
(lambda (sub-name)
- (format #f "\\font\\~a=~a scaled ~a%\n"
+ (format "\\font\\~a=~a scaled ~a%\n"
(tex-font-command-raw
sub-name (ly:font-magnification font))
sub-name
(define (dump-page putter page last? with-extents?)
(ly:outputter-dump-string
putter
- (format #f "\\lybox{~a}{~a}{%\n"
+ (format "\\lybox{~a}{~a}{%\n"
(if with-extents?
(interval-start (ly:stencil-extent page X))
0.0)
"}%\n\\vfill\n\\lilypondpagebreak\n")))
(define-public (output-framework basename book scopes fields)
- (let* ((filename (format #f "~a.tex" basename))
+ (let* ((filename (format "~a.tex" basename))
(outputter (ly:make-paper-outputter (open-file filename "wb") 'tex))
(paper (ly:paper-book-paper book))
(page-stencils (map page-stencil (ly:paper-book-pages book)))
(define (dump-line putter line last?)
(ly:outputter-dump-string
putter
- (format #f "\\lybox{~a}{~a}{%\n"
+ (format "\\lybox{~a}{~a}{%\n"
(ly:number->string
(max 0 (interval-end (paper-system-extent line X))))
(ly:number->string
(define-public (output-classic-framework
basename book scopes fields)
- (let* ((filename (format #f "~a.tex" basename))
+ (let* ((filename (format "~a.tex" basename))
(outputter (ly:make-paper-outputter
(open-file filename "w") 'tex))
(paper (ly:paper-book-paper book))
(define-public (output-preview-framework
basename book scopes fields)
- (let* ((filename (format #f "~a.tex" basename))
+ (let* ((filename (format "~a.tex" basename))
(outputter (ly:make-paper-outputter (open-file filename "wb")
'tex))
(paper (ly:paper-book-paper book))
(output-scale (ly:output-def-lookup defs 'output-scale)))
(postscript->pdf (* paper-width output-scale (/ (ly:bp 1)))
(* paper-height output-scale (/ (ly:bp 1)))
- (string-append (basename name ".tex") ".ps"))))
+ (string-append (dir-basename name ".tex") ".ps"))))
(define-public (convert-to-png book name)
(let* ((defs (ly:paper-book-paper book))
(* paper-width output-scale (/ (ly:bp 1)))
(* paper-height output-scale (/ (ly:bp 1)))
- (string-append (basename name ".tex") ".ps"))))
+ (string-append (dir-basename name ".tex") ".ps"))))
(define-public (convert-to-ps book name)
(let* ((paper (ly:paper-book-paper book))
(preview? (string-contains name ".preview"))
(papersizename (ly:output-def-lookup paper 'papersizename))
(landscape? (eq? #t (ly:output-def-lookup paper 'landscape)))
- (base (basename name ".tex"))
- (ps-name (format #f "~a.ps" base ".ps"))
+ (base (dir-basename name ".tex"))
+ (ps-name (format "~a.ps" base ".ps"))
(cmd (string-append "dvips"
(if preview?
" -E"
#f " *%.*\n?"
(ly:kpathsea-expand-variable "extra_mem_top")
'pre "" 'post)))
- (base (basename name ".tex"))
+ (base (dir-basename name ".tex"))
(cmd (format
#f "latex \\\\nonstopmode \\\\input '~a'" name)))