]> git.donarmstrong.com Git - lilypond.git/commitdiff
(define-fonts, font-command,
authorJan Nieuwenhuizen <janneke@gnu.org>
Sat, 10 Apr 2004 10:54:57 +0000 (10:54 +0000)
committerJan Nieuwenhuizen <janneke@gnu.org>
Sat, 10 Apr 2004 10:54:57 +0000 (10:54 +0000)
font-load-encoding): Handle ENCODING = #f.

ChangeLog
scm/output-ps.scm

index 877805868a7508ca249fb306996f9461c2b823c8..e262bcecb6d4e1cb327b99fca8d017e730221475 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,7 @@
 2004-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
 
-       * scm/output-ps.scm (define-fonts): Do not crash when encoding==#f
-       (ugh?).
+       * scm/output-ps.scm (define-fonts, font-command,
+       font-load-encoding): Handle ENCODING = #f.
 
        * scm/output-tex.scm (output-scopes): Check if variable is bound.
 
index ca38171f5b0c5306082acb79abf2af23fa1c2ae8..8e0a148643ac4bfe6f000e7dd56362200f252dce 100644 (file)
@@ -59,6 +59,7 @@
 
 (use-modules (guile)
             (ice-9 regex)
+            (srfi srfi-1)
             (srfi srfi-13)
             (lily))
 
    (ly:number->string (* 10 thick))
    " ] 0 draw_dashed_slur"))
 
+;; FIXME -- now that we can have ENCODING == #f, this can be
+;; simplified, esp OVERRIDE-CODING-COMMAND
 (define (font-command font . override-coding-command)
   (let* ((name (ly:font-filename font))
         (magnify (ly:font-magnification font))
         (font-encoding (assoc-get 'output-name coding-alist))
         (coding-command (if (not (null? override-coding-command))
                             (car override-coding-command)
-                            (get-coding-command font-encoding))))
+                            (if font-encoding
+                                (get-coding-command font-encoding)
+                                #f))))
 
     (string-append
      "magfont" (string-encode-integer (hashq  name 1000000))
      "m" (string-encode-integer (inexact->exact (round (* 1000 magnify))))
-     (if (equal? input-encoding font-encoding) ""
+     (if (or (not font-encoding) (equal? input-encoding font-encoding)) ""
         (string-append "e" coding-command)))))
 
 (define (define-fonts paper font-list)
           (coding-alist (ly:font-encoding-alist font))
           (input-encoding (assoc-get 'input-name coding-alist))
           (font-encoding (assoc-get 'output-name coding-alist))
-          (plain (font-command font (get-coding-command font-encoding)))
           (command (font-command font))
+          ;; FIXME -- see (font-command )
+          (plain (if font-encoding (get-coding-command font-encoding)
+                     command))
           (designsize (ly:font-design-size font))
           (magnification (* (ly:font-magnification font)))
           (ops (ly:paper-lookup paper 'outputscale))
                               (assoc-get 'input-name
                                          (ly:font-encoding-alist x)))
                             font-list))
-        ;;(encodings (uniq-list (sort-list encoding-list string<?))))
-        (encodings (uniq-list (sort-list
-                               ;; FIXME: UGR
-                               (filter (lambda (x) (string? x)) encoding-list)
-                               string<?))))
-    
+        (encodings (uniq-list (sort-list (filter string? encoding-list)
+                                         string<?))))
+
     (string-append
      (apply string-append (map font-load-encoding encodings))
      (apply string-append