110

I've been hearing about Neovim; how does it differ from Vim? All the points on the homepage are just architectural changes 'under the hood'. As a user, what's the difference for me?

  • The asynchronous feature is a life saver. It makes vim so much more fluid and a lot of plugins can take advantage of it. – tommyip May 19 '16 at 10:12
  • Tutor is improved. It looks different. – Fernando Rodriguez Sep 24 '16 at 21:09
  • "A nice looking website, that’s one thing Neovim did right." — Bram Moolenaar from interview – michael Jan 5 '18 at 10:17
79

Just like the neovim homepage describes, neovim's objective is to pave the way for a better & more openly community driven open source project.

The architectural changes not only will bring more stability & improve performance to vim but make the code a lot more maintainable and bring the entry barrier slightly down for anyone who is interested to contribute.

One of the key changes also includes the core feature of access to executing jobs / tasks asynchronously in vim, which has been one of the most requested feature of vim since a long time. This can help improve performance of vim even further especially because vim will not have to block while a background job is doing something.

As a vim user, not much might change besides the fact that neovim should grow as a software much faster (fix issues, add features) as compared to stock vim and that it will have much better performance in the long run.

  • 23
    +1. Let me also add that the fact that there will be very few user-visible changes is a good thing. – carlosdc Feb 3 '15 at 22:05
  • 24
    This reads like a rehash of a press release rather than an actual rundown of why somebody should care. For example I've been using vim for two decades and can't remember the last time the core program showed me any kind of instability so why should I care about "more stable"? – Caleb Feb 4 '15 at 9:23
  • 2
    Asynchronous tasks should mean no more blocking vim's interface to do work that could be in the background. – alxndr Feb 10 '15 at 5:26
  • 3
    Is there any evidence in the two years that that neovim has been active that it's growing faster, and has better performance? – Sparhawk Mar 5 '16 at 23:14
  • 7
    It is no longer true that Vim has no support for running background jobs asyncronously. – Rich Sep 26 '16 at 9:08
34

I'm specifically addressing:

Why should I care? As a user, what's the difference for me?

The thing I am most excited about as a Vim user are the new kinds of plugins, integrations, and interfaces that will be enabled by the changes under Neovim's hood.

As time goes by you will begin to see really impressive plugins and programs that work with Neovim but not Vim. There's a list of Neovim-specific plugins: here in neovim's github.

I don't know how up-to-date it is, but I am excited to see it grow as we get more tools to make coding more efficient and enjoyable.

15

My own favorite addition Neovim brings to the table is terminal mode. You can now split your Neovim window and have a terminal emulator running on one side and be editing a file on the other side! I suppose you could even run Neovim inside of itself now, just in case you really wanted to do that.

Having asynchronous plugins is also going to be extremely useful soon; this means we're finally able to have really good code completion, after only 40 years of waiting!

Neovim also has better mouse support than Vim does.

  • 2
    They should call it Metavim :P – Tumbler41 May 5 '16 at 21:52
  • I don't know of any mouse-specific changes that Neovim has which would make it better than Vim. – jamessan May 6 '16 at 0:08
  • The one coming to mind right now is that you can be in a terminal ssh session, open up Neovim, and click on a spot to edit it. I don't think Vim can do that, though it's possible that I just don't have a big enough .vimrc yet! I guess this might be better termed as ssh support than mouse support though. – Johnathan Andersen May 6 '16 at 17:32
  • It's definitely possible to use the mouse in Vim over an SSH connection (I just tried it), but if you were unable to get it working in Vim and it works by default in NeoVim I guess that's a datapoint in favour of your statement that the support in NeoVim is better ;). – Rich Sep 26 '16 at 9:22
  • 1
    I've been using mouse in regular Vim over SSH from Putty running on Windows with a single set mouse=a line in vimrc for quite a while – Thunderbeef Aug 25 '17 at 23:53
4

Two points that are not yet addressed by other answers and might be interesting for a user, even or especially new users without a (or with a small) config file:

  1. NeoVim does not try to be Vi compatible by default. They changed many default values for the settings and are actively discussing such changes: #2676, #6289
  2. It can be embedded in another process (remember netbeans integration?) and has many different GUIs so MacVim is no longer the fanciest GUI you can find for your $EDITOR.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.