Commit Graph
9552 Commits
Author SHA1 Message Date
zeertzjq e6b2255ac7 vim-patch:4edaf89: runtime(doc): improve preinserted() doc
Change the second "if" to "because", otherwise it may be misinterpreted
that preinserted() can return non-zero just because these options are
set.

closes: vim/vim#18409

https://github.com/vim/vim/commit/4edaf8923335504c31810dc4c5213eaba84e7898
2025-09-30 09:32:33 +08:00
zeertzjqandGirish Palya 7b9c063d11 vim-patch:9.1.1797: completion: autocompletion can be improved
Problem:  completion: autocompletion can be improved
Solution: Add support for "longest" and "preinsert" in 'autocomplete';
          add preinserted() (Girish Palya)

* Add support for "longest" in 'completeopt' when 'autocomplete'
  is enabled. (Note: the cursor position does not change automatically
  when 'autocomplete' is enabled.)
* Add support for "preinsert" when 'autocomplete' is enabled. Ensure
  "preinsert" works the same with and without 'autocomplete'
* introduce the preinserted() Vim script function, useful for defining
  custom key mappings.

fixes: vim/vim#18314
closes: vim/vim#18387

https://github.com/vim/vim/commit/c05335082adb21d99d96374779856444a3a0688f

Co-authored-by: Girish Palya <girishji@gmail.com>
2025-09-30 09:32:33 +08:00
zeertzjqandEisuke Kawashima 4896178863 vim-patch:05e44e9: runtime(tex): add amsmath support to tex syntax script (#35958)
Problem:  tex syntax file does not support some of the math equation
          environments provided by amsmath.sty, therefore well-formed
          snippet is highlighted as "texBadMath"
Solution: add the environments

closes: vim/vim#18433

https://github.com/vim/vim/commit/05e44e978fc7acb5314ce16f5a41d8e75d34bd21

Co-authored-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
2025-09-30 08:26:55 +08:00
zeertzjqandChristian Brabandt af2932e2dc vim-patch:992e307: runtime(doc): update list of modifiers at :h expand() (#35957)
fixes: vim/vim#18435

https://github.com/vim/vim/commit/992e30774f5ec81f53d5554c42137d3c85999081

Co-authored-by: Christian Brabandt <cb@256bit.org>
2025-09-30 08:26:40 +08:00
Maria Solano 9da316fcc4 fix(docs): force blank line after numbered list items #35950
Workaround until the vimdoc parser supports numbered list-items:
https://github.com/neovim/tree-sitter-vimdoc/issues/144
2025-09-28 21:01:20 -07:00
2739ab485e docs: json, tests, lsp #35754
Close #35926
Close #35818

Co-authored-by: skewb1k <skewb1kunix@gmail.com>
Co-authored-by: glepnir <glephunter@gmail.com>
2025-09-28 20:57:59 -07:00
zeertzjqandDoug Kearns 11b6fcdfa6 vim-patch:ae20d73: runtime(vim): Update base syntax, improve line-continuation skip patterns
Factor out the common prefix in line-continuation :syn-skip patterns.

closes: vim/vim#18416

https://github.com/vim/vim/commit/ae20d732ae691793297139f688936c602c674999

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-09-29 09:23:42 +08:00
zeertzjqandDoug Kearns 7c9a4a2a71 vim-patch:f4a6acd: runtime(vim): Update base syntax, allow Vim9 :echo tail comments
- Match comments after Vim9 :echo and :execute.
- Match comments after Vim9 and legacy :eval.

closes: vim/vim#18420

https://github.com/vim/vim/commit/f4a6acd86edfdaf0f2c1fc4fb0c6533069d0469e

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-09-29 09:19:07 +08:00
zeertzjqandDoug Kearns 2cd899f730 vim-patch:7bb733f: runtime(vim): Update base syntax, match null_tuple literal
closes: vim/vim#18404

https://github.com/vim/vim/commit/7bb733f6bf727efe3455c3355a38430ee9cd9cc7

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-09-29 09:17:13 +08:00
zeertzjqandDoug Kearns e9d8d1b061 vim-patch:57d243e: runtime(vim): Update base syntax, fix indented Vim9 :redir highlighting
Include post operator whitespace in the Vim9 variable assignment
lookahead so that "redir =>" doesn't match as an assignment.

fixes: vim/vim#18319
closes: vim/vim#18323

https://github.com/vim/vim/commit/57d243e27da804489e256add0398efb9310a4353

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-09-29 09:16:50 +08:00
zeertzjqandDoug Kearns 6b0365ae2f vim-patch:6f97624: runtime(vim): Update base syntax, fix Vim9 :for loop variable highlighting
Highlight the iteration variable's type in Vim9 :for {var} loops.

Reported by Aliaksei Budavei.

fixes: vim/vim#17961
closes: vim/vim#18163

https://github.com/vim/vim/commit/6f97624e115eb793e5b486244683ecb86959d859

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-09-29 09:16:17 +08:00
0ebb2ec4e4 vim-patch:4de931d: runtime(vim): Update base syntax, match enum constructor type args
closes: vim/vim#17840

https://github.com/vim/vim/commit/4de931daae88784aacd1dc4ecd92ca6fb4a45977

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
Co-authored-by: Aliaksei Budavei <0x000c70@gmail.com>
2025-09-29 09:15:17 +08:00
zeertzjqandDoug Kearns 22f6b9d11f vim-patch:72473ce: runtime(vim): Update base syntax, match generic functions
Match Vim9 generic functions, added in vim/vim#17313.

closes: vim/vim#17722

https://github.com/vim/vim/commit/72473ce9f8e111072360a7589e2c5bee079305da

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-09-29 09:14:39 +08:00
zeertzjqandAliaksei Budavei c07a24e31c vim-patch:91ac18c: runtime(java): Recognise _module_ import declarations (#35947)
After two preview proposals (JEPs 476 and 494), _module_
import declarations are now a part of the language (JDK 25).

Reference:
https://openjdk.org/jeps/511

closes: vim/vim#18424

https://github.com/vim/vim/commit/91ac18cb036f87ceff83bf8d05f7c03b50b94633

Co-authored-by: Aliaksei Budavei <0x000c70@gmail.com>
2025-09-29 01:03:42 +00:00
zeertzjq 0fa0717d4e vim-patch:9.1.1802: 'nowrap' in a modeline may hide malicious code (#35946)
Problem:  'nowrap' in a modeline may hide malicious code.
Solution: Forcibly use '>' as 'listchars' "extends" if 'nowrap' was set
          from a modeline (zeertzjq).

Manual `:setlocal nowrap` disables this behavior.  There is a separate
problem with `:set nowrap` that also applies to some other options.

related: vim/vim#18214
related: vim/vim#18399
closes: vim/vim#18425

https://github.com/vim/vim/commit/9d5208a9313dd8b0d62c97af5485f1715af98a1c

Cherry-pick some test_modeline.vim changes from patches 9.0.{0363,0626}.
2025-09-29 07:48:46 +08:00
glepnir fcf752476a fix(cmd): :update writes new file buffers only for real files #35939
Problem: :update should write new file buffers, but previous fix
affected special buffer types (acwrite, nofile, etc.).

Solution: Add bt_nofilename() check to only write new files for
buffers representing real filesystem paths.
2025-09-27 20:28:05 -07:00
Maria Solano 03032d1f73 fix(lsp): remove vim.lsp.diagnostic.reset() (#35938) 2025-09-27 14:53:00 -07:00
Maria Solano c5c6ddba91 feat(lsp): document method types (#35934) 2025-09-27 14:52:30 -07:00
Maria Solano 5fbc5ab810 fix(lsp): use correct workspace.diagnostics capability key (#35937) 2025-09-27 13:40:52 -07:00
Eisuke Kawashima 2d8ed73143 build(vim-patch.sh): ignore runtime/*/testdir/
tracked files are removed
2025-09-27 18:55:43 +08:00
skewb1k e3c36f31e3 fix(highlight): ensure extmark range is within buffer bounds #35928
Adds an additional check for the case when end_col = 0, addressing
https://github.com/neovim/neovim/issues/35814#issuecomment-3340709532.

Validation is now localized to the highlighter without affecting the C API.
2025-09-26 19:32:28 -07:00
Tomasz N 56709ca168 fix(extui): setup buffers after activating eventignorewin (#35915)
fix(extui): set options and buffer name after 'eventignorewin'

Problem:  Setting up extui buffers emits OptionSet and BufFilePost events.
Solution: Set options and buffer name after 'eventignorewin'.
2025-09-26 01:51:14 +00:00
zeertzjqandJon Parise a9486fe7e1 vim-patch:900c747: runtime(python): fix 'type' syntax highlighting (#35918)
The previous patterns unintentionally highlighted words like 'typename'.

addresses: https://github.com/vim/vim/pull/18090#issuecomment-3333025523
closes: vim/vim#18394

https://github.com/vim/vim/commit/900c747da393b031f3347428fb640224ac2f5442

Co-authored-by: Jon Parise <jon@indelible.org>
2025-09-26 07:54:19 +08:00
zeertzjqandDoug Kearns 0646d0ea28 vim-patch:b6f9d38: runtime(doc): Improve documentation of the ..= assignment operator (#35916)
Explicitly mention the "..=" compound assignment operator everywhere
".=" is documented.

Convert some uses of "." and ".=" in the examples to ".." and "..=",
respectively.

closes: vim/vim#18380

https://github.com/vim/vim/commit/b6f9d38f9607d837b45d905f58dc0199f79414dc

Cherry-pick a change to eval.txt from patch 9.1.1232.

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-09-25 23:31:21 +00:00
zeertzjqandDevin Weaver 0be3dee44f vim-patch:4b97fc9: runtime(javascript): Add "using" keyword to JavaScript syntax highlighting (#35910)
Prior to this change, const and let were keywords for variable
declarations.

This change adds `using` as another keyword for variable declaration.

This JavaScript feature was recently introduced.

Docs:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/using

closes: vim/vim#18381

https://github.com/vim/vim/commit/4b97fc901fd5fc52c2e9ac77c3710976cec5ea9a

Co-authored-by: Devin Weaver <suki@tritarget.org>
2025-09-24 23:28:21 +00:00
zeertzjq ca377f3c35 vim-patch:1ae980a: runtime(doc): fix inconsistent indent in cmdline.txt
Also fix typo in autoload/netrw.vim.

related: vim/vim#18371
closes: vim/vim#18376

https://github.com/vim/vim/commit/1ae980a9cb8d8cb5e5897f3708ddeb7c8c0555bd
2025-09-25 06:50:44 +08:00
zeertzjqandKonfekt 641cb41832 vim-patch:34747a1: runtime(doc): update live-grep and fuzzy-file-picker examples
closes: vim/vim#18371

https://github.com/vim/vim/commit/34747a13e08770ca871e08581551f05153dce9e2

Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
2025-09-25 06:50:44 +08:00
zeertzjqandDoug Kearns d954763b85 vim-patch:b1446df: runtime(vim): Update base syntax, match :wincmd (#35898)
Match the full :wincmd command syntax.

Allow for oneline assignment to Vim9 variables named winc[md].

Fixes vim/vim#18368.

https://github.com/vim/vim/commit/b1446dfd23eb95743cda8cec8a6aac6e697c5fbe

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-09-24 10:22:46 +08:00
zeertzjqandFelix Pehla b7742714aa vim-patch:20e78ee: runtime(swayconfig): support new config options in syntax script
From sway(5):
 - allow_tearing
 - primary_selection
 - swaybg_command
 - swaynag_command

From sway-output(5):
 - color_profile
 - allow_tearing

From sway-input(5):
 - clickfinger_button_map
 - rotation_angle
 - scroll_button_lock

closes: vim/vim#18293

https://github.com/vim/vim/commit/20e78ee807533d642ce4d6910a0718b854b7c405

Co-authored-by: Felix Pehla <29adc1fd92@gmail.com>
2025-09-24 08:38:15 +08:00
zeertzjqandFelix Pehla 0c23b863f4 vim-patch:9.1.1787: filetype: not all Sway config files are recognized
Problem:  filetype: not all Sway config files are recognized
Solution: Detect files within */sway/config.d/* as swayconfig filetype
          (Felix Pehla).

Sways default config automatically includes files placed in
@sysconfdir@/sway/config.d/* (see config.in), so it makes sense to use
the sway syntax for those.

related: vim/vim#18293

https://github.com/vim/vim/commit/24f0dbba8c19be6969f392f891067ded4233bde7

Co-authored-by: Felix Pehla <29adc1fd92@gmail.com>
2025-09-24 08:36:53 +08:00
zeertzjqandBjoern Foersterling 409122e5ae vim-patch:11bde1f: runtime(sh): refactored sh.vim syntax script (#35895)
- unified bashStatement, kshStatement and shStatement as much as
  possible
- separated builtin commands from external programs
- cleaned up kornshell flavor logic
- fixed alias syntax highlighting
- added test for bash alias syntax highlighting
- removed daemon keyword

closes: vim/vim#18355

https://github.com/vim/vim/commit/11bde1f16939ef4128d08488ae238c66b46aa056

Co-authored-by: Bjoern Foersterling <bjoern.foersterling@gmail.com>
2025-09-24 00:28:38 +00:00
zeertzjqandChristian Brabandt dd630e7f84 vim-patch:5830407: runtime(netrw): 'equalalways' is not always respected (#35894)
fixes: vim/vim#18358

https://github.com/vim/vim/commit/58304078ad0a4954fe57699acc6e75d0b9da86c0

Co-authored-by: Christian Brabandt <cb@256bit.org>
2025-09-24 00:03:38 +00:00
zeertzjqandShay 7837161076 vim-patch:70d745a: runtime(zip): support PowerShell Core (#35880)
fixes: vim/vim#17987
closes: vim/vim#18345

https://github.com/vim/vim/commit/70d745a61bc12d94b9b217887004c1a5c263cb9d

Co-authored-by: Shay <shay_public@hotmail.com>
2025-09-22 23:21:27 +00:00
zeertzjqandChristian Brabandt 4b4d58a2f9 vim-patch:224f8ca: runtime(doc): clarify 'fileignorecase' option setting (#35879)
fixes: vim/vim#18360

https://github.com/vim/vim/commit/224f8ca769f2f5c8c4f3293e2adf7672418ba2fe

Co-authored-by: Christian Brabandt <cb@256bit.org>
2025-09-23 07:10:00 +08:00
Peter Aronoff 7b99e1f0c3 fix: remove typo from buffer-local LSP docs (#35841)
Problem: example code refers to `vim.lsp.buf.document_color`, but there
is no such thing.

Solution: replace `vim.lsp.buf.document_color` with `vim.lsp.document_color`.
2025-09-22 18:27:44 -04:00
Yochem van Rosmalen 09266830bd fix(diagnostic): show diagnostics on buffer load #35866
Problem:
Diagnostics set on unloaded buffers are not shown when the buffer loads.

Solution:
Use `once_buf_loaded()` to show the diagnostics on BufRead is the buffer
is not yet loaded.
2025-09-22 13:33:16 -07:00
Karl Yngve Lervåg 0790e08f52 docs(diagnostics): allow list of strings for vim.diagnostic.Opts.border (#35863)
Type checkers complain if we pass a list of strings, but this should be allowed.
2025-09-22 21:57:19 +02:00
SkrrtBacharach cfe10b4014 fix(health): errors in :checkhealth with pyenv-virtualenv #35865
Problem:
pyenv-virtualenv sets a different path for VIRTUAL_ENV than the path to the
python binary it provides, but these paths both symlink to the same file, so
there should be no disparity. The python health-check reports an error, since it
only checks if these paths are equal, not where they point to (resolve to).

Solution:
- Resolve the python symlinks before checking if they are equal.
- Deduplicate some code.
2025-09-21 14:25:14 -07:00
zeertzjqandGirish Palya a70997442e vim-patch:9.1.1779: completion: 'autocomplete' cannot be enabled per buffer (#35853)
Problem:  completion: 'autocomplete' cannot be enabled per buffer
          (Tomasz N)
Solution: Make 'autocomplete' global or local to buffer (Girish Palya)

fixes: vim/vim#18320
closes: vim/vim#18333

https://github.com/vim/vim/commit/0208b3e80a080740ff77a5661d0f65090e317d90

Co-authored-by: Girish Palya <girishji@gmail.com>
2025-09-21 00:56:38 +00:00
zeertzjqandAndis Spriņķis 6b7fc9d37f vim-patch:841becd: runtime(lf): update syntax to support lf version r38 (#35852)
Adds the lf release 38 specific syntax highlighting changes.

From the PR andis-sprinkis/lf-vim#24 by @CatsDeservePets

closes: vim/vim#18342

https://github.com/vim/vim/commit/841becdc2d4677d705fcb00442d04200b218e482

Co-authored-by: Andis Spriņķis <andis@sprinkis.com>
2025-09-21 08:07:01 +08:00
zeertzjqandthinca 39a21d749d vim-patch:9.1.1774: cannot calculate sha256 of a Blob
Problem:  cannot calculate sha256() of a Blob
Solution: Change sha256() to accept a Blob or String argument
          (thinca).

closes: vim/vim#18336

https://github.com/vim/vim/commit/4150283b837975152d36f87a2bb975e894bc965c

Co-authored-by: thinca <thinca@gmail.com>
2025-09-21 06:31:27 +08:00
zeertzjqandChristian Brabandt b756a6165a vim-patch:6fd9dac: runtime(log): highlight Java Errors (#35836)
closes: vim/vim#18315

https://github.com/vim/vim/commit/6fd9dac9927caf390c97c61ca5143fb7a190dd15

Co-authored-by: Christian Brabandt <cb@256bit.org>
2025-09-19 12:36:56 +08:00
Judit NovakandJustin M. Keyes 6152bcf42e fix(health): hard fail on invalid "python-*" bin #35382
Problem:
Scripts named with 'python-…' prefix may not be valid python bins. If
such a script is found in a venv, the Python healthcheck fails hard.

    .venv/python-argcomplete-check-easy-install-script
    .venv/bin/python3.13
    .venv/bin/python

Solution:
- Discard known false-positives such as `python-argcomplete*`.
- Call `health.warn()` instead of `assert()` in `python_exepath()`.

Co-authored-by: Justin M. Keyes <justinkz@gmail.com>
2025-09-18 20:07:14 -07:00
Samuel Huang e3f15d5424 vim-patch:9.1.1775: filetype: Mamba configuration files are not recognized #35829
Problem:  filetype: Mamba configuration files are not recognized
Solution: Detect .mambarc and mambarc as yaml filetype (Samuel Huang).

References:
- https://mamba.readthedocs.io/en/latest/user_guide/configuration.html

closes: vim/vim#18338

https://github.com/vim/vim/commit/21a21eafeccb7f40a7af80a8ff600b513e70d188
2025-09-18 19:41:27 -07:00
zeertzjq 67910bc99f vim-patch:e8b0e92: runtime(config): fix inconsistent group name
related: vim/vim#18292

https://github.com/vim/vim/commit/e8b0e926d02d148d0bc785db7a6184d3844ceaaf
2025-09-19 07:42:45 +08:00
zeertzjqandDamien Lejay f5e6c73e60 vim-patch:1e7a288: runtime(config): mark unportable += as an error
closes: vim/vim#18292

https://github.com/vim/vim/commit/1e7a288cd3e522d70ad857a0a4d0ea7797f73bae

Co-authored-by: Damien Lejay <damien@lejay.be>
2025-09-19 07:42:44 +08:00
zeertzjqandDoug Kearns ec3dded6dd vim-patch:6701480: runtime(filetype): Use s:StarSetf for all patterns ending in * (#35825)
Problem:  Some filetype autocmds with patterns ending in * do not skip
          filenames matching g:ignored_patterns.
Solution: Move these autocmds to the appropriate section and call
          s:StarSetf() to set the filetype.

- Affected filetypes: dosini, execline, foam, messages, nginx, tmux.
- Convert foam filetype patterns to use wildcard matching.

closes: vim/vim#17422

https://github.com/vim/vim/commit/6701480c43ce3addff01447b9590260a4fe227f7

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-09-19 06:55:00 +08:00
zeertzjqandChristian Brabandt 61d7d983d6 vim-patch:9.1.1761: 'ruler' is set in defaults.vim
Problem:  'ruler' is set in defaults.vim, but not enabled by default in
          non-compatible mode.
Solution: set the ruler option in non-compatible mode, remove it from
          defaults.vim, update tests

closes: vim/vim#18260

https://github.com/vim/vim/commit/ba36510920654a52d8b5908f5a61c6969bb31942

Co-authored-by: Christian Brabandt <cb@256bit.org>
2025-09-18 08:12:44 +08:00
zeertzjqandChristian Brabandt 8964ad45da vim-patch:9.1.1550: defaults: 'showcmd' is not enabled in non-compatible mode on Unix
Problem:  defaults: 'showcmd' is not enabled in non-compatible mode on
          Unix
Solution: Always enable 'showcmd' in non-compatible mode, drop it from
          defaults.vim.

'showcmd' was already always enabled in Vim compatible mode except for
UNIX environments. So let's just enable it always, there is no good
reason why UNIX platforms should be handled differently than other
platforms, especially since `defaults.vim` did enable this option
anyhow.

closes: vim/vim#17739

https://github.com/vim/vim/commit/3f9d2378bd70748fc59e02a402422269bd096492

Co-authored-by: Christian Brabandt <cb@256bit.org>
2025-09-18 08:12:31 +08:00
zeertzjqandHirohito Higashi 3c480fca57 vim-patch:5bf41e7: runtime(netrw): update regex to handle remote archives (#35822)
closes: vim/vim#18318

https://github.com/vim/vim/commit/5bf41e74185b903836948ef501375792f70acb12

Co-authored-by: Hirohito Higashi <h.east.727@gmail.com>
2025-09-18 08:01:33 +08:00