Vim新手在这里。
当我':wq'我希望它保存并删除缓冲区而不是保存并退出。 同样点击':q'会执行':bd'而不是。
有什么建议吗?谢谢!
答案 0 :(得分:10)
Vim允许在包括命令行模式在内的所有模式中为命令添加键映射,因此您可以定义这些映射(在.vimrc
中):
:cnoreabbrev wq w<bar>bd
:cnoreabbrev q bd
命令告诉Vim在命令行中按 w q 必须扩展为w|bd
,同样地, q bd
。有关详细信息,请参阅:help key-mapping
。
答案 1 :(得分:0)
我尝试了另一个答案,但是它缺少一个用例。当我关闭最后一个缓冲区时,我希望它关闭Vim,就像常规的:q
命令一样。 :bd
只会为您留下空白窗口,没有缓冲区。
以下是映射,根据其他答案改编而成:
" Prevent accidental closing of all buffers when doing :wq or :q
cnoreabbrev wq w<bar>Sayonara
cnoreabbrev q Sayonara