Wie kann ich den Dateibearbeitungsverlauf in Vim zwischenspeichern, damit er nach dem Wechseln der Datei nicht verschwindet?

7

Wenn ich eine andere Datei in einer Vim-Sitzung öffne, verschwindet der gesamte Bearbeitungsverlauf für die anderen Dateien.

Ist es möglich, Vim so zu konfigurieren, dass beim Bearbeiten von Dateien der Dateibearbeitungsverlauf automatisch gespeichert und wiederhergestellt wird?

Niekas
quelle
gvimund vimsind das gleiche Programm. Nur die Benutzeroberfläche ist anders.
Martin Tournoij
@Carpetsmoker Ja, Sie haben Recht, ich werde die Frage aktualisieren.
Niekas
1
Zum erneuten Öffnen gewählt, da das OP beim Lesen der Frage Vim nicht schließt, sondern lediglich die darin enthaltenen Dateien wechselt. ’undofile’ist nicht erforderlich, um dies zu beheben: Die Einstellung reicht 'hidden'aus.
Rich

Antworten:

8

Was ich tue, ist Folgendes zu meinem hinzuzufügen .vimrc:

set undofile
set undodir=~/.vim/undo/

Auf diese Weise werden alle Ihre Informationen zum Rückgängigmachen / Ändern des Baums in vim-Sitzungen gespeichert. Wenn Sie Ihre Datei das nächste Mal öffnen, können Sie alte Änderungen weiterhin rückgängig machen / wiederholen.

craigp
quelle
1
Sie müssen auch mkdir ~/.vim/undo. Vim erstellt es nicht automatisch.
Tobu