我使用Ctrl-P并在类似的行上进行搜索:
但是结果搜索仅在先前打开的文件上。在这里,我仅打开
main.php
。您知道一种搜索所有文件而不必一个个打开它们的方法吗?
#1 楼
:CtrlPLine
实际上应该在列出的缓冲区上工作。像::argadd **/*.php
,但出于性能原因,听起来并不是一个好主意。
使用
:vimgrep
或:grep
听起来要好得多对我来说::vim foo **/*.php
:cw
显然,您失去了CtrlP的“模糊性”,但是却获得了可靠性和灵活性。
参考:
:help :argadd
:help :vimgrep
:help :grep
:help :cwindow
:help quickfix
评论
CtrlP和vim-grep之间的主要区别在于CtrlP是交互式的。
–ideasman42
17年2月7日在0:00
#2 楼
您应该使用那些插件Sidesearch或fzf都允许使用silversearch-ag
fzf允许在包含您的字符串的列出文件中搜索递归目录。 />
评论
嗨@MisterBanal,欢迎来到我们的网站!如果这些插件可以按OP要求与CtrlP进行接口连接,则应在答案中进行精确说明。如果可以连接它们,则应说明如何以及如果不能,则至少应提供一个如何使用它们的基本示例,否则您的答案并不能真正回答问题。 (您可以使用文本下方的“编辑”按钮更改答案)。
–statox♦
17-2-6在14:28
评论
这也是我想要的。如果您使用的是ack或ag,性能应该不是问题。另外,如果您使用的是neovim,它应该是异步的,因此也不应该有任何块。最后,我将ag作为ctrlp命令使用:)