技術・開発

vim(vi)で文字コード及び改行コードを確認・設定する方法

2024年1月4日

Linuxでよくvim(vi)を使っていますが、この文字の文字コードってなんだったっけ?このファイルの文字コードは何だっけ?
と確認したい場合のコマンドをまとめました

忙しい人向け

vimで文字コード及び改行コードを確認・設定する方法は下記の通りです。

コマンド意味
ga対象文字の16進数、8進数の文字コードを取得
:set enc?文字コードを確認(入力文字)
:set fenc?ファイルエンコードの確認
:e ++enc=【変更したい文字コード】変更したい文字コードでファイルを読み直し
:set ff?改行コードの確認
:e ++ff=【変更したい文字コード】改行コードの指定してファイルを読み直し
:set bomb?BOM付かどうかの確認
:set bombBOM付ファイルとして設定
:set nobombBOMなしファイルとして設定
文字コード及び改行コードを確認・設定表

vimで文字コードを確認する場合(特定文字)

特定文字の文字コードを確認したい場合、カーソルを合わせて【ga】と入力すれば対象文字の16進数、8進数の文字コードの取得ができます。

vimで文字コードを確認する場合(入力文字)

挿入する文字がどの文字コードなのか確認したい場合、【:set enc?】で確認ができます。

vimでファイルエンコードを確認する場合

vim画面でファイルを開いた際、どのエンコードで開いているのか確認したい場合は【:set fenc?】で確認ができます。
※新規ファイルの場合は「fileencoding=」とエンコード種別が空になります。

ファイルを特定文字コードで読み直したい場合

vimでファイル開いた際に文字化けが発生していた場合、
エンコード文字がわかっている場合は【:e ++enc=「変更したい文字コード」】で変換できます。

改行文字コードを確認したい場合

改行文字を確認したい場合は【set ff?】を利用します。
unix(LF)、dos(CR+LF)、mac(CR)の3種類のうちいずれかが表示されます。

改行文字コードを変更したい場合

改行文字を確認したい場合は、【set ff=「入力したい文字コード」】または【e ++ff=「入力したい文字コード」】で確認ができます。
利用できる開業コードはunix(LF)、dos(CR+LF)、mac(CR)の3種類のうちいずれかになります。

BOM付ファイルかどうかの確認

UTF-8で保存されたファイルはヘッダーにBOM(\xEF\xBB\xBF)が付与されている場合があります。
Vim上でBOM付かどうかを確認する場合は【:set bomb?】で確認します。
BOM付なら「bomb」BOMなしなら「nobomb」で応答されます。

BOM付ファイルに設定する場合

【:set bomb】でBOM付ファイルに設定できます。

BOM無ファイルに設定する場合

【:set nobomb】を打てばBOM無ファイルに設定できます。

-技術・開発
-,