根据我在Vim的任务,我有几个选项卡打开。
如何保存不同的会话以供以后使用?
根据我在Vim的任务,我有几个选项卡打开。
如何保存不同的会话以供以后使用?
当前回答
有一个叫vim-session的插件。它非常强大。安装方法:
cd ~/.vim/bundle
git clone https://github.com/xolox/vim-session.git
我在我的.vimrc文件中映射了它的功能,就像这样:
nnoremap <leader>so :OpenSession
nnoremap <leader>ss :SaveSession
nnoremap <leader>sd :DeleteSession<CR>
nnoremap <leader>sc :CloseSession<CR>
现在在正常模式下输入<leader>ss,你会看到这样的命令
:SaveSession
现在添加会话的名称
:SaveSession namesession
就这些。
当你关闭Vim并重新打开它时,就这么做
:OpenSession
你会看到你的会议开始了。
在你的.vimrc文件中还有很多其他的配置需要添加,参见文档中的例子:
let g:session_directory = "~/.vim/tmp/session" // the directory must be created before the sessions will be saved there
let g:session_autoload = "no" // automatic reload sessions
let g:session_autosave = "no" // autosave
let g:session_command_aliases = 1
YouTube上有一个很好的教程。
其他回答
为了管理多个会话(在每个目录/回购的基础上),我最近从vim-session插件切换到vim-workspace。它的会话管理相对简单,工作得很好。
有一个叫vim-session的插件。它非常强大。安装方法:
cd ~/.vim/bundle
git clone https://github.com/xolox/vim-session.git
我在我的.vimrc文件中映射了它的功能,就像这样:
nnoremap <leader>so :OpenSession
nnoremap <leader>ss :SaveSession
nnoremap <leader>sd :DeleteSession<CR>
nnoremap <leader>sc :CloseSession<CR>
现在在正常模式下输入<leader>ss,你会看到这样的命令
:SaveSession
现在添加会话的名称
:SaveSession namesession
就这些。
当你关闭Vim并重新打开它时,就这么做
:OpenSession
你会看到你的会议开始了。
在你的.vimrc文件中还有很多其他的配置需要添加,参见文档中的例子:
let g:session_directory = "~/.vim/tmp/session" // the directory must be created before the sessions will be saved there
let g:session_autoload = "no" // automatic reload sessions
let g:session_autosave = "no" // autosave
let g:session_command_aliases = 1
YouTube上有一个很好的教程。
你想要的是
:mksession ~/mysession.vim
然后你可以源vim文件,你会有你的旧会话回来:
:source ~/mysession.vim
或者使用-S选项打开vim:
$ vim -S ~/mysession.vim
您可能希望在vimrc中设置这些会话选项。特别是当您在保存会话之后更改了vimrc时,选项非常烦人。
set ssop-=options " do not store global and local values in a session
set ssop-=folds " do not store folds
你可以把会话存储在任何你想要的地方。
Ex:
:mksession! D:/session.ses
这将会话存储在D驱动器中。
这可以通过输入打开
:so D:/session.ses
在任何vim文件中。