Xquartz で動いている xterm で M+ Bitmap Font を使う。
日本語環境を整える
日本語入力のために MacUIM をいれる。 anthy-utf8 を選択して、xquartz を立ち上げる。
起動時に次のものを立ち上げる必要があるので、 .xinitrc にでも書いておく。 あと必要な環境変数も。
$ cat .xinitrc
/Library/Frameworks/UIM.framework/Versions/Current/bin/uim-xim &
export LANG="ja_JP.UTF-8"
export XMODIFIERS=@im=uim
export GTK_IM_MODULE=uim
M+ Bitmap Font のインストール
http://mplus-fonts.osdn.jp/mplus-bitmap-fonts/ ここからダウンロードして、インストールする。
urxvt だとこのままでいいが、xterm で使いたいとなると、 JISからUCS-2 (ISO-10646)に変える必要がある。
ユニコードでエンコードしたmplusフォントの作り方 の手順を参に進めていく。
- Mona Font に含まれる jis2unicode 持ってくる
- M+ Bitmap Font の mplus_j10r.bdf, mplus_f10r を持ってくる
- jis2unicode で変換
- 英字と和文bdf を結合
- 結合したbdf の編集
- pcf に変換する
$./jis2unicode -b < mplus_j10r.bdf > umplus_j10r.bdf
$ cat mplus_f10r.bdf >> umplus_j10r.bdf
$ vi ./umplus_j10r.bdf
$ bdftopcf umplus_j10r.bdf | gzip > umplus_j10r.pcf.gz
編集前後の diff とったらこんな感じ。 ENDFONTS を探して結合部分のヘッダをまるごと削除する必要もある。
2c2
< FONT -mplus-gothic-medium-R-normal--10-100-75-75-C-100-jisx0208.1990-0
---
> FONT -umplus-gothic-medium-R-normal--10-100-75-75-C-100-iso10646-1
7c7
< FOUNDRY "mplus"
---
> FOUNDRY "umplus"
19,20c19,20
< CHARSET_REGISTRY "jisx0208.1990"
< CHARSET_ENCODING "0"
---
> CHARSET_REGISTRY "iso10646"
> CHARSET_ENCODING "1"
30c30
< CHARS 6963
---
> CHARS 7187
フォントを読み込む
適当なところに置いて、 .xinitrc に書いておく。
xset +fp ~/.fonts/mplus
xset +fp ~/.fonts/umplus
xset fp rehash
フォントが使えることを確認する。
$ xlsfonts | grep umplu
-umplus-gothic-medium-r-normal--0-0-75-75-c-0-iso10646-1
-umplus-gothic-medium-r-normal--10-100-75-75-c-100-iso10646-1
-umplus-gothic-medium-r-normal--12-120-75-75-c-120-iso10646-1
xterm 設定
wideFont で結合したフォントを指定しておく。 ペースト用の設定もいれておく。 ロケールは明示的に指定する必要があった。
XTerm*locale: utf-8
XTerm*font: -mplus-fxd-medium-r-normal--10-100-75-75-c-60-iso8859-1
XTerm*wideFont: -umplus-gothic-medium-r-normal--10-100-75-75-c-100-iso10646-1
XTerm*ximFont: -mplus-gothic-medium-r-normal--10-100-75-75-c-100-jisx0208.1983-0
*VT100.translations: #override Meta <KeyPress> V: insert-selection(PRIMARY, CUT_BUFFER0) \n
改善したいところ
- wideFont に指定するなら、結合は必要なかったんじゃないのかという疑問が残る。
- Shift-SPACE で入力切替するのにもなれる必要がある。
- できれば、mozc 使いたいけど、macuim で mozc 使おうとすると、再起動してねってエラーダイアログが出る。
- 10pxだと、等幅ではなくなって、和文がつまって表示される。12pxだと発生しない。 xterm UTF-8文字幅