diff options
| author | David Aspinall | 2007-06-10 12:57:59 +0000 |
|---|---|---|
| committer | David Aspinall | 2007-06-10 12:57:59 +0000 |
| commit | 34e0c59a3c50d55fa6a34f8d109714a8aeeadac6 (patch) | |
| tree | 44ac931288d9b33688fbbca3be319d925dc88c57 | |
| parent | 32dce0bc78563c4b60fb11eeeae3be88a6555f7a (diff) | |
Cleanup mac init, make it compile safe
| -rw-r--r-- | x-symbol/lisp/x-symbol.el | 93 |
1 files changed, 53 insertions, 40 deletions
diff --git a/x-symbol/lisp/x-symbol.el b/x-symbol/lisp/x-symbol.el index 55a3a6a2..abc51c94 100644 --- a/x-symbol/lisp/x-symbol.el +++ b/x-symbol/lisp/x-symbol.el @@ -4876,9 +4876,54 @@ uses it with TOKEN and CHARSYM." ;;;=========================================================================== +;; Patch added by DA for Proof General with Carbon Emacs, with help from +;; YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>. +;;;=========================================================================== + +(defun x-symbol-mac-setup1 () + ;; Use David Aspinall's xsymb1.ttf font + ;; (setq x-symbol-xsymb1-name "xsymb1_ttf") + ;; Use Norbert Voelker's isaxsymb1.ttf font + (progn + (setq x-symbol-xsymb1-name "isaxsym") + (setq x-symbol-latin1-fonts nil) + (setq x-symbol-latin2-fonts nil) + (setq x-symbol-latin3-fonts nil) + (setq x-symbol-latin5-fonts nil) + (setq x-symbol-latin9-fonts nil) + (setq x-symbol-xsymb0-fonts + '("-apple-symbol-medium-r-normal--%d-%d0-*-*-*-*-adobe-fontspecific")) + (setq x-symbol-xsymb1-fonts + (list (concat "-apple-" x-symbol-xsymb1-name + "-medium-r-normal--%d-%d0-*-*-*-*-iso10646-1"))))) + +(eval-and-compile ;; da: tricky to compile this; define-ccl-program is a macro +'(define-ccl-program ccl-encode-fake-xsymb1-font + `(0 + ((r2 = r1) + (r1 = 0) + (if (r0 == ,(charset-id 'xsymb1-right)) + (r2 |= 128)))) + "CCL program for fake xsymb1 font")) + +(defun x-symbol-mac-setup2 () + (setq font-ccl-encoder-alist + (cons (cons x-symbol-xsymb1-name ccl-encode-fake-xsymb1-font) + font-ccl-encoder-alist)) + (set-fontset-font nil 'xsymb1-left + (cons x-symbol-xsymb1-name "iso10646-1")) + (set-fontset-font nil 'xsymb1-right + (cons x-symbol-xsymb1-name "iso10646-1")) + (dolist (face '(x-symbol-face x-symbol-sub-face x-symbol-sup-face)) + (set-face-attribute face nil + :family 'unspecified :font 'unspecified))) + + +;;;=========================================================================== ;;; Calling the init code ;;;=========================================================================== + (unless noninteractive ;; necessary for batch compilation of x-symbol-image.el etc. CW: maybe ;; calling the init code here isn't that good after all (see info node @@ -4909,28 +4954,13 @@ uses it with TOKEN and CHARSYM." (setq x-symbol-latin5-fonts nil) (setq x-symbol-latin9-fonts nil) (setq x-symbol-xsymb0-fonts nil) - (setq x-symbol-xsymb1-fonts nil)) - - ;; Patch with help from YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> - ;; for Carbon Emacs. - ((eq window-system 'mac) -; Use David Aspinall's xsymb1.ttf font -; (setq x-symbol-xsymb1-name "xsymb1_ttf") -; Use Norbert Voelker's isaxsymb1.ttf font - (setq x-symbol-xsymb1-name "isaxsym") - (setq x-symbol-latin1-fonts nil) - (setq x-symbol-latin2-fonts nil) - (setq x-symbol-latin3-fonts nil) - (setq x-symbol-latin5-fonts nil) - (setq x-symbol-latin9-fonts nil) - (setq x-symbol-xsymb0-fonts - '("-apple-symbol-medium-r-normal--%d-%d0-*-*-*-*-adobe-fontspecific")) - (setq x-symbol-xsymb1-fonts - (list (concat "-apple-" x-symbol-xsymb1-name - "-medium-r-normal--%d-%d0-*-*-*-*-iso10646-1"))))) + (setq x-symbol-xsymb1-fonts nil))) + + (if (eq window-system 'mac) + (x-symbol-mac-setup1)) (x-symbol-init-cset x-symbol-latin1-cset x-symbol-latin1-fonts - x-symbol-latin1-table) + x-symbol-latin1-table) (x-symbol-init-cset x-symbol-latin2-cset x-symbol-latin2-fonts x-symbol-latin2-table) (x-symbol-init-cset x-symbol-latin3-cset x-symbol-latin3-fonts @@ -4946,26 +4976,9 @@ uses it with TOKEN and CHARSYM." (x-symbol-init-cset x-symbol-xsymb1-cset x-symbol-xsymb1-fonts x-symbol-xsymb1-table) - ;; Patch from YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> - ;; continued. - (when (eq window-system 'mac) - (define-ccl-program ccl-encode-fake-xsymb1-font - `(0 - ((r2 = r1) - (r1 = 0) - (if (r0 == ,(charset-id 'xsymb1-right)) - (r2 |= 128)))) - "CCL program for fake xsymb1 font") - (setq font-ccl-encoder-alist - (cons (cons x-symbol-xsymb1-name ccl-encode-fake-xsymb1-font) - font-ccl-encoder-alist)) - (set-fontset-font nil 'xsymb1-left - (cons x-symbol-xsymb1-name "iso10646-1")) - (set-fontset-font nil 'xsymb1-right - (cons x-symbol-xsymb1-name "iso10646-1")) - (dolist (face '(x-symbol-face x-symbol-sub-face x-symbol-sup-face)) - (set-face-attribute face nil - :family 'unspecified :font 'unspecified)))) + (if (eq window-system 'mac) + (x-symbol-mac-setup2))) + ;; (when x-symbol-mule-change-default-face ;; (set-face-font 'default (face-attribute 'x-symbol-face :font))) |
