Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Question: Is it possible to make this compatible with vim? #42

Open
jvican opened this issue Jan 8, 2016 · 3 comments
Open

Question: Is it possible to make this compatible with vim? #42

jvican opened this issue Jan 8, 2016 · 3 comments

Comments

@jvican
Copy link

jvican commented Jan 8, 2016

Hey!

Congrats, this is awesome!

I am just wondering if there is a way to develop not only for nvim but for vim. I need backwards compatibility with older versions of vim. Perhaps something can be done to make it work?

@saep
Copy link
Member

saep commented Jan 8, 2016

I don't know how I could interface with vim from Haskell. One of nvim's innovative features is the msgpack-rpc API which vim lacks.

It's certainly possible, but requires a lot of work. You (i.e. not me :P) could recreate the msgpack-rpc functionality in pure vimL and synchronize the exported functions with nvim, for example. But this approach will likely result in an API-compatibility hell.

If you need portable plugins, use vimL. In the future haskell-ide-engine, combined with some frontend-specific glue code, might be an alternative.

@jvican
Copy link
Author

jvican commented Jan 9, 2016

Good to know haha! Thanks for the info, I will look into this and see if it's convenient... I was looking forward to use Haskell instead of the annoying vimL 👍

BTW, great job with this!

@saep
Copy link
Member

saep commented Aug 2, 2017

I think with vim 8 a lot of this code base can be reused.
For that I would probably mimick the messagepack-rpc protol with json instead of messagepack. This way only the transport layout would have to be exchangeable. Function/Command/Autocommand registration is then the major thing to think about.

I'm happy to help designing or discussing this if someone wants to dedicate some time on this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants