diff --git a/doc/telescope.txt b/doc/telescope.txt index c29c00d..778feb0 100644 --- a/doc/telescope.txt +++ b/doc/telescope.txt @@ -1516,6 +1516,8 @@ builtin.lsp_definitions({opts}) *telescope.builtin.lsp_definitions()* (default: 30) {show_line} (boolean) show results text (default: true) {trim_text} (boolean) trim results text (default: false) + {reuse_win} (boolean) jump to existing window if buffer is already + opened (default: false) builtin.lsp_type_definitions({opts}) *telescope.builtin.lsp_type_definitions()* @@ -1535,6 +1537,8 @@ builtin.lsp_type_definitions({opts}) *telescope.builtin.lsp_type_definitions()* (default: 30) {show_line} (boolean) show results text (default: true) {trim_text} (boolean) trim results text (default: false) + {reuse_win} (boolean) jump to existing window if buffer is already + opened (default: false) builtin.lsp_implementations({opts}) *telescope.builtin.lsp_implementations()* @@ -1554,6 +1558,8 @@ builtin.lsp_implementations({opts}) *telescope.builtin.lsp_implementations()* (default: 30) {show_line} (boolean) show results text (default: true) {trim_text} (boolean) trim results text (default: false) + {reuse_win} (boolean) jump to existing window if buffer is already + opened (default: false) builtin.lsp_document_symbols({opts}) *telescope.builtin.lsp_document_symbols()* diff --git a/lua/telescope/builtin/__lsp.lua b/lua/telescope/builtin/__lsp.lua index 3604e5b..c0813ca 100644 --- a/lua/telescope/builtin/__lsp.lua +++ b/lua/telescope/builtin/__lsp.lua @@ -196,7 +196,8 @@ local function list_or_jump(action, title, opts) vim.cmd "vnew" end end - vim.lsp.util.jump_to_location(flattened_results[1], offset_encoding) + + vim.lsp.util.jump_to_location(flattened_results[1], offset_encoding, opts.reuse_win) else local locations = vim.lsp.util.locations_to_items(flattened_results, offset_encoding) pickers diff --git a/lua/telescope/builtin/init.lua b/lua/telescope/builtin/init.lua index 0ce08b3..c460c18 100644 --- a/lua/telescope/builtin/init.lua +++ b/lua/telescope/builtin/init.lua @@ -407,6 +407,7 @@ builtin.lsp_outgoing_calls = require_on_exported_call("telescope.builtin.__lsp") ---@field fname_width number: defines the width of the filename section (default: 30) ---@field show_line boolean: show results text (default: true) ---@field trim_text boolean: trim results text (default: false) +---@field reuse_win boolean: jump to existing window if buffer is already opened (default: false) builtin.lsp_definitions = require_on_exported_call("telescope.builtin.__lsp").definitions --- Goto the definition of the type of the word under the cursor, if there's only one, @@ -416,6 +417,7 @@ builtin.lsp_definitions = require_on_exported_call("telescope.builtin.__lsp").de ---@field fname_width number: defines the width of the filename section (default: 30) ---@field show_line boolean: show results text (default: true) ---@field trim_text boolean: trim results text (default: false) +---@field reuse_win boolean: jump to existing window if buffer is already opened (default: false) builtin.lsp_type_definitions = require("telescope.builtin.__lsp").type_definitions --- Goto the implementation of the word under the cursor if there's only one, otherwise show all options in Telescope @@ -424,6 +426,7 @@ builtin.lsp_type_definitions = require("telescope.builtin.__lsp").type_definitio ---@field fname_width number: defines the width of the filename section (default: 30) ---@field show_line boolean: show results text (default: true) ---@field trim_text boolean: trim results text (default: false) +---@field reuse_win boolean: jump to existing window if buffer is already opened (default: false) builtin.lsp_implementations = require_on_exported_call("telescope.builtin.__lsp").implementations --- Lists LSP document symbols in the current buffer