Problem:
The default progress message doesn't account for
message-status. Also, the title and percent sections don't get written
to history. And progress percent is hard to find with variable length messages.
Solution:
Apply highlighting on Title based on status. And sync the formated msg
in history too. Also updates the default progress message format to
{title}: {percent}% msg
Problem:
The callback passed to `vim.wait` cannot return results directly, it
must set upvalues or globals.
local rv1, rv2, rv3
local ok = vim.wait(200, function()
rv1, rv2, rv3 = 'a', 42, { ok = { 'yes' } }
return true
end)
Solution:
Let the callback return values after the first "status" result.
local ok, rv1, rv2, rv3 = vim.wait(200, function()
return true, 'a', 42, { ok = { 'yes' } }
end)
Problem:
Neovim binaries are not provided for Windows ARM64.
GitHub Actions now offer native CI runners for Windows on ARM devices
(windows-11-arm), enabling automated builds and testing.
Solution:
- Modified CMake packaging to include packaging windows on arm binaries.
- Modified env script to install and initialize vs setup for arm64 arch.
Co-authored-by: Justin M. Keyes <justinkz@gmail.com>
vim-patch:8.1.1083: MS-Windows: hang when opening a file on network share
vim-patch:8.1.1527: when moving popup window over the cmdline it is not redrawn
vim-patch:8.1.1550: when a popup has left padding text may be cut off
vim-patch:8.1.1562: popup window not always redrawn after popup_setoptions()
vim-patch:8.1.1575: callbacks may be garbage collected
vim-patch:8.1.1596: when resizing the screen may draw popup in wrong position
vim-patch:8.1.1602: popup window cannot overflow on the left or right
vim-patch:8.1.1615: crash when passing buffer number to popup_create()
vim-patch:8.1.1617: no test for popup window with mask and position fixed
vim-patch:8.1.1620: no test for popup window with border and mask
vim-patch:8.1.1622: wrong width if displaying a lot of lines in a popup window
vim-patch:8.1.1636: crash when popup has fitting scrollbar
vim-patch:8.1.1646: build failure
vim-patch:8.1.1649: Illegal memory access when closing popup window
vim-patch:8.1.1656: popup window width is wrong when using Tabs
vim-patch:8.1.1665: crash when popup window with mask is below the screen
vim-patch:8.1.1666: click in popup window scrollbar with border doesn't scroll
vim-patch:8.1.1676: "maxwidth" of popup window does not always work properly
vim-patch:8.1.1678: using popup_menu() does not scroll to show the selected line
vim-patch:8.1.1707: Coverity warns for possibly using a NULL pointer
vim-patch:8.1.1709: Coverity warns for possibly using a NULL pointer
vim-patch:8.1.1719: popup too wide when 'showbreak' is set
vim-patch:8.1.1733: the man ftplugin leaves an empty buffer behind
vim-patch:8.1.1753: use of popup window mask is inefficient
vim-patch:8.1.1754: build failure
vim-patch:8.1.1755: leaking memory when using a popup window mask
vim-patch:8.1.1768: man plugin changes setting in current window
vim-patch:8.1.1773: the preview popup window may be too far to the right
vim-patch:8.1.1778: not showing the popup window right border is confusing
vim-patch:8.1.1779: not showing the popup window right border is confusing
vim-patch:8.1.1786: double click in popup scrollbar starts selection
vim-patch:8.1.1789: cannot see file name of preview popup window
vim-patch:8.1.1814: a long title in a popup window overflows
vim-patch:8.1.1845: may use NULL pointer when running out of memory
vim-patch:8.1.1850: focus may remain in popup window
vim-patch:8.1.1874: modeless selection in popup window overlaps scrollbar
vim-patch:8.1.1902: cannot have an info popup without a border
vim-patch:8.1.1907: wrong position for info popup with scrollbar on the left
vim-patch:8.1.1917: non-current window is not redrawn when moving popup
vim-patch:8.1.1918: redrawing popups is inefficient
vim-patch:8.1.1929: no tests for text property popup window
vim-patch:8.1.1934: not enough tests for text property popup window
vim-patch:8.1.1936: not enough tests for text property popup window
vim-patch:8.1.1945: popup window "firstline" cannot be reset
vim-patch:8.1.1959: when using "firstline" in popup window text may jump
vim-patch:8.1.1963: popup window filter may be called recursively
vim-patch:8.1.1997: no redraw after a popup window filter is invoked
vim-patch:8.1.1998: redraw even when no popup window filter was invoked
vim-patch:8.1.2009: cursorline highlighting not updated in popup window
vim-patch:8.1.2032: scrollbar thumb wrong in popup window
vim-patch:8.1.2109: popup_getoptions() hangs with tab-local popup
vim-patch:8.1.2110: CTRL-C closes two popups instead of one
vim-patch:8.1.2114: when a popup is closed with CTRL-C the callback aborts
vim-patch:8.1.2164: stuck when using "j" in a popupwin with popup_filter_menu
vim-patch:8.1.2210: using negative offset for popup_create() does not work
vim-patch:8.1.2213: popup_textprop tests fail
vim-patch:8.1.2240: popup window width changes when scrolling
vim-patch:8.1.2277: terminal window is not updated when info popup changes
vim-patch:8.1.2286: using border highlight in popup window leaks memory
vim-patch:8.1.2287: using EndOfBuffer highlight in popup does not look good
vim-patch:8.1.2288: not using all space when popup with "topleft" flips to above
vim-patch:8.1.2300: redraw breaks going through list of popup windows
vim-patch:8.1.2307: positioning popup doesn't work for buffer-local textprop
vim-patch:8.1.2334: possible NULL pointer dereference in popup_locate()
vim-patch:8.1.2420: crash when calling popup_close() in win_execute()
vim-patch:8.2.0826: Vim9: crash in :defcompile
vim-patch:8.2.1207: Vim9: crash in expr test when run in the GUI
vim-patch:8.2.2018: Vim9: script variable not found from lambda
vim-patch:9.0.0133: virtual text after line moves to joined line
Problem: Resizing hashtable is inefficient.
Solution: Avoid resizing when the final size is predictable.
7b73d7ebf7
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Crash when exiting early. (Ralf Schandl)
Solution: Only pop/push the title when it was set. (closesvim/vim#4334)
e5c83286bb
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: Decoding of mouse click escape sequence is not tested.
Solution: Add a test for xterm and SGR using low-level input. Make
low-level input execution with feedkeys() work.
905dd905de
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Problem: tests: various tests can be improved
Solution: Use string interpolation to concatenate strings in
test_winfixbuf, check for specific errors in assert_fails()
(Yegappan Lakshmanan)
closes: vim/vim#1815197ea879b9b
Cherry-pick Test_file_perm.vim changes from patch 9.0.{0363,0611}.
Skip Test_colornames_assignment_and_unassignment().
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Problem: filetype: fvwm2m4 files are no longer recognized
(after 9.1.1687).
Solution: Add a special case in m4 filetype detection (zeertzjq).
closes: vim/vim#181465355e81868
Co-authored-by: Damien Lejay <damien@lejay.be>
Problem: tests: no test for aclocal.m4
(after v9.1.1693)
Solution: Add a test that aclocal.m4 is detected as config filetype
related: vim/vim#18065f5670a1596
Co-authored-by: Christian Brabandt <cb@256bit.org>
Problem: tests: test_filetype fails in shadow dir
(after v9.1.9.1.1687)
Solution: Use a custom test that does not rely on configure.ac
being existing in the upper directory tree.
de6e560150
Co-authored-by: Christian Brabandt <cb@256bit.org>
These versions have exited their standard support term as of
- bullseye: 2024-08-14
- focal: 2025-05
- oracular: 2025-07-10
closes: vim/vim#18134b760062897
Co-authored-by: James McCoy <jamessan@jamessan.com>
Problem:
`msg_show` has "progress" info (title, status, percent) which is not presented
by default.
Solution:
Format TUI messages as `{title}: {msg}...{percent}%`. This also gets sent to UI.
- With specific formatting sent to UI we can remove the `progress` item from
`msg_show` event. It can be added if needed in the future. Also, having
a default presentation makes the feature more useful.
- For `vim._extui` we just need to implement the replace-msg-with-same-id
behavior.
- If any UI/plugin wants to do anything fancier, they can handle the `Progress`
event.
tmux-direct is functionally the same as tmux-256color, except it
directly reports 24-bit color and how to set them (setaf/setab)
via ncurses 6.x's extended terminfo format.
Problem:
Hover response of MarkedString[] where the first element contains a
language identifier treated as empty.
Solution:
Fix empty check to handle case of MarkedString[] where the first element
is a pair of a language and value.
Problem: a pattern that involves a backref on a different line does not
match when 'ignorecase' is set (QiWei, after v9.1.0645)
Solution: Use MB_STRNICMP when ignorecase is set, fix tests to close
swapfiles
related: vim/vim#14756fixes: vim/vim#17470closes: vim/vim#18104bf82e58a70
Co-authored-by: Christian Brabandt <cb@256bit.org>
Problem: tests: test_edit still fails on CI
(after v9.1.1701)
Solution: Fix the skip condition
42acf736a3
Co-authored-by: Christian Brabandt <cb@256bit.org>
Problem: tests: failure on CI with GUI and ASAN in test_edit.res
(Hirohito Higashi)
Solution: Disable the test for that specific situation in CI, close
swapfiles
fixes: vim/vim#180706c14c4625b
Co-authored-by: Christian Brabandt <cb@256bit.org>
Problem: Need more Vim script specific tests
Solution: Add more tests (Yegappan Lakshmanan).
closes: vim/vim#18118e810ba5a1f
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>