読者です 読者をやめる 読者になる 読者になる

cBlog

Tips for you.

MSYS2との出逢い (2)

(記憶を頼りに書いているので、抜けがあるかも)

 

ソースコードを書くにあたっては、入念な下調べと周辺の整備から入る私にとっては、文字コードをどうするかも、重要な問題の一つであった。

 

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るつもりはありません(_ _))

広告