From 2b7a00746d93f0e17bf359a4e7e11ef96ce33e0c Mon Sep 17 00:00:00 2001 From: Tomasz N Date: Wed, 6 May 2026 15:42:26 +0200 Subject: [PATCH] fix(ui2): entering the pager fails if `` is remapped to `:fclose` (#39462) Problem: Entering the pager fails if is remapped to :fclose by user. Solution: Avoid executing mappings with nvim_feedkeys() that closes expanded cmdline. --- runtime/lua/vim/_core/ui2/messages.lua | 2 +- test/functional/ui/messages2_spec.lua | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime/lua/vim/_core/ui2/messages.lua b/runtime/lua/vim/_core/ui2/messages.lua index fe8fe9c99f..f92f23646b 100644 --- a/runtime/lua/vim/_core/ui2/messages.lua +++ b/runtime/lua/vim/_core/ui2/messages.lua @@ -600,7 +600,7 @@ local function enter_pager() if was_cmdwin ~= '' then api.nvim_command('quit') elseif M.cmd_on_key then - api.nvim_feedkeys(vim.keycode(''), 't', false) + api.nvim_feedkeys(vim.keycode(''), 'tn', false) end -- Cmdwin is closed one event iteration later so schedule in case it was open. vim.schedule(function() diff --git a/test/functional/ui/messages2_spec.lua b/test/functional/ui/messages2_spec.lua index 26e68086d9..1428dad9ca 100644 --- a/test/functional/ui/messages2_spec.lua +++ b/test/functional/ui/messages2_spec.lua @@ -180,6 +180,7 @@ describe('messages2', function() foo [+9] | ]]) -- Do enter the pager in normal mode. + command('nmap fclose') feed('') screen:expect([[ ^foo |