Hi all, In https://github.com/leitzler/govim (master branch) Pontus is adding support to govim for signs that correspond to quickfix entries.
This is done by calling sign_place/sign_unplace as required to get the signs for a window in the correct state. If there are lots of errors in a file, then there can be a large number of calls to sign_place/sign_unplace made by govim in rapid succession. (Incidentally, it would be great if there was a “batch” method to set the signs for a buffer, akin to setqflist for signs in a buffer) However, on what is a relatively slow machine, @leitzler is seeing Vim stall when handling calls from govim to sign_place: https://gist.github.com/myitcv/f8579a20ce327d61c550c85df71ea4a2 Notice the ~13 second gap between the call to sign_place: 1.102629 RECV on 0(sock): '[0,[36,"call","sign_place",0,"govim","govimerr",1,{"lnum":10}]] and the response: 14.247893 SEND on 0(sock): '[38,["function","function:GOVIM_internal_SetUserBusy",[1]]] ' 14.248988 on 0: Blocking read JSON for id 38 14.249019 : looking for messages on channels 14.249025 on 0: Getting JSON message 0 14.249028 on 0: Invoking channel callback <SNR>12_define 14.249201 SEND on 0(sock): '[39,["callback",36,["",7]]] Indeed, the response only gets sent after 13 seconds because of a cursor movement, which as you can see is also handled by a channel-based function. That is to say a cursor movement (which triggers a call to a channel-based plugin function) appears to "fix" things - a few more function calls are handled, but then things "stall" again. i.e. not all the sign_place calls have been completed. I realise this is all rather vague (and indeed it would be somewhat moot if we had a batch function for setting signs for a buffer), but is there anything that could be causing Vim to stall like this? Vim v8.1.1512. Thanks in advance for any suggestions/pointers, Paul -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/CACoUkn4p6-Mg49fw%3DdZ0V%2B%2Bp2BH_OFxt2jUpg66Rw-gEmU_Fkw%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
