Frage

Wenn ich eine Textdatei in Editor öffne, zeigt es eine leere Zeile, wenn es einen Wagenrücklauf am Ende der letzten Zeile ist der Text enthält. Doch in Vim ist es nicht diese Leerzeile zeigen. Eine andere Sache, die ich bemerkt habe ist, dass der Editor Vim einen Wagenrücklauf in die letzte Zeile standardmäßig erstellt (auch wenn es es nicht zeigen). Ich kann sagen, denn wenn ich eine Datei in Editor öffnen, die in Vim erstellt wurden, ist es am Ende der Datei eine leere Zeile zeigt.

Wie auch immer, kann ich mit diesen beiden Differenzen leben, aber ich frage mich, ob es eine Option in Vim, die Sie dieses Verhalten umschalten kann.

Danke

PS - GVim 7.2

[Update]

Würde das Sinn machen, auf dem Server Fehler stattdessen sein?

[Update 2]

ich das anders formulieren werde ... Ich muß wissen, wenn es ein Wagenrücklauf am Ende der einzelnen Zeile Datei (Editor zeigt eine zusätzliche Zeile ohne Text, mit Vim kann ich nicht sagen). Dies ist aufgrund eines Progress-Programm, das eine Textdatei liest (erwartet eine einzige Zeile, aber mit einem Wagenrücklauf) und analysiert den Text für einen bestimmten Zweck. Wenn es kein Wagenrücklauf ist, Fortschritt behandelt die Linie, als ob es null ist.

[Behelfslösung Lösung] Eine Möglichkeit, die ich gefunden habe, um sicherzustellen, ist ein Wagenrücklauf (aber stellen Sie sicher, dass ich nicht ein zweites hinzufügen) ist sicherzustellen, dass ich das Ende der Zeile schreiben Option eingeschaltet (: set EOL) und führen Sie dann nur ein schreiben / speichern. Dies wird ein Ende der Zeile in der Datei setzen, wenn es nicht bereits vorhanden ist. Ansonsten ist es nicht einen neuen hinzufügen.

War es hilfreich?

Lösung

:help endofline

wird erläutert, wie Sie vim aus Hinzufügen einer zusätzlichen Newline stoppen könnte.

Andere Tipps

Es scheint, dass vim Newline als Leitungsabschluss behandelt, während Notizblock behandelt es als Zeilentrenner: von http://en.wikipedia.org/wiki/Newline

  

Es gibt auch einige Verwirrung, ob   newlines beenden oder getrennte Leitungen.   Wenn ein Newline wird als   Separator, wird es keine Newline sein   nach der letzten Zeile einer Datei. Das   allgemeine Konvention auf den meisten Systemen ist   eine neue Zeile auch nach dem letzten hinzufügen   Zeile, das heißt, Neue-Zeile als eine Linie zu behandeln,   Terminator. Einige Programme haben   Probleme, die letzte Zeile eines Verarbeitungs   Datei, wenn es nicht Newline beendet.   Im Gegensatz dazu, Programme, die erwarten   Neue-Zeile als Separator verwendet wird,   eine abschließende Newline als Ausgang interpretiert   eine neue (leere) -Linie. Dies kann zur Folge haben   eine andere Zeilenzahl wird berichtet   aber für die Datei ist anders   im Allgemeinen harmlos.

Wenn ich mich richtig erinnere, auf Unix-y-Systemen eine Textdatei mit einem Newline beendet werden muss.

Eine nützliche Vim Option ist

set list

Es wird Ihnen helfen, alle Zeilenende Zeichen zu sehen (und möglicherweise andere allgemein unsichtbar Zeichen). So werden Sie diese letzte endofline anzeigen können direkt in Vim und nicht nur in den Editor.

Wenn Sie die Datei in VIM öffnen sollte die Statuszeile sagen [noeol] nach dem Dateinamen. Das ist also ein Indiz. Wie Manni sagte, können Sie dies sowohl durch Einstellen der endofline Option ändern aus und die binary Option. Sie können diese als Standardeinstellungen in einer .vimrc-Datei festgelegt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top