Search code examples
vimfile-format

How do I search for "\n" without a preceding "\r" in vim?


Vim won't convert fileformat if it sees inconsistent line endings. How can I find those ?


Solution

  • Zero-width look-behind assertion

    "How do I search for “\n” without a preceding “\r” in vim ?"

    /\r\@<!\n
    

    How do you search and replace these occurances with "\r\n"?

    :%s/\r\@<!\n/\r\n/gc
    

    Get rid of the final "c" if you want to accept every match without confirmation.

    Edit: However, if you want an answer that you can remember how to do without having used look ahead/behind assertions a billion times, see Jackson Miller's answer. Sometimes it is better to simplify your problem and use tools that don't require you to read the manual constantly :)