如何在Vim中指定光标下的行?
我想要统计光标下线的出现次数。我打算用如何在Vim中指定光标下的行?
:%s/pattern/&/gn
命令。那么如何指定光标下方的行代替pattern
?
回答:
您可以通过表达式寄存器插入当前行。对于文字匹配,切换正则表达式来非常nomagic模式(\V
),和逃避任何反斜线和行分隔符:
:%s/\V<C-r>=escape(getline('.'), '/\')<CR>/&/gn
根据您要准确算什么,你可能还需要锚定(\^...\$
非常nomagic模式)的模式。
除了通过<C-r>
直接插入,您还可以通过:execute
构建命令。这在功能上更适合。
:execute '%s/\V' . escape(getline('.'), '/\') . '/&/gn'
回答:
如果您正在寻找罐装插件解决方案,我的SearchPosition plugin可以统计出现次数。有了它,V<A-m>
将显示这样的总结:
On sole match in this line, 8 following, 2 in previous lines; total 10 for /this line\n/
以上是 如何在Vim中指定光标下的行? 的全部内容, 来源链接: utcz.com/qa/263395.html