top | item 33922027

(no title)

EToS | 3 years ago

VIM = OG

NVIM = A fully compatible re-write with focus on better scripting (lua), performance etc

GUIs = Alternative for using VIM/NVIM inside a terminal, with better optimisation for performance, smooth scrolling, animations etc (e.g MacVim, Neovide etc)

discuss

order

stingraycharles|3 years ago

I didn’t know that Neovim was a complete rewrite, thanks for sharing. The fact that I didn’t know while actively using nvim is a testament to the quality of compatibility they deliver.

lc9er|3 years ago

I don't believe it's a full rewrite. From Neovim's Vision statement:

"Neovim is a refactor, and sometimes redactor, in the tradition of Vim (which itself derives from Stevie). It is not a rewrite but a continuation and extension of Vim."

https://neovim.io/charter/

EToS|3 years ago

apologies, yes i believe its a fork

capableweb|3 years ago

ahem, full history:

ED = OG

EM = Modified ED

EX = Extended EM

VI = Extended EX

VIM = Imitation of VI

NEOVIM = Vim fork

loeg|3 years ago

Vi is short for "visual."

pkkm|3 years ago

> A fully compatible re-write

I don't think this is entirely accurate. The projects have diverged somewhat, so I'd call Neovim a "mostly compatible fork".

halostatue|3 years ago

The Neovim hard fork is not fully compatible, nor is it always better performing. I also do not find that Lua is better for scripting overall, because there is an impedance mismatch when you need to interact with the editor model. (If you’re doing just programming then, yes, it’s better. But it’s the interface layer which is difficult, and which I find worse than Vimscript or Vimscript9.)

MacVim is a macOS packaged version of Vim with (fairly) light customizations of gvim which is part of the vim source bundle. All neovim GUIs are from-scratch constructions because the neovim developers decided that they did not want to support GUIs directly. IMO, this was a mistake, because none of the neovim GUIs that exist work as well or are as well OS integrated as gvim or make for as "easy" packaging as MacVim has.

cge|3 years ago

Neovim also has some surprising feature regressions compared to Vim. I tried switching to neovim for a while until I realized it was silently removing all ACLs on edited files and breaking services for me. Looking into it, I found that, for no clear reason, ACL handling was removed early on in neovim, and a bug had been open about it, with multiple pull requests that were never merged, since 2014 (https://github.com/neovim/neovim/issues/1200). Vim has never had a problem with this, as far as I know.