chores: use stopinsert (#1745)
This commit is contained in:
@@ -515,7 +515,7 @@ end
|
|||||||
function M.choose(side)
|
function M.choose(side)
|
||||||
local bufnr = api.nvim_get_current_buf()
|
local bufnr = api.nvim_get_current_buf()
|
||||||
if vim.fn.mode() == "v" or vim.fn.mode() == "V" or vim.fn.mode() == "" then
|
if vim.fn.mode() == "v" or vim.fn.mode() == "V" or vim.fn.mode() == "" then
|
||||||
api.nvim_feedkeys(api.nvim_replace_termcodes("<Esc>", true, false, true), "n", true)
|
vim.cmd("noautocmd stopinsert")
|
||||||
-- have to defer so that the < and > marks are set
|
-- have to defer so that the < and > marks are set
|
||||||
vim.defer_fn(function()
|
vim.defer_fn(function()
|
||||||
local start = api.nvim_buf_get_mark(0, "<")[1]
|
local start = api.nvim_buf_get_mark(0, "<")[1]
|
||||||
|
|||||||
@@ -136,8 +136,8 @@ function M.func(opts, on_log, on_complete)
|
|||||||
local confirm = Helpers.confirm("Are you sure you want to apply this modification?", function(ok)
|
local confirm = Helpers.confirm("Are you sure you want to apply this modification?", function(ok)
|
||||||
pcall(vim.api.nvim_del_augroup_by_id, augroup)
|
pcall(vim.api.nvim_del_augroup_by_id, augroup)
|
||||||
vim.api.nvim_set_current_win(sidebar.code.winid)
|
vim.api.nvim_set_current_win(sidebar.code.winid)
|
||||||
vim.api.nvim_feedkeys(vim.api.nvim_replace_termcodes("<Esc>", true, false, true), "n", true)
|
vim.cmd("noautocmd stopinsert")
|
||||||
vim.cmd("undo")
|
vim.cmd("noautocmd undo")
|
||||||
if not ok then
|
if not ok then
|
||||||
vim.api.nvim_set_current_win(current_winid)
|
vim.api.nvim_set_current_win(current_winid)
|
||||||
on_complete(false, "User canceled")
|
on_complete(false, "User canceled")
|
||||||
|
|||||||
@@ -205,7 +205,7 @@ end
|
|||||||
function Sidebar:shutdown()
|
function Sidebar:shutdown()
|
||||||
Llm.cancel_inflight_request()
|
Llm.cancel_inflight_request()
|
||||||
self:close()
|
self:close()
|
||||||
vim.cmd("stopinsert")
|
vim.cmd("noautocmd stopinsert")
|
||||||
end
|
end
|
||||||
|
|
||||||
---@return boolean
|
---@return boolean
|
||||||
@@ -1371,7 +1371,7 @@ function Sidebar:apply(current_cursor)
|
|||||||
|
|
||||||
local function process(winid)
|
local function process(winid)
|
||||||
api.nvim_set_current_win(winid)
|
api.nvim_set_current_win(winid)
|
||||||
api.nvim_feedkeys(api.nvim_replace_termcodes("<Esc>", true, false, true), "n", true)
|
vim.cmd("noautocmd stopinsert")
|
||||||
Diff.add_visited_buffer(bufnr)
|
Diff.add_visited_buffer(bufnr)
|
||||||
Diff.process(bufnr)
|
Diff.process(bufnr)
|
||||||
api.nvim_win_set_cursor(winid, { 1, 0 })
|
api.nvim_win_set_cursor(winid, { 1, 0 })
|
||||||
@@ -1411,7 +1411,7 @@ function Sidebar:apply(current_cursor)
|
|||||||
insert_conflict_contents(bufnr, snippets)
|
insert_conflict_contents(bufnr, snippets)
|
||||||
local function process(winid)
|
local function process(winid)
|
||||||
api.nvim_set_current_win(winid)
|
api.nvim_set_current_win(winid)
|
||||||
api.nvim_feedkeys(api.nvim_replace_termcodes("<Esc>", true, false, true), "n", true)
|
vim.cmd("noautocmd stopinsert")
|
||||||
Diff.add_visited_buffer(bufnr)
|
Diff.add_visited_buffer(bufnr)
|
||||||
Diff.process(bufnr)
|
Diff.process(bufnr)
|
||||||
api.nvim_win_set_cursor(winid, { 1, 0 })
|
api.nvim_win_set_cursor(winid, { 1, 0 })
|
||||||
@@ -1893,10 +1893,7 @@ function Sidebar:on_mount(opts)
|
|||||||
then
|
then
|
||||||
api.nvim_set_current_win(self.input_container.winid)
|
api.nvim_set_current_win(self.input_container.winid)
|
||||||
vim.defer_fn(function()
|
vim.defer_fn(function()
|
||||||
if Config.windows.ask.start_insert then
|
if Config.windows.ask.start_insert then vim.cmd("noautocmd startinsert!") end
|
||||||
Utils.debug("starting insert")
|
|
||||||
vim.cmd("startinsert!")
|
|
||||||
end
|
|
||||||
end, 300)
|
end, 300)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -2910,7 +2907,7 @@ function Sidebar:create_input_container(opts)
|
|||||||
|
|
||||||
if Utils.in_visual_mode() then
|
if Utils.in_visual_mode() then
|
||||||
-- Exit visual mode
|
-- Exit visual mode
|
||||||
api.nvim_feedkeys(api.nvim_replace_termcodes("<Esc>", true, false, true), "n", true)
|
vim.cmd("noautocmd stopinsert")
|
||||||
end
|
end
|
||||||
|
|
||||||
self.input_container:map("n", Config.mappings.submit.normal, on_submit)
|
self.input_container:map("n", Config.mappings.submit.normal, on_submit)
|
||||||
@@ -3070,14 +3067,14 @@ function Sidebar:create_input_container(opts)
|
|||||||
group = self.augroup,
|
group = self.augroup,
|
||||||
buffer = self.input_container.bufnr,
|
buffer = self.input_container.bufnr,
|
||||||
callback = function()
|
callback = function()
|
||||||
if Config.windows.ask.start_insert then vim.cmd("startinsert!") end
|
if Config.windows.ask.start_insert then vim.cmd("noautocmd startinsert!") end
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
||||||
api.nvim_create_autocmd("BufLeave", {
|
api.nvim_create_autocmd("BufLeave", {
|
||||||
group = self.augroup,
|
group = self.augroup,
|
||||||
buffer = self.input_container.bufnr,
|
buffer = self.input_container.bufnr,
|
||||||
callback = function() vim.cmd("stopinsert") end,
|
callback = function() vim.cmd("noautocmd stopinsert") end,
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Show hint in insert mode
|
-- Show hint in insert mode
|
||||||
|
|||||||
@@ -417,7 +417,7 @@ function Suggestion:accept()
|
|||||||
self:set_internal_move(true)
|
self:set_internal_move(true)
|
||||||
api.nvim_win_set_cursor(0, { first_line_row, col })
|
api.nvim_win_set_cursor(0, { first_line_row, col })
|
||||||
vim.cmd("normal! zz")
|
vim.cmd("normal! zz")
|
||||||
vim.cmd("startinsert")
|
vim.cmd("noautocmd startinsert")
|
||||||
self:set_internal_move(false)
|
self:set_internal_move(false)
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -129,14 +129,14 @@ function PromptInput:open()
|
|||||||
self:setup_keymaps()
|
self:setup_keymaps()
|
||||||
self:setup_autocmds()
|
self:setup_autocmds()
|
||||||
|
|
||||||
if self.start_insert then vim.cmd([[startinsert!]]) end
|
if self.start_insert then vim.cmd("noautocmd startinsert!") end
|
||||||
end
|
end
|
||||||
|
|
||||||
function PromptInput:close()
|
function PromptInput:close()
|
||||||
if not self.bufnr then return end
|
if not self.bufnr then return end
|
||||||
self:stop_spinner()
|
self:stop_spinner()
|
||||||
self:close_shortcuts_hints()
|
self:close_shortcuts_hints()
|
||||||
if api.nvim_get_mode().mode == "i" then vim.cmd([[stopinsert]]) end
|
if api.nvim_get_mode().mode == "i" then vim.cmd("noautocmd stopinsert") end
|
||||||
if self.winid and api.nvim_win_is_valid(self.winid) then
|
if self.winid and api.nvim_win_is_valid(self.winid) then
|
||||||
api.nvim_win_close(self.winid, true)
|
api.nvim_win_close(self.winid, true)
|
||||||
self.winid = nil
|
self.winid = nil
|
||||||
|
|||||||
@@ -450,7 +450,7 @@ function M.unlock_buf(bufnr)
|
|||||||
end
|
end
|
||||||
|
|
||||||
function M.lock_buf(bufnr)
|
function M.lock_buf(bufnr)
|
||||||
vim.cmd("stopinsert")
|
vim.cmd("noautocmd stopinsert")
|
||||||
vim.bo[bufnr].readonly = true
|
vim.bo[bufnr].readonly = true
|
||||||
vim.bo[bufnr].modified = false
|
vim.bo[bufnr].modified = false
|
||||||
vim.bo[bufnr].modifiable = false
|
vim.bo[bufnr].modifiable = false
|
||||||
|
|||||||
Reference in New Issue
Block a user