autochdir和NERDTree

时间:2014-11-28 07:19:28

标签: vim nerdtree

autochdir自动将当前工作目录设置为光标所在的当前文件。如果光标在NERDTree窗口中,我想排除autochdir更改目录。

例如,如果我正在处理的当前文件位于~/foo,并且NERDTree窗口位于~/lots/of/stuff/here,我想转到NERDTree窗口但仍然有当前文件工作目录设置为~/foo

这样,可以应用CD键绑定,它将NERDTree的根树节点设置为~/foo。否则,通过导航到~/foo然后应用cd键绑定来手动更改NERDTree窗口中的根树节点非常不方便。

1 个答案:

答案 0 :(得分:3)

来自:help autochdir

  

此选项用于向后兼容Vim   与Sun ONE Studio 4企业版一起发布   注意:如果启用此选项,某些插件可能无效。

即。它是过时的,不灵活的,打破了插件。我建议您不要使用它,而是使用其中一种备用的,更具可配置性的机制here。例如,

autocmd BufEnter * if &ft !~ '^nerdtree$' | silent! lcd %:p:h | endif

但是,虽然在拉出NERDTree时这不会更改当前目录,但它也不会保留它。我不能100%确定你在上一段中的意思。