最新更新日 '99.10.31.


X のフォントをプラスしよう。
 本当は XEmacs のインストールの所で書けば良いのだけれど、別立てにしてしまいました。お許しを・・。

 例えば XEmacs で mew を使っていると、日本語部分の 文字が ~~~~~ とか表示されて時々メールが読めなくなったりしていませんか? 後は、(font/warning)(3) なんちゃら。とか言う注意メッセージが出力されたりします。何故だろう?と思いますよね。

  これは、普通の設定の XEmacs で認識出来ない文字コードが指定されているからです。例えば、今流行りの Wanderlust/1.0.3 等も User-Agent: ヘッダに日本語が使ってあると、ほとんどが表示出来ない(はずの)コードを使っていたりします;-)。

 mew の FAQ に以下の様な内容が登録されました。参考にしてみてください。

http://www.mew.org/FAQ/FAQ04/index-j.html#4.15

 これは、.emacs によるマイナス思考(ハードウェア的制限が絡むと書いた方が良いかな;-)的解決方法です。他の解決方法には、intlfonts-1.2.tar.gz と、言う多国語フォントのパッケージを入れてしまう。と、言う方法があります。今回は、そのフォントのインストールに付いて書いてみたいと思います。

 まずはじめに XEmacs を起動して、C-h h と叩いてください。これで沢山の国の「こんにちは」が表示されるのですが、多分普通の設定だと表示されないと思います。 XEmacs-21.1.6 以降や、Emacs-20.4 は MULE がサポートされる様になったので多国語がサポートされました。けど、実際にはフォントが無いので対応した文字コードに対する文字が出力出来ないのが現状です。それを打開する意味でも intlfonts-1.2.tar.gz は面白いと思います。
#この辺り、文書が怪しいかも・・。MULE と、多国語化が詳しい人読んだらちょっと突っ込んでもらえませんか(^^;;。

 と、言う事で早速、沢山の多国語フォントをインストールしてみましょう。まずは、intlfonts-1.2.tar.gz を持って来る事にします。

ftp://ftp.etl.go.jp/pub/mule/intlfonts-1.2.tar.gz

 サイズは異様にでかいです。23MB 程あります。じっくりと我慢してください。後、作業に辺り、大体 200MB 位の HDD を食うかもしれないのでディスク容量の沢山あるマシンで作業を行ってください。

 持って来た intlfonts-1.2.tar.gz を適当なディレクトリでインストールして上げます。

----------------
# cd /usr/local/src
# mv ~/intlfonts-1.2.tar.gz ./
# tar xvzfp intlfonts-1.2.tar.gz
# cd intlfonts-1.2
# ./configure --with-fontdir=/usr/X11R6/lib/X11/fonts/intlfonts-1.2
# make;make install
----------------
 簡単で、これで作業が終ります。インストール先は、/usr/X11R6/lib/X11/fonts/intlfonts-1.2 にしました。何も指定しないと、/usr/local/share/emacs/fonts に入ります。

 そして、X の fontpath に書き加えます。/etc/XF86Config に以下の一行を追加してあげましょう。

----------------
FontPath   "/usr/X11R6/lib/X11/fonts/intlfonts-1.2"
----------------
 こんな感じで登録した後で X を再起動します。これで多国語フォントが入りました。確認方法ですが、XEmacs を起動した後で、C-h h と叩けば「こんにちは」がいろいろな言語で表示出来ると思います。アラビア語も見えましたか?;-)。

 これで一連の作業は終りです。ふぅぅ。と、言いたい所ですが、/usr/X11R6/lib/X11/fonts/intlfonts-1.2 を du -sk してみると大変な事になっているみたいです(@_o)。なんと・・・。今回インストールしたフォントだけで 180MB もディスクを食っているではありませんかっ!!やってらんねーー。状態です。しゃーないのでスリムアップする事にしましょう。

 新しくインストールしたフォントを全て pcf 形式にして gzip してから、mkfontdir する事にします。

----------------
# tcsh
# cd /usr/X11R6/lib/X11/fonts/intlfonts-1.2
# gzip *.pcf
# cd /usr/X11R6/lib/X11/fonts/intlfonts-1.2/bdf
# foreach i ( *.bdf )
foreach? bdftopcf -o `echo $i | sed 's/bdf/pcf/'` $i
foreach? end
# gzip *.pcf
# rm *.bdf *.pcf
# cd ..
# rm *.bdf *.pcf
# mkfontdir /usr/X11R6/lib/X11/fonts/intlfonts-1.2
----------------
 こうすると、180MB 有ったフォントは 81MB 位にまで小さくなる事でしょう。

 X サーバが gz をサポートしている事を確認してから試してください。ACSEL-X の 2.1 等の古いバージョンは gz なフォントに対応していません。

 これで、XEmacs で他国語対応出来て面白いです。ふふふ。font のサイズもまぁ、気にはなるけど、そこそこ小さくなったので良い事ですね。はい。皆さんも英語以外の人とメールのやりとりが随分と楽になった事でしょう。ふふふ;-)。XEmacs の他に X のリソースとしていろいろ使える様になりました。めでたい事です。ただ、対応するソフトは何があるのでしょうかねぇ?Netscape かな;-)。


Copyright (c) 1997-2004 takachan@running-dog.net All Rights Reserved.