diff --git a/lua/telescope/builtin/lsp.lua b/lua/telescope/builtin/lsp.lua index 42a1851..8ca8b92 100644 --- a/lua/telescope/builtin/lsp.lua +++ b/lua/telescope/builtin/lsp.lua @@ -58,6 +58,12 @@ local function list_or_jump(action, title, opts) local flattened_results = {} for _, server_results in pairs(result) do if server_results.result then + -- textDocument/definition can return Location or Location[] + if not vim.tbl_islist(server_results.result) then + flattened_results = { server_results.result } + break + end + vim.list_extend(flattened_results, server_results.result) end end