Ich möchte vim so konfigurieren, dass eine Datei an der Stelle geöffnet wird, an der ich aufgehört habe.
Ich möchte vim so konfigurieren, dass eine Datei an der Stelle geöffnet wird, an der ich aufgehört habe.
Antworten:
In der Ubuntu- /etc/vim/vimrc
Datei ist dieses Beispiel auskommentiert:
" Uncomment the following to have Vim jump to the last position when
" reopening a file
if has("autocmd")
au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$")
\| exe "normal! g'\"" | endif
endif
Wenn dies nicht funktioniert, besteht ein häufiges Problem darin, dass Sie nicht Eigentümer Ihrer ~/.viminfo
Datei sind. Wenn dies der Fall ist, führen Sie Folgendes aus:
sudo chown user:group ~/.viminfo
Dabei ist der Benutzer Ihr Benutzer username
und group
häufig derselbe wie Ihr Benutzername.
\| exe "normal! g`\"" | endif
chown
Teil hat das Problem für mich behoben. Hut ab!
chown user ~/.viminfo
hinzufügen. Ich habe jetzt seit einer Stunde versucht, das herauszufinden, und Sie haben gerade meinen Tag gerettet.
Wenn Ihnen die Handelsautomatisierung der Einfachheit halber nichts ausmacht, drücken Sie beim '"Öffnen einer Datei einfach den Tastendruck (Apostroph, gefolgt von doppelten Anführungszeichen), und Sie springen dorthin, wo Sie waren. Dies ist im Wesentlichen die Antwort von @ marcog.
:h views-sessions
Sie können dies in Ihre .vimrc einfügen :
au BufWinLeave * mkview
au BufWinEnter * silent loadview
Die Ansichten werden in $ HOME / .vim / view abgelegt. Sie müssen diese Verzeichnisse wahrscheinlich erstellen.
Sie können vim starten, ohne einen Dateinamen mit anzugeben
vim
Drücken Sie anschließend zweimal STRG + O, um zum letzten Speicherort in einer Datei zu gelangen, an der Sie gearbeitet haben.
Ctrl-c
Einmal drücken ist genug für mich. Darüber hinaus drücken Ctrl-c
mehr nimmt mich weiter hinten in der histroy Cursorposition (auch relevant ungeöffnet Dateien zu öffnen). Ich benutze Neovim 0.4.2, aber ich verstehe, dass es auch für gilt vim
.
Wenn Sie viminfo aktiviert haben, können Sie ganz einfach `0
zur zuletzt bearbeiteten Dateiposition wechseln . Sie werden feststellen, dass dies nur ein Befehl zum Markieren ist.
In der Tat können Sie später '3 ausführen, um zum dritten zuvor bearbeiteten Speicherort (möglicherweise in einer anderen Datei) zu wechseln und dann erneut zum letzten Speicherort `0
zurückzukehren
Schau es dir an
:marks
erinnerte Orte zu sehen. Beachten Sie auch, dass viminfo alle Arten anderer Dinge speichert (wie den Inhalt von Registern, Markierungen pro Datei, Befehl und Suchverlauf). Die meisten Menschen haben dies aus offensichtlichen Gründen aktiviert
`
Schlüssel tatsächlich generiert, oder tun Sie:verbose map `
Es gibt ein Plugin namens vim-lastplace (ich bin der Autor), das Ihre Dateien dort öffnet, wo Sie aufgehört haben. Die oben genannten Vorschläge werden verbessert, indem Festschreibungsnachrichten ignoriert werden, da Sie normalerweise eine neue Nachricht bearbeiten und oben in der Festschreibungsnachrichtendatei beginnen möchten.