Commit Graph
9745 Commits
Author SHA1 Message Date
Andrey Starodubtsev b15b22fc73 fix(trust): :trust command on Windows #36509
`:trust` command calculated SHA-256 on file content reading it as a
text. While it doesn't matter on Unices, on Windows hash was calculated
incorectly. SHA-256 for buffer content was calculated fine though.

After this fix hashes in `%LOCALAPPDATA%/nvim-data/trust` are the same
as in output of `sha256sum -t`.
2025-11-11 21:57:09 -08:00
Maria Solano 653871da1b fix(lsp): check nvim.lsp.enable before doautoall #36518 2025-11-11 21:04:31 -08:00
Maria Solano 1bc85d29c1 fix(lsp): check for non-nil buffer state on reset (#36519) 2025-11-11 17:47:33 -08:00
zeertzjqandNeil Lambert 3606b74d24 vim-patch:f85951f: runtime(css): improve cssBoxProp matches (#36528)
closes: vim/vim#18717

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

Co-authored-by: Neil Lambert <nlambert@pm.me>
2025-11-12 08:23:35 +08:00
8cf7a0c4de vim-patch:b74ec15: runtime(sqlcomplete): only set 'omnifunc' if dbext plugin was loaded (#36527)
fixes: vim/vim#18716

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

Co-authored-by: Christian Brabandt <cb@256bit.org>
Co-authored-by: gcanat <72149218+gcanat@users.noreply.github.com>
2025-11-12 00:21:31 +00:00
zeertzjqandbotantony 97cb0d5571 vim-patch:9.1.1906: filetype: not all Ruby files are recognized (#36526)
Problem:  filetype: not all Ruby files are recognized
Solution: Detect *.rbi and Brewfile as ruby filetype
          (botantony).

- `rbi` is a file extension used by Sorbet, typechecker for Ruby:
   https://sorbet.org/docs/rbi

- `Brewfile` is a bundler file for Homebrew package manager:
   https://docs.brew.sh/Brew-Bundle-and-Brewfile

closes: vim/vim#18697

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

Co-authored-by: botantony <antonsm21@gmail.com>
2025-11-12 07:38:55 +08:00
Maria Solano 2822c38f2e fix(lsp): correct iteration through attached buffers (#36517) 2025-11-10 19:54:01 -08:00
Olivia Kinnear 7c9b865bdd feat(lsp): deprecate vim.lsp.stop_client (#36459)
* feat(lsp): deprecate `vim.lsp.stop_client`

* fix(tests): fix nil variable in diagnostic_spec.lua
2025-11-10 18:27:13 -08:00
zeertzjqandtocariimaa 637c9c4f5f vim-patch:d3bef6c: runtime(sml): Fix number regex in syntax script (#36513)
closes: vim/vim#18690

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

Co-authored-by: tocariimaa <tocariimaa@pissmail.com>
2025-11-11 09:28:18 +08:00
zeertzjqandDoug Kearns 1eb12b896e vim-patch:e1e3474: runtime(vim): Update base syntax, fix :augroup error matching (#36512)
Only terminate the :augroup END argument at whitespace, comments and
trailing bars.

closes: vim/vim#18711

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

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-11-11 09:22:00 +08:00
zeertzjqandDoug Kearns 70d1397766 vim-patch:acf928a: runtime(doc): Improve windows.txt formatting (#36511)
- Wrap some overlength lines
- Highlight the example at :help WinScrolled-event

closes: vim/vim#18713

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

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-11-11 00:32:06 +00:00
Maria Solano 70ea589d79 fix(lsp): deprecate vim.lsp.get_buffers_by_client_id (#36449) 2025-11-10 06:58:56 -08:00
Yochem van Rosmalen 9bdb011a50 refactor(spellfile): config() interface, docs #36481
Problem:
- Exposing the raw config as table is a pattern not seen anywhere else
  in the Nvim codebase.
- Old spellfile.vim docs still available, no new documentation

Solution:
- Exposing a `config()` function that both acts as "getter" and "setter"
  is a much more common idiom (e.g. vim.lsp, vim.diagnostic).
- Add new documentation and link old docs to |spellfile.lua| instead of
  |spellfile.vim|.
2025-11-09 21:51:39 -08:00
zeertzjqandDoug Kearns 2b49a0e773 vim-patch:5427465: runtime(doc): Clean up file header whitespace
- :retab! line 1 and line 4 (main page heading).
- Use four columns whitespace before "by [Author]" in the user manual
  heading to match the reference manual formatting.
- double space headings.

closes: vim/vim#18648

https://github.com/vim/vim/commit/542746521ff8d111f33c3c8ff298ba58966c9acc

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-11-10 11:13:56 +08:00
zeertzjqandDoug Kearns 95f5bbd4a8 vim-patch:c8eeda9: runtime(doc): Improve header formatting
- Normalise header formatting and highlight all bylines.
- Remove broken email address from if_sniff.txt.

closes: vim/vim#18601

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

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-11-10 11:13:52 +08:00
Riley Bruins c2c5a0297e fix(lsp): don't overlay insertion-style inline completions (#36477)
* feat(lua): `Range:is_empty()` to check vim.range emptiness

* fix(lsp): don't overlay insertion-style inline completions

**Problem:** Some servers commonly respond with an empty inline
completion range which acts as a position where text should be inserted.
However, the inline completion module assumes that all responses with a
range are deletions + insertions that thus require an `overlay` display
style. This causes an incorrect preview, because the virtual text should
have the `inline` display style (to reflect that this is purely an
insertion).

**Solution:** Only use `overlay` for non-empty replacement ranges.
2025-11-09 17:49:25 -08:00
zeertzjqandJesse Portnoy c6dad6e9df vim-patch:a795aab: runtime(spec): Add support for more tags and distributions (#36502)
- specMacroIdentifier: support macros starting with '?'; the most common
  example is `%{?dist}`
- specPreAmble: added some missing tags from:
  https://rpm.org/docs/4.19.x/manual/spec.html
- Added support for: `fedora`, `rhel`, `rocky`, `rhl`, `centos`, `el\d`
  and `fc\d`, see https://docs.fedoraproject.org/en-US/packaging-guidelines/DistTag

closes: vim/vim#18703

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

Co-authored-by: Jesse Portnoy <jesse.portnoy@perforce.com>
2025-11-10 08:44:50 +08:00
zeertzjqandDoug Kearns 4466c950cb vim-patch:8869800: runtime(vim): Update base syntax, match :*do command arg
Match the Ex command arg to all :*do commands.

closes: vim/vim#18700

https://github.com/vim/vim/commit/8869800f704ea0568d4741b960fc547f6853255f

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-11-10 08:00:35 +08:00
zeertzjqandDoug Kearns 24ecd0c48d vim-patch:59f0ea5: runtime(vim): Update base syntax, match Vim9 object type constructor
fixes: vim/vim#18677.
closes: vim/vim#18691

Reported by Aliaksei Budavei.

https://github.com/vim/vim/commit/59f0ea5b3eb444748c83340f1dcebb182db28b40

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-11-10 08:00:12 +08:00
zeertzjqandDoug Kearns 82910ddbfb vim-patch:433d2ab: runtime(vim): Update base syntax, match Vim9 lambda arg to :defer
Support added in commit 21ef3c6e5972bbe8ab61195f98ccb85048b78985.

See: vim/vim#18643
closes: vim/vim#18645

https://github.com/vim/vim/commit/433d2ab2066c0590e43f8396cd830a4ff62e8769

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-11-10 08:00:12 +08:00
Riley Bruins a0678a5849 fix(lsp): ignore inline completions after leaving insert mode (#36476)
**Problem:** When quickly entering and leaving insert mode, sometimes
inline completion requests are returned and handled in normal mode. This
causes an extmark to be set, which will not get cleared until the next
time entering & leaving insert mode.

**Solution:** Return early in the inline completion handler if we have
left insert mode.
2025-11-09 14:28:02 -08:00
zeertzjqandDoug Kearns 19a3687f69 vim-patch:185cec2: runtime(doc): Rewrite some overlength lines
closes: vim/vim#18695

https://github.com/vim/vim/commit/185cec2b0983dfe0b94ea7b24e390dc00c65686d

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-11-09 08:01:04 +08:00
zeertzjqandDoug Kearns 39a2cbbd58 vim-patch:a3063f2: runtime(doc): Wrap some overlength lines in the user manual
closes: vim/vim#18696

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

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-11-09 07:55:15 +08:00
zeertzjqandDoug Kearns 7ef7f82c5c vim-patch:c28b73d: runtime(doc): Improve :help synconcealed() description
closes: vim/vim#18698

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

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-11-09 07:49:48 +08:00
luukvbaal 8d6963a6a0 fix(ui): cmdline_show is not fired after clearing the screen (#36451)
Problem:  Resize events during startup may clear an active external
          cmdline, which is then not redrawn.
          UI2 VimResized autocommand does not work.
          UI2 message appearance may be altered by inherited window
          options. The message separator uses the wrong fillchar.

Solution: Unset cmdline_was_last_redrawn when clearing the screen, such
          that cmdline_show is re-emitted.
          Ensure set_pos function is called without arguments.
          Ensure such options are unset. Use 'fillchars'->msgsep.
2025-11-08 11:38:56 +01:00
zeertzjqandKonfekt af5ac171bd vim-patch:84baba3: runtime(compiler): do not override &l:makeprg on :compiler! (#36470)
closes: vim/vim#18686

https://github.com/vim/vim/commit/84baba329a1c4984415cfe8359e962c38efac860

Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
2025-11-07 00:22:50 +00:00
Riley Bruins f2bfde9140 fix(treesitter): reset next_col when performing intermediate highlights
The iterator is meant to be fully reset in this code path, but only the
`next_row` state was being reset. This would only cause highlight
artifacts for very brief periods of time, though.
2025-11-06 09:27:21 +00:00
zeertzjqandtocariimaa 16c8152229 vim-patch:7dfdc7f: runtime(sml): add filetype plugin, move options from indent to ftplugin (#36460)
closes: vim/vim#18680

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

Co-authored-by: tocariimaa <tocariimaa@pissmail.com>
2025-11-06 00:09:34 +00:00
Maria Solano 0472119fe6 fix(lsp): don't immediately force shutdown when using a timeout (#36455) 2025-11-05 16:39:02 -05:00
zeertzjqandChristian Brabandt 17bcf86cab vim-patch:461dd9a: runtime(vim): 'iskeyword' setting not correctly restored (#36453)
fixes: vim/vim#18673

https://github.com/vim/vim/commit/461dd9aca68e45a437a559296e21066b6ca87be3

Co-authored-by: Christian Brabandt <cb@256bit.org>
2025-11-05 08:07:54 +08:00
Folke Lemaitre 20a392fe38 fix(lsp): fix window to set cursor for inline completion (#36444) 2025-11-04 13:51:37 -05:00
zeertzjqandEvgeni Chasnovski 003b429a86 vim-patch:9.1.1892: Not possible to know once Vim is done with sourcing vimrc (#36429)
Problem:   A plugin does not know when startup scripts were already
           triggered. This is useful to determine if a function is
           called inside vimrc or after (like when sourcing 'plugin/'
           files).
Solution:  Add the v:vim_did_init variable (Evgeni Chasnovski)

closes: vim/vim#18668

https://github.com/vim/vim/commit/294bce21ee837aab209a1008d0efc3e305cf188f

Nvim has two more steps between sourcing startup scripts and loading
plugins. Set this variable after these two steps.

Co-authored-by: Evgeni Chasnovski <evgeni.chasnovski@gmail.com>
2025-11-02 18:07:33 +08:00
Maria Solano 02cd564896 feat(lsp): support auto-force escalation in client stop (#36378) 2025-11-01 19:12:29 -07:00
zeertzjqandChristian Brabandt d847548a1c vim-patch:9.1.1893: ICCF charity will dissolve (#36427)
Problem:  ICCF charity will dissolve
Solution: Update references to Kuwasha

Since the ICCF[1] will be dissolved and handing over to the Kuwasha charity
to continue supporting the Kibaale Children Center in Uganda, update the
uganda.txt help file.

[1]: https://groups.google.com/g/vim_announce/c/pUNbNXBLbKw/m/-zFUd4JjAQAJ

fixes: vim/vim#18584
closes: vim/vim#18667

https://github.com/vim/vim/commit/0405665638052ca1180bdb2855237cd1868526a3

Co-authored-by: Christian Brabandt <cb@256bit.org>
2025-11-02 08:29:00 +08:00
zeertzjqandChristian Brabandt a4988bb3cd vim-patch:213109a: runtime(doc): clarify W11 warning and possible options (#36426)
fixes: vim/vim#18589

https://github.com/vim/vim/commit/213109a999c8c854c1af3bf57540e56afa23c20c

Co-authored-by: Christian Brabandt <cb@256bit.org>
2025-11-01 23:11:20 +00:00
zeertzjqandMohammad Reza Karimi f0571a1855 vim-patch:fe71c56: runtime(netrw): NetrwChgPerm for files not in cwd
Problem:  Changing permissions fail when using `gp` if the file under
          the cursor is not in the current working directory.
Solution: Use the already available `a:curdir` argument and prepend it
          to the `<cfile>`, so that the path of the file is correct.

This commit also refactors some leftover `netrw#ErrorMsg` to
`netrw#msg#Notify` (the main refactoring was done in
f5e3b5c04f85b0f69cd2aae81e4938cfb191a790).

closes: vim/vim#18674

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

Co-authored-by: Mohammad Reza Karimi <m.r.karimi.j@gmail.com>
2025-11-02 07:03:44 +08:00
zeertzjqandMao-Yining c38365fd8e vim-patch:28f7582: runtime(log): syntax file update
closes: vim/vim#18675

https://github.com/vim/vim/commit/28f7582c16e7692cc56dbb7f240649086b5066d8

Co-authored-by: Mao-Yining <mao.yining@outlook.com>
2025-11-02 07:03:44 +08:00
varsidry b92b95e2c2 vim-patch:9.1.1891: g<End> does not move to last non-blank in visual mode (#36354)
Problem:  In visual mode, g<End> does not move to the last non-blank
          character when the end of a line is on the same line as the
          cursor (after v9.0.1753)
Solution: Move the cursor back by one position if it lands after the
          line (varsidry)

fixes: vim/vim#18657
closes: vim/vim#18658

https://github.com/vim/vim/commit/adc85151f3c6a6cea4bb8c8da3465429fc120445
2025-11-01 01:37:12 +00:00
zeertzjqandSamuel Huang 1fddd74da7 vim-patch:9.1.1889: filetype: not all AppleScript files are recognized (#36411)
Problem:  filetype: not all AppleScript files are recognized
Solution: Detect *.applescript files as applescript filetype
          (Samuel Huang)

Reference:
https://en.wikipedia.org/wiki/AppleScript

closes: vim/vim#18672

https://github.com/vim/vim/commit/69dd5906fd9723774715ec37ad3b44652938f655

Co-authored-by: Samuel Huang <hi@sgh.ng>
2025-11-01 06:27:11 +08:00
bfredl e1ffa8d33b feat(build): HAVE_UNIBILIUM
compile time features are hot again.

Note: this changes the &term value for builtin definition from
'builtin_xterm' to just 'xterm'. It's an xterm regardless of we use an
external definition or an internal. Prior to this commit the vast
majority of POSIX users will have used external terminfo, so plugins and
scripts are only going to have checked for &term == 'xterm' or 'tmux' or
whatever.
The status of external loading is still available in "nvim -V3" output.
2025-10-31 08:39:32 +01:00
zeertzjqandChristian Brabandt 89030f3ac4 vim-patch:8f551a7: runtime: regenerate helptags, update last-change header in tombi compiler
https://github.com/vim/vim/commit/8f551a70ad8f5cc2e3844f2418ef97330d3333bd

Co-authored-by: Christian Brabandt <cb@256bit.org>
2025-10-30 06:47:52 +08:00
zeertzjqandKonfekt 34ddb8b1b8 vim-patch:14e7203: runtime(compiler): Fix escaping in Windows shell command for tombi
As observed by Doug Kearns

related: vim/vim#18590
closes: vim/vim#18661

https://github.com/vim/vim/commit/14e7203713567761c37be3bf182e5669e11041e1

Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
2025-10-30 06:47:52 +08:00
Justin M. Keyes 6dd6c5b523 docs: rename l10n help files #36377 2025-10-28 20:15:16 -07:00
zeertzjq ae82636276 docs: regenerate lua.txt (#36376) 2025-10-29 10:17:30 +08:00
Jonny Kong e2cb675705 fix(filetype): move fallback logic to vim.filetype.match() #30141
Problem:
Previously, the fallback logic to ".conf" was located outside of
`vim.filetype.match()` and directly within the AutoCmd definition. As a
result, `vim.filetype.match()` would return nil instead of ".conf" for
fallback cases (#30100).

Solution:
Added a boolean return value to `vim.filetype.match()` that indicates
whether the match was the result of fallback. If true, the filetype will
be set using `setf FALLBACK <ft>` instead of `setf <ft>`.
2025-10-28 18:45:50 -07:00
zeertzjqandChristian Brabandt 30d1d26c14 vim-patch:469f870: runtime(compiler): Fix invalid expression in tombi compiler after d659fafcc
related: vim/vim#18590

https://github.com/vim/vim/commit/469f870c5e06cb4c1f4b78aa1a7cc354059631d0

Co-authored-by: Christian Brabandt <cb@256bit.org>
2025-10-29 08:18:07 +08:00
zeertzjqandKonfekt ea57dea91f vim-patch:d659faf: runtime(compiler): add tombi compiler to lint TOML files
closes: vim/vim#18590

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

Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
2025-10-29 08:17:50 +08:00
zeertzjqandBruno Belanyi 3c14646896 vim-patch:9.1.1886: filetype: Android aconfig files are not recognized (#36374)
Problem:  filetype: Android aconfig files are not recognized
Solution: Detect *.aconfig files as pbtxt filetype (Bruno Belanyi)

Reference:
https://source.android.com/docs/setup/build/feature-flagging/declare-flag

closes: vim/vim#18656

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

Co-authored-by: Bruno Belanyi <bruno@belanyi.fr>
2025-10-29 00:16:15 +00:00
zeertzjqandDoug Kearns fdcc4c6b66 vim-patch:9ad7067: runtime(doc): Highlight [expr] arg in :help :return description
closes: vim/vim#18654

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

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-10-29 08:05:28 +08:00
zeertzjqandChristian Brabandt ee60bf6112 vim-patch:6be154f: runtime(doc): revert wrong 'incsearch' description
This reverts commit 3fc00c05fb464d3e806df53bdc1743faa337ddca.

related: vim/vim#18639

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

Co-authored-by: Christian Brabandt <cb@256bit.org>
2025-10-29 08:05:28 +08:00