Ramblings of an aging IT geek
← Ramblings of an aging IT geek
tooling

moving to neovim, slowly, and on purpose

Why I'm migrating from plain Vim to Neovim one small piece at a time rather than rebuilding my config from scratch in a weekend.

A mechanical keyboard beside a terminal running an editor

I've used Vim for years and my .vimrc is a sedimentary record of every problem I've ever had. So the temptation, now that Neovim has proper native LSP in 0.5, is to throw it all away and rebuild in Lua over a weekend with a fashionable plugin manager. I'm resisting that, deliberately.

The plan instead is to move one thing at a time and only when it earns its place. First job was getting my existing config to load under nvim at all, which mostly meant pointing init.vim at the old file and fixing two deprecated options. That alone gave me the better defaults and the faster startup, with zero behaviour change to relearn. Good enough for a week.

The next piece will be replacing my YouCompleteMe-era completion setup with the built-in LSP client, because that's the actual reason to be here. But I'm doing it for one language first, living with it, and only then deciding whether to migrate the rest. The point of a big-bang rewrite is usually to feel productive, not to be productive. Every time I've rebuilt a tool's config in one sitting I've spent the following fortnight discovering the small things I'd quietly relied on and not noticed until they were gone.

So: slowly. The muscle memory is the asset, not the config file. I'd rather keep the former intact and let the latter change underneath it.