To commit to a mouse-less future I've been working to make a workflow that doesn't have me moving away from the home row.
Over the years I've tried my hardest to get into Vim. I love the idea of it but my interest ends up trailing off... Not this time!!
I've also got into mechanical keyboards in a big way and now type on a 40% split! Getting rid of over half the keys has sped me up quite a bit - I may write an article just on this. This felt like the perfect time to give Vim a proper go.
I had used the VSCodeVim plugin in my previous futile attempts in moving to the Vim workflow. It works great, but what piqued my interest (and sent me back down this rabbit hole) in Vim again was finding Neovim.
I hadn't used Neovim and proceeded to download the GUI app. After seeing how rich the feature set is and the extensive plugin library it started to appeal to me as it didn't feel like I was comprising vs using VSCode. In researching it further I found the Neovim Extension which seemed to be what VSCodeVim is to Vim, but it was much more.
- VSCodeVim works by emulating Vim in VSC
- Neovim Extension differs in that it's communicating with a real instance of Neovim via its API.
This gives us the best of both worlds, not only is it really fast ⚡ but we now have the full feature sets (almost) of both editors.
An interesting feature of VSCodeVim is that you can change the status bar colour based on what mode you are in. This is handy with VSC's status bar being quite small, especially on high res monitors:
Yes I know I can zoom in 😛
It takes changing the colour of the status bar one step further by changing the colour of a few key UI elements:
It currently supports picking colours for Normal, Insert and Visual mode;
I'm looking to expand this to Replace and Search modes as my Vim knowledge grows, there have been a few unsuccessful attempts so far. If you have any ideas please let me know/create a pull request: Github.
By default the colours used are to match the theme I use Cobalt2 by
and have done for over a year now! To make sure it works for your theme you can change to colours in settings.json:
I'm open to any feedback so if you use NeoVim for VSCode please give it a try!
Available in the VSC marketplace, search for: Neovim
or click Here