ja_JP.UTF-8 にしてみる

DAVの試験をするのと、コンソールとNautilus文字コードが違うのは不便だから変更してみる。
DebianUTF-8化について、まとまった情報が見当たらなくて、あちこちから断片をかき集めてみる。
うまくいったらおなぐさみ。
ロケール再設定。

# dpkg-reconfigure locales
Generating locales...
ja_JP.EUC-JP... done
ja_JP.UTF-8... done
Generation complete.

ISO8859-1が優先されてうまく文字がでないことがあるらしい。

# dpkg -l | grep xfree
ii xfree86-common 4.3.0.dfsg.1-6 X Window System (XFree86) infrastructure
ii xfree86-driver 0.13.3-1 Synaptics TouchPad driver for XFree86 server
ii xserver-xfree8 4.3.0.dfsg.1-6 the XFree86 X server

対策が必要なバージョンね。

# cat /usr/X11R6/lib/X11/locale/ja_JP.UTF-8/XLC_LOCALE# $XFree86: xc/nls/XLC_LOCALE/ja_JP.UTF-8,v 1.2 2003/08/06 14:04:00 eich Exp $

fs*は変更なし。
cs*は書き換え。

cs0 {
side GL:Default

:Defaultを取る。

# cs1 class
cs1 {
side GR:Default
length 1
ct_encoding ISO8859-1:GR
}

のcs1をcs6に持っていく。後は連番繰り上げる。

font を UTF-8 対応にする。

# apt-get install xfonts-efont-unicode-ib xfonts-efont-unicode
パッケージリストを読みこんでいます... 完了
依存関係ツリーを作成しています... 完了
提案パッケージ:
xfs xserver
以下のパッケージが新たにインストールされます:
xfonts-efont-unicode xfonts-efont-unicode-ib
アップグレード: 0 個、新規インストール: 2 個、削除: 0 個、保留: 3 個
25.8MB のアーカイブを取得する必要があります。
展開後に追加で 29.6MB のディスク容量が消費されます。
取得:1 http://archive.ubuntu.com warty/universe xfonts-efont-unicode 0.4.0-4 [6248kB]
取得:2 http://archive.ubuntu.com warty/universe xfonts-efont-unicode-ib 0.4.0-4 [19.5MB]
25.8MB を 7m40s で取得しました (56.0kB/s)

こっちはなにもしなくても大丈夫だった。

# grep LANG /etc/environment
LANGUAGE="ja_JP:ja:en_GB:en"
LANG=ja_JP.UTF-8

# grep LANG /etc/init.d/gdm
if [ -z "$LANG" ]; then
export LANG

これは/etc/default/gdmから引いている。
LANG=ja_JP.EUC-JPになっていた。書き換え。

こっちは設定されてない。

# grep DefaultLocale /etc/gdm/gdm.conf

一通り見ても、locale や LANG まわりは特にない。

# grep Locale /etc/*
/etc/locale.alias:# Locale name alias data base.

ここにも特にない。

# grep LANG /etc/*
/etc/environment:LANGUAGE="ja_JP:ja:en_GB:en"
/etc/environment:LANG=ja_JP.UTF-8

さっき変更したのしか出てこない。

homeでやってみる。

# grep LANG .*
.bash_history:LANG=C man route
.xsession:export LANG=ja_JP.eucJP

これは書き換えが必要だ。

.gnome/gdm/ には関係するものはない。

# cat /etc/gtk/gtkrc.ja.utf-8
cat: /etc/gtk/gtkrc.ja.utf-8: そのようなファイルやディレクトリはありません

gtkrc.utf-8, gtkrc.jaならある。

# cat /etc/gtk/gtkrc.ja
style "gtk-default-ja" {
fontset = "-adobe-helvetica-medium-r-normal--14-100-100-100-p-76-iso8859-1,?
-ricoh-ms mincho-medium-r-normal--14-*-*-*-*-*-jisx0208.1983-0,?
-misc-fixed-medium-r-normal--14-*-*-*-*-*-jisx0208.1983-0,?
*-r-*"
}
class "GtkWidget" style "gtk-default-ja"

これと同じ内容の ja.utf-8 っているんだろうか?

# cat /etc/gtk/gtkrc.utf-8
style "default-text" {
fontset = "-*-arial-medium-r-normal--*-120-*-*-*-*-iso10646-1,?
-*-helvetica-medium-r-normal--*-120-*-*-*-*-*-*"
}

class "GtkWidget" style "default-text"

こっちを使われたらダメかもしれない。
一応コピーを作っておく。

# cp /etc/gtk/gtkrc.ja /etc/gtk/gtkrc.ja.utf-8

システムロケールとX/Gnome関係はこれでいいかな。
あとは、コマンドの対応が出来ているどうかになるか。

vi は何か?

# which vi
/usr/bin/vi
# ls -al /usr/bin/vi
lrwxrwxrwx 1 root root 20 2005-01-12 23:47 /usr/bin/vi -> /etc/alternatives/vi
# ls -al /etc/alternatives/vi
lrwxrwxrwx 1 root root 12 2005-01-24 23:52 /etc/alternatives/vi -> /usr/bin/vim
# ls -al /usr/bin/vim

  • rwxr-xr-x 1 root root 1037816 2005-01-19 01:20 /usr/bin/vim

vimなので、./vimrc を作っておく。

$ vi .vimrc
syntax on
set fileencoding=japan
set fileencodings=iso-2022-jp,euc-jp,utf-8,ucs2le,ucs-2,cp932

あとは lv を入れればそれでよしかな。

ではログアウトしてテスト。
gdmでシステムのデフォルトから日本語UTF-8を選んでログインしてみたのだけど、ja_JP.UTF-8 はないからシステムのデフォルトを使うと言われてしまったよ。ロケールの項目には「日本語(UTF-8)」が追加されているので、何か起動中に不十分なところがあるのだろうな。
gnome-terminal からUTF-8のテキストをcatすると、ちゃんと表示されるようになった。more, less も問題無し。
前に作ってあった日本語ファイル名はlsで化けて表示されるけど、新しく作ったのはちゃんと表示される。
Mozillaも普通だ。vi も普通。dpkg,apt-getの表示、cpのエラーメッセージなども日本語で表示されている。
bash環境変数も意図した通り。

$ echo $LANG
ja_JP.UTF-8

とりあえず、うまくいった模様。このくらいで、普段の生活には困らないでしょう。
# これ抜けてるでしょってのがあれば御指摘お願いします。> all