Vim NERDTree重新加载新文件

Vim NERDTree重新加载新文件,vim,nerdtree,Vim,Nerdtree,如果我将一个文件添加到在NERDTree中打开的同一个目录中,唯一能看到添加的文件的方法就是退出vim并重新启动它 有没有办法在NERDTree中重新加载文件?您可以关闭并重新打开NERDTree,或者只需点击r刷新当前目录的列表,或者点击r刷新根目录的列表 你看到NERDTree窗口顶部的“按?寻求帮助”了吗?这意味着你可以按?寻求帮助。如果您这样做,您将看到NERDTree快捷方式的详尽列表。很好 更一般地说,许多插件都有完整的文档,您可以使用:help访问这些文档,正如上面@romainl

如果我将一个文件添加到在
NERDTree
中打开的同一个目录中,唯一能看到添加的文件的方法就是退出vim并重新启动它


有没有办法在
NERDTree
中重新加载文件?

您可以关闭并重新打开NERDTree,或者只需点击r刷新当前目录的列表,或者点击r刷新根目录的列表

你看到NERDTree窗口顶部的“按?寻求帮助”了吗?这意味着你可以按?寻求帮助。如果您这样做,您将看到NERDTree快捷方式的详尽列表。很好


更一般地说,许多插件都有完整的文档,您可以使用
:help

访问这些文档,正如上面@romainl所回答的那样;按r刷新当前目录,或按r刷新根目录

<>你可以考虑通过按住M来添加NordButd本身的新文件,然后添加新文件(或者通过添加尾部斜线来添加目录)。这样,您就不需要刷新nerdTree来查看新添加的文件。

刷新nerdTree 我没有在
NERDTree
窗口中点击R,而是使用一个自定义地图来为我执行此操作:

nmap <Leader>r :NERDTreeRefreshRoot
nmap r:nerdtreefreshroot
我已经把它映射到Leader+r,但是你可以把它映射到你想要的任何东西


说明:

  • 它首先切换到
    NERDTree
    窗口
  • 然后刷新根节点(通过模拟
    R
    键)
  • 最后切换回上一个窗口


注意:您可以将最后一步添加到您可以使用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>  
有趣!ToggleNERDTreeWithRefresh()
:nerdtreethoggle
如果(存在(“b:NERDTreeType”)==1)
呼叫反馈键(“R”)
恩迪夫
endf
nmap:calltoglenerdtreewithrefresh()调用

因此,当我键入ctrl+l时,NERDTree将被切换并刷新根目录

我个人喜欢在聚焦NERDTree窗口时自动触发刷新。此自动命令(在
.vimrc
中)将完成此操作


autocmd BufEnter NERD_树*|执行“正常R”

关闭和重新打开NERDTree不起作用。。。r工作!谢谢重新打开它不起作用,因为NERDTree缓存目录列表。当使用“r”刷新时,您可以看到这样的消息。我已经查看了三次
帮助,但从未看到
r
!实际上,NERDTree帮助窗口没有列出
r
快捷键NERDTree
quickhelp在其“文件系统映射”部分中列出了这些快捷键。它列出了“
r
:刷新光标目录”和“
r
:刷新当前根目录”。您可以映射到
:nerdtreefreshroot
,而无需聚焦树。