commit 71a22e20ad150fae7f42ca534e1b77208a51b83d
parent abb907a47d3e1cab771056134f354a3a00e0f677
Author: phanium <91544758+phanen@users.noreply.github.com>
Date: Wed, 10 Dec 2025 01:32:49 +0800
fix: vim.ui_attach handles messages during `-l`/`--headless` #36884
Problem:
With vim.ui_attach in headless mode, messages are still printed.
Solution:
Don't print to stdout if a vim.ui_attach "messages" handler is defined.
Diffstat:
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/nvim/message.c b/src/nvim/message.c
@@ -2862,9 +2862,10 @@ static msgchunk_T *disp_sb_line(int row, msgchunk_T *smp)
/// @return true when messages should be printed to stdout/stderr:
/// - "batch mode" ("silent mode", -es/-Es/-l)
/// - no UI and not embedded
+/// - no ext_messages
int msg_use_printf(void)
{
- return !embedded_mode && !ui_active();
+ return !embedded_mode && !ui_active() && !ui_has(kUIMessages);
}
/// Print a message when there is no valid screen.