Siehe Zeilenumbrüche und Zeilenumbrüche im Editor
Kennt jemand einen text-editor auf Linux, das es mir erlaubt, um zu sehen, Zeilenumbrüche und Wagenrückläufe? Macht Vim diese Funktion unterstützen?
InformationsquelleAutor der Frage usertest | 2010-10-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
:set list
im Vim-show whitespace. Ende der Zeilen zeigen, wie '$
" und carriage-returns in der Regel als '^M
'.InformationsquelleAutor der Antwort jay.lee
Nicht einverstanden mit der offiziellen Antwort:
:set list
wird nicht zeigen ^M Zeichen (CRs). Die Versorgung der -b-option für den vi/vim arbeiten. Oder, einmal vim geladen wird, geben Sie:e ++ff=unix
.InformationsquelleAutor der Antwort CaptSaltyJack
VI zeigt Zeilenumbrüche (LF-Zeichen, code
x0A
), indem Sie dem nachfolgenden text auf die nächste Zeile.Verwenden Sie die
-b
Schalter für den binary-Modus. ZBvi -b filename
odervim -b filename --
.Wird es dann zeigen, CR-Zeichen (
x0D
), die nicht normalerweise verwendet in der Unix-style-Dateien, wie die Charaktere^M
.InformationsquelleAutor der Antwort Larry K
Versuchen Sie den folgenden Befehl.
:setzen binäre
In VIM, sollte dies tun die gleiche Sache wie mit dem "-b" command-line-option. Wenn du dies in deinen Autostart (dh .vimrc-Datei), es wird immer Platz für Sie.
Auf vielen *nix-Systemen gibt es ein "dos2unix" oder "unix2dos" - Befehl, der die Bearbeitung der Datei, und korrigieren Sie jeden Verdacht Zeilenende Probleme. Wenn es kein problem mit den Zeilenenden, die Dateien werden nicht verändert.
InformationsquelleAutor der Antwort Brian S. Wilson
Nur um zu klären, warum
:set list
nicht zeigen, dass CR als^M
ohnee ++ff=unix
und warum:set list
hat nichts zu tun mit^M
's.Intern, wenn Vim liest eine Datei in seinen Puffer, es ersetzt alle Zeilenende-Zeichen, die mit seiner eigenen Darstellung (nennen wir es
$
's). Um zu bestimmen, welche Zeichen entfernt werden sollte, ist es Erstens erkennt, in welchem format Zeilenenden werden in einer Datei gespeichert. Wenn nur CRLF'\r\n'
oder nur CR'\r'
oder nur LF'\n'
Zeilenende-Zeichen, dann die'fileformat'
eingestellt istdos
mac
undunix
bzw.Wenn
list
option gesetzt ist, wird Vim zeigt$
Charakter, wenn der Kabelbruch aufgetreten, egal wasfileformat
option erkannt wurde. Es verwendet seine eigene interne Darstellung der Zeilenumbrüche und das ist, was es zeigt.Nun, wenn Sie schreiben Puffer auf den Datenträger, Vim fügt Zeilenende-Zeichen nach dem, was
fileformat
Optionen wurde erkannt, wesentlich konvertieren alle diese internen$
's mit den entsprechenden Zeichen. Wenn diefileformat
warunix
dann wird es einfach schreiben\n
an die Stelle der internen line-break.Der trick ist, zu zwingen, Vim zu Lesen
dos
codierte Datei alsunix
. Der Netto-Effekt ist, dass es entfernt alle\n
's verlassen\r
's unberührt und zeigt Sie als^M
's in den Puffer. Einstellung:set list
wird zusätzlich zeigen, internen line-Endungen wie$
. Nachdem alle, die Sie sehen^M$
im Ortdos
kodierte Zeilenumbrüche.Beachten Sie auch, dass
:set list
hat nichts zu tun mit dem zeigen^M
's. Sie können überprüfen Sie es selbst (machen Sie sicher, dass Sie deaktiviert habenlist
zuerst die option) durch einfügen von Einzel-CR mitCTRL-V
gefolgt vonEnter
im Einfüge-Modus. Nach dem schreiben Puffer auf Disk und erneut öffnen Sie ses -^M
trotzlist
option wird auf 0 gesetzt.Finden Sie weitere Informationen zu Dateiformaten, die auf http://vim.wikia.com/wiki/File_format oder durch Eingabe
:help 'fileformat'
im Vim.InformationsquelleAutor der Antwort Paweł Smolak
Schlage ich vor, Sie zu Bearbeiten .vimrc-Datei, die für die Ausführung einer Liste von Befehlen.
Bearbeiten Sie Ihre .vimrc-Datei, wie hier :
Wenn Sie ausführen, vim, die Befehle in die .vimrc ausgeführt werden, und Sie können sehen, dieses Beispiel :
InformationsquelleAutor der Antwort Arno