2010-10-02 6 views

Répondre

22

Vous pouvez taper

:cd %:h 

depuis %:h sera remplacé par le chef du chemin du fichier en cours.

24

C'est en fait un builtin. (Voici le help link)

:set autochdir 

bâton dans votre .vimrc ou autres joyeusetés (:e $MYVIMRC). Comme mentionné here, parfois plugins auront des problèmes avec cela et vous devez utiliser pour changer le répertoire du fichier actuellement ouvert quelque chose de plus compliqué, comme

autocmd BufEnter * lcd %:p:h 
+0

Merci, je n'étais pas au courant! Cependant, je veux le faire manuellement, au besoin. – staackuser2

+0

excellente astuce de bonus re lcd! Je ne savais pas que cela existait, mais sera très utile. – Peter

+0

Les plugins auront souvent autant de problèmes en utilisant la méthode autocmd. Au moins avec 'autochdir', ils peuvent vérifier si l'option est activée. En réalité, les bons plugins de nos jours tiennent compte des changements de répertoire potentiels dus au chargement de fichiers. – Ben

2

(ce définit le répertoire en cours pour toutes les fenêtres VIM):

:cd %:p:h 

Vous pouvez également modifier le répertoire uniquement pour la fenêtre en cours (chaque fenêtre a un répertoire courant local qui peut être différent du répertoire courant global de VIM):

:lcd %:p:h 

Dans ces commandes,% donne le nom du fichier en cours,%: p donne son chemin complet et%: p: h donne son répertoire (la "tête" du chemin complet).

Questions connexes