From 1a5a01e3a47b77106758db986839c7e44ad7b7dd Mon Sep 17 00:00:00 2001 From: James Trew Date: Fri, 11 Mar 2022 21:03:44 -0500 Subject: [PATCH] feat: expose git_worktree telescope actions this will enable users to rebind those actions to different keys easily. --- lua/telescope/_extensions/git_worktree.lua | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/lua/telescope/_extensions/git_worktree.lua b/lua/telescope/_extensions/git_worktree.lua index 905a358..d762c82 100644 --- a/lua/telescope/_extensions/git_worktree.lua +++ b/lua/telescope/_extensions/git_worktree.lua @@ -12,6 +12,8 @@ local git_worktree = require("git-worktree") local force_next_deletion = false +local wt_actions = {} + local get_worktree_path = function(prompt_bufnr) local selection = action_state.get_selected_entry(prompt_bufnr) return selection.path @@ -25,7 +27,7 @@ local switch_worktree = function(prompt_bufnr) end end -local toggle_forced_deletion = function() +wt_actions.toggle_forced_deletion = function() -- redraw otherwise the message is not displayed when in insert mode if force_next_deletion then print('The next deletion will not be forced') @@ -68,7 +70,7 @@ local confirm_deletion = function(forcing) return false end -local delete_worktree = function(prompt_bufnr) +wt_actions.delete_worktree = function(prompt_bufnr) if not confirm_deletion() then return end @@ -215,10 +217,10 @@ local telescope_git_worktree = function(opts) attach_mappings = function(_, map) action_set.select:replace(switch_worktree) - map("i", "", delete_worktree) - map("n", "", delete_worktree) - map("i", "", toggle_forced_deletion) - map("n", "", toggle_forced_deletion) + map("i", "", wt_actions.delete_worktree) + map("n", "", wt_actions.delete_worktree) + map("i", "", wt_actions.toggle_forced_deletion) + map("n", "", wt_actions.toggle_forced_deletion) return true end @@ -229,6 +231,7 @@ return require("telescope").register_extension( { exports = { git_worktrees = telescope_git_worktree, - create_git_worktree = create_worktree + create_git_worktree = create_worktree, + actions = wt_actions } })