Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

.vimrcに適切な設定をしているが、vimでファイルを開くと文字化けするときの対処

$
0
0

文字化けの発生

以下のようなファイルを・・

$ cat curl_memo.txt 
curl "https://www.googleapis.com/youtube/v3/search?key=$YOUTUBE_DATA_API&part=snippet&q=手芸&type=video"

vimで開くと文字化けした

curl   "https://www.googleapis.com/youtube/v3/search?key=$YOUTUBE_DATA_API&part=snippet&q=謇玖敢&type=video"
~
~
~
curl_memo.txt [sjis][unix]
1,1     All
"curl_memo.txt" [converted] 1L, 112C

utf-8のファイルなのに、文字コード自動判別が誤ってsjisで開いてしまっているらしい。
手芸という文字コードがたまたま問題を引き起こしたようだ。

適切な.vimrcの設定とは?

googleで調べてみると、だいたい以下の設定を推奨していた。
過去に文字化けした時があり、自分も同じ設定をしている。

set encoding=utf-8set fileencodings=iso-2022-jp,euc-jp,sjis,utf-8
参考

対処

案1 文字コードを指定して開く

vim -c ":e ++enc=utf8" curl_memo.txt

デメリット:コマンドが長くて煩雑

案2 自動判別文字コードの最優先をutf-8にする

.vimrx

set encoding=utf-8set fileencodings=utf-8,iso-2022-jp,euc-jp,sjis

デメリット:utf-8ではない他のファイルを開くときに文字化けする可能性がある。

案3 開くファイルの先頭行に誤認識しない適当な文字のコメントを入れてutf-8と認識させる

# APIメモ
curl   "https://www.googleapis.com/youtube/v3/search?key=$YOUTUBE_DATA_API&part=snippet&q=手芸&type=video"
~
~
~
curl_memo.txt [utf-8][unix]
2,1     All
"curl_memo.txt" 2L, 127C

案3は本末転倒な対処ではあるが、お手軽に文字化けを意識しないで済む


Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>