summaryrefslogtreecommitdiff
path: root/lua/telescope/actions/init.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/telescope/actions/init.lua')
-rw-r--r--lua/telescope/actions/init.lua14
1 files changed, 12 insertions, 2 deletions
diff --git a/lua/telescope/actions/init.lua b/lua/telescope/actions/init.lua
index 43315cc..7f82823 100644
--- a/lua/telescope/actions/init.lua
+++ b/lua/telescope/actions/init.lua
@@ -373,9 +373,19 @@ actions.run_builtin = function(prompt_bufnr)
end
actions.insert_symbol = function(prompt_bufnr)
- local selection = action_state.get_selected_entry()
+ local symbol = action_state.get_selected_entry().value[1]
actions.close(prompt_bufnr)
- vim.api.nvim_put({ selection.value[1] }, "", true, true)
+ vim.api.nvim_put({ symbol }, "", true, true)
+end
+
+actions.insert_symbol_i = function(prompt_bufnr)
+ local symbol = action_state.get_selected_entry().value[1]
+ actions._close(prompt_bufnr, true)
+ local cursor = vim.api.nvim_win_get_cursor(0)
+ vim.api.nvim_buf_set_text(0, cursor[1] - 1, cursor[2], cursor[1] - 1, cursor[2], { symbol })
+ vim.schedule(function()
+ vim.api.nvim_win_set_cursor(0, { cursor[1], cursor[2] + #symbol })
+ end)
end
-- TODO: Think about how to do this.