GitHub - tpope/vim-obsession: obsession.vim: continuously updated session files
source link: https://github.com/tpope/vim-obsession
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
obsession.vim
Vim features a :mksession
command to write a file containing the current
state of Vim: window positions, open folds, stuff like that. For most of my
existence, I found the interface way too awkward and manual to be useful, but
I've recently discovered that the only thing standing between me and simple,
no-hassle Vim sessions is a few tweaks:
- Instead of making me remember to capture the session immediately before
exiting Vim, allow me to do it at any time, and automatically re-invoke
:mksession
immediately before exit. - Also invoke
:mksession
whenever the layout changes (in particular, onBufEnter
), so that even if Vim exits abnormally, I'm good to go. - If I load an existing session, automatically keep it updated as above.
- If I try to create a new session on top of an existing session, don't refuse to overwrite it. Just do what I mean.
- If I pass in a directory rather than a file name, just create a
Session.vim
inside of it. - Don't capture options and maps. Options are sometimes mutilated and maps just interfere with updating plugins.
Use :Obsess
(with optional file/directory name) to start recording to a
session file and :Obsess!
to stop and throw it away. That's it. Load a
session in the usual manner: vim -S
, or :source
it.
There's also an indicator you can put in 'statusline'
, 'tabline'
, or
'titlestring'
. See :help obsession-status
.
Installation
If you don't have a preferred installation method, I recommend installing pathogen.vim, and then simply copy and paste:
cd ~/.vim/bundle
git clone git://github.com/tpope/vim-obsession.git
vim -u NONE -c "helptags vim-obsession/doc" -c q
Self-Promotion
Like obsession.vim? Follow the repository on GitHub and vote for it on vim.org. And if you're feeling especially charitable, follow tpope on Twitter and GitHub.
License
Copyright © Tim Pope. Distributed under the same terms as Vim itself.
See :help license
.
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK