关闭前强制GVim提示
最近我一直在向GVim过渡,因为我发现它比终端中的vim更美观,速度更快。我有一个非常坏的习惯,我正在努力改掉。当我从命令行使用vim时,我的工作流程如下:关闭前强制GVim提示,vim,Vim,最近我一直在向GVim过渡,因为我发现它比终端中的vim更美观,速度更快。我有一个非常坏的习惯,我正在努力改掉。当我从命令行使用vim时,我的工作流程如下: vim filename.txt # make some edits ZZ # do other stuff vim otherfile.txt # make some edits ZZ 现在使用GVim,我关闭编辑器的频率太高了。我想知道当我执行:wq或ZZ时,是否有办法强制GVim提示我或打开一个空缓冲区。有什么想法吗 编辑:我知道如
vim filename.txt
# make some edits
ZZ
# do other stuff
vim otherfile.txt
# make some edits
ZZ
现在使用GVim,我关闭编辑器的频率太高了。我想知道当我执行:wq
或ZZ
时,是否有办法强制GVim提示我或打开一个空缓冲区。有什么想法吗
编辑:我知道如何重新映射键,但我想知道是否有一种方法可以强制GVim在从命令行调用vim时具有不同的行为。将以下内容放入vimrc可以完全禁用ZZ快捷方式:
nnoremap ZZ <Nop>
在
ZZ
上调用函数,如果只剩下一个选项卡和窗口,则提示是否关闭(默认为关闭)。请参阅:help confirm()
nnoremap ZZ:call QuitPrompt()
有趣!QuitPrompt()
如果有(“gui_正在运行”)&&tabpagenr($”==1&&winnr($”==1
让选项=确认(“关闭?”,“&yes\n&no”,1)
如果选择==1 | wq | endif
else | wq | endif
结束
将此添加到您的.vimrc中:
set confirm
set confirm
Gvim和vim句柄退出时有点不同。选项1在这两种情况下都能正常工作。选项2在vim中工作得很好,但在gvim中,您可以通过在X窗口中按下“X”来绕过它(部分)。它仍将确认文件是否未编辑,但在保存所有内容时,它将退出所有内容。也许其他人知道如何处理这个问题 选项1:仅当文件未保存时确认退出
将此添加到.vimrc中:
set confirm
set confirm
选项2:始终确认退出(当您执行ZZ或q时)
使用这个插件
Plugin 'vim-scripts/confirm-quit'
或者手工编写(顺便说一句,这个插件诞生于此)我可以这样做,但我仍然喜欢在命令行中打开vim的功能,进行快速编辑和ZZ。如果是这样,就用
If has(“gui_running”)…endif围绕它