Commit Graph

35155 Commits

Author SHA1 Message Date
phanium
dfa5d79d05 fix: misc typos #37471 2026-01-27 09:18:02 -05:00
glepnir
ae93639ec4 fix(health): use FileType autocmd for bug report winbar #37486
Problem: In float mode, vim.schedule() may run before filetype is set,
so winbar is not shown.

Solution: Use FileType autocmd to ensure winbar is set after filetype.
Also use type=Bug in URL.
2026-01-27 09:06:50 -05:00
jdrouhard
8ed68fda50 feat(lsp): semantic token range improvements #37451
* cache all tokens from various range requests for a given document
  version
  - all new token highlights are merged with previous highlights to
    maintain order and the "marked" property
  - this allows the tokens to stop flickering once they've loaded once
    per document version
* abandon the processing coroutine if the request_id has changed instead
  of relying only on the document version
  - this will improve efficiency if a new range request is made while a
    previous one was processing its result
* apply new highlights from processing coroutine directly to the current
  result when the version hasn't changed
  - this allows new highlights to be immediately drawable once they've
    processed instead of waiting for the whole response to be processed
    at once
* rpc layer was changed to provide the request ID back in success
  callbacks, which is then provided as a request_id field on the handler
  context to lsp handlers
2026-01-27 08:56:52 -05:00
skewb1k
8c63d84be1 feat(health): check vim.ui.open() tool #37569
Problem:
`:checkhealth` does not report when no `vim.ui.open()` handler is
available.

Solution:
Factor command resolution into `_get_open_cmd()` and reuse it from
`:checkhealth` to detect missing handlers.
2026-01-27 08:51:00 -05:00
github-actions[bot]
76c77bd114 docs: update version.c #37545
vim-patch:9.1.1988: osc52 package can be further improved
vim-patch:5fb29bb7e runtime(osc52): Update documentation, send DA1 query when loading package
vim-patch:e6a11d45e runtime(osc52): A few minor fixes
vim-patch:1d4fe8905 CI: Add C preproc indentation check to CI
vim-patch:a5ba252f0 runtime(doc): Tweak tag lines in vim9.txt
vim-patch:c035f518c CI: check encoding of runtime files with utf-8 name
2026-01-27 08:05:30 -05:00
zeertzjq
d4360596b5 vim-patch:b424349: runtime(colors): include new catppuccin colorscheme (#37570)
closes: vim/vim#19258

b42434915b

Co-authored-by: Maxim Kim <habamax@gmail.com>
2026-01-27 19:51:10 +08:00
Olivia Kinnear
c28113dd9d fix(health): add back vim.cmd.redraw() call (#37576)
Was erroneously removed by #37462 during rebase.
2026-01-27 08:54:27 +01:00
zeertzjq
b88b7f9591 fix(terminal): wrong colors with nvim_open_term() in non-curbuf (#37579)
Problem:  Wrong colors with nvim_open_term() in non-current buffer.
Solution: Pass the buffer to get_config_string().
2026-01-27 06:59:23 +00:00
zeertzjq
a626f783f8 Merge pull request #37578 from zeertzjq/term-title
Fix two other possible terminal crashes
2026-01-27 13:49:32 +08:00
zeertzjq
9540e7470b fix(terminal): possible heap-use-after-free during Nvim exit
Usually, terminal_close() calls refresh_terminal(), which allocates the
scrollback buffer, and term_may_alloc_scrollback() in terminal_open()
won't dereference the buffer. However, refresh_terminal() is not called
during Nvim exit, in which case a heap-use-after-free may happen if
TermOpen wipes buffer. Check for non-NULL buf_handle to avoid that.
2026-01-27 13:12:15 +08:00
zeertzjq
b4039ec0b0 fix(terminal): don't allow b:term_title watcher to delete buffer 2026-01-27 12:45:49 +08:00
zeertzjq
b6befc7b03 fix(terminal): losing scrollback when TermOpen polls for events (#37573)
Problem:  When TermOpen polls for enough events to use the scrollback
          buffer, scrollback is lost until the next terminal refresh.
Solution: Allocate the scrollback buffer when it's needed.
2026-01-27 03:46:54 +00:00
zeertzjq
7d1ea699fb Merge pull request #37568 from zeertzjq/vim-ad0dd7c
vim-patch: runtime file updates
2026-01-27 08:14:43 +08:00
zeertzjq
f79bddd669 vim-patch:b8efcc0: runtime(vim): set 'path' to common Vim directories
closes: vim/vim#19219

b8efcc0202

Co-authored-by: Mateo Gjika <104777599+mateoxh@users.noreply.github.com>
2026-01-27 07:20:41 +08:00
zeertzjq
6543217afc vim-patch:632fd8b: runtime(python): Highlight built-in constants in Python
Also add syntax tests for those newly constants.

closes: vim/vim#17788
closes: vim/vim#18922

632fd8bb96

Co-authored-by: Rob B <github@0x7e.net>
2026-01-27 07:20:41 +08:00
zeertzjq
d6fc5cbf55 vim-patch:0f8c685: runtime(doc): fix inconsistent indent in ft_rust.txt
related: vim/vim#19251
closes:  vim/vim#19257

0f8c685a68
2026-01-27 07:20:41 +08:00
zeertzjq
7c90e77a7c vim-patch:ad0dd7c: runtime(rustfmt): Recover accidentally deleted code, don't hide rustfmt error
closes: vim/vim#19251

ad0dd7cd1e

Co-authored-by: Arkissa <mrarkssac@gmail.com>
2026-01-27 07:20:41 +08:00
luukvbaal
d30d91f3a4 fix(ui): only internal messages are unsafe #37462
Problem:  Fast context for msg_show event inhibits vim.ui_attach from
          displaying a stream of messages from a single command.

Solution: Remove fast context from msg_show events emitted as a result
          of explicit API/command calls. The fast context was originally
          introduced to prevent issues with internal messages.
2026-01-26 18:18:51 -05:00
Olivia Kinnear
e9d03b92b6 fix(health): redraw after emitting progress message #37567
Problem:
`vim.cmd.redraw()` is not called after displaying a progress message, so
vim will display progress for the previous health check, not the current
one.

Solution:
Call `vim.cmd.redraw()` so that the correct progress message is displayed.
2026-01-26 16:15:47 -05:00
luukvbaal
96e1acfa42 fix(messages): add "list_cmd" kind to :colorscheme #37561
Problem:  No kind for :colorscheme message.
Solution: Assign it the "list_cmd" kind.
2026-01-26 11:56:39 -05:00
glepnir
543e14d040 docs: nvim_set_hl fg_index, bg_indexed #37534 2026-01-26 08:31:57 -05:00
Sergei Slipchenko
f7b573f80a fix(diagnostics): assert adjusted diagnostic position #37210
Problem: 
During diagnostic position adjustment we may go out of bounds
when trying to get line's length. But it's not clear what kind of
input triggers that.

Solution:
Assert and print relevant input values.
2026-01-26 08:26:50 -05:00
Evgeni Chasnovski
e6d955cb2c docspack): mention re-install after source's default branch change #37560
Problem: `vim.pack.update()` doesn't update source's default branch if
  it has changed on the remote. It can be done by executing
  `git remote set-head origin --auto` for every plugin on every update,
  but it feels like too much extra work (which requires Internet
  connection) for a very rare use case.

  This matters since `version = nil` will keep pointing to previous
  default branch even after `vim.pack.update()`.

Solution: Document that in order for `version = nil` to point to the
  source's new default branch, perform clean re-install.
2026-01-26 08:20:33 -05:00
Kevin Goodsell
d6a6078809 docs(build): update OpenBSD build notes #37533
Issue: https://github.com/neovim/neovim/issues/37518
2026-01-26 07:41:10 -05:00
zeertzjq
95b03171df Merge pull request #37556 from zeertzjq/vim-9.1.2109
vim-patch: runtime file updates
2026-01-26 07:25:11 +08:00
zeertzjq
637dbdbe03 vim-patch:17bba75: runtime(doc): Fix overlength lines in :help {russian,vietnamese}.txt
closes: vim/vim#19252

17bba758fa

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2026-01-26 07:05:42 +08:00
zeertzjq
41dcfb80af vim-patch:dd3aa92: runtime(toml): update syntax and ftplugin.
Add "-" to iskeyword. This required a change to the syntax files too
because they were using the word begin and end atoms.

closes: vim/vim#17259

dd3aa92ce6

Co-authored-by: Aman Verma <amanraoverma@gmail.com>
Co-authored-by: Teemu Ikonen <tpikonen@mailbox.org>
Co-authored-by: A4-Tacks <wdsjxhno1001@163.com>
2026-01-26 07:03:28 +08:00
zeertzjq
d982c00846 vim-patch:9.1.2110: filetype: skhd files are not recognized
Problem:  filetype: skhd files are not recognized
Solution: Detect .skhdrc and skhdrc as skhd filetype,
          include a syntax and filetype plugin, add syntax tests
          (Kiyoon Kim)

Add syntax highlighting for skhd (simple hotkey daemon for macOS)
configuration files. Includes filetype detection for skhdrc and
.skhdrc files.

Reference:
- https://github.com/asmvik/skhd

closes: vim/vim#19235

e5f61842b5

Co-authored-by: Kiyoon Kim <kiyoon@users.noreply.github.com>
2026-01-26 07:00:32 +08:00
zeertzjq
4076994db6 vim-patch:5c855ce: runtime: convert *_utf-8.vim files to actual UTF-8 encoding
Several runtime files with "_utf-8" in their filename are actually encoded
in latin1 or cp1255, not UTF-8. This causes errors when tools attempt to
read these files as UTF-8.

Files converted:
- esperanto_utf-8.vim: latin1 -> UTF-8, updated scriptencoding directive
- greek_utf-8.vim: latin1 -> UTF-8
- hebrewp_utf-8.vim: cp1255 (Windows Hebrew) -> UTF-8
- menu_ca.utf-8.vim: latin1 -> UTF-8
- menu_ca_es.utf-8.vim: latin1 -> UTF-8
- menu_pt_pt.utf-8.vim: latin1 -> UTF-8

The actual functionality remains unchanged - only the encoding was modified.

closes: vim/vim#16390

5c855ce43d

Co-authored-by: ThanhNguyxn <thanhnguyentuan2007@gmail.com>
2026-01-26 06:53:53 +08:00
zeertzjq
d1167d1327 vim-patch:e914ada: runtime(doc): Fix erroneous *roff syntax examples
Problem dates back at least to commit 071d4279d6, Vim 7.0001 (2004).

The examples shown were of special character interpolation syntax, not
("number") register interpolation syntax.

Sources:
* https://www.gnu.org/software/groff/manual/groff.html.node/Built_002din-Registers.html
* https://github.com/mamccollum/troff-resources/blob/main/cstr-54.pdf

closes: vim/vim#19243

e914ada323

Co-authored-by: G. Branden Robinson <g.branden.robinson@gmail.com>
2026-01-26 06:52:50 +08:00
zeertzjq
92e9aaef41 vim-patch:2def2a7: runtime(doc): mark a-a-p website as dead
fixes: vim/vim#19247

2def2a70a3

Co-authored-by: Christian Brabandt <cb@256bit.org>
2026-01-26 06:44:11 +08:00
zeertzjq
798ee64287 vim-patch:9.1.2109: filetype: NetLinx fires are not recognized
Problem:  filetype: NetLinx fires are not recognized
Solution: Detect *.axs and *.axi as netlinx filetype
          (kb).

Reference:
- https://www.amx.com/en/site_elements/amx-language-reference-guide-netlinx-programming-language
- https://kielthecoder.com/2021/06/11/netlinx-getting-started/

closes: vim/vim#19249

6963e3b8bf

Co-authored-by: kb <kim@simple.industries>
2026-01-26 06:42:36 +08:00
Aymen Hafeez
8c0c34786e docs(diagnostic): fix indentation in diagnostic-on-jump-example (#37516) 2026-01-25 12:11:01 -08:00
Jan Edmund Lazo
d93e150888 fix(vim-patch): add N/A files and re-sort (#37544)
Nvim doesn't maintain runtime/macros/README.txt.
Nvim has existing linting rules for preprocesor.
2026-01-25 10:18:14 +08:00
github-actions[bot]
0627b7902f docs: update version.c (#37212)
vim-patch:8.2.1857: Vim9: using job_status() on an unused var gives an error
vim-patch:8.2.2064: terminal: cursor is on while redrawing, causing flicker
vim-patch:8.2.3585: crash when passing float to "term_rows" of term_start()
vim-patch:8.2.3640: freeze when calling term_wait() in a close callback
vim-patch:8.2.3666: libvterm is outdated
vim-patch:8.2.3803: GUI: crash with 'writedelay' set using a terminal window
vim-patch:8.2.4695: JSON encoding could be faster
vim-patch:8.2.4699: hard to reproduce hang when reading from a channel
vim-patch:8.2.4757: list of libraries to suppress lsan errors is outdated
vim-patch:8.2.4788: large payload for LSP message not tested
vim-patch:8.2.4830: possible endless loop if there is unused typahead
vim-patch:8.2.5055: statusline is not updated when terminal title changes
vim-patch:9.0.0235: 'autoshelldir' does not work with chunked respose
vim-patch:9.0.0394: Cygwin: multibyte characters may be broken in terminal window
vim-patch:9.0.0524: build instructions for MS-Windows are outdated
vim-patch:9.0.0774: the libvterm code is outdated
vim-patch:9.0.1269: channel test often fails on Mac OS
vim-patch:9.0.1487: Content-type header for LSP channel not according to spec
vim-patch:9.0.1498: in a terminal window the cursor may jump around
vim-patch:9.0.1509: error message lacks mentioning the erroneous argument
vim-patch:9.0.1527: crash when using negative value for term_cols
vim-patch:9.0.1627: no generic mechanism to test syntax plugins
vim-patch:9.0.1628: syntax tests fail on FreeBSD
vim-patch:9.0.1692: Android not handling AI_V4MAPPED ai_flag
vim-patch:9.0.1790: Redundant LSP Content-Type header
vim-patch:b147d3148 tests: Improve the codestyle test (#12988)
vim-patch:9.0.1922: LSP server request message is misinterpreted as a response message
vim-patch:9.0.1927: patch 1916 (fixed terminal size) not optimal
vim-patch:9.0.1929: runtime tests fail with tiny vim
vim-patch:9.0.1939: still a problem when processing LSP RPC requests
vim-patch:4ae16d721 Improve CONTRIBUTING.md
vim-patch:74a233184 NSIS: Possibility to include translated license and README.txt files (#14311)
vim-patch:3ac83c714 The CODEOWNERS File is not useful
vim-patch:b7258738f runtime(doc): fix typo in usr_52.txt
vim-patch:f5c8f520b runtime(doc): fix typo in vim9script help file (#14782)
vim-patch:bad9577b9 runtime(doc): include some vim9 script examples in the help
vim-patch:98fb81846 runtime(comment): clarify the usage of 'commentstring' option value
vim-patch:9.1.0473: term_start() does not clear vertical modifier
vim-patch:9.1.0475: cmod_split modifier is always reset in term_start()
vim-patch:9d85d4dcf runtime(manpager): avoid readonly prompt
vim-patch:9.1.0606: tests: generated files may cause failure in test_codestyle
vim-patch:9.1.0639: channel timeout may wrap around
vim-patch:9.1.0643: terminal: cursor may end up on invalid position
vim-patch:166f89e04 runtime(doc): update vim90 to vim91 in docs
vim-patch:914213616 runtime(comment): add gC mapping to (un)comment rest of line
vim-patch:0fb25515c runtime(comment): fix syntax error
vim-patch:e021f39b7 runtime(comment): commenting might be off by one column
vim-patch:7b27fc49a runtime(comment): consider &tabstop in lines after whitespace indent
vim-patch:9.1.0763: tests: cannot run single syntax tests
vim-patch:f64bafd98 runtime(comment): fix commment toggle with mixed tabs & spaces
vim-patch:9.1.0787: cursor position changed when using hidden terminal
vim-patch:55adc5b46 runtime(doc): update coding style documentation
vim-patch:feea1b444 Add an .editorconfig file to repository
vim-patch:ba0b45857 translation(am): Remove duplicate keys in desktop files
vim-patch:de6a31301 runtime(doc): mention auto-format using clang-format for sound.c/sign.c
vim-patch:9.1.0989: Vim9: Whitespace after the final enum value causes a syntax error
vim-patch:9.1.1047: Makefiles uses non-portable syntax
vim-patch:9.1.1061: tests: test_glvs fails when unarchiver not available
vim-patch:7ceca3eb0 runtime(syntax-tests): Support "wait-free" test failure
vim-patch:9.1.1229: the comment plugin can be improved
vim-patch:20e46fa65 Improve contributing guide by adding a section on signing off commits
vim-patch:9.1.1240: Regression with ic/ac text objects and comment plugin
vim-patch:9.1.1254: need more tests for the comment plugin
vim-patch:9.1.1259: some issues with comment package and tailing spaces
vim-patch:9.1.1293: comment plugin does not handle 'exclusive' selection for comment object
vim-patch:9.1.1336: comment plugin does not support case-insensitive 'commentstring'
vim-patch:9.1.1348: still E315 with the terminal feature
vim-patch:55f9e2bef runtime(doc): Tweak documentation style in develop.txt
vim-patch:9.1.1399: tests: test_codestyle fails for auto-generated files
vim-patch:9.1.1456: comment plugin fails toggling if 'cms' contains \
vim-patch:aef2e53cf runtime(comment): handle special chars ^$[ robustly
vim-patch:1cbe3e89c runtime(comment): add <Plug>-mappings
vim-patch:9.1.1536: tests: test_plugin_comment uses wrong :Check command
vim-patch:58706ac04 Update editorconfig and the documented C-style for sign.c/sound.c
vim-patch:9.1.1597: CI reports leaks in libgtk3 library
vim-patch:46ec89902 runtime(doc): update develop assumptions
vim-patch:bc51ec53d runtime(doc): Update CONTRIBUTING and clarify use of Vim9 script
vim-patch:d1833d282 runtime(doc): allow more C99 features
vim-patch:0ed08788a runtime(doc): document use of proto files in develop.txt
vim-patch:05662b63b runtime(doc): Tweak spacing in develop.txt
vim-patch:e89efc22b runtime(doc): update Vim policy
vim-patch:fabe9a4c8 nsis: Getting the Vim version number via makensis
vim-patch:9.1.1841: patch 9.1.1840 adds python build dependency
vim-patch:bcf6c32b5 runtime(doc): Tweak documentation in develop.txt
vim-patch:9.1.1905: tabpanel: truncates terminal output
vim-patch:9.1.1912: tests: test_plugin_comment fails
vim-patch:ef7a577b2 runtime(doc): Remove outdated agide.org link
vim-patch:9.1.2025: conpty terminal process may not start
vim-patch:ce1636548 runtime(doc): Emphasize adding tests when contributing
vim-patch:d09be1584 runtime(doc): Update Contributing.md on the use of AI
vim-patch:9.1.2039: if_ruby: crash when using Ruby/dyn 4.0
vim-patch:0115da33b CI: Missing test of Vim with ConPTY on Windows
vim-patch:9.1.2047: MS-Windows: style issue in gui_w32.c
vim-patch:9.1.2048: MS-Windows: backspace behavior wrong with ConPTY
vim-patch:9.1.2053: MS-Windows: May use wrong find command
vim-patch:0ed8ba307 Always force LF line endings in old test .ok files
vim-patch:a735e44b3 translation(ru): updated menu files according to the patch 9.1.1989
vim-patch:416d1a5e2 translation(ru): added a disclaimer to the license translation
vim-patch:0084e4bd1 gitattributes: mark test21.ok binary, drop test42.in
vim-patch:aa58f1fe4 CI: build failure in if_perl.xs
vim-patch:9.1.2065: GvimExt cannot be linked statically using MinGW
vim-patch:5516fc534 runtime(syntax-tests): Adapt "runtime/syntax/testdir/vimcmd" for "src/testdir/util/shared.vim"
vim-patch:9.1.2073: auto/configure needs to be regenerated
vim-patch:9.1.2074: Compile error with Motif GUI
vim-patch:da44ef6a9 runtime(c,cpp): Add reference links to noreturn tests
vim-patch:8211f556d runtime(syntax-tests): tests: sh_10 fails on MacOS runners
vim-patch:9.1.2091: Ruby integration does not work correctly
vim-patch:9.1.2096: Vim9: truthiness issue with objects
vim-patch:9.1.2099: different line endings in ja.sjis.po and ja.po
vim-patch:284f8669e CI: Reorder path in Windows CI runners and move Python3 before $PATH
vim-patch:9.1.2101: Vim9: more truthiness issues

vim-patch:8.2.0572: using two lines for free and reset
vim-patch:8.2.2291: Vim9: cannot use "null" for v:null
vim-patch:8.2.2961: keys typed during a :normal command are discarded

vim-patch:9.0.1567: profiler calculation may be wrong on 32 bit builds
vim-patch:9.0.1776: No support for stable Python 3 ABI
vim-patch:9.0.1859: heap-use-after-free in bt_normal()
vim-patch:9.0.2052: win32: using deprecated wsock32 api

vim-patch:9.1.2052: Compile error when disabling linebreak feature
vim-patch:5e37e31: runtime(tutor): fix wrong motion in instruction
vim-patch:9.1.2067: shadow variable warning in menu.c
vim-patch:f78629b: runtime(doc): Fix typo at :help 'fsync'
2026-01-25 09:57:34 +08:00
Jan Edmund Lazo
4cce77e547 vim-patch:9.1.1984: terminal OSC52 support can be improved (#37543)
Problem:  terminal OSC52 support to access the clipboard can be improved
Solution: Include and package the optional osc52 package, note: this
          requires a Vim with clipboard provider feature (Foxe Chen).

related: vim/vim#14995
closes: vim/vim#18575

02b8ec7da5

----

Nvim has incompatible implementation for OSC52 clipboard provider.
Vim9 is N/A.

Co-authored-by: Foxe Chen <chen.foxe@gmail.com>
2026-01-25 08:17:33 +08:00
Christian Clason
57574db154 build(deps): bump tree-sitter-vim to v0.8.0 2026-01-24 14:16:46 +01:00
zeertzjq
72ac9ac9a1 fix(terminal): possible memory leak on exit (#37532)
Problem:
On exit, it's possible that term_delayed_free() hasn't been called yet
when the main loop is freed, in which case it won't be called ever.

Solution:
Don't bail out with term->destroy set when calling terminal_close()
inside free_all_mem().
2026-01-24 03:32:52 +00:00
zeertzjq
813a6d3b11 Merge pull request #37530 from zeertzjq/vim-9.1.1908
vim-patch:8.2.4738,9.0.{0874,1066,1480},9.1.{1370,1908}
2026-01-24 10:25:05 +08:00
zeertzjq
02760a30ce vim-patch:9.1.1908: tests: test_crash.vim times out in CI ASAN builds
Problem:  tests: test_crash.vim times out in CI ASAN builds
Solution: Increase timeout for ASAN or Valgrind runs

closes: vim/vim#18725

89f0a3a574

Co-authored-by: Christian Brabandt <cb@256bit.org>
2026-01-24 10:04:44 +08:00
zeertzjq
73f2286f08 vim-patch:9.1.1370: CI Tests favor GTK2 over GTK3
Problem:  CI Tests favor GTK2 over GTK3
Solution: Install GTK3 dependencies and debug packages for CI workflows,
          update ASAN suppression list, update required dependency
          checks for the tests (Drew Vogel)

closes: vim/vim#17253

ea67ba718d

Cherry-pick test_match.vim changes from patch 9.0.0626.

Co-authored-by: Drew Vogel <dvogel@github>
2026-01-24 10:04:44 +08:00
zeertzjq
08e193633b vim-patch:9.0.1480: using popup menu may leave text in the command line
Problem:    Using popup menu may leave text in the command line.
Solution:   Clear the command line if the popup menu covered it. (Luuk van
            Baal, closes vim/vim#12286)

dcd40cfca0

No code change is need in Nvim and testing is already covered by
test/functional/ui/popupmenu_spec.lua.

Co-authored-by: Luuk van Baal <luukvbaal@gmail.com>
2026-01-24 10:04:44 +08:00
zeertzjq
3ac981e838 vim-patch:9.0.1066: test function name is wrong
Problem:    Test function name is wrong.
Solution:   Rename to what is actually being tested. (closes vim/vim#11712)

67f3094397
2026-01-24 10:04:44 +08:00
zeertzjq
f60051e00d vim-patch:9.0.0874: using freed memory when executing unmenu at more prompt
Problem:    Using freed memory when executing unmenu at the more prompt.
Solution:   Do not clear menus while listing them. (closes vim/vim#11439)

920d311480

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2026-01-24 10:04:44 +08:00
zeertzjq
cc95a7d8b8 vim-patch:8.2.4738: Esc on commandline executes command instead of abandoning it
Problem:    Esc on commandline executes command instead of abandoning it.
Solution:   Save and restore KeyTyped when removing the popup menu.
            (closes vim/vim#10154)

11a57dfd16

No code change is needed in Nvim as Nvim doesn't call update_screen() to
redraw pum.

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2026-01-24 10:04:44 +08:00
zeertzjq
138922497f Merge pull request #37529 from zeertzjq/vim-95bb4ef
vim-patch: runtime file updates
2026-01-24 09:15:41 +08:00
zeertzjq
11d1ebba4a vim-patch:09a4805: runtime(csh): Update ftplugin, improve matchit behaviour
- Allow for an unparenthesised expression argument to the 'if',
  'if-then', and 'while' commands.  This is undocumented, and probably
  unintended, behaviour but is frequently seen in the wild.
- Allow for a continued-line expression argument to the 'if-then'
  command.

related: vim/vim#19172 (csh: Support negated if in matchit)
closes:  vim/vim#19190

09a48056c7

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2026-01-24 08:09:58 +08:00
zeertzjq
2f234d8647 vim-patch:95bb4ef: runtime(csh,tcsh): Update syntax files
- Adopt csh syntax file.
- Highlight tcsh strings with the String highlight group.
- Fix 'set' command highlighting with trailing comments. See
  https://github.com/vim/vim/pull/19172#issuecomment-3751574224
- Fix whitespace style in MAINTAINERS file

closes: vim/vim#19191

95bb4ef7d1

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2026-01-24 08:09:45 +08:00
zeertzjq
e0b724de09 vim-patch:9.1.2105: tests: not enough tests for using plain_vgetc() (#37521)
Problem:  Not enough tests for using plain_vgetc().
Solution: Add tests for using plain_vgetc() during various commands.
          (zeertzjq)

closes: vim/vim#19236

2b6bdbc697
2026-01-24 00:04:33 +00:00
zeertzjq
f10a1dcf4d vim-patch:9.1.2107: :normal may change cmdline history (#37523)
Problem:  :normal may change cmdline history if the keys don't
          explicitly leave Cmdline mode (after 9.1.1872).
Solution: Check ex_normal_busy (zeertzjq)

closes: vim/vim#19237

85241020e8
2026-01-23 23:57:49 +00:00