vimはファイルを開く際、iconvを使用してfileencodingsの順に変換を試し、正しく変換出来た物をfileencodingとして使用する仕組みになっています。 つまり化けたファイルだと、どのfileencodingsにもマッチせずencodingで指定されたエンコーディングでファイルが開かれステータス行に「変換失敗」と表示される事になります。 しかしながらそのファイルのエンコーディングが分かっている場合もあります。vimでは++encオプションを指定する事で指定のfileencodingでファイルを開く事が出来ます。 :e ++enc=utf-8 foo.txt この場合、vimはiconvで変換出来なかった文字を?という文字で置き換えてしまいます。 # echo あいうえお | iconv -f char -t utf-8 > utf8.txt # echo あいうえお |
![Big Sky :: vimで化けたファイルを開く方法](https://cdn-ak-scissors.b.st-hatena.com/image/square/ae5f360d3c82cd87e23b34fb6f5013ab7cf0f1a6/height=288;version=1;width=512/https%3A%2F%2Fmattn.kaoriya.net%2Fimages%2Flogo.png)