2010-10-02 122 views

回答

22

您可以只输入

:cd %:h 

因为%:h将由路径的头被替换到当前文件。

24

这实际上是内建的。 (这里的help link

:set autochdir 

棒,在你的.vimrc或诸如此类的东西(:e $MYVIMRC)。如前所述here,有时插件必须与问题,你需要使用更复杂的东西像

autocmd BufEnter * lcd %:p:h 
+0

谢谢,我没有意识到这一点!但是,我希望在需要时手动执行此操作。 – staackuser2 2010-10-02 23:01:24

+0

优秀奖金提示重新液晶显示器!我不知道那是否存在,但会非常有用。 – Peter 2010-10-03 04:11:33

+0

使用autocmd方法的插件通常会遇到同样多的问题。至少在'autochdir'中,他们可以检查是否设置了该选项。实际上,现在好的插件可以解决由于加载文件导致潜在的目录更改。 – Ben 2014-11-21 17:16:44

2

要改变当前打开的文件的目录(这个参数设置为Vim的所有窗口的当前目录):

:cd %:p:h 

您还可以更改目录仅适用于当前窗口(每个窗口都有一个本地当前目录,可以是从Vim的全局当前目录不同):

:lcd %:p:h 

在这些命令中,%给出当前文件的名称,%:p给出其完整路径,%:p:h给出它的目录(完整路径的“头”)。

相关问题