はじめに
Windowsで編集したファイルをCentOSで開こうとした際に文字化けすることがある。system localeを変更できればいいのだが、一時的にviで文字化けを回避したい場合は次のコマンドを使用する
vim内の文字コード
vim内で編集/作成されるデータはバッファに書き込まれる。
この時、encoding(内部文字コード)に合わせてデータが書き込まれる。
確認方法
:set encoding
⇓
encoding=utf-8
文字コード指定方法
:set encoding=utf-8
ファイル書き込み時の文字コード
vimのバッファからデータファイルに書き込む時の文字コード
確認方法
:set fileencoding
⇓
fileencoding=iso-2022-jp
※iso-2022-jpはJIS規格の文字コード
文字コード指定
:set fileencoding=utf-8
データに反映させるには?
文字コード指定を行った後、:w
を使ってファイル出力することで、更新された文字コードでデータの書き込みを行う。
ファイル読み込み時の文字コード
ファイル読み込み時の文字コードがデータの文字コードと不一致していることで文字化けを起こすことがある。
文字コード指定
:set ++enc=utf-8