Wie kann man mit einem View in Vim die vorherigen Zeilenfaltungen wiederherstellen?

Antwort

Um in Vim die Faltungen (folds), die du in einer vorherigen Sitzung gesetzt hast, beim Laden eines Views (z.B. mit `:mkview` und `:loadview`) wiederherzustellen, musst du sicherstellen, dass die Faltungsinformationen im View gespeichert und beim Laden wiederhergestellt werden. **Vorgehen:** 1. **View speichern:** Mit `:mkview` speicherst du den aktuellen Zustand (inklusive Faltungen) in einer View-Datei. 2. **View laden:** Mit `:loadview` lädst du die gespeicherte View und stellst damit auch die Faltungen wieder her. **Wichtige Hinweise:** - Standardmäßig speichert `:mkview` Faltungen, sofern du keine speziellen Einstellungen geändert hast. - Die Faltungen werden nur dann korrekt wiederhergestellt, wenn die Datei seit dem Speichern der View nicht so verändert wurde, dass sich die Zeilennummern verschoben haben. - Die View-Dateien werden im Verzeichnis `~/.vim/view/` (bzw. unter Windows im entsprechenden Verzeichnis) gespeichert. **Typischer Ablauf:** ```vim :mkview ``` Speichert die aktuelle View (inkl. Faltungen). ```vim :loadview ``` Lädt die View und stellt die Faltungen wieder her. **Automatisches Laden/Speichern:** Um Views beim Öffnen und Schließen von Dateien automatisch zu speichern und zu laden, kannst du folgende Zeilen in deine `.vimrc` einfügen: ```vim autocmd BufWinLeave * mkview autocmd BufWinEnter * silent! loadview ``` **Weitere Infos:** - [Vim-Dokumentation zu :mkview](https://vimhelp.org/recover.txt.html#:~:text=%3Amkview) - [Vim-Dokumentation zu Folds](https://vimhelp.org/fold.txt.html) **Zusammenfassung:** Mit `:mkview` und `:loadview` kannst du Faltungen über Views speichern und wiederherstellen, solange die Datei nicht grundlegend verändert wurde. Automatisiere das Speichern/Laden mit den genannten Autocommands für mehr Komfort.

Kategorie: Software Tags: Vim Faltung View
KI fragen

Verwandte Fragen

Wie springt man in Vim zum nächsten Leerzeichen nach einem Wort?

In Vim kannst du mit dem Befehl `e` zum Ende des aktuellen Wortes springen, also direkt auf das letzte Zeichen des Wortes. Um zum Leerzeichen **nach** einem Wort zu springen, kannst du den Befehl `w`... [mehr]

Wie kann man in Vim einen gefalteten Block eine Ebene höher oder niedriger verschieben?

In Vim kannst du gefaltete Blöcke (folds) verschieben, indem du die Zeilen, die den Fold bilden, ausschneidest und an einer anderen Stelle wieder einfügst. Es gibt jedoch keinen direkten Bef... [mehr]