X Window Sytem(XFree86)は標準で日本語に対応していますが、標準の状態だとアプリケーションが日本語になりません。
これは各種の環境変数を日本語に設定していないためで、これさえ設定してやれば大体のアプリケーションが日本語で扱えるようになります。
まず、OS全体の言語設定を日本語に設定してやります。
これは環境変数LANGとして.cshrcに記述してやります。
> vi ~/.cshrc
setenv LANG ja_JP.eucJP
これで、言語設定が日本語EUCにセットされました。
以前はja_JP.EUCに設定していましたが、4.5-RELEASE辺りからja_JP.eucJPに移行しているみたいです。
何か問題が発生した場合は、ja_JP.EUCに戻すのも良いかもしれません。
同様にLC_ALLも日本語に設定しておきます。
これをすることにより、dateやlastコマンドをした時などの表示が日本語で表示されるようになります。
> vi ~/.cshrc
setenv LC_ALL ja_JP.eucJP
さらに、jlessの表示設定も明確に日本語に設定してやります。
これはたまに日本語が化けることがあるのを防ぐためです。
> vi ~/.cshrc
setenv JLESSCHARSET japanese
これらの設定はsetenvコマンドを直接コンソールに打ち込むことによって随時変更可能です。
例えばLC_ALLを解除したい時は、
> setenv LC_ALL C
あるいは、
> unsetenv LC_ALL
としてやれば解除できます。
また、現在の環境変数がどうなっているか確認したいときは、
> echo $LC_ALL
ja_JP.eucJP
などとして確認してやります。
これらの設定をすると、メッセージ等が日本語になってしまうために、Xとコンソールの両方の環境で使う方は、コンソールでのメッセージが文字化けしてしまうためちょっと不便になってしまいます。
そこで、コンソールの時は標準状態、それ以外は日本語に設定することもできます。
コンソールの環境変数$TERMがコンソール時は「con25」なので、その時のみ言語設定を解除してやるように.cshrcに設定してやります。
なお、下記ではxtermの時も解除するようにしています。
> vi ~/.cshrc
setenv LC_CTYPE ja_JP.eucJP
setenv LANG ja_JP.eucJP
setenv LC_ALL ja_JP.eucJP
の部分を、以下に変更する
if ( $TERM == 'cons25' || $TERM == 'xterm' ) then
unsetenv LC_CTYPE
unsetenv LANG
unsetenv LC_ALL
else
setenv LC_CTYPE ja_JP.EUC
setenv LANG ja_JP.EUC
setenv LC_ALL ja_JP.EUC
endif
colorlsでlsをカラー化している場合等、状況に応じてifの所を書き加えてやる必要があると思われます。
このままだとターミナル以外のアプリケーションの言語設定が日本語にならない場合があるので、.xinitrcに以下を記述してやります。
> vi ~/.xinitrc
ktermやWindowManagerなどのアプリケーションより上に以下を書く
export LANG="ja_JP.eucJP"
こうしてやればコンソールとxtermでは英語でその他(X上のktermや、kon)では日本語で表示されるようになります。
が、動作が怪しかったら解除した方がいいかもしれません(^^;;