Vim: Zeilenvorschübe und Wagenrücklauf anzeigen

34

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

Ich weiß, dass set listalle Whitespace-Zeichen (?) Angezeigt werden, außerdem werden 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

watain
quelle

Antworten:

16

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 sowie für nachfolgende Leerzeichen verwendet werden sollen.

Du könntest:

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

... speziell EOL Zeichen anzuzeigen Laschen ohne kollabieren (Typ ein Leerzeichen, nicht [, S, P, A, ...).

Ich kenne nichts spezielles über Rückgabezeichen in der Einstellung 'listchars', aber ich vermute, Sie können hierfür Syntaxhervorhebung verwenden. Ich denke, die Standardanzeige von \ r Zeichen besteht darin, 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.

njd
quelle
Danke, listcharsschon geholfen. Würde es Ihnen etwas ausmachen, mir die Verwendung zu erklären SpecialKey? Ich kann keine nützlichen Informationen finden, vimdoc.sourceforge.net/htmldoc/syntax.html#hl-SpecialKey hat auch nicht viel geholfen.
Watain
SpecialKey ist die eingebaute Syntax-Markierung für alle Zeichen, die "speziell" angezeigt werden: Steuerzeichen und dergleichen. Wenn Sie ": highlight SpecialKey" eingeben, erfahren Sie, wie diese Zeichen angezeigt werden.
njd
Wenn ich das versuchen set listcharsbekomme ich folgende Fehlermeldung: E474: Invalid argument: listchars=eol:$,tab:\[SPACE]\[SPACE]. Ich verwende MacVim 8.0.596 (133)
Eliot
22

DOS-formatierte Textdatei in UNIXformart wieder öffnen:

:e ++ff=unix

Sie werden ^M(\ r) am Ende der Zeile sehen.
Wenn Sie hexadezimal anzeigen möchten ^M:

:set dy=uhex
kev
quelle
5

Fügen Sie Ihrer .vimrcDatei 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 \rin vim as explizit angezeigt ^M.

Mansoor Siddiqui
quelle
Leider wird auch der Zeilenvorschub nicht angezeigt.
Jpaugh