diff options
author | Matthieu Coudron <mattator@gmail.com> | 2020-03-01 01:47:21 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-01 01:47:21 +0100 |
commit | 6fcab7e758f3826b94ab369452b71d15a67c8b36 (patch) | |
tree | 2b965d4866bcfc918e2f13f99c49d36a83281436 /runtime/lua/vim/lsp/callbacks.lua | |
parent | 1656367b90bd29d84d5ebf1ccef560368a1973cf (diff) | |
parent | 16262472cda88d0a4dc5c6729cfef36264569324 (diff) | |
download | rneovim-6fcab7e758f3826b94ab369452b71d15a67c8b36.tar.gz rneovim-6fcab7e758f3826b94ab369452b71d15a67c8b36.tar.bz2 rneovim-6fcab7e758f3826b94ab369452b71d15a67c8b36.zip |
Merge pull request #11931 from h-michael/symbol
[RDY] LSP support 'textDocument/documentSymbol’
Diffstat (limited to 'runtime/lua/vim/lsp/callbacks.lua')
-rw-r--r-- | runtime/lua/vim/lsp/callbacks.lua | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/runtime/lua/vim/lsp/callbacks.lua b/runtime/lua/vim/lsp/callbacks.lua index 99093216d9..63b5c4d493 100644 --- a/runtime/lua/vim/lsp/callbacks.lua +++ b/runtime/lua/vim/lsp/callbacks.lua @@ -38,7 +38,13 @@ end M['textDocument/references'] = function(_, _, result) if not result then return end - util.set_qflist(result) + util.set_qflist(util.locations_to_items(result)) +end + +M['textDocument/documentSymbol'] = function(_, _, result, _, bufnr) + if not result or vim.tbl_isempty(result) then return end + + util.set_qflist(util.symbols_to_items(result, bufnr)) api.nvim_command("copen") api.nvim_command("wincmd p") end @@ -97,7 +103,7 @@ local function location_callback(_, method, result) end util.jump_to_location(result[1]) if #result > 1 then - util.set_qflist(result) + util.set_qflist(util.locations_to_items(result)) api.nvim_command("copen") api.nvim_command("wincmd p") end |