gnome-terminal上で、日本語が表示できなかったのが解決した。もともとgnome-terminalには、「端末」→「文字コードの設定」でEUCを選ぶことができるが、それをやってもうまくいかない。うまくやるには、以下の環境変数を設定してから、gnome-terminalを起動すれば良いことが分かった。
- GDM_LANG=ja_JP.eucJP
- LOCALE=ja_JP.eucJP
- LANG=ja_JP.eucJP
- LANGVAR=ja_JP.eucJP
私の場合は、パネルにgnome-terminalのボタンを作っているので、そこのプロパティの中に、上記の環境変数をセットしてからgnome-terminalを実行するように、以下の一行を記述した。これで、メニューは日本語になるし、最初から、漢字コードはEUCになるので、日本語変換(Anthyを使っている)で漢字を端末画面に入力できるようになった。
env GDM_LANG=ja_JP.eucJP LOCALE=ja_JP.eucJP LANG=ja_JP.eucJP LANGVAR=ja_JP.eucJP gnome-terminal
アプリケーションのメニューにあるgnome-terminalをこの状態で起動したいのならば、以下のようにすればよい。
- /usr/local/sbin/gnome-terminalというファイルを作る
# cat /usr/local/sbin/gnome-terminal
#!/bin/sh
export GDM_LANG=ja_JP.eucJP
export LOCALE=ja_JP.eucJP
export LANG=ja_JP.eucJP
export LANGVAR=ja_JP.eucJP
/usr/local/bin/gnome-terminal
#
- 実行権を与える
# chmod +x /usr/local/sbin/gnome-terminal
- パスの順番で、sbinの下が先に実行されることを確かめておく
# which gnome-terminal
/usr/local/sbin/gnome-terminal
もし(3)で /usr/local/bin/gnome-terminalが表示されると、上記(1)の設定がきかないので、/usr/local/sbin/gnome-terminalを別のパスにコピーする。最悪、gnome-terminalを名前をかえて、その変えた名前を(1)のスクリプトから呼ぶようにする。