比如说,我想在函数块中查找特定的文本。
目前我使用的方法是,在函数括号内选择代码块,使用vi{
命令将其复制并粘贴到新文件中。然后我会在新文件中使用 /<search-text>
命令来查找文本。
请问是否有更简单的方法?
vi{
:'<,'>g/foo/#
自动插入 '<,'>
范围。
请查看 :help range
和 :help :g
。
:h cmdline-ranges
比 :help range
更相关。 - voiger虽然\%V
可以限制搜索到当前可视化选定的文本(这是您问题的确切答案,但不是您间接表达需求的答案),但选择当前函数比简单的vi{
要复杂得多。完美而简单地选择当前函数需要编写脚本。这就是我在vi.SE上回答的地方。
narrow-to-region
命令(更具体地说,是narrow-to-defun
)。我相信vim有一些插件模拟了这种行为,并且名称相似。它基本上自动化了您现在手动操作的内容。 - Randy Morris