我可以在vim中(重新)映射Ex命令吗?

时间:2020-03-06 14:33:40  来源:igfitidea点击:

我爱vim及其带来的速度。但是有时候,我的手指太快了,我发现自己输入的是:WQ而不是:wq。 (在德语键盘上,我们必须按Shift才能得到冒号。)然后Vim会抱怨WQ不是`编辑命令。

有什么方法可以制作" W"和" Q"编辑器命令?

解决方案

尝试

:command WQ wq
 :command Wq wq
 :command W w
 :command Q q

这样,我们可以定义自己的命令。有关更多信息,请参见:help命令

你可以使用

:cmap WQ wq

也一样
例如。我有

cmap h tab help

在我的.vimrc中,这意味着在新标签页中打开帮助页面。

感谢小贴士Jim Stewart:

But here is a much better solution as the above (for the help mapping,
  so that it only applies when you do :h):

cnoreabbrev <expr> h getcmdtype() == ":" && getcmdline() == "h" ? "tab h" : "h"

替代方法:

使用"命令缩写"

:ca WQ wq