如何在NERDTree中进行快速搜索?

28

是否可能通过文件名和文件内容在NERDTree窗口中进行搜索?

3个回答

40

你可以像在普通的Vim窗口中一样执行/foo操作,但是你只能搜索NERDTree中当前显示的文本:无法搜索未展开的子目录或未列出的文件。

假设你在项目的根目录下,你可以执行以下操作,在整个项目中搜索JavaScript文件中的foo单词:

:vim foo **/*.js | copen
如果"工作目录"(:pwd)不是您的项目根目录,则应使用以下命令:
:vim foo /path/to/project/**/* | copen

请注意**:help starstar)使搜索递归。

如果您想打开app/views/foobar.php进行编辑,可以执行以下操作:

:e **/foo<tab>

嗯,有很多方法。

使用本地命令访问文件/缓冲区或在项目中搜索相对简单,但有很多第三方插件可以使其更快、更容易。我的最爱是Ctrl+P文件/缓冲区查找插件,但在转向插件之前应该先熟悉基础知识。


11

Command-t 是我最喜欢的 vim 插件之一,它是一个基于 Ruby 的插件,与 FZF 集成。

通过使用 Comamnd-T 和 FZF,您可以使用极快的“模糊”机制进行以下搜索:

  • 打开文件和缓冲区
  • 跳转到标签和帮助信息
  • 运行命令或先前的搜索和命令
  • 只需输入最少量的按键。

正如您所看到的

enter image description here

我总是通过打开新终端并敲击以下命令来搜索历史命令:

CTRL+R

除了在任何终端选项卡中编写来递归搜索所有文件夹外:

fzf

此外,您可以在vim内部编写

:CommandT 

但是,我仍在寻找一个功能强大的vim插件来搜索文件内容,特别是在大文件夹中。如果我找到了,我会更���这个答案。


3
不直接回答问题,但请查看 fzf.vim ,它提供了比仅查找文件更多的搜索功能,并且速度非常快。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接