ALE is a plugin that offers essential support for my coding workflow in Vim. ALE helps with linting and fixing the code you write.

I also use ALE’s autocomplete function, as described in the blog post VIM: Better “Go to definition” and completion using ALE.

However, my NeoVim doesn’t want to play nice and sometimes inserts suggestions that I don’t want.

For example, when I type state. in a JavaScript file, it automatically completes to state.constructor, even though that’s not what I wanted to type. Now I have to go back and delete the word.

If you have the same problem, I suggest setting this option in your .vimrc file:

set completeopt=menu,menuone,preview,noselect,noinsert

There seems to be a bug in Vim/NeoVim that automatically inserts stuff. See the GitHub issue about that if you’re interested.