当我在vim中使用(目录A in)NERDTree
打开文件时,它运行良好。
但是如果我在另一个目录(目录B)中再打开一个文件,它就不会刷新以显示目录B的内容(虽然它仍显示目录A)。
NERDTree
可以自动刷新吗?
答案 0 :(得分:47)
从https://gist.github.com/geekontheway/2667442:只需按“r”或“R”键即可刷新当前树。可以映射到.vimrc中的自动刷新。
答案 1 :(得分:3)
打开新文件后,只需发出:NERDTreeFind
命令。它将选择NerdTree中的当前编辑文件节点。如果该节点不存在,则NerdTree将初始化一个新树,其中root用作当前文件的目录。
您可以在打开vim时使用自动命令跟踪目录。
au VimEnter * NERDTreeFind
答案 2 :(得分:3)
我没有切换到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 每次打开都会刷新。