Cygwin/X-Window における日本語環境の設定

ここでは、日本語化を行なうために必要な設定について解説します。

日本語化に必要なモジュールのインストール

日本語を扱うために最低限必要なものとして次があります。

kterm
日本語の表示を行なえるターミナルウィンドウです。
canna
日本語入力システムです。
kinput2
canna と組み合わせて使用する日本語入力のためのフロントエンドです。
lv
国際化に対応したページャです。less の代わりに使います。
yc
日本語に対応していない Emacs で日本語入力ができるようにするツールです。

yc 以外のモジュールは setup.exe でインストールできます。 日本語化したモジュールを配信しているサイトがありますので、 このサイトを指定してネットワークインストールします。 URL は「http://cygwin-je.sourceforge.jp」です。 インストール手順で示したように行ないますが、 ダウンロードサイトの指定の箇所で、この URL を指定すれば OK です (2005-03-29 追記 : setup.exe 上の URL には http://cygwin-je.sourceforge.jp/cygwin_je/ を指定しないとダメみたいです)。

yc は自分でダウンロードしてビルドしなければなりません。 knakさんのホームページ からダウンロードします。 「yc-4.0.13.tar.gz」のようなアーカイブをダウンロードして、

 $ gzip -cd yc-4.0.13.tar.gz | tar xvf -

とすれば解凍できます。 yc-4.0.13/ というディレクトリに移動すると INSTALL という名前のファイルがありますので、それを読みましょう。 インストール方法はそこにすべて解説されています (すべて日本語で 20 行程度で書かれていますので、迷うことはないはずです。 .emacs の設定のしかたも書いてあります)。

この他、日本語化しておくと便利なものとして、 man コマンドと groff コマンドがあります。 これを日本語化しておけば、 日本語の MANPAGE を読むことができるようになります。 英語版をインストールしているときは、 それを一旦アンインストールし、 上記サイトから日本語版をインストールします (2005-04-24 追記 : tcsh を利用したい場合、 tcsh も日本語版にした方が良いようです)。

そこまでするなら、 最初から全て日本語版でインストールすればよいということになります。 ただ、私は試していないので詳細は不明です。

環境変数の設定

私は、日本語コードはすべて EUC を用いていますので、 環境変数 LANG には「ja_JP.eucJP」を設定しています。 また、環境変数 TERM を vt100 にしておかないと、 lv でファイルを閲覧したときに表示がおかしくなりますので、 これらをまとめて .bashrc にでも設定しておきます。

なお、私はシェルは bash ではなく tcsh を使っていますので、~/.tcshrc の中に

 setenv LANG ja_JP.eucJP
 setenv TERM vt100

と記述してあります (tcsh をデフォルトのシェルにするには、 Windows XP の環境変数 SHELL の値を /bin/tcsh にし、 C:\cygwin\cygwin.bat 中で、bash を起動している行 (最終行)を「tcsh -l」に変更します)。

また、man コマンドを日本語版にしているときは、 表示ツール(ページャ)に lv を設定しておいた方が便利です。 環境変数名は PAGER です。

 setenv PAGER lv

これを設定しておかないと、英語版の less が使われてしまうので、 次のように lv にリダイレクトしないと日本語 MANPAGE がうまく読めません。

 $ man 対象 | lv

Canna と kinput2 の起動

次のように行ないます。

 $ /usr/sbin/cannaserver -inet
 $ /usr/X11R6/bin/kinput2 &

canna の終了は

 $ /usr/sbin/cannakill

です。 Cygwin 終了時には canna を終了させておかないと、 /tmp/.iroha_unix/ の下にファイルが残ってしまうので、 次回 canna の起動ができなくなってしまいます。 もし残ってしまったら、手動で消しましょう。

kterm

xterm の代わりに kterm を使います。 EUC コードで利用するので、

 $ kterm -km euc

が起動コマンドとなります。

.xinitrc

これまでに解説した内容を .xinitrc に記述しておけば楽になります。 .xinitrc に次のように記述しましょう。

 cannaserver -inet
 kinput2 &
 wmaker &
 kterm -km euc -sb -fg white -bg black -geometry 80x30+0+140 &
 exec kterm -km euc -sb -geometry 80x7+80+0 -fg black -bg gray -name console

こうすると、DOS 窓から「startx -- screen 0.0 800x600x256 &」 などとして起動したとき、 コンソールウィンドウと作業用のウィンドウが2つ起動した状態で X-Window が立ち上がります (マルチウィンドウで起動したいときは、 上記で「wmaker &」の箇所をコメントアウトし、 単に「startx」として起動します)。

なお、X-Window の終了は、コンソールウィンドウで exit と入力すれば OK です。


以上で日本語環境は完成です。 日本語を含むファイルの閲覧は kterm + lv で可能で、 日本語を含むファイルの編集は Emacs + yc でできます。 kterm 上での日本語入力は kinput2 がバックグラウンドで動作していれば可能です (kinput2 を使うなら、 kterm 上での日本語入力の ON/OFF の切替えは「Shift + SPACE」です。 Emacs + yc の場合のキー操作は knakさんのホームページ を見ましょう)。

目次へ ↑