ashen.earth

code ramblings and technical oddities
8/1/2022

Thoughts on Neovim

Who even needs an IDE anyways?

Why I'm using Neovim

When I first started coding in high school and then later in early college I used to jump around between editors a lot more than I do today. I used Notepad++, then Visual Studio, briefly Netbeans, then Atom.

But since settling into frontend web development I've stayed with VSCode for a very long time. I liked it because it was straightforward to get started with, but versatile enough to extend for other languages. Between various jobs and projects I used it for Javascript, Java, C#, Rust, and C - and it did admirably at pretty much all of these.

But about a year ago I saw that VSCode had a Neovim plugin, and I was intrigued. I'd wanted to get more familiar with Vim beyond the basic hjkl navigation, and this seemed like a great way to do that!

So for the last year and change I've had the vscode-neovim plugin plugin installed, and I've been really enjoying it!

I quickly fell in love with visual block mode, or the "delete N words" commands. They're just so handy I suddenly felt like they were missing if I needed to edit code any other way!

But over the weekend I made the jump from using Neovim inside VSCode to using it more or less on its own. I saw a video that mentioned the AstroNvim configuration framework and Neovide, and decided "yeah, I think I want to try that", and a few days later . . . here we are.

How is it going?

Overall, surprisingly well.

The AstroNvim config I'm using already had NeoTree set up which is very nice. I've figured out how to get ESLint and Prettier configured for work, rust-analyzer installed for my own projects, I've been poking at themes over and over again, and honestly . . . I'm really liking this.

Getting Neovide to connect to a VM over the network was relatively straightforward, I love how easy it is to drop my config into git and keep it synced between computers, and finally having proper mouse support (which I never could get sorted out with my terminal) is a pretty big game changer for when I'm just reading code.

Also, I'd be lying if I said that I didn't love the smooth scrolling and cursor animation. I am a simple girl after all.

Should you try replacing your IDE?

That is a tricky question to answer.

I was comfortable spending some time experimenting with this because I already had decent familiarity with Vim and had been using Neovim specifically for a while. If you don't have any similar experience, the learning curve is going to be pretty steep.

But hey - if you're looking for a challenge, you'll definitely learn a lot.