Fork me on GitHub
#vim
<
2019-06-26
>
dominicm07:06:39

Hi users of async_clj_omni. I've been failing to get deoplete & the new fireplace to work together. I have added support for asyncomplete.vim. Support is on master. Only the new fireplace is supported, as it uses the fireplace async functionality.

markwoodhall09:06:53

I have just swapped to using asyncomplete.vim and this all works well, I have changed the message sent across fireplace to include the extra-metadata option though, e.g. {'op': 'complete', 'symbol': l:kw, 'ns': fireplace#ns(), 'extra-metadata': ['arglists', 'doc']}, this makes it much more familiar for me.

dominicm20:06:00

I've added this commit in on master 🙂

dominicm20:06:19

lol, I'm slow 🙂

😆 4
markwoodhall10:06:53

See you already added that now. :thumbsup:

tpope19:06:33

I just now pushed a change to make the built-in omnicomplete "sort of" async (within the limits of what Vim primitives can do)

Olical08:06:32

I was having a look at the code, I can't work out what the new behaviour is :thinking_face: no worries if you're busy, don't worry about replying. Really interested in what approach you've taken to mitigate blocking though! Isn't the use of sleep going to add more jank? Unless there's a sort of event loop of sorts in Vim that I'm unaware of and this loop+sleep mechanism allows some other parts of the UI to do their dance?

tpope19:06:57

it's the use of complete_check that causes it to allow you to continue typing. sleep does also allow job callbacks and afaik timers to run

tpope19:06:16

i've never noticed lag issues with the old version so i'll wait on y'all to tell me if it's actually an improvement