如何在NERDTree插件中刷新

时间:2011-12-21 01:47:19

标签: vim nerdtree

当我在vim中使用(目录A in)NERDTree打开文件时,它运行良好。

但是如果我在另一个目录(目录B)中再打开一个文件,它就不会刷新以显示目录B的内容(虽然它仍显示目录A)。

NERDTree可以自动刷新吗?

6 个答案:

答案 0 :(得分:47)

https://gist.github.com/geekontheway/2667442:只需按“r”或“R”键即可刷新当前树。可以映射到.vimrc中的自动刷新。

答案 1 :(得分:3)

打开新文件后,只需发出:NERDTreeFind命令。它将选择NerdTree中的当前编辑文件节点。如果该节点不存在,则NerdTree将初始化一个新树,其中root用作当前文件的目录。

您可以在打开vim时使用自动命令跟踪目录。

  

au VimEnter * NERDTreeFind

答案 2 :(得分:3)

刷新NERDTree的键盘映射

我没有切换到NERDTree窗口,点击 R 并切换回来,而是使用自定义地图为我做的:

nmap <Leader>r :NERDTreeFocus<cr>R<c-w><c-p>

设置后,按 Leader + r 将刷新NERDTree

注意:由于我也使用CtrlP,我的实际键映射到refresh CtrlP after refreshing NERDTree的最后一步

答案 3 :(得分:2)

对于2016年看到这个的人来说,这对我有用:

autocmd CursorHold,CursorHoldI * call NERDTreeFocus() | call g:NERDTree.ForCurrentTab().getRoot().refresh() | call g:NERDTree.ForCurrentTab().render() | wincmd w

享受!

答案 4 :(得分:1)

无论打开什么新文件,NerdTree都会一直指向最初打开vim的目录。

要更改它,请将光标放在NerdTree窗口内的所需目录节点上,然后按cd

NerdTree将在命令行中确认目录更改:

  

NERDTree:CWD现在是:[此处为新目录]

请注意,这也会改变vim的工作目录,这在运行:edit somefile等命令时非常重要。

答案 5 :(得分:1)

我讨厌必须手动刷新我的 NERDTree 插件的想法。所以,我已将此添加到我的 NB551674:136:HHVMJAFX2:2:21204:11743:6409 :

.vimrc

现在,NERDTree 每次打开都会刷新。