You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Sometimes when I start neovim on a haskell file (nvim Foo.hs) I have a blank neovim screen sitting there for a while only showing the message "Foo.hs" 221 lines, 8209 characters at the bottom. It can take several seconds until the file is displayed.
Looking at running processes I see stack path --config-location which is called by intero with systemlist(). Now as the :help indicates systemlist() is the old and blocking way to call external processes. And the new job*() api is already extensively used by this plugin. So I suggest to replace all remaining system*() calls with job*() calls to make intero-neovim fully async.
The text was updated successfully, but these errors were encountered:
That said, it might be worthwhile trying to understand why that command takes so long. (I was able to reproduce it taking several seconds by running it directly, but only the first time, which makes me suspect something is getting cached.)
I had a look at the code and it was not obvious/simple how to refactor it because the return value of the call is used later on. If the variable is set asynchronously it might be accessed before it was set.
Sometimes when I start neovim on a haskell file (
nvim Foo.hs
) I have a blank neovim screen sitting there for a while only showing the message"Foo.hs" 221 lines, 8209 characters
at the bottom. It can take several seconds until the file is displayed.Looking at running processes I see
stack path --config-location
which is called by intero withsystemlist()
. Now as the:help
indicatessystemlist()
is the old and blocking way to call external processes. And the newjob*()
api is already extensively used by this plugin. So I suggest to replace all remainingsystem*()
calls withjob*()
calls to make intero-neovim fully async.The text was updated successfully, but these errors were encountered: