我有一个vim宏,我一直在输入错误,通常当我试图保存一些东西时,我很快就会这样做,而且我无法弄清楚我按下了什么键.这很烦人,因为它将一些不相关的bash代码粘贴到我的文件中,所以我必须撤消错误的粘贴,这也是我输入的最后一个东西,我想要的东西.
我正在寻找一种方法来列出当前定义的宏(所以我可以重新定义有问题的宏),或者一种完全清除它们的方法.我只在短期内使用宏,所以我不介意丢失它们.
干杯
Hei*_*ski 19
宏
在vim中主要被称为宏的是用@字母开始的.它以所述字母作为名称执行寄存器的内容.
列出寄存器内容
:reg
您可以清除注册表a
:let @a = ''
列表映射
所有映射
:map
所有以#开头的映射
:map \
正常模式
:nmap
插入模式
:imap
视觉模式
:vmap
命令模式
:cmap
列表缩写
所有缩写
:abbr
所有缩写以电子邮件开头
:abbr email
插入模式
:iabbr
命令模式
:cabbr
您可以:verbose
在上一个命令之前使用,以获取有关上次设置映射/缩写的位置的更多信息,如:verbose nmap
.这些命令还显示插件和其他配置文件设置的所有映射.
删除映射/缩写
(这里只列出几种模式,你应该只能为某种模式删除一种模式,就像上面的列表命令一样.)
插入模式,删除定义为\的映射:
:iunmap \\
正常模式:
:nunmap \\
删除定义为电子邮件的缩写:
:unabbr email
插入模式:
:iunabbr email
清除映射/缩写
我不建议清除所有映射/缩写,因为你会丢失插件映射/缩写的所有内容.但是,您可以通过c在上面的列出命令之后放置字母来清除映射,如:imapc
清除插入模式映射.缩写可以用:abclear
,或仅用于插入模式:iabclear
,仅用于命令模式:cabclear
.
小智 6
清除单个宏 - 记录它 - 什么都不做。
对于正常模式下的情况,您只需输入“qwq”。
使用 :reg[ister] w 进行验证
这仅比 :let @w = '' 快一点,但对我来说更容易记住。