it-swarm.com.de

Vim: Zeilenvorschübe und Wagenrücklauf anzeigen

Wie kann ich Zeilenvorschübe und/oder Wagenrücklaufzeichen in vi/vim anzeigen?

Ich weiß, dass set list alle Whitespace-Zeichen (?) Anzeigt und auch Tabulatoren\t usw. ersetzt (aber das ist nicht das, was ich will). Grundsätzlich möchte ich nur bestimmte Zeichen wie\r anzeigen (unter Debian scheint dies die Standardeinstellung zu sein, unter Gentoo ist dies jedoch anders).

Mit freundlichen Grüßen

32
watain

In neueren Versionen von Vim gibt es eine Listchars-Einstellung, mit der Sie angeben können, welche Zeichen für die EOL- und TAB-Zeichen und für nachfolgende Leerzeichen verwendet werden sollen.

Du könntest:

set listchars=eol:$,tab:\[SPACE]\[SPACE]

... um EOL - Zeichen anzuzeigen, ohne dass Tabulatoren ausgeblendet werden (geben Sie ein Leerzeichen ein, nicht [,S,P,A, ...).

Ich kenne nichts spezielles über Rückgabezeichen in der Einstellung 'listchars', aber ich vermute, dass Sie hierfür Syntaxhervorhebung verwenden können. Ich denke, die Standardanzeige von\r Zeichen ist, sie mit SpecialKey-Hervorhebung anzuzeigen.

Daher sollte die standardmäßige SpecialKey-Hervorhebung von\r Zeichen in Kombination mit der Einstellung von 'listchars' in etwa Ihren Anforderungen entsprechen.

:highlight SpecialKey ctermfg=5

... wenn Sie Magenta mögen.

16
njd

DOS-formatierte Textdatei in UNIX formart erneut öffnen:

:e ++ff=unix

am Ende der Zeile wird ^M (\ r) angezeigt.
wenn Sie ^M in hex anzeigen möchten:

:set dy=uhex
20
kev

Fügen Sie Ihrer .vimrc-Datei die folgende Zeile hinzu:

set fileformats=unix

Dies führt dazu, dass vim nur Dateien im Unix-Stil nativ unterstützt. Bei Zeilenenden ohne Unix-Format wird das Wagenrücklaufzeichen \r in vim explizit als ^M angezeigt.

4