vim は ^M で終わるすべての行を表示します。
これを通常の改行に置き換えるにはどうしたらいいですか?
:%s/<Ctrl-V><Ctrl-M>/\r/g
ここで、<Ctrl-V><Ctrl-M>
は、Ctrl+Vの後に、Ctrl+Mと入力することを意味します。
:%s
置換, % = すべての行
<Ctrl-V><Ctrl-M>
^M文字(Ctrl-VはVimのCtrl ^文字の書き方で、Ctrl-Mは正規表現の後にMを書き、結果として^M特殊文字になります。
/\r/
with new line (`˶ˆ꒳ˆ˵)
g
そして、それを(その行の最初の出現箇所だけでなく)グローバルに行う。
LinuxやMac OSでは、以下のように動作します。
:%s/^V^M/^V^M/g
ここで、^V^M
は、Ctrl+Vと入力した後、Ctrl+Mと入力することを意味します。
注意:Windowsの場合、デフォルトでは^V
がテキストの貼り付けにマッピングされているので、^V
の代わりに^Q
を使うとよいでしょう。
^Mは、Ctrl+VとMで検索されますので。
s/^M//g