如何在vim中撤销设置选项?

15

我经常打电话

:set spell

只是立即呼叫

:set nospell

一旦我纠正了自己不确定的单词。

通过映射这两个命令,我可以使其更快,但我正在寻找一种更通用的方法来加速。是否有可能撤消最后一个选项 :set?

2个回答

18

严格地说,不,您不能在Vim中撤销设置选项。

但是像'spell'这样的布尔选项可以使用以下任一选项切换:

:set spell!
:set invspell

在交互使用中,通常不需要专门执行:set spell:set nospell。切换更加方便,并且可以通过@:命令立即“撤消”。

非布尔选项可以通过将它们重置为其出厂值来撤消 - 例如,如果您弄乱了某些设置并希望恢复原状。例如:

:set formatoptions&

在选项名称后附加&将其重置为默认值。


感谢@命令,虽然不完全符合我的要求,但它在这种情况下非常适用,同时还是相当通用的。 - num1

16

我不知道你是否可以撤销选项的设置,但对于像spell这样的开启/关闭选项,你可以在选项名称末尾加上一个!来切换它:

:set spell!

1
这个结合了命令行历史记录,应该非常快速执行。 - Russell Silva
1
@RussellSilva 是的没错。我在我的 .vimrc 中也有 nnoremap ; :nnoremap : ;,所以重复这个命令就像是 ;<up><cr> 这么简单。 - Ben Klein

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接