neovim

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

commit 1cd7824dd69ee14b734713e61bef6bb713db8547
parent 9b3045103f7d56e5ccd0574dcb93e953b72d5f50
Author: glepnir <glephunter@gmail.com>
Date:   Fri,  6 Oct 2023 19:40:02 +0800

fix(ui): trigger TabNewEntered after split new tab

Diffstat:
Msrc/nvim/window.c | 6+++++-
Mtest/functional/autocmd/tabnewentered_spec.lua | 8++++++++
2 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/src/nvim/window.c b/src/nvim/window.c @@ -4261,7 +4261,11 @@ int may_open_tabpage(void) cmdmod.cmod_tab = 0; // reset it to avoid doing it twice postponed_split_tab = 0; - return win_new_tabpage(n, NULL); + int status = win_new_tabpage(n, NULL); + if (status == OK) { + apply_autocmds(EVENT_TABNEWENTERED, NULL, NULL, false, curbuf); + } + return status; } // Create up to "maxcount" tabpages with empty windows. diff --git a/test/functional/autocmd/tabnewentered_spec.lua b/test/functional/autocmd/tabnewentered_spec.lua @@ -35,6 +35,14 @@ describe('TabNewEntered', function() eq('entered', nvim('exec', 'execute "normal \\<C-W>T"', true)) end) end) + describe('with tab split #4334', function() + it('works when create a tab by using tab split command', function() + clear() + nvim('command', 'au! TabNewEntered * let b:entered = "entered"') + nvim('command', 'tab split') + eq('entered', nvim('exec', 'echo b:entered', true)) + end) + end) end) end)