| > but implementing a vim backend is a monumental task if you intend to be compatible with existing vim plugins We skipped that and haven't implemented any vim backend at all! We use/made libvim[1], which is just the vim source, that we've essentially turned into a library. So its the vim code base with terminal UI stuff stripped out, and an interface added for us to hook into it. The README of that repo has some good insight into that (including why we didn't use neovim here, as much as the team all loves nvim). We don't support vimscript stuff at the moment, but its in progress as all the vim source code is there to load/run it as normal, its just about integrating is properly into Oni2 (making sure keybinds are working, commands are properly loaded, packing stuff up nicely for distrib etc). (There is some other motivation bits in this doc[2]. Its outdated since we haven't edited it since before the project started, but it outlines the motivations we went in with etc). [1]: https://github.com/onivim/libvim
[2]: https://github.com/onivim/oni2/blob/master/docs/MOTIVATION.m... |