feat: added support for tabdrop (#2143)

This commit is contained in:
Ryan Koval
2022-09-04 14:47:25 -05:00
committed by GitHub
parent 19047b6b3c
commit 2b5060362b
4 changed files with 58 additions and 1 deletions

View File

@@ -299,6 +299,38 @@ actions.select_tab = {
end,
}
--- Perform 'drop' action on selection, usually something like<br>
---`:drop <selection>`
---
--- i.e. open the selection in a window
---@param prompt_bufnr number: The prompt bufnr
actions.select_drop = {
pre = function(prompt_bufnr)
action_state
.get_current_history()
:append(action_state.get_current_line(), action_state.get_current_picker(prompt_bufnr))
end,
action = function(prompt_bufnr)
return action_set.select(prompt_bufnr, "drop")
end,
}
--- Perform 'tab drop' action on selection, usually something like<br>
---`:tab drop <selection>`
---
--- i.e. open the selection in a new tab
---@param prompt_bufnr number: The prompt bufnr
actions.select_tab_drop = {
pre = function(prompt_bufnr)
action_state
.get_current_history()
:append(action_state.get_current_line(), action_state.get_current_picker(prompt_bufnr))
end,
action = function(prompt_bufnr)
return action_set.select(prompt_bufnr, "tab drop")
end,
}
-- TODO: consider adding float!
-- https://github.com/nvim-telescope/telescope.nvim/issues/365

View File

@@ -68,6 +68,7 @@ local edit_buffer
do
local map = {
drop = "drop",
["tab drop"] = "tab drop",
edit = "buffer",
new = "sbuffer",
vnew = "vert sbuffer",
@@ -79,7 +80,7 @@ do
if command == nil then
error "There was no associated buffer command"
end
if command ~= "drop" then
if command ~= "drop" and command ~= "tab drop" then
vim.cmd(string.format("%s %d", command, bufnr))
else
vim.cmd(string.format("%s %s", command, vim.api.nvim_buf_get_name(bufnr)))

View File

@@ -33,6 +33,8 @@ local select_to_edit_map = {
horizontal = "new",
vertical = "vnew",
tab = "tabedit",
drop = "drop",
["tab drop"] = "tab drop",
}
function action_state.select_key_to_edit_key(type)
return select_to_edit_map[type]