如何切换到包含特定模式的vim缓冲区

时间:2011-10-31 17:16:51

标签: vim

我正在寻找一种切换到包含搜索文本的缓冲区的方法。

E.g。如果我打开100个缓冲区,我想切换到包含'fooBar = 1'

的缓冲区

2 个答案:

答案 0 :(得分:3)

我写了一个Vim插件来执行此操作:buffersaurus

命令:Bsgrep <pattern>将使用(Vim-dialect)grep搜索所有打开的缓冲区,识别所有匹配的行,并在新窗口/拆分中显示结果。您可以使用常规Vim移动键“遍历”所有匹配项,并在上一个窗口或新的拆分/标签页中打开所选匹配项。结果可以再次过滤。您也可以选择显示上下文行。

答案 1 :(得分:2)

刚刚找到了一个插件:Buffer-grep

如其自述文件中所述:

Use
  Bgrep /expression/
to search all buffers for an expression and put it in a new quickfix list.

如果需要,可以编写一个函数直接跳转到第一个函数。