[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

Re: Meadowで Windows font + x-face は可能?



>>>>> In [meadow-users-jp : No.4324] 
>>>>> http://www.ysnb.net/meadow/meadow-users-jp/x/4324
>>>>> “白井” = Hideyuki SHIRAI (白井秀行) <shirai@xxxxxxxxxxx> wrote:
kose> この逆
kose> 
kose> (get-fontset-font my-fontset-name 'bitmap)
kose> =>  "Bitmap-16"
kose> 
kose> というようなことはできないんでしょうか?

白井> ~/.emacs から抜き出した参考程度

白井> (cdr (assq 'bitmap (assoc (cdr (assq 'font (frame-parameters)))
白井> 			  global-fontset-alist)))
白井> => "Bitmap-16"

ありがとうございます。
(そーか、それしかないか。)

Netinstall の bitmap-mule パッケージに bmp16-etl.bdf を同封
して auto-autoloads.el を以下のようにすると、

o 全ての fontset に対して
  ->  bitmap にフォントがセットされていなかったら
     -> bitmap16 をセットする。

になります。 default-fontset でも bitmap 表示できますし、
TrueTypeフォントの設定をしている人も bitmap 表示できます。

のようにしようと思います。

;;; pkginfo/bitmap-mule/auto-autoloads.el

;;; Copyright (C) 2002 The Meadow Team

;; Author: KOSEKI Yoshinori <kose@xxxxxxxxxxx>

;; Make bitmap16 font and set to all fontsets.
;; Using Meadow/fonts/intlfonts/bmp16-etl.bdf.

(require 'bitmap)

;; Set bitmap16 font.
(let ((font "bitmap16")
      (bdf (expand-file-name "../../fonts/intlfonts/bmp16-etl.bdf" 
			     data-directory)))
  (when (and (file-exists-p bdf)
	     (not (member font (w32-font-list))))
    (w32-auto-regist-bdf-font font bdf 0)
    ;; Set bitmap16 font to all fontsets.
    (let ((fset (fontset-list)))
      (while fset
	(when (string-match "fixed-medium-r" (cdr (assoc 'bitmap 
				 (assoc (car fset) global-fontset-alist))))
	  (set-fontset-font (car fset) 'bitmap "bitmap16"))
	(setq fset (cdr fset))))))

;;; auto-autoloads.el ends here


実際には、bitmap-ci.el でセットする
「-*-fixed-medium-r-*--16-*-100-100-m-*-bitmap.8x16-0
のようなフォントだったら」になってます。

bitmapフォント名を fixed-medium-r にマッチする名前にしている
人は上書きしちゃうんですが、そんな人いるかな?

P.S.
Netinstall で使用するパッケージの更新履歴は、
http://www.meadowy.org/meadow/dists/1.15/pkginfo/ChangeLog
に書くことにしました。

また pkginfo/[パッケージ名]/Makefile.pkg を使えば、install
したり、パッケージを作ったりできます。
(まだ一部しか準備していませんが)
-- 
こせき // Meadow Netinstall
http://www.netlaputa.ne.jp/~kose/Emacs/Meadow/#netinstall