From a1f838d436fefa092159b6b2b96802d222c6145e Mon Sep 17 00:00:00 2001 From: kylo252 <59826753+kylo252@users.noreply.github.com> Date: Mon, 27 Dec 2021 09:48:34 +0100 Subject: [PATCH] chore: remove redundant run_builtin action (#1589) --- doc/telescope.txt | 1 - lua/telescope/actions/init.lua | 20 -------------------- lua/telescope/builtin/init.lua | 1 - lua/telescope/builtin/internal.lua | 27 +++++++++++++++++++++------ 4 files changed, 21 insertions(+), 28 deletions(-) diff --git a/doc/telescope.txt b/doc/telescope.txt index 1991e45..cd94fd5 100644 --- a/doc/telescope.txt +++ b/doc/telescope.txt @@ -1001,7 +1001,6 @@ builtin.builtin({opts}) *builtin.builtin()* {opts} (table) options to pass to the picker Options: ~ - {ignore_filename} (boolean) dont show filenames (default: true) {include_extensions} (boolean) if true will show the pickers of the installed extensions (default: false) diff --git a/lua/telescope/actions/init.lua b/lua/telescope/actions/init.lua index 11286d5..3e10c63 100644 --- a/lua/telescope/actions/init.lua +++ b/lua/telescope/actions/init.lua @@ -336,26 +336,6 @@ actions.paste_register = function(prompt_bufnr) end end -actions.run_builtin = function(prompt_bufnr) - local selection = action_state.get_selected_entry() - if selection == nil then - print "[telescope] Nothing currently selected" - return - end - - actions._close(prompt_bufnr, true) - if string.match(selection.text, " : ") then - -- Call appropriate function from extensions - local split_string = vim.split(selection.text, " : ") - local ext = split_string[1] - local func = split_string[2] - require("telescope").extensions[ext][func]() - else - -- Call appropriate telescope builtin - require("telescope.builtin")[selection.text]() - end -end - actions.insert_symbol = function(prompt_bufnr) local symbol = action_state.get_selected_entry().value[1] actions.close(prompt_bufnr) diff --git a/lua/telescope/builtin/init.lua b/lua/telescope/builtin/init.lua index c7bceba..e411ac1 100644 --- a/lua/telescope/builtin/init.lua +++ b/lua/telescope/builtin/init.lua @@ -215,7 +215,6 @@ builtin.git_stash = require_on_exported_call("telescope.builtin.git").stash --- Lists all of the community maintained pickers built into Telescope ---@param opts table: options to pass to the picker ----@field ignore_filename boolean: dont show filenames (default: true) ---@field include_extensions boolean: if true will show the pickers of the installed extensions (default: false) builtin.builtin = require_on_exported_call("telescope.builtin.internal").builtin diff --git a/lua/telescope/builtin/internal.lua b/lua/telescope/builtin/internal.lua index 7892ba4..316d76a 100644 --- a/lua/telescope/builtin/internal.lua +++ b/lua/telescope/builtin/internal.lua @@ -31,12 +31,7 @@ end local internal = {} --- TODO: What the heck should we do for accepting this. --- vim.fn.setreg("+", "nnoremap $TODO :lua require('telescope.builtin').()") --- TODO: Can we just do the names instead? internal.builtin = function(opts) - opts.path_display = utils.get_default(opts.path_display, "hidden") - opts.ignore_filename = utils.get_default(opts.ignore_filename, true) opts.include_extensions = utils.get_default(opts.include_extensions, false) local objs = {} @@ -84,7 +79,27 @@ internal.builtin = function(opts) previewer = previewers.builtin.new(opts), sorter = conf.generic_sorter(opts), attach_mappings = function(_) - actions.select_default:replace(actions.run_builtin) + actions.select_default:replace(function(_) + local selection = action_state.get_selected_entry() + if not selection then + print "[telescope] Nothing currently selected" + return + end + + -- we do this to avoid any surprises + opts.include_extensions = nil + + if string.match(selection.text, " : ") then + -- Call appropriate function from extensions + local split_string = vim.split(selection.text, " : ") + local ext = split_string[1] + local func = split_string[2] + require("telescope").extensions[ext][func](opts) + else + -- Call appropriate telescope builtin + require("telescope.builtin")[selection.text](opts) + end + end) return true end, }):find()