Vi/Vim恢复打开的文件

Tom*_*Tom 46 vi vim

我想知道这个常见的IDE功能是否可用.

假设我使用Vim打开许多文件,使用vsplitsplit.然后,我关闭一切.

第二天,我想要恢复这些文件.也就是说,恢复它们打开的方式,而不必再打开每个(使用splitvsplit).

那可能吗?

更新:

使用mksession!source命令,在.vimrc文件中映射命令,有没有办法参数化映射,以便编写特定的文件?

例如:

map <F2> :mksession! ~/vim_session @INSERT_HERE<cr> "Save session to @INSERTHERE file
Run Code Online (Sandbox Code Playgroud)

提前致谢

hgm*_*mnz 94

您可以使用:mksession和:source映射到一组键,以便于保存和恢复.这是我的.vimrc中使用F2和F3的示例:

map <F2> :mksession! ~/vim_session <cr> " Quick write session with F2
map <F3> :source ~/vim_session <cr>     " And load session with F3
Run Code Online (Sandbox Code Playgroud)

  • 考虑命名文件〜/ .vim_session,所以它已经不在了.这也与其功能更加一致. (10认同)
  • 神圣的废话这是很好的信息.似乎每年我都学到更多的vim awesomeness.我还建议自动执行此操作,以便按键保存会话并退出(如传统IDE)和.vimrc自动源〜/ .vimsession. (4认同)
  • 重新加载会话后我丢失了语法高亮? (4认同)

CMS*_*CMS 11

看一下:mksession命令,创建一个session:

会话保留所有窗口的视图以及全局设置.您可以保存会话,稍后恢复时窗口布局看起来相同.您可以使用会话在不同项目之间快速切换,自动加载您上次在该项目中处理的文件.