Hacker News new | past | comments | ask | show | jobs | submit login

The author of NeoVim (Thiago de Arruda) tried to add support for multi-threaded plugins to Vim and has been stymied[1].

I'm not sure how to get a patch merged into Vim. Bram Moolenar is the only person with commit access, and he's not a fan of most changes beyond bug fixes. My co-founder and I tried to add setTimeout & setInterval to vimscript[2]. Even six weeks of full-time effort and bending over backwards wasn't enough. Eventually we were just ignored.

I've contributed to a lot of open source projects, and the Vim community has been the most difficult to work with. I've been writing C for almost two decades, and the Vim codebase is the worst C I've ever seen[3]. The project is definitely showing its age, and I'd love for something new to replace it.

1. https://groups.google.com/d/msg/vim_dev/65jjGqS1_VQ/fFiFrrIB...

2. https://groups.google.com/d/msg/vim_dev/-4pqDJfHCsM/LkYNCpZj...

3. If you value your sanity, do not read eval.c. It is over 25,000 lines and has over 400 ifdefs. The first ifdef checks for Amiga; the second checks for VMS: https://github.com/b4winckler/macvim/blob/master/src/eval.c




Your patches were broken. Now your answer is to fork? Sheesh.

> The project is definitely showing its age, and I'd love for something new to replace it.

Then start over. Refactoring it will be nigh impossible.


Vim was created on Amiga, so that's explainable


Re #3. Dude - you broke my browser with that link :(




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: