Linuxの環境変数、言語の設定 (Vimで日本語の文字化け回避)
viで日本語を含むファイルを編集したり、日本語を書こうとすると、こんな風にウニウニと文字化けする。
// 訳注: // LWindows の~C~C』~A~Sの~Uァ~C~B~R編~FWな~Dで~A~A~UDB // Vの~Fキ~C~Hエ~Gィ~B~R使~A~WAUTF-8 の BOM な~W (ま~_は UTF-8N) で保XX Wて~A~A~UDB // // ** MySQL settings ** // define('wp_3_CACHE', true); //Added by WP-Cache Manager define('DB_NAME', 'example'); // Gー~C~Yー~P~M |
そう言う場合、環境変数が合っていないはずです。
まずは環境変数をprintenvコマンドで調べてみましょう。printenvは環境変数一覧を出力するコマンドですが、一覧から探すのは面倒なので、grepで言語関係に絞り込みます。
$ printenv | grep LANG |
これで帰ってきた結果が、eucなりutf-8なり、希望する設定と違ったら、修正する必要があります。
言語関係の設定は
/etc/sysconfig/i18n
に書かれています。
今回は、EUCからUTF-8にするので
LANG=ja_JP.eucJP LC_ALL=ja_JP.eucJP |
を
LANG=ja_JP.utf-8 LC_ALL=ja_JP.utf-8 |
広告
と書き換えて、ログインし直せばOKです。
参考
日本語EUCを設定
LANG=”ja_JP.eucJP”
日本語UTF-8を設定
LANG=”ja_JP.UTF-8”
SJISを設定
LANG=”ja_JP.SJIS”