Issafalcon / lsp-overloads.nvim

Extends the native nvim-lsp handlers to allow easier navigation through method overloads.
MIT License
88 stars 4 forks source link

No such mapping error #26

Closed vlada-dudr closed 1 year ago

vlada-dudr commented 1 year ago

It looks like this is quite common. It looks like it has to do something with slow language servers.

Error executing vim.schedule lua callback: /usr/share/nvim/runtime/lua/vim/lsp/util.lua:1654: WinClosed Autocommands for "1152": Vim(append):Error executing lua callba
ck: vim/keymap.lua:0: E31: No such mapping                                                                                                                             
stack traceback:                                                                                                                                                       
        [C]: in function 'nvim_buf_del_keymap'                                                                                                                         
        vim/keymap.lua: in function 'del'                                                                                                                              
        ...sp-overloads.nvim/lua/lsp-overloads/models/signature.lua:115: in function 'remove_mappings'                                                                 
        ...zy/lsp-overloads.nvim/lua/lsp-overloads/autocommands.lua:16: in function <...zy/lsp-overloads.nvim/lua/lsp-overloads/autocommands.lua:11>                   
        [C]: in function 'nvim_win_close'                                                                                                                              
        /usr/share/nvim/runtime/lua/vim/lsp/util.lua:1654: in function 'open_floating_preview'                                                                         
        ...sp-overloads.nvim/lua/lsp-overloads/models/signature.lua:149: in function 'create_signature_popup'                                                          
        ...m/lazy/lsp-overloads.nvim/lua/lsp-overloads/handlers.lua:51: in function 'handler'                                                                          
        /usr/share/nvim/runtime/lua/vim/lsp.lua:1394: in function ''                                                                                                   
        vim/_editor.lua: in function <vim/_editor.lua:0>                                                                                                               
stack traceback:                                                                                                                                                       
        [C]: in function 'nvim_win_close'                                                                                                                              
        /usr/share/nvim/runtime/lua/vim/lsp/util.lua:1654: in function 'open_floating_preview'                                                                         
        ...sp-overloads.nvim/lua/lsp-overloads/models/signature.lua:149: in function 'create_signature_popup'                                                          
        ...m/lazy/lsp-overloads.nvim/lua/lsp-overloads/handlers.lua:51: in function 'handler'                                                                          
        /usr/share/nvim/runtime/lua/vim/lsp.lua:1394: in function ''                                                                                                   
        vim/_editor.lua: in function <vim/_editor.lua:0> 
Issafalcon commented 1 year ago

@vlada-dudr - I just saw this today at work as well. Seems that this occurs on larger codebases. I think you're right, that the slower LSP response leads to a race condition where the signature window can be closed before the mappings have been added. This fix should swallow the error. I can't reproduce on my small personal repos at home, but will check again at work tomorrow.

vlada-dudr commented 1 year ago

Cool, i will update and report back. Thank you very much!