diff --git a/lua/telescope/actions/init.lua b/lua/telescope/actions/init.lua index 066600d..8b5174d 100644 --- a/lua/telescope/actions/init.lua +++ b/lua/telescope/actions/init.lua @@ -220,6 +220,12 @@ function actions.close(prompt_bufnr) do_close(prompt_bufnr, false) end +actions.edit_command_line = function(prompt_bufnr) + local entry = action_state.get_selected_entry(prompt_bufnr) + actions.close(prompt_bufnr) + a.nvim_feedkeys(a.nvim_replace_termcodes(":" .. entry.value , true, false, true), "t", true) +end + actions.set_command_line = function(prompt_bufnr) local entry = action_state.get_selected_entry(prompt_bufnr) diff --git a/lua/telescope/builtin/internal.lua b/lua/telescope/builtin/internal.lua index bbc0d93..14c05ae 100644 --- a/lua/telescope/builtin/internal.lua +++ b/lua/telescope/builtin/internal.lua @@ -263,6 +263,9 @@ internal.command_history = function(opts) attach_mappings = function(_, map) map('i', '', actions.set_command_line) + map('n', '', actions.set_command_line) + map('n', '', actions.edit_command_line) + map('i', '', actions.edit_command_line) -- TODO: Find a way to insert the text... it seems hard. -- map('i', '', actions.insert_value, { expr = true })