neovim

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

commit 1f864139b2d7e3fcb73fb0b7f5291fbb1c6cad94
parent 7f65431d90e18819009c30aa3ee2a680d3b3958d
Author: bfredl <bjorn.linse@gmail.com>
Date:   Sat,  7 Oct 2023 11:10:28 +0200

Merge pull request #25522 from glepnir/4334

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)