diff --git a/lua/codecompanion/providers/diff/inline.lua b/lua/codecompanion/providers/diff/inline.lua index 32997086a..7704cd3f0 100644 --- a/lua/codecompanion/providers/diff/inline.lua +++ b/lua/codecompanion/providers/diff/inline.lua @@ -56,6 +56,10 @@ function InlineDiff.new(args) self.winnr = self.winnr and self.winnr or vim.fn.bufwinid(self.bufnr) if self.winnr ~= -1 then pcall(api.nvim_win_set_cursor, self.winnr, { first_diff_line, 0 }) + + if api.nvim_get_mode().mode ~= "n" then + api.nvim_input("") + end end end) end diff --git a/tests/providers/diff/test_inline.lua b/tests/providers/diff/test_inline.lua index f7a08b7e7..ac650b054 100644 --- a/tests/providers/diff/test_inline.lua +++ b/tests/providers/diff/test_inline.lua @@ -190,6 +190,7 @@ T["InlineDiff"]["apply_diff_highlights - applies highlights for changes"] = func diff:apply_diff_highlights(old_lines, new_lines) h.expect_truthy(#diff.extmark_ids >= initial_extmarks) + h.eq(vim.api.nvim_get_mode().mode, "n") end T["InlineDiff"]["clear_highlights - removes all extmarks"] = function()