使(Mac)Vim在关闭时打开文件时重新打开

gws*_*gws 7 vim macvim

使用案例:

您的MacVim窗口中显示2-3个文件.按ctrl + Q键,MacVim关闭.当您重新启动MacVim时,它会打开,显示您关闭它时的相同文件.

你怎么能这样做?

- 答案

我将以下内容添加到我的.vmirc中

  "save and close all files and save global session
nnoremap <leader>q :mksession! ~/.vim/Session.vim<CR>:wqa<CR>
  "close all files without saving and save global session
nnoremap <leader>www :mksession! ~/.vim/Session.vim<CR>:qa!<CR>

function! RestoreSession()
  if argc() == 0 "vim called without arguments
    execute 'source ~/.vim/Session.vim'
  end
endfunction
autocmd VimEnter * call RestoreSession()
Run Code Online (Sandbox Code Playgroud)

有了这个我几乎有我想要的确切行为,唯一的小麻烦是我仍然需要按下命令-Q但是那是MacOs,而不是vim ....

Fat*_*lan 13

安装此插件:https://github.com/xolox/vim-session

并将以下两行添加到您的.vimrc:

let g:session_autosave = 'yes'
let g:session_autoload = 'yes'
Run Code Online (Sandbox Code Playgroud)

现在,如果您关闭MacVim/GVim,它会自动保存并加载会话.


mb1*_*b14 9

我建议你阅读会议:help session,这应该回答你的问题.甚至还有很好的脚本来处理会话.