Login
Newsletter
Di, 5. März 2002, 23:59

Newlines mit vim korrigieren

Wenn man eine Datei, die unter (Win)DOS erstellt wurde, unter Linux bearbeiten will, muß man erst einmal die üblicherweise vorhandenen doppelten Zeilenendezeichen korrigieren.

(Win)DOS verwendet die Kombination CR/LF. CR (Carriage Return) hat den ASCII-Code 13, LF (Line Feed) den ASCII-Code 10. Man beachte die Platzverschwendung durch das doppelte Zeilenendezeichen und die Verschwendung von Arbeitszeiten durch das umständlichere Programmieren solch eines Features. UNIX und Linux verwenden LF allein, MacOS CR allein.

Für die Konvertierung der Dateien gibt es viele Möglichkeiten. Meine liebste ist es, die Datei mit dem Editor vim zu öffnen und einzugeben:

:se ff=unix
:w

(das :w speichert die Datei gleich).

Sind überschüssige CR-Zeichen vorhanden, so sind diese als ^M an Zeilenenden sichtbar. Diese kann man mit dem Suchen-und-Ersetzen-Kommando

:1,$s/^M//g
:w

amputieren. Dabei muß man das ^M durch Drücken von STRG-V, gefolgt von STRG-M, eingeben. STRG-V dient nämlich dazu, die nachfolgend gedrückte Taste(nkombination) direkt in den Text zu übernehmen.

Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten