βΉοΈ
Reasoning
If you use vim or neovim on a daily basis and work in large codebases, it is probably not uncommon for you to have 10+ tabs open at a time, with various splits. Once you close this vim session the layout is lost to the ethers. the
mksession
command in vim(neovim) can save you, thus saving the session to a directory, promising to return you to your work exactly how you left it. However, the problem is most of us accrue many of these session files scattered about, personally I have 28 vim session files, easily loading them, rememembering the context of each one, and removing stale sessions becomes a hassle. entervsm
(Vim Session Manager), it is a script I wrote years ago that has been kicking about my dotfiles, and now is being revamped and written as an easily installable python package as some of my compatriots have expressed interest in using it.
π¦ΈββοΈ
Features
Current planned features
- Open session by name (regex filtered)
- Remove session by name (regex filtered)
- List all sessions
- Show programmer statistics for each session
π·
Development (for the contribution driven opensourcerer)
The project is managed by Python Poetry and uses python >= 3.10.1. Note: mypy static analyzing currently will not work as it does not yet support the match statement
β¨οΈ
Commands to help you out
Install the package
poetry install
Run the tests to verify everything worked
poetry run tests
Run the executable
poetry run drive
You can pass command line arguments to executable through poetry
-
poetry run drive --help
-
poetry run drive --open-session <session>
-
poetry run drive --remove-session <session>
-
poetry run drive --the-current-state-of-things
π¦
3rd party libraries
Vim Session Manager uses the following Python libraries
π
Documentation
To be completed
π§
Contributing
To be completed