vim NERDTree | 自动刷新目录窗格

The*_*ter 6 vim git vi

如何在vim NERDTree 中自动刷新目录窗格?我知道你可以按 R 手动刷新,但我想让它自动刷新。在不同的 git 分支之间进行检查时,这特别有用。

小智 4

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

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

享受!


gra*_*bow 3

很好的书呆子树问题。我用谷歌搜索并找到了有关监控实时变化的相关问题,以及NerdTree刷新上的这个问题。NERD 树有一个内置的缓存。

更新:按照这些链接并结合下面放入 .vimrc 中的想法应该每四秒刷新一次,尽管检查打开的 NERDTree 的 if 语句也可能是有序的。

set autoread
au CursorHold * if exists("t:NerdTreeBufName") | call <SNR>15_refreshRoot() | endif
Run Code Online (Sandbox Code Playgroud)

注意:仍在进行中。我的第 15 号脚本是使用 :scriptnames 并查找 NERD_Tree.vim 找到的。现在要自动化该部分......