mirror of
https://github.com/ThePrimeagen/harpoon.git
synced 2025-07-14 01:50:27 +00:00
feat(cmd-ui): add <CR> keymap for selecting menu item
The selected command is sent to terminal index got from vim.fn.input
This commit is contained in:
parent
2802a19c89
commit
9571887e57
@ -109,14 +109,13 @@ M.toggle_quick_menu = function()
|
|||||||
":lua require('harpoon.cmd-ui').toggle_quick_menu()<CR>",
|
":lua require('harpoon.cmd-ui').toggle_quick_menu()<CR>",
|
||||||
{ silent = true }
|
{ silent = true }
|
||||||
)
|
)
|
||||||
-- TODO: maybe vim.fn.input() can be used to implement some select_menu_item
|
vim.api.nvim_buf_set_keymap(
|
||||||
-- vim.api.nvim_buf_set_keymap(
|
Harpoon_cmd_bufh,
|
||||||
-- Harpoon_cmd_bufh,
|
"n",
|
||||||
-- "n",
|
"<CR>",
|
||||||
-- "<CR>",
|
":lua require('harpoon.cmd-ui').select_menu_item()<CR>",
|
||||||
-- ":lua require('harpoon.cmd-ui').select_menu_item()<CR>",
|
{}
|
||||||
-- {}
|
)
|
||||||
-- )
|
|
||||||
vim.cmd(
|
vim.cmd(
|
||||||
string.format(
|
string.format(
|
||||||
"autocmd BufWriteCmd <buffer=%s> :lua require('harpoon.cmd-ui').on_menu_save()",
|
"autocmd BufWriteCmd <buffer=%s> :lua require('harpoon.cmd-ui').on_menu_save()",
|
||||||
@ -139,6 +138,20 @@ M.toggle_quick_menu = function()
|
|||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
M.select_menu_item = function()
|
||||||
|
log.trace("cmd-ui#select_menu_item()")
|
||||||
|
local cmd = vim.fn.line(".")
|
||||||
|
close_menu(true)
|
||||||
|
local answer = vim.fn.input("Terminal index (default to 1): ")
|
||||||
|
if answer == "" then
|
||||||
|
answer = "1"
|
||||||
|
end
|
||||||
|
local idx = tonumber(answer)
|
||||||
|
if idx then
|
||||||
|
term.sendCommand(idx, cmd)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
M.on_menu_save = function()
|
M.on_menu_save = function()
|
||||||
log.trace("cmd-ui#on_menu_save()")
|
log.trace("cmd-ui#on_menu_save()")
|
||||||
term.set_cmd_list(get_menu_items())
|
term.set_cmd_list(get_menu_items())
|
||||||
|
Loading…
x
Reference in New Issue
Block a user