Neovim public release 0.1.0
github.com
github.com
I wonder what their roadmap is for a 1.0 release. Is it a specific feature set, or stability in their MessagePack APIs? Is it years off, or just pending some big bugs/refactorings?
In MacVim, the vertical rectangle pastes at the end of the existing lines.
In NeoVim, it pastes on a new set of lines.
For me the first one was that the plugin folder and the .vimrc file locations changed..
Comes from here:
https://github.com/ZyX-I/neovim/blob/42047acb4f07c689936b051...
- neovim now follows the XDG spec: ~/.vimrc is now ~/.config/nvim/init.vim, etc.
- the viminfo files were replaced by a new system, "shada" (for shared data)
- lots of default settings have changed so it is more sensible[^1] by default
The rest is all the new features (when compared with vim):
- async execution (`jobstart()` et al),
- the extensions to the plugin system, so plugins can run truly asynchronously,
- the rpc api, that allows for extended clients.
I might be fogetting some things, but these are imho the most outstanding things.
One thing I haven't been able to get to work though has been asynchronous plugins. It'd be great if I could get syntastic running in the background. Are there any good articles to read about getting this up and running?
Speaking as someone who only runs straight window managers and Xterms, I hate that XDG bullshit.
This appears to be the first release, so there's no previous neovim release to issue a changelog against.
:help vim-differencesI suspect most users could download neovim, symlink their .vimrc/.nvimrc, alias vim=nvim and not be able to tell the difference.
I'm a very heavy vim user and have been using neovim for a while now. It causes me zero issues even following git master, but I can definitely notice improvements.
I hope there's more that than. I personally don't use any plugins for which this is a problem. Not doubting those plugins exist, but apparently you can get by as a Vim user without them.
I see potential for the embedding api. If I could run Vim on a server and connect to it from a web app I would find that to be very compelling. Maybe there are other features that will set it over the top, but I'm still waiting.
Async support is a big deal for a lot of people though (and it's neovims original raison d'etre). For example, not having :make (well, :Neomake) block on compile is pretty significant by itself. Under the hood getting real async tasks required/requires a ton of rewriting because of how Vim was architected. Those changes were made deliberately and weren't just so that they could use all these fancy new libraries.
So I guess I'd liken it to Windows when it went from the 98 days to WinNT/2000 - keeping things working about the same while laying the foundation for bigger improvements later.
On the other hand, I don't see much downside to moving to neovim either. It is interchangeable (in my experience) with vanilla.
My vimrc is 80 lines, I don't feel it's vanilla at all, but I don't use :make or probably any other commands that launch subtasks so I guess this is what sets me apart.
I run linter every time I save, which made vim's UI lock for noticeable time on non trivially small files. With neovim linting is smooth as butter from UI/UX perspective. Also there is asynchronous make, and other possible features/plugins.
Anything new in that field?
1 Jul: fixed 217, outstanding 91
1 Aug: fixed 220, outstanding 94
1 Sept: fixed 216, outstanding 0
1 Oct: fixed 218, outstanding 0
How is that possible? Bug in coverity? "Creative counting"?In the last week neovim changed their config file location from `~/.nvimrc` to `~/.config/nvim/init.vim`, though config file AFAIK is fully backwards compatible to vim, as I use the same vimrc for neovim and vim.
EDIT: and yeah, neomake would not be effective with classical vim.
There have been drastic changes to the event loop and redraw logic, which makes some operations feel "different" (some slower, some faster). We have not intentionally made any general performance improvements, because the performance bottlenecks of Vim/Neovim hinge on the regex engine (which is primarily maintained by Bram) and vimscript interpretation--nothing else.
Job control is implemented in Neovim for co-process (not in-process) coordination. This means that potentially long-running vimscript calculations can be offloaded to a child nvim process. But Neovim 0.1 does not have a faster vimscript engine per se.
Bunch of snobs on gitter criticizing users for installing nightlies and expecting stability... But that's what happens when you don't tag a release after almost two years of development
[Nicki Minaj:] Doctor, doctor, need you back home in bed Doctor, doctor, where you at? Give me something I need your love I need your love I need your loving You got that kind of medicine that keeps me comin'
My body needs a hero Come and save me Something tells me you know how to save me I've been feeling real low. Oh, I need you to come and rescue me
Oh!
[Chorus:] Make me come alive Come on and turn me on Touch me, save my life Come on and turn me on I'm too young to die Come on and turn me on Turn me on Turn me on Turn me on Turn me on
Make me come alive Come on and turn me on Touch me, save my life Come on and turn me on I'm too young to die Come on and turn me on Turn me on Turn me on Turn me on Turn me on
[Nicki Minaj:] Oh, you make it, make it right My temperature is super high If I scream, if I cry It's only 'cause I feel alive
My body needs a hero Come and save me Something tells me you know how to save me I've been feeling real low, Oh, I need you to come and rescue me
Oh!
[Chorus:] Make me come alive Come on and turn me on Touch me, save my life Come on and turn me on I'm too young to die Come on and turn me on Turn me on Turn me on Turn me on Turn me on
Make me come alive Come on and turn me on Touch me, save my life Come on and turn me on I'm too young to die Come on and turn me on Turn me on Turn me on Turn me on Turn me on
[Bridge:] You've got my life in the palm of your hands (palm of your hands) Come and save me now I know you can, I know you can
D-d-d-d-don't let me die young, I just want you to father my young I just want you to be my doctor, we can get it crackin' chiropractor, I, I, I, I
I, I, I, I know you can save me And make me feel alive
[Chorus:] Make me come alive Come on and turn me on Touch me, save my life Come on and turn me on I'm too young to die Come on and turn me on Turn me on Turn me on Turn me on Turn me on
I started using nvim primarily for 24 bit color themes support in the terminal. Some mild themes are way easier for the eyes.
Is anyone going to package it for Debian?
Current status seems to be working on packaging of dependencies first, since some of neovim's dependencies are either missing or out of date in Debian. A few of them have since been done (unibilium and libtermkey are now in Debian, libuv is updated), but a few are still in progress.