在点燃所有保险丝之前;我知道这可能会被认为是基于意见的。我要求的是功能差异,而不是“X 比 Y 好以及为什么”。
几年来我一直在使用模糊搜索插件,因为我以前的雇主很快就嘲笑我“需要实际查看我的文件”。我已经和 CtrlP 相处了一段时间,但更多时候,当我看到一个 Vim 用户启动他的环境时,会有 NERDTree。
我错过了任何重要的功能吗?
根据项目的性质,结构可能非常重要。查看您的项目文件可能会有所帮助。然而,使用始终打开的 NerdTree 实例可能并不值得。请参阅油醋分离窗和项目抽屉。
至于始终打开文件资源管理器的确切功能优势,我严重怀疑。我认为你会从像投影师这样的东西中得到更多的使用,当然还有像你现在正在做的那样使用模糊取景器。我个人使用 Tim Pope 的醋,所以如果我需要一个文件浏览器,这很简单-
。
首先你必须明白 Vim 已经带有一个相当强大的文件浏览器,叫做 netrw ( :help netrw
) 所以实际上并不需要另一个文件浏览器插件,比如 NERDTree 。但是 netrw 并没有真正被设计为像在其他编辑器和 IDE 中那样用作“侧面板”:对该功能的“渴望”是促使创建 NERDTree 的原因,它与那些“侧面板”非常相似。
NERDTree 和 netrw 都为您提供了熟悉的文件导航界面,当您对正在处理的项目没有很好的了解时,它非常方便:它们给您带来舒适的体验,因此非常有价值。
当您非常了解您的目录结构或使用其他导航方式(我正在考虑标签)时,文件浏览器 - 尤其是“始终打开”的文件浏览器 - 并没有那么有用,更喜欢简单的:e
和/或:find
或是非常合理的由 CtrlP、FuzzyFinder、Command-T 和朋友提供的更高级别的抽象。
与使用文件资源管理器相比,我通常更喜欢:e
、和相关命令,但总有一段时间使用效率更高,而当那个时候到来时,netrw 只是一种方式。:find
:tag
:Ex
这两种导航方法根本不是相互排斥的。
IMO 值得讨论的问题的一个核心方面是对这种“侧面板”的感知需求。我们真的需要让项目中的文件列表始终可见吗?当您认为您从不查看它并且实际上从不使用它时,除非您需要打开某些文件或与某些文件进行交互,否则这种功能有什么好处?既然您无论如何都必须将注意力从编辑器切换到文件资源管理器,为什么不简单地,嗯……在您真正需要时“打开”文件资源管理器?当然,NERDTree 窗口可以切换,但大多数时候,它只是保持打开状态。很简单,因为这是大多数人所习惯的。
现在,从众、懒惰和无知也开始发挥作用:NERDTree 在每篇博客文章中都被列为“必备”,而且,AFAIK,它也在每个糟糕的发行版中默认提供,所以人们经常在不知道的情况下立即安装它网络。当然,对于 CtrlP 也可以这样说。