How to turn VSCode into Neovim 🙃

Tom Deneire
8 min readNov 29, 2023
Photo by Klim Musalimov on Unsplash

VSCode != Neovim

Okay, first things first: of course, this post is as much a joke as anything else. VSCode is not Neovim and neither should it be! Both editors have different strengths and I’m a firm believer in picking your development tools based on your specific needs. For some, that might be VSCode or a JetBrains IDE, for others that might be Neovim with Tmux.

Even though I belong to the latter category, I do fire up VSCode once in a while, specifically in scenarios where it’s just better than Neovim. One example is when I need to edit and run Jupyter Notebook files, which is not possible (or very impractical) in a terminal based environment. Another is that, while I have debuggers set up in Neovim, debugging is one case where using a mouse-driven interface is often quicker than keyboard shortcuts.

Moreover, even if there’s probably no way to beat Neovim as a “hyperextensible” editor (you can literally program it to do pretty much anything), VSCode has a ton of features and a very active extension ecosystem too, so there’s probably more configuration possible than some might give it credit for!

All of this got me interested lately in a little experiment: I wanted to see just how far I could get in trying to get VSCode to behave like my Neovim installation.