Package: vim-session-manager
Vim Session ManagerA manager for the under-utilized `mksession` command in vim:information_source: ReasoningIf 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.
themksessioncommand 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 allows you to list, open, and remove sessions files, either interactively or by name.:superhero_man: FeaturesCurrent planned featuresOpen session by name (regex filtered)Remove session by name (regex filtered)List all sessionsOpen sessions from an interactive promptBatch session file removal from an interactive promptManages different vim variations (vim, nvim, gvim, macvim etc..)Show programmer statistics for each session when listedCurrent planned packagingPip install from this repoBuild and install manually with poetryPip install from pypiInstallingInstall from pypiCheck it out on Pypipip install vim-session-managerPip Installing from the git repo# Copy and run this commandpipinstallgit+https://github.com/mattcoding4days/vsm.git#egg=vim_session_manager--user:mage: UsageSet upNOTE that an environement variableVIM_SESSIONSis expected on the system,
if it is not definedvsmwill default to~/.config/vim_sessionswhen it looks
for your session files.bash/zshexport VIM_SESSIONS="path/to/where/you/want/to/store/your/sessions"fishset -Ux VIM_SESSIONS "path/to/where/you/want/to/store/your/sessions"Create session files easierAdd the below snippet to your.vimrcorinit.vimto make creating
new session files much easier.ifisdirectory(expand($VIM_SESSIONS))nnoremapmk:mksession$VIM_SESSIONS/nnoremapmo:mksession!$VIM_SESSIONS/elsennoremapmk:echo"VIM_SESSIONS directory does not exist, get vim session manager at https://github.com/mattcoding4days/vsm"<CR>nnoremapmo:echo"VIM_SESSIONS directory does not exist, get vim session manager at https://github.com/mattcoding4days/vsm"<CR>endifExploring the help menu for subcommandsManaging many variations of vim installed on the systemOpen a session file interactivelyOpen session file by nameRemove session file(s) interactively (one or many)Note that only the arrow keys are supported for movement, and the space bar is used to select/unselectRemove a single session file by name (with regex matching):construction_worker: DevelopmentThe project is managed byPython Poetryand uses python >= 3.10.1.
Note: mypy static analyzing currently will not work as it does not yet support the match statement:keyboard: Commands to help you outNOTE: if you are installing poetry, DO NOT install it with pipcurl -sSL https://install.python-poetry.org | python3 -Install the packagepoetry installRun the tests to verify everything workedpytestStart a poetry shell and run the executablepoetry shellvsm --help:package: 3rd party librariesVim Session Manager uses the following Python librariesresult for Rust like eleganceinquirer for fancy prompt driven selectionrich, make terminal programs great again:scroll: DocumentationTo be completed