bugfix workspace symbol from multiple lsp clients

neovim_0.6^2
ray-x 2 years ago
parent 6e937e9019
commit 6c3ee44729

@ -60,10 +60,19 @@ function M.workspace_symbol_live()
end, end,
on_input_filter = function(text) on_input_filter = function(text)
local params = { query = text or '#' } local params = { query = text or '#' }
local result = vim.lsp.buf_request_sync(bufnr, 'workspace/symbol', params) local results = vim.lsp.buf_request_sync(bufnr, 'workspace/symbol', params)
util.log(vim.inspect(result[1].result)) local result
result = result[1].result -- this is different from handler, for _, r in pairs(results) do
-- result[1].result is same as result in handler -- util.log(r)
if r.result then
result = r.result
break
end
end
if not result then
result = {}
end
local items = symbols_to_items(result) local items = symbols_to_items(result)
items = gutil.dedup(items, 'name', 'kind') items = gutil.dedup(items, 'name', 'kind')
return items return items

Loading…
Cancel
Save