diff options
author | Mathias Fussenegger <f.mathias@zignar.net> | 2025-02-14 14:06:47 +0100 |
---|---|---|
committer | Mathias Fußenegger <mfussenegger@users.noreply.github.com> | 2025-02-14 19:49:08 +0100 |
commit | f20335a54ce7f240902d4ee14d726620a38f95bc (patch) | |
tree | 40531a7feae68d6410b90a4bc2c30c93da1e1325 /runtime/lua/vim/lsp/completion.lua | |
parent | c091bc3b9abc220fa5d512966d89893f56f20691 (diff) | |
download | rneovim-f20335a54ce7f240902d4ee14d726620a38f95bc.tar.gz rneovim-f20335a54ce7f240902d4ee14d726620a38f95bc.tar.bz2 rneovim-f20335a54ce7f240902d4ee14d726620a38f95bc.zip |
feat(lsp): add support for completionItem.command resolving
`command` was already resolved via a `completionItem/resolve` request
but only if `additionalTextEdits` were also present, and the
`resolveSupport` capability wasn't listed.
Closes https://github.com/neovim/neovim/issues/32406
Diffstat (limited to 'runtime/lua/vim/lsp/completion.lua')
-rw-r--r-- | runtime/lua/vim/lsp/completion.lua | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/runtime/lua/vim/lsp/completion.lua b/runtime/lua/vim/lsp/completion.lua index f287304508..d99b1ffd0d 100644 --- a/runtime/lua/vim/lsp/completion.lua +++ b/runtime/lua/vim/lsp/completion.lua @@ -610,13 +610,14 @@ local function on_complete_done() clear_word() if err then vim.notify_once(err.message, vim.log.levels.WARN) - elseif result and result.additionalTextEdits then - lsp.util.apply_text_edits(result.additionalTextEdits, bufnr, position_encoding) + elseif result then + if result.additionalTextEdits then + lsp.util.apply_text_edits(result.additionalTextEdits, bufnr, position_encoding) + end if result.command then completion_item.command = result.command end end - apply_snippet_and_command() end, bufnr) else |