2007年8月20日月曜日
manの文字化け

仕事でRed Hat Enterprise Linuxをインストール、設定することになった。
調査段階でほとんどのことは終わってるので、実質的には作業するだけなんだけど…実際にはそうはいかない。

Red HatってUTF-8なんだけど、インストールするサーバプログラムがEUCなので、i18nを修正して無理矢理EUCに変更した。
その影響もあって、manが化ける。
Red Hatの9からFedora Coreになったときに、文字コードがEUCからUTF-8になったせいで、EUC->UTF-8への変換方法ってワリといろんなところに書かれてた。
しかし、その逆UTF-8からEUCへの変更ってどこにも出てこない(見つけられないだけかも)。

しかも大半がPAGERにlvを使えとある。
which lv しても出てきませんが?(パッケージを厳選しすぎたか?)

でもまぁ、直せたので、一応残しておこうと思って。

参考にしたページはここ。
ミラクル・リナックス:日本語manページの文字化けについて
http://www.miraclelinux.com/technet/faq/data/00087.html

ここでは/etc/sysconfig/i18nで文字コードをShift-JISかUTF-8にした場合の修正手順が載っている。
UTF-8の場合の、iconvをはさむやり方はNGだったので、Shift-JISのパターンで行ってみる。

上記ページには、以下のように記載されている。

JNROFF LANG=ja_JP.eucJP /usr/bin/groff -Tnippon -mandocj
PAGER JLESSCHARSET=euc-sjis /usr/bin/less -isr


jnroffは入ってないので、ここは無視して、PAGERのみ変更を加える。

PAGER JLESSCHARSET=euc-sjis /usr/bin/less -isr


…まぁ、これだけ。
念の為、再起動…は大袈裟なので、ログアウトして、再度入ってみる。
でもってman lsと入れると…

無事、日本語が表示されてました。

その後、JLESSCHARSETはセットしなくても、正常に表示されることが判明。
問題はmanコマンドそのものではなく、実はlessそのものにあったと気が付くのに、時間がかかった。

つづく…

元記事
HOMEGROWN | manの文字化け
http://homegrown.jugem.cc/?eid=268





追記(2007/09/03)
@ITにて、UTF-8からEUC-JPに変更する方法が記載されていた。

デフォルトの文字コードをEUC-JPに変更するには - @IT
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/a043eucjp.html

そこでもmanの文字化けが触れられているが…
lvがインストールされていない場合には、事前にlvをインストールしておく

ってのは、どうよ?



0 コメント | コメントを書く
Template Design: © 2007 Envy Inc.