Neovim is a fork of Vim, that branched out into its own thing in 2014. Neovim aims to address a few core issues about Vim:
- Working with a 30-year-old code base while maintaining backward compatibility is hard.
- It's very difficult to write certain kinds of plugins, asynchronous operations being a huge culprit (asynchronous support has been added to Vim in version 8.0, some time after Neovim was forked).
- In fact, writing plugins is difficult overall, and requires the developer to be comfortable in Vimscript.
- Vim is difficult to use on modern systems without tinkering with .vimrc.
Neovim aims to solve these problems with the following methods:
- Large-scale refactoring of the Vim code base, including choosing a single style guide, increasing test coverage
- Removing support for legacy systems
- Shipping Neovim with modern defaults
- Providing a rich API for...