Posted at

vimで改行コードをCRLF(dos)からLF(unix)に修正する

More than 3 years have passed since last update.

fileformats=unix,dos,mac

vimrcに上記のような設定を書いておくと、vimでファイルを開いた時に改行コードを自動判定してくれます。

で、たまに、Windowsで修正したファイルを開くと改行コードがCRLFになっていて、vimのステータスライン付近にdosと表示されて改行コードがCRLFだよって教えてくるのでLFに修正しようと思います。


改行コードを指定してファイルを開く

:e ++ff=<ファイルフォーマット>

今回はLFにしたいので

:e ++ff=unix // => LF

これで改行コードをLFとしてファイルを開き直します。

すると、CRの箇所に ^M が表示されるようになります。

あとは、この ^M を消せばOK。


CRを消す方法

^M もしくは \r を消す。どちらでもOK。



  1. ^Mを空文字に変換する

    :%s/^M//g
    

    ^MCtrl+V + Ctrl+M で入力できる




  2. \rを空文字に変換する

    :%s/\r//g