我爱vim及其带来的速度。但是有时候,我的手指太快了,我发现自己打字:WQ
而不是:wq
。(在德语键盘上,您必须按Shift以获得冒号:
。)然后Vim会抱怨WQ
是Not an editor command
。
有一些制作W
和Q
编辑命令的方法吗?
我爱vim及其带来的速度。但是有时候,我的手指太快了,我发现自己打字:WQ
而不是:wq
。(在德语键盘上,您必须按Shift以获得冒号:
。)然后Vim会抱怨WQ
是Not an editor command
。
有一些制作W
和Q
编辑命令的方法吗?
;
回@AnthonyDiSanti,则不会:
!noremap ; :
noremap : ;
:P
Answers:
尝试
:command WQ wq
:command Wq wq
:command W w
:command Q q
这样,您可以定义自己的命令。请参阅:help command
以获取更多信息。
command Wq wq
:W example.txt
如果您使用:command W w
8.0.1453
在我中.vimrc
,使用vim ,我必须使用cmap WQ wq
,而不是“ command”。Vim不给我E128: Invalid command name
。
你可以使用
:cmap WQ wq
也一样 例如,我有
cmap h tab help
我的.vimrc
意思是在新标签页中打开帮助页面。
但是,这里有一个比上述更好的解决方案(用于帮助映射,因此仅在执行:h时适用):
cnoreabbrev <expr> h getcmdtype() == ":" && getcmdline() == "h" ? "tab h" : "h"
:echo 3
将产生:ectab helpo 3
。:e sh.py
成为:e stab help.py
。等等。
cnoreabbrev <expr> h getcmdtype() == ":" && getcmdline() == "h" ? "tab h" : "h"
帮助映射的内容,因此仅在您这样做时才适用:h<space>
。