I'm happy to announce that ContextKeeper v1.6.25 with snapshot stashing feature is available for Visual Studio 2022/2019/2017/2015 and 2013.

I want to thank everyone for their time and participating in the last survey. A lot of proposed features were directly from the feedback I've gathered during development. There were a lot of different propositions from the community that I had put in the survey, e. g.:

  • keyboard shortcuts for creating “quick snap” (stash) snapshot and restore it later (implemented in v1.6.25)
  • full screen state remembered for the main IDE window and floating windows (implemented in v1.6.25)
  • improvements around deleting snapshots (partially implemented in v1.5)
  • storing .contextkeeper folder outside the solution folder (configurable path) (coming soon)

It was a nice surprise to see "quick snap" proposition got a lot of votes because it wasn't a feature I was initially planning to implement. To be honest, I even didn't have it in the backlog. But you asked and it's here 😀

From the other side the top voted features confirmed a strong desire for storing bookmarks and breakpoints. From the very beginning, I was planning to build a tool that will catch all those subtle pieces of puzzles, that every developer is laying around during a development session. Bookmarks and breakpoints are the the most important goals on the 2022 roadmap.

Survey results

I've prepared the results graph for the highest voted features. The two highlighted features are already implemented:

✅ snapshot stashing - creating "quick snap" snapshot and restore it later with keyboard shortcut support,

✅ full screen state is remembered for every opened window in a snapshot.

img

Create stash snapshot and restore it later

There are two additional commands in the toolbar. Stash and unstash. The idea is from git workflow but here it's applied to a current context you're working on. You could quickly save it (stash) and switch to something else** that needs an urgent attention. After stashing a snapshot all tabs will be closed automatically, similarly how stashing works in git - current context is cleared and ready for a new work.

A stash snapshot is always displayed as a first on the list. Currently only single stash is supported but multiple stashes will be supported in the future.

img

A stash has additional description, like "<stashed> 2 hours ago", to get you additional awareness how long it's awaiting to be unstashed. It's really easy to lose track of time, during coding session, and it will act as an useful reminder how long your "main" task was put on hold. The stash timestamp description is live updated. If you decide that more meaningful name for stash snapshot is needed, you can simply rename it and it will become a regular snapshot.

Keyboard shortcuts

You could assign your favorites keyboard shortcut combination for stash and unstash commands from the toolbar. There aren't default shortcuts assigned but I found useful to use:

  • Ctrl+Shift+S, Ctrl+Shift+S for snasphot stashing
  • Ctrl+Shift+S, Ctrl+Shift+U for snasphot unstashing
img

Full screen (maximized) windows support

There is a support added to remember if windows is maximized during snapshot creation. No more problems with restoring maximized windows, especially during git branch switching 😍 Only maximized windows will have additional property serialized in a snapshot.

img

Celebrating 25th Visual Studio Birthday

You could noticed that current version is 1.6.25. I've added 25 to celebrate 25th Visual Studio Birthday. Officially, first Visual Studio 97 was released 19th March, 1997. But if you really curious there were several MS Visual C++ versions before 1997 that later were rebranded to Visual Studio. There is also really interesting documentary about Visual Studio - part 1 and part 2 - really worth to watch.

I've first started using VS around 2002/2003 when I was studying Computer Science at UMCS University in Lublin, Poland. It's more than 20 years I'm using VS on daily basis 🎉 and I'm looking forward for the next 20 years! Really unbelievable how one tool can impact your professional career.