vimでBOM

あれ、、なんでこのソース動かんの、、???
悩みに悩んだ挙句気づいた。そう、それはBOMのせい。

BOM(Byte Order Mark)は読んで字の如くエンディアンを示すためのものらしいですけど、少なくとも自分の経験では
「あ〜〜〜、よかった〜〜〜〜!!BOM付いててよかった〜〜〜〜!!」
って場面に遭遇したことはありません。

vimにももちろんBOM用の設定はありまして。

:set bomb

でBOMの付与。

:set nobomb

でBOMの除去です。

自分はステータスラインに表示できたらすぐわかって便利かなー、と思ったので以下を.vimrcに書きました。

let &statusline = ''
let &statusline .= 'ファイル名とか'
let &statusline .= '行数とか'
let &statusline .= '%{&bomb ? "[BOM]" : ""}'

f:id:saihoooooooo:20120906000252p:plain

これでバッチリですわ。