2004年06月16日(水) [過去の今日]
#2 Emacs20とEmacs21のフォント設定
さて、Emacs20をチャット用、Emacs21(emcws)をメイン環境として共存させることにしたはいいのだが、チャット用のEmacsはmplusフォントで小さく、メイン環境は東雲で大きくしている関係で、同一のフォント設定を読み込んでしまうこの二つのemacsのフォント設定を振り分けるのは難しい。
Emacs20も21も.Xresourcesに
Emacs.Fontset-0:-misc-fixed-medium-r-normal--14-*-*-*-*-*-fontset-14 Emacs.Font: fontset-14
と書いて、aliasを使って-misc-fixed-のboldやらなにやらを揃えてやるのが一番確実なフォント設定だった。
Emacs20の時だけ別の設定を読み込ませる方法を探してみたのだが、一応.Xresources内でも分岐させることは可能らしい。かといってEmacsのバージョンを見る方法がわかるわけでもなく、やはり.emacs内部で分岐させる必要がある。
Emacsのフォントは、単にフォントセットを揃えてどのフォントセットを使うか指定してやればいい。ただ、ちゃんと動かないのが常なので、いくつかの方法があちこちで模索されてるようだ。今回、うちの環境でちゃんと動いたのは、.Xresourcesでフォントセットを作り、.emacsで割り当てる、というもの。
.Xresourcesにはこう書く。
Emacs.Fontset-0:-misc-fixed-medium-r-normal--14-*-*-*-*-*-fontset-14 Emacs.Fontset-1:-mplus-gothic-medium-r-normal--13-120-75-75-c-60-fontset-mplus12,\ ascii:-mplus-gothic-medium-r-normal--13-120-75-75-c-60-iso8859-1,\ katakana-jisx0201:-mplus-gothic-medium-r-normal--13-120-75-75-c-60-jisx0201.1976-0,\ japanese-jisx0208:-mplus-gothic-medium-r-normal--13-120-75-75-c-120-jisx0208.1983-0 Emacs.Fontset-2:-mplus-gothic-bold-r-normal--13-120-75-75-c-60-fontset-mplus12 Emacs.Font: fontset-14
これで「fontset-14」と「fontoset-mplus12」というフォントセットが出来上がる。Fontset-2がポイントで、こうすることでboldが正しく表示されるようだ。デフォルトではfontoset-14を利用する。
次に、.emacsにこう書く。
(cond (window-system (if (= emacs-major-version 20) (setq default-frame-alist (append '((font . "fontset-mplus12")))))))
これでうまいことemacs20の時はmplusを利用できるようになったのである。
しかし、emacs -f irchat などとするとちゃんとboldが出ないな……。普通に立ち上げてから M-x irchat する分には大丈夫なのに……謎。
(@420)