A week with Neovim

So I’ve been trying out Neovim again. I’ve been interested a few times in the past, but when setting up a new laptop I decided to try it out for good.

In the end I was inspired to try again by lots of README’s for Vim plugins mentioning it and by an unrelated post somewhere that also mentioned Neovim.

So here I am, a little more than a week later, with regular vim removed from all my systems to properly get used to it. It’s been fun!

What’s been especially fun was finally making my setup reproducible again by putting the various Vim plugins into my regular dotfiles as git submodules.

And also, my fresh Neovim config is much shorter than the fun collection of random things my .vimrc was before (which was 219 lines of things accumulated over 10+ years, most of not used anymore for a long time):

-- looks
vim.api.nvim_command('colorscheme peachpuff')
vim.api.nvim_command('set number')

-- highlight character that was jumped to correctly after lightspeed motions (https://github.com/ggandor/lightspeed.nvim/issues/66#issuecomment-952888479)
vim.cmd[[highlight Cursor ctermfg=NONE ctermbg=NONE cterm=reverse]] 

-- fast navigation with fzf
vim.api.nvim_set_keymap('n', '<Leader>q', [[ <Cmd>b#<CR> ]], {noremap = true})
vim.api.nvim_set_keymap('n', '<Leader>b', [[ <Cmd>Buffers<CR> ]], {noremap = true})
vim.api.nvim_set_keymap('n', '<Leader>e', [[ <Cmd>Files<CR> ]], {noremap = true})
vim.api.nvim_set_keymap('n', '<Leader>s', [[ <Cmd>Ag<CR> ]], {noremap = true})

That’s all of it. Some colorscheming so that it works on terminals with a light background [^1], a fix/thing for one of the plugins I use, and fun keybindings for [fzf.vim][] which I use to switch navigate around quickly.

Do I like neovim? Yes! Is it much different than vim? Not that much. Do I want to switch back? Not at the moment.

I think the nicest thing overall about Neovim is that it has nicer defaults, e.g. when pasting from elsewhere it seems to pick that up automatically and paste things without indenting all over the place.

There’s probably lots more things to configure and play around with, but so far I haven’t needed to, and that has been quite nice.

[^1]: Siderant: Why do some programs need extra config for that, it’s a bit annoying.