Jak se zbavit otravných ^M ve Vimu

Uživatelé všelijakých UltraEditů, SuperEditů či PSPadů si neuvědomují, že jejich editory akceptují znaky konce řádku jak pro DOS tak pro UNIX. Na tom by nebylo nic špatného, ale těmto programům nevadí, když se konce řádků míchají v jednom souboru. To už není košer. Máme-li soubor s prvním řádkem ukončeným stylem DOS a druhý stylem UNIX, co by měl editor vložit když zařádkujeme na třetím?

Vim vyžaduje, aby byl soubor korektní ve smyslu buď UNIX (CR) nebo DOS (CRLF). Je to logické a předchází se chybám u programů, které s touto věcí nepočítají (a například špatně přečtou různé konfigurační hodnoty a podobně). Pakliže otevřete soubor se smíchanými konci řádků ve Vimu, na konci uvidíte znaky ^M – typický ukazatel, že soubor má pomíchaná zařádkování.

Ať už má mít ve výsledku soubor styl DOS nebo UNIX, cesta k nápravě spočívá ve třech krocích:

:%s/^M$//g
:%s/^M/ /g
:set ff=unix
:wq

Zdroj: http://www.vim.org/tips/tip.php?tip_id=26