在功能块中搜索
要在光标周围的 {}
块内搜索文本 foo
,请使用以下命令(<ESC>
- escape key,<CR>
- enter key):
vi{<ESC>/\%Vfoo<CR>
现在你可以通过按 n
和 p
在区块内的匹配之间跳转。如果你启用了 hlsearch
选项,则会突出显示所有匹配项。\%V
是一个特殊的搜索模式部分,它告诉 vim 仅在视觉选择区域中搜索。你也可以这样做一个映射:
:vnoremap g/ <ESC>/\%V
在此之后,上述命令缩短为以下内容:
vi{g/foo<CR>
另一个有用的技巧是打印包含该模式的所有行:
vi{
:'<,'>g/foo/#
'<,'>
范围自动插入。
见:help range
和:help :g
。