大多数 IDE 的文本编辑器会在您搜索某个字符串时显示“this is match 3 of 7”之类的信息。n
当您使用and移动到匹配项时,有什么方法可以让 Vim 显示此信息N
?
问问题
715 次
2 回答
6
于 2013-05-29T14:11:33.320 回答
2
最常见的方法是将n
标志与替换命令一起使用。
:%s/set//gn
或通过 使用当前模式:%s//gn
。这为您提供了一些您要求的反馈。
不过我更喜欢使用:vimgrep
和 quickfix 列表。通过以下方式搜索您的模式:
:vimgrep/set/ %
这将搜索当前文件,%
并将匹配项添加到快速修复列表中。然后您可以通过:cnext
或浏览快速修复列表:cprevious
。在快速修复列表中移动时,文本将显示在底部,显示类似这样的内容(1 of 5)
。通过使用该:copen
命令,将打开一个显示快速修复结果的窗口。<cr>
通过按下快速修复项目移动到模式。
使用:vimgrep
.
:vimgrep
从 vim 7.3 开始,不支持使用当前模式,即 no:vimgrep// %
。相反,必须使用<c-r>/
拉入搜索模式寄存器并可能转义任何/
's。- 对于当前文件的使用
%
意味着该文件必须存在,因此您无法搜索暂存缓冲区。 :cnext
, , and friends 与 nice and simple and:cprev
相比相当冗长。添加漂亮的映射可以克服这个问题。我使用和来自 Tim Pope 的优秀未受损插件。n
N
[q
]q
如需更多帮助,请参阅:
:h :s_flags
:h :vimg
:h c_CTRL-R
:h quote/
:h quickfix
:h c_%
于 2013-05-29T14:43:28.273 回答