mirror of
https://github.com/neovim/neovim.git
synced 2024-12-23 12:45:17 -07:00
fix(edit): don't go to Terminal mode when stopping Insert mode (#27033)
This commit is contained in:
parent
a34451982f
commit
267e90f31d
@ -402,7 +402,7 @@ static int insert_check(VimState *state)
|
||||
Insstart_orig = Insstart;
|
||||
}
|
||||
|
||||
if (curbuf->terminal) {
|
||||
if (curbuf->terminal && !stop_insert_mode) {
|
||||
// Exit Insert mode and go to Terminal mode.
|
||||
stop_insert_mode = true;
|
||||
restart_edit = 'I';
|
||||
|
@ -144,6 +144,15 @@ describe(':terminal', function()
|
||||
eq({ blocking = false, mode = 't' }, api.nvim_get_mode())
|
||||
eq({ 'InsertLeave', 'TermEnter' }, eval('g:events'))
|
||||
end)
|
||||
|
||||
it('switching to terminal buffer immediately after :stopinsert #27031', function()
|
||||
command('terminal')
|
||||
command('vnew')
|
||||
feed('i')
|
||||
eq({ blocking = false, mode = 'i' }, api.nvim_get_mode())
|
||||
command('stopinsert | wincmd p')
|
||||
eq({ blocking = false, mode = 'nt' }, api.nvim_get_mode())
|
||||
end)
|
||||
end)
|
||||
|
||||
local function test_terminal_with_fake_shell(backslash)
|
||||
|
Loading…
Reference in New Issue
Block a user