如果我将文件添加到NERDTree
中打开的同一目录中,我可以看到添加文件的唯一方法是退出vim并再次启动它。
有没有办法可以在NERDTree
中重新加载文件?
答案 0 :(得分:380)
您可以关闭并重新打开NERDTree,或者只需按 r 刷新当前目录的列表,或者 R 刷新根目录的列表。
您是否在NERDTree窗口顶部看到“按?求助”?这意味着您可以按?寻求帮助。如果您这样做,您将看到NERDTree快捷方式的详尽列表。那很好。
更一般地说,许多插件都有一个完整的文档,您可以使用:help <pluginame>
访问。
答案 1 :(得分:21)
正如@romainl在上面回答的那样;按 r 刷新当前目录或按 R 刷新根目录。
您可以考虑通过按 m 添加来自nerdTree本身的新文件,然后按 a 添加新文件(或通过添加尾部斜杠添加目录)。这样您就不需要刷新nerdTree来查看新添加的文件。
答案 2 :(得分:7)
我没有在NERDTree
窗口中点击 R ,而是使用自定义地图为我做的:
nmap <Leader>r :NERDTreeRefreshRoot
我已将其映射到 Leader + r ,但您可以将其映射到您想要的任何内容。
<强>解释强>
NERDTree
窗口R
键)注意:您可以向refresh CtrlP along with NERDTree添加最后一步
答案 3 :(得分:3)
您可以使用 feedkeys 功能点击R按钮。就像这样:
call feedkeys("R")
我在.vimrc文件中定义了一个函数:
fun! ToggleNERDTreeWithRefresh()
:NERDTreeToggle
if(exists("b:NERDTreeType") == 1)
call feedkeys("R")
endif
endf
nmap <silent> <c-l> :call ToggleNERDTreeWithRefresh()<cr>
因此,当我键入 ctrl + l 时,将切换NERDTree并刷新根目录。
答案 4 :(得分:1)
我个人更喜欢在 聚焦 NERDTree 窗口时自动触发刷新。此自动命令(在您的 .vimrc
中)将执行此操作
autocmd BufEnter NERD_tree_* | execute 'normal R'