保存和/或自动保存vim会话的正确方法是什么?

puk*_*puk 3 vim

您可以使用创建会话

:mksession [sessionName.vim]
Run Code Online (Sandbox Code Playgroud)

但如果您以后修改该会话(即添加/删除缓冲区),则必须再次手动保存会话,但这样做会产生以下错误

E189: "Session.vim" exists (add ! to override)
Run Code Online (Sandbox Code Playgroud)

这是你通常能获得一个错误Save As没有Save.所以我有两个问题:

  1. 这里没有Save功能吗?
  2. 有没有办法对autosave会话文件进行所有更改?

注意:我知道我可以发出mksession! sessionName.vim覆盖现有会话文件的问题.

tun*_*ngd 6

  1. AFAIK mksession!真的是唯一的出路.
  2. 你可以很容易地完成它,只需要一行vimrc:
    au VimLeavePre * if v:this_session != '' | exec "mks! " . v:this_session | endif

当然,有些插件可以帮助您保存/加载和自动保存会话.尝试在http://vim.org上搜索会话.