46

我在我的 .vimrc 中添加了一个函数,它只是几个搜索和替换命令。但是,如果未找到其中一种模式,我会收到一条需要输入的错误消息。我怎么能压制这个?

4

5 回答 5

77

您可以使用:silent:silent!作为任何命令的前缀,可以将“e”选项添加到替代项中,这通常更容易。

:%s/x/y/ge
:silent! %s/x/y/g
:silent %s/x/y/g

有关详细信息,请参阅

:help :silent
:help :s_flags

标志上的信息在帮助e的后面几段:s_flags

于 2009-06-25T12:22:44.133 回答
2

您可以使用静默:

:silent %s/x/y/g

或者,如果您需要进行字符串操作来确定要搜索和替换的字符串:

exec ":silent %s/x/" . varName . "/g"

我不是 100% 确定,但我认为silent这只适用于脚本。

于 2009-06-25T11:48:22.347 回答
1

可能有点跑题了,但是当我想在 vim 中搜索下一次出现时,我在 vim 中搜索“找不到搜索模式”错误的解决方案时发现了这个线程。以下地图省略了按“n”时的错误

地图n:安静!/

于 2016-05-20T08:03:02.230 回答
0

也许 :he :silent 可以用来抑制这些错误?

于 2009-06-25T11:49:06.777 回答
0

这也适用于全球运营

:silent g/^$/d'
于 2022-02-04T12:51:56.830 回答