neovim

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

commit a203961535057ca335b8a02b65c032a287bba37a
parent 3f34f083db0694032477c8fa6a1ca85c52d59bec
Author: Evgeni Chasnovski <evgeni.chasnovski@gmail.com>
Date:   Tue, 29 Jul 2025 16:16:40 +0300

feat(pack): use colored `nvim_echo` chunks to show progress report

Problem: using `print()` to show progress report writes to `stdout` when
  in `--headless` mode (interferes with the testing output) and doesn't
  allow coloring.

Solution: use `nvim_echo` with colored chunks.

Diffstat:
Mruntime/lua/vim/pack.lua | 4+++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/runtime/lua/vim/pack.lua b/runtime/lua/vim/pack.lua @@ -372,7 +372,9 @@ local function new_progress_report(title) return vim.schedule_wrap(function(kind, percent, fmt, ...) local progress = kind == 'end' and 'done' or ('%3d%%'):format(percent) - print(('(vim.pack) %s: %s %s'):format(progress, title, fmt:format(...))) + local details = (': %s %s'):format(title, fmt:format(...)) + local chunks = { { '(vim.pack)', 'ModeMsg' }, { ' ' }, { progress, 'WarningMsg' }, { details } } + vim.api.nvim_echo(chunks, true, { kind = 'progress' }) -- Force redraw to show installation progress during startup vim.cmd.redraw({ bang = true }) end)