I'm happy to announce the ContextKeeper 0.71 version is available in private beta.
From now on you can safely store and switch between different programming contexts in seconds. A snapshot remembers last opened files, pinned tabs, documents positions and state (horizontal/vertical orientation, docked state and order) are preserved in a simple JSON file.
After installing VSIX package you could access your latest Mental Snapshots by navigating to
View -> Other Windows -> Mental Snapshots
By default tool window will open next to Solution Explorer
You could create a new snapshot using Create Snapshot button
and restore them quickly using few commands from right-click context menu
Full Restore - restores all files including windows state&position, pinned tabs and current line&column for every file,
- Append Files - adds all files from a selected snapshot to the current active window,
- Restore Files - closes all tabs and restores a snapshot in the same way as Append Files,
- Update - update selected snapshot using current visual&logical state
Where the snapshots are stored?
All snapshots are stored in the .contextkeeper folder which is created in the same folder where solution file (.sln) sits. A snapshot is saved using self explanatory JSON format. You could try changing different bits manually and later checking an impact it has during restoring process.
Current limitations
- s̶t̶o̶r̶e̶d̶ ̶f̶i̶l̶e̶ ̶p̶a̶t̶h̶s̶ ̶i̶n̶ ̶a̶ ̶s̶n̶a̶p̶s̶h̶o̶t̶ ̶a̶r̶e̶ ̶a̶b̶s̶o̶l̶u̶t̶e̶ (update: relative path support implemented 1st June 2022),
- windows positions are tightly coupled to your (multi) monitor setup and switching between them are not supported yet (e. g. switching between workstation and laptop).
- Visual Studio 2013/2015/2017 and 2019 are supported. The experimental support for VS 2022 is around the corner. (update: VS 2022 support started from 26th November 2021)
Roadmap
Current roadmap is focused to remove above limits and add support to:
- automatic snapshot switching when changing branches (update Nov 11th 2021: already implemented!)
- relative paths for all files in snapshots in order to be able to restore a snapshot in different dev environment (e. g. new folder structure or entirely new machine), (update: implemented, 1st June 2022),
- multi-monitor setup detection to allow smooth snapshots transition between your workstation or laptop or even sharing it with your teammate.