如何使用vim在选定的代码块中进行搜索

uxh89sit  于 2022-11-11  发布在  其他
关注(0)|答案(3)|浏览(223)

比如说,我想在一个函数块中搜索一个特定的文本。目前我正在实现的方法是从函数括号中选择代码块,然后将其复制并粘贴到一个新文件中。之后,我在新文件中搜索文本,并使用/<search-text>
我想知道,这有没有捷径?

pprl5pva

pprl5pva1#

vi{
:'<,'>g/foo/#

'<,'>范围会自动插入。
请参阅:help range:help :g

e3bfsja2

e3bfsja22#

我想这可能是你正在寻找的:
Limiting search scope for code in Vim
在选择了要搜索的代码块之后,使用/\%Vsearch pattern应该可以得到您想要的结果。您可以通过点击v并移动光标以突出显示要搜索的代码块来进入可视模式。

q5lcpyga

q5lcpyga3#

The almost exact same question has been asked last week on vi.SE
虽然\%V可以将搜索限制在当前可视选择的文本(这是您的问题的精确答案,但不是您间接表达的需要),但选择当前函数比简单的vi{要复杂得多。一种完美而简单的选择当前函数的方法需要编写脚本。这就是我在vi.SE上的答案。

相关问题