So verschieben Sie in vim geöffnete Dateien nach tmux

0

Ich möchte in vim einen Befehl erstellen, der die aktuell geöffnete Datei in einer neuen viw-Sitzung öffnet, die sich in einer neuen tmux-Sitzung befindet.

Etwas wie das:

Öffnen Sie vim mit test.c -> Ausführen des angegebenen Befehls -> Beenden von vim -> Starten von tmux -> Wechseln Sie in das Arbeitsverzeichnis, in dem sich vim befand -> Öffnen Sie die geöffnete Datei

Ich habe eine Idee, wie man ein Skript erstellt, das tmux und vim für eine bestimmte Datei öffnet, aber ich weiß nicht, wie man einen Befehl erstellt, der zuerst vim beendet und dann automatisch einen Befehl ausführt.

Rokner
quelle

Antworten:

0

Die Vim-Funktion, mit der Sie die aktuell bearbeiteten Dateien speichern und in einer anderen oder späteren Vim-Instanz erneut öffnen können, wird als Sitzungen bezeichnet . Siehe :help views-sessionsfür weitere Einzelheiten. Dies erfordert eine separate Sitzungsdatei, kann jedoch viele Optionen und mehrere Dateien speichern.

Eine einfachere Alternative zum erneuten Öffnen der aktuellen Datei ist die Liste der zuvor geöffneten Dateien, die in der viminfo- Datei gespeichert sind. :help oldfiles-variablehat weitere Informationen. Sie können einfach über die Markierung auf die zuletzt bearbeitete Datei zugreifen 0. Zum Beispiel:

$ vim -c "normal! '0"
Ingo Karkat
quelle