Why I Switched from VSCode to Neovim
Developers switch their code editors for all kinds of reasons. In my case, the journey started with VSCode, but even then, I was already using Vim keybindings. I had been familiar with Vim for some time, and the plugin for VSCode seemed “good enough” until it wasn’t.
The Limits of Vim in VSCode
The first cracks began to show when I realized that although VSCode’s Vim plugin supported a decent portion of Vim’s functionality, it wasn’t the full experience. Critical features, like macros, were either missing or incomplete. For someone who heavily relies on Vim’s modal editing philosophy, this limitation quickly became frustrating.
On top of that, I never really liked VSCode’s user interface. To me, it always felt bloated and, frankly, ugly. The search feature didn’t click with me, the default keybindings were unintuitive, and perhaps worst of all, VSCode’s performance lagged behind. It felt sluggish compared to what I knew was possible.
Enter Neovim
So, I made the switch to Neovim and I never looked back.
The first thing I noticed was speed. Neovim is lightweight and fast, even with a custom setup. Then came the customizability. Unlike VSCode, Neovim doesn’t impose a UI or workflow on you. You get to build your own environment from the ground up, tailored exactly to how you want to work.
Pairing Neovim with tmux only amplified this productivity boost. Navigating, splitting, and managing terminals became second nature and far quicker than what I had in VSCode.
But… It’s Not for Everyone
That said, I wouldn’t recommend Neovim to everyone. If you don’t have specific needs or if you don’t want to spend time tweaking your editor, Helix might be a far better choice. It offers modal editing and good defaults without requiring you to sink hours into configuration.
Neovim, on the other hand, shines for people like me those who are willing to dedicate time to fine-tune their setup. It’s not an “out-of-the-box” experience. You’ll likely need weeks, maybe a month, to really mold it into your perfect editor. But once you do, the payoff is huge.
My Personal Touches
My move wasn’t just about using Neovim “as is.” I even ported one of my VSCode plugins, depramanager, into a Neovim version. Later, through my tool gumpakt, I built a Metal LSP server, making Neovim even more powerful for my workflow now I am even writing a kind of debugging helper to help in well debugging.
These projects highlight the beauty of Neovim: it grows with you. The more you invest into it, the more it returns in flexibility and performance.
Falling Into the Ricing Rabbit Hole
Eventually, switching editors wasn’t enough I fell into the i3 ricing and optimization rabbit hole. I started experimenting with tiling window managers, inspired by i3 on Linux but adapted for macOS, amethyst for example.
That’s when I discovered a whole ecosystem of tools that brought the same kind of minimalism and efficiency to my desktop environment that Neovim brought to editing:
- SketchyBar – a powerful and customizable status bar replacement.
- Tacky Borders – subtle window borders that make it easier to see focus and window splits.
Both are from the same developer, someone who’s been pushing the boundaries of what’s possible on macOS. These tools, combined with a tiling manager, transformed my workflow. Suddenly, macOS felt less like a polished but rigid environment and more like a customizable workspace tailored to me fast, minimal, and efficient.
In many ways, this mirrors my shift from VSCode to Neovim: trading convenience and defaults for control and performance.
Conclusion
Switching from VSCode to Neovim wasn’t just a change of tools it was a change of mindset.
- VSCode offers convenience but at the cost of performance and flexibility.
- Neovim offers raw speed and ultimate customizability, but only if you’re willing to put in the time.
- For those who want a middle ground, Helix might just be the perfect balance.
And once I went down this path, it didn’t stop at my editor. From Neovim configs to window tiling managers, SketchyBar, and tacky borders, I built a system that fits me perfectly.
For me, Neovim (and the broader world of customization it introduced me to) was worth the investment. It’s not just about writing code anymore it’s about shaping the environment I work in every day.