idris-hackers / idris-vim

Idris mode for vim
221 stars 52 forks source link

Using the asynchronous support in Vim 8 #57

Open melted opened 8 years ago

melted commented 8 years ago

Can that help bring more ide-mode features in?

LeifW commented 8 years ago

I was looking into that myself (using http://vimhelp.appspot.com/channel.txt.html for http://docs.idris-lang.org/en/latest/reference/ide-protocol.html). Apparently older versions supported that, too. I was playing around with driving my vim 7.4.2334 from Haskell, using these commands (to avoid writing vimscript): http://vimhelp.appspot.com/channel.txt.html#channel-commands). So for a case split for example, I could have it send the normal mode commands dd followed by p = followed by the new line to be added.

I was thinking I might like of offer a json version of the ide protocol, to avoid writing an s-expr parser. Most editors I can think of come with a json parser.

david-christiansen commented 8 years ago

A sexpr parser is like 10 lines typically, so I don't think that making Idris emit 2 syntaxes is worth the maintenance burden. Though we could completely replace the protocol, I suppose.

On September 22, 2016 11:22:55 AM GMT+09:00, Leif Warner notifications@github.com wrote:

I was looking into that myself (using http://vimhelp.appspot.com/channel.txt.html for http://docs.idris-lang.org/en/latest/reference/ide-protocol.html). Apparently older versions supported that, too. I was playing around with driving my vim 7.4.2334 from Haskell, using these commands (to avoid writing vimscript): http://vimhelp.appspot.com/channel.txt.html#channel-commands). So for a case split for example, I could have it send the normal mode commands dd followed by p = followed by the new line to be added.

I was thinking I might like of offer a json version of the ide protocol, to avoid writing an s-expr parser. Most editors I can think of come with a json parser.