Vim 新手在这里。
当我发出:wq
Ex 命令时,我想让它只保存并关闭活动缓冲区,而不是保存它然后从 Vim 退出。
同样,我想让:q
命令与:bd
它的效果相同。
有什么建议如何实现这种行为?
Vim 允许用户为所有模式的命令添加键映射,包括命令行模式,因此可以定义以下映射(在自己的.vimrc
文件中):
:cnoreabbrev wq w<bar>bd
:cnoreabbrev q bd
这些命令指示 Vim 将WQ
命令行中的按键 w|bd
扩展
Q为 bd
. 有关:help key-mapping
更多详细信息,请参阅。
查看Sayonara 插件。
我尝试了另一个答案,但它缺少一个用例。当我关闭最后一个缓冲区时,我希望它像常规:q
命令一样关闭 Vim。 :bd
只会给你一个空白窗口,没有缓冲区。
这是映射,改编自另一个答案:
" Prevent accidental closing of all buffers when doing :wq or :q
cnoreabbrev wq w<bar>Sayonara
cnoreabbrev q Sayonara