2010-10-02 5 views

Antwort

22

Sie nur

eingeben können
:cd %:h 

seit %:h wird durch den Leiter des Wegs in die aktuelle Datei ersetzt werden.

24

Das ist eigentlich ein Built-in. (Hier ist die help link)

:set autochdir 

Stick, der in Ihrem .vimrc oder Dingsbums (:e $MYVIMRC). Wie here erwähnt, müssen manchmal Plugins mit, dass Probleme haben und Sie etwas komplizierter wie

autocmd BufEnter * lcd %:p:h 
+0

Danke, das war mir nicht bewusst! Ich möchte es jedoch bei Bedarf manuell machen. – staackuser2

+0

ausgezeichneter Bonus-Tipp re lcd! Ich wusste nicht, dass es existiert, aber es wird sehr nützlich sein. – Peter

+0

Plugins haben oft genauso viele Probleme mit der Methode autocmd. Zumindest mit 'autochdir' können sie prüfen, ob die Option gesetzt ist. In Wirklichkeit sind heutzutage gute Plugins für mögliche Verzeichnisänderungen aufgrund des Ladens von Dateien verantwortlich. – Ben

2

Um in das Verzeichnis der aktuell geöffneten Datei zu ändern verwenden (dies setzt das aktuelle Verzeichnis für alle Fenster in Vim):

:cd %:p:h 

Sie auch das Verzeichnis nur für das aktuelle Fenster ändern können (jedes Fenster verfügt über ein lokales aktuelles Verzeichnis, das von Vims globalem aktuellen Verzeichnis verschieden sein kann):

:lcd %:p:h 

In diesen Befehlen gibt% den Namen der aktuellen Datei an,%: p gibt den vollständigen Pfad an und%: p: h gibt sein Verzeichnis an (den "Kopf" des vollständigen Pfads).

Verwandte Themen