2009-10-18 4 views
73

Ich bearbeite ein Netzwerk-Protokoll-Frame gespeichert eine Datei in Unix (\n Zeilenumbrüche). Ich muss das Wagenrücklaufzeichen einfügen (U+000D aka \r). Wenn ich versuche, es aus der Zwischenablage einzufügen ("+p) oder geben Sie mit Ctrl +Umschalt +u - 000d wird der Zeilenvorschub eingefügt (U+000A).Fügen Sie das Carriage Return-Zeichen in Vim

Was ist der richtige Weg?

+1

:% s/\\ n/\\ r/g funktioniert nicht? – LB40

+0

Nein. Ich denke, Ihre Flucht kann falsch sein. Können Sie eine andere (funktionierende) Regexp-basierte Lösung vorschlagen? :) –

Antwort

127

Typ: ctrl - vctrl - m

Auf Windows-Anwendung: ctrl - qctrl - m

Ctrl - V sagt vi, dass das nächste eingegebene Zeichen wörtlich eingefügt werden sollte und ctrl - m ist der Tastendruck für einen Wagenrücklauf.

+9

Danke, das funktioniert für mich. Die Hilfe kann mit ': help ins-special-keys' gefunden werden. –

+1

Wenn Sie die Standardinstallation von Windows verwenden, ersetzen Sie STRG + V durch STRG + Q, da STRG + V remaped ist, um "einzufügen". –

+8

Nach viel Headbanging füge ich dies hier hinzu, obwohl es eine alte Frage ist: Um ein literales CR-Zeichen aus einem: s-Befehl einzufügen, müssen Sie ihm einen umgekehrten Schrägstrich voranstellen oder vim (7.1.314) konvertiert es zum Ende des Zeilenzeichens, das für Ihre Dateiformateinstellung geeignet ist. dh geben Sie ': s /.../\^ V^M/g' ein. – DerfK

Verwandte Themen