VIFM so verlassen, dass das Terminalverzeichnis mit dem zuletzt besuchten VIFM-Verzeichnis identisch ist

VIFM so verlassen, dass das Terminalverzeichnis mit dem zuletzt besuchten VIFM-Verzeichnis identisch ist

Ich versuche, das zu erreichen, was im Titel beschrieben wurde. Ich bin diesen Anweisungen gefolgt (http://sourceforge.net/p/vifm/feature-requests/24/), aber sie haben nicht funktioniert. Hier sind die Anweisungen, die ich befolgt habe:

  1. Fügen Sie dem vifmrc-Befehl einen speziellen Befehl hinzu Q :execute '!echo %d > ~/.vifm/lastdir' | quit
  2. Fügen Sie einen Alias ​​zu .bashrc alias vifm='source ~/bin/vf' hinzu
  3. Speichern Sie das folgende Skript in ~/bin/vf if [ -f ~/.vifm/lastdir ]; then rm ~/.vifm/lastdir fi /usr/local/bin/vifm "$@" if [ -f ~/.vifm/lastdir ]; then cd cat ~/.vifm/lastdir fi

Bei (3) bin ich am skeptischsten. Ich musste in meinem Home-Verzeichnis einen Ordner "bin" anlegen und dann innerhalb des neuen "bin" eine Datei "vf" erstellen, um dann den in (3) beschriebenen Text einzufügen. Habe ich hier richtig vorgegangen?

Antwort1

Vielleicht musst du einfach zum Terminal gehen? Mach das einfach in vifm

:sh

Wenn Sie wieder zu vifm gehen müssen, müssen Sie nur dies tun

exit <OR> ctrl-D

aber Sie geben vifm in dasselbe Verzeichnis ein, in dem Sie dieses Terminal aufgerufen haben.

Antwort2

Eventuell wäre hier eine Neuformatierung des gewünschten Skripts hilfreich. Es sollte dann exakt wie folgt aussehen:

~/bin/vf

if [ -f ~/.vifm/lastdir ]; then
    rm ~/.vifm/lastdir
fi
/usr/local/bin/vifm "$@"
if [ -f ~/.vifm/lastdir ]; then
    cd "`cat ~/.vifm/lastdir`"
fi

Beachten Sie insbesondere die umgekehrten Häkchen um den catBefehl in der vorletzten Zeile. Diese scheinen in Ihrer Version zu fehlen und sind ziemlich wichtig. Ich habe auch zusätzliche "um das Argument hinzugefügt, cdfalls Ihr aktuelles Verzeichnis Leerzeichen enthält.

Das ist wirklich ein schrecklicher Trick, um Ihr Programm so aussehen zu lassen, als würde es etwas tun, was Programme normalerweise nicht können. Aber wenn es Ihnen hilft, Ihre Arbeit zu erledigen, ist das großartig.

Antwort3

Navigieren Sie in vifm zum gewünschten Verzeichnis. Und geben Sie ein :e. Anschließend können Sie verwenden :terminal.

verwandte Informationen