Stoppen Sie, dass Vim automatisch zwei Zeilenumbrüche für Zeilenumbrüche enthält

938
Evgeni Sergeev

Ich habe vor kurzem Vim aktualisiert und festgestellt, dass .txtdie Option gesetzt tw=78ist, wenn ich eine Datei öffne . (Das bedeutet, dass Vim automatisch Zeilen abbricht, wenn sie 78 Zeichen überschritten hätten.) Das gefällt mir nicht, und ich möchte es gerne loswerden.

Ich habe set tw=0als letzte Zeile meiner _vimrcDatei hinzugefügt, aber das hatte keine Auswirkungen. Ich habe mir auch die verschiedenen Syntax- und Dateitypdateien angesehen, aber für TXT-Dateien scheint es keine zu geben.

1

1 Antwort auf die Frage

3
Evgeni Sergeev

Ich habe die Lösung in diesem Thread gefunden . Es stellte sich heraus, dass seit 2011 vimrc_example.vimdiese textwidth=78Regel aktualisiert wurde, um diese Regel als automatischen Befehl und meine _vimrcQuellen einzubeziehen vimrc_example.vim(wahrscheinlich, weil ich sie auf dem Original aufbaute - was bedeutet, dass diese Situation für viele Benutzer gilt).

Eine Lösung ist, die Zeile in Ihrer zu finden .vimrc, die sagt

source $VIMRUNTIME/vimrc_example.vim 

Fügen Sie nach dieser Zeile die folgende Zeile ein, um den jeweiligen automatischen Befehl zu deaktivieren, der einen Ärger verursacht:

au! vimrcEx FileType text 

Wie ich die Lösung gefunden habe: Ich hatte den Verdacht, dass es sich um einen automatischen :autocmdBefehl handelt, also habe ich versucht, alle automatischen Befehle mit dem Befehl zu durchsuchen . Es waren aber einfach zu viele. Um die Sache zu vereinfachen, habe ich diese Ausgabe wie hier beschrieben in einen Ersatzpuffer eingefügt . Die Suche nach tw=78dem Täter mit dem Schlüsselwort ergab die Suche nach dem Schlüsselwort vimrcEx, und dann fragte Google nach dem Schlüsselwort (oder ich hätte Vims Verzeichnis gefunden). Das führte uns zur Lösung.

Ich habe gerade Ihre Antwort bestätigt, aber ich dachte, ich sollte erwähnen, dass Sie schnell und einfach herausfinden können, welche Datei zum Einstellen der Option `textwidth` (oder einer beliebigen Option) verwendet wurde:`: verbose set tw? `. Anthony Geoghegan vor 8 Jahren 1