Vim6 Part10
■ このスレッドは過去ログ倉庫に格納されています
0082KoRoN@Vim%Chalice ◆8XALICEsdk
NGNGSHIFT-JISはJISという厳格に定義されたコードを、8ビットを使って表現できるように
したものであって、CP932はそれをベースにMSが改変したコードですから、厳密には異
なっています。また、コード変換時にどれをどこにマッピングするかは、実は完全に定
義されているわけではありません。そのため細部はiconvの実装によって異なってきま
す。
libiconvでは過去にcp932とsjisが微妙に違いました。sjis指定時には0x7eのチルダや
0x5cの円記号等が全角にコンバートされてしまうという、Windows環境では致命的な問
題がありました。現在はわかりませんが、Vimへのlibiconv導入当時はそういう事情
で、cp932にせざるを得なかったのです。またWindowsで使うということから考えても、
cp932を選択することにはvim-devへの提案として説得力がありました。
GNU libcのiconvでは、私が今までに目にした変換にまつわるトラブルを総合してみる
と、むしろcp932よりもsjisを恒常的に使ったほうが良いような感想を抱いています。
設定方法としてはfencs内のcp932をsjisに置換すればよいでしょう。
KaoriYa配布のvimrcでは、より多くのプラットホームで利用可能なlibiconvを基準とし
ていますから、cp932を使い続けているというわけです。もっとも一番良いのは既に
行っているiso-2022-jp-3の選択のように、ランタイムで判断することなのですが、手
元にGNU libc iconvが動いている環境と、テストしている時間がないのでそのままに
なってます。
■ このスレッドは過去ログ倉庫に格納されています