vim中有撤销上一次的命令行操作的命令吗?
vim中(我用的是Windows下的gVim),我们知道u为撤销上一次的编辑操作的命令,那有没有撤销上一次的命令行操作的命令呢?比如我键入:set list之后,我想直接取消该操作,在不输入:set nolist的情况下,有其他更为直接的快捷键和命令吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果你要问按键映射的话还真没有,不过具体到你举的例子可以换用
:set list!
来切换开关状态,其实绝大部分的 vim options 都可以用这样的方法来切换,所以你也可以把常用的映射到按键上,这样会方便很多。Tim Pope 写过一个插件好像叫 unimpaired,这个插件就是把很多这种切换式的命令帮你做了预先的映射,对提高效率帮助很大。更准备的说,
u
是撤销上次的修改操作. 所谓修改操作, 是指改变了文本, 包括文本内容和文本位置.在此基础上, 如
:s
替换操作, 命令行操作, 改变文本了, 所以u
可以还原.但
:set
是设置编辑器特性, 并不属于修改操作, 不改变文本, 所以u
并不起作用.对于
:set
没有别的快捷方式, 取消上次的认定.