tdrk's diary

とある情報系大学生。主には自分のための備忘録...になる予定

vimでセッションを保存・復元

ふとプログラムを書いていて毎回関連ファイルを開くのはだるいな...と思っていたけど、それに対する対策をしてこなかった(・_・;)
これではマズいと思ってきたので、そんなことができるように設定した。


参考にさせていただいたのはこちらの記事。qiita.com
こちらで紹介されていたのをなぞっただけですが。。。

やったこととしては、恒例のNeoBundleをインストールして、vimrcに設定を書いた。

NeoBundleのインストール

" sessionを保存
NeoBundle 'xolox/vim-session', {
      \ 'depends' : 'xolox/vim-misc',
    \ }

vimrcへの設定書き

" --------------------
"
"  vim-session
"
" --------------------
" 現在のディレクトリ直下の .vimsessions/ を取得
let s:local_session_directory = xolox#misc#path#merge(getcwd(), '.vimsessions')
if isdirectory(s:local_session_directory)
  " session保存ディレクトリをそのディレクトリの設定
  let g:session_directory = s:local_session_directory
  " vim終了時に自動保存
  let g:session_autosave = 'yes'
  " 引数なしでvimを起動した時にsession保存ディレクトリのdefault.vimを開く
  let g:session_autoload = 'yes'
  " 5分間に1回自動保存
  let g:session_autosave_periodic = 5
else
  let g:session_autosave = 'no'
  let g:session_autoload = 'no'
endif
unlet s:local_session_directory

操作

今現在のvimの状態を保存したい場合には

:SaveSession

コマンドを打つ。

過去に保存したセッションを復元させたい場合には

:OpenSession

とすればよい。


まだまだ使い始めたところなので、新たに分かったことがあれば追記します。。。