我想只在当前文件的视觉选择中搜索vimgrep而不是整个文件.这可能吗?怎么样?我无法通过Google或vim帮助查找此案例.
我想要这个的原因是因为我需要quicklist(copen
)中的结果,并且:g/FOO
显示底部的匹配行没有完成这项工作.
是的,你可以,因为Vim有标记位置的特殊正则表达式原子,并且视觉选择的开始和结束用'<
和标记'>
.由于标记上/之前/之后有原子,我们需要将它们组合起来覆盖整个选定行的范围:
在选择开始|
之后和选择结束之前选择结束之前选择开始|
.
要将搜索限制为当前文件,请使用特殊%
关键字.
:vimgrep/\%(\%'<\|\%>'<\%<'>\|\%'>\)FOO/ %