是否可以在 vim 中即时设置 BufLeave autocmd?
is it possible to set BufLeave autocmd in vim on the fly?
我想做的事情:
在vim中的一个file/buffer里面,尤其是一个没有命名的(比如用:enew创建的),有时候我觉得我写的内容值得保存(比如说,我突然想通过电子邮件发送),但不觉得有必要将其保存到临时文件中,我也不相信自己 "remember" 在退出时保存它。
所以我想,如果我 运行
autocmd BufLeave * ggvG"+y
在 vim 命令行中一次,不用担心丢失此内容。
但是没用。当我退出时vim,系统剪贴板提示完好
我的问题:
- 如果我们 运行
autocmd
在运行时它会做什么,而不是在 vimrc 中?
- 有没有办法告诉 vim 到 "hey, when you exit, run these"?
非常感谢!
两个问题:
1) 你没有离开缓冲区去另一个缓冲区(BufLeave
);你离开了 Vim (VimLeave
).
2) autocmd
需要一个命令,而不是正常模式下的击键。
考虑到这一点,
autocmd VimLeave * normal gg"+yG
我想做的事情:
在vim中的一个file/buffer里面,尤其是一个没有命名的(比如用:enew创建的),有时候我觉得我写的内容值得保存(比如说,我突然想通过电子邮件发送),但不觉得有必要将其保存到临时文件中,我也不相信自己 "remember" 在退出时保存它。
所以我想,如果我 运行
autocmd BufLeave * ggvG"+y
在 vim 命令行中一次,不用担心丢失此内容。
但是没用。当我退出时vim,系统剪贴板提示完好
我的问题:
- 如果我们 运行
autocmd
在运行时它会做什么,而不是在 vimrc 中? - 有没有办法告诉 vim 到 "hey, when you exit, run these"?
非常感谢!
两个问题:
1) 你没有离开缓冲区去另一个缓冲区(BufLeave
);你离开了 Vim (VimLeave
).
2) autocmd
需要一个命令,而不是正常模式下的击键。
考虑到这一点,
autocmd VimLeave * normal gg"+yG