(記憶を頼りに書いているので、抜けがあるかも)
ソースコードを書くにあたっては、入念な下調べと周辺の整備から入る私にとっては、文字コードをどうするかも、重要な問題の一つであった。
VI職人の朝は早い。
「まあ、好きで始めた仕事ですから」
viには、encoding、fileencoding、fileencodingsという、違いがややこしい設定項目があることはよく知られていると思うが、その説明は他サイトに譲るとして、何が言いたかったかというと、、、
文字化けする!!!
「そんな訳ねーだろ」という方の意見はごもっともで、それは説明をスーパーすっとばしているからなのだが、
最近のLinuxのディストリはUTF-8標準になっていることだし、今どきShiftJISなんてありえねー。Windows使っているけれども、MinGWはUnixみたいなもんだし、何より改行コードがLFじゃん。UTF-8決定。
↓
Minttyのロケールをja_JP.UTF-8にする
↓
ls
↓
文字化け
もちろんlsには--show-control-charsつけてますが。viならutf-8のファイルでも大丈夫ですが、それは'encoding=japan'で、内部エンコーディングをcp932(sjisみたいなもの)に変換(このときMinttyの文字コードはsjis)してるからだし。
つまり、せっかくMinttyがUTF-8に対応してても、lsとかmsysのコマンドがutf-8で出力してくれないから、キモいことになっているわけで。
どう設定しても解消しなかった。
(コマンドプロンプト上で実行したときの互換性を考えてと思われる。Windowsのファイル名はsjisに見えるが、最近のWinの内部ではUnicodeで持っている。コマンドプロンプトはunicodeに対応していない(?)からsjisで出す?)
この時点でMinGWを使う気が失せたのであった。
(この意見は個人的なものでMinGWのデベロッパーとユーザーのみなさんをdisるつもりはありません(_ _))