neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

commit 2c9d21f722f91834978652a69a1ea72310dc1580
parent 76d213efbee8e6857b3aa397827fa8756a327430
Author: phanium <91544758+phanen@users.noreply.github.com>
Date:   Sat, 14 Jun 2025 15:33:45 +0800

fix: cursor shape don't resume after `:append`

Problem: cursor shape don't resume after `:append`.
e.g. `seq 1000 | nvim --clean +"se gcr+=c:ver25" -`

Solution: emit missing ui event.

Diffstat:
Msrc/nvim/ex_cmds.c | 1+
Mtest/functional/ui/mode_spec.lua | 5+++++
2 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/src/nvim/ex_cmds.c b/src/nvim/ex_cmds.c @@ -2889,6 +2889,7 @@ void ex_append(exarg_T *eap) } } State = MODE_NORMAL; + ui_cursor_shape(); if (eap->forceit) { curbuf->b_p_ai = !curbuf->b_p_ai; diff --git a/test/functional/ui/mode_spec.lua b/test/functional/ui/mode_spec.lua @@ -43,6 +43,11 @@ describe('ui mode_change event', function() ]], mode = 'normal', } + + n.feed(':append<cr>') + screen:expect({ mode = 'cmdline_normal' }) + n.feed('<esc>') + screen:expect({ mode = 'normal' }) end) -- oldtest: Test_mouse_shape_after_failed_change()