alf171
d464dffd2f
fix: make :restart respect 'confirm' option #36531
...
When 'confirm' is set and there are unsaved buffers,
:restart now prompts before quitting, matching the behavior of :quit.
2025-11-16 11:08:38 -08:00
Evgeni Chasnovski
e4e6605943
fix(pack): relax minimal Git version to be 2.0 #36573
...
Problem: Current requirement is Git>=2.36 as `--also-filter-submodules`
flag for `git clone` was introduced there. This is problematic since
default Git version on Ubuntu 22.04 is 2.34.
Solution: Relax minimal Git version to be (at least) 2.0 by selectively
applying necessary flags based on the current Git version.
As 2.0.0 was released in 2014-05-28 (almost the same age as Neovim
project itself), it is reasonable to drop any mention and checks on
minimal version altogether.
2025-11-16 10:27:19 -08:00
Christian Clason
e6cdb7d481
build(deps): bump uncrustify to 0.82.0
2025-11-16 12:38:54 +01:00
zeertzjq
c924d68021
test(api/server_requests_spec): fix flaky test (again) ( #36570 )
...
Use a fast API, as a deferred API request may be aborted by EOF.
2025-11-16 09:47:16 +00:00
Justin M. Keyes
39e27d64ad
Merge #36322 docs
2025-11-15 22:11:57 -08:00
Justin M. Keyes
f01c212e37
docs: rework main help page
2025-11-16 00:55:28 -05:00
Justin M. Keyes
3f16037e45
docs: getpos, getregion, lsp
2025-11-15 22:47:38 -05:00
zeertzjq and Konfekt
30634f63e2
vim-patch:fb8ebf1: runtime(compiler): Remove version check in rustc compiler ( #36568 )
...
closes : vim/vim#18347
https://github.com/vim/vim/commit/fb8ebf1ee016cf8e942757f9efb9f706a0dbc08e
Co-authored-by: Konfekt <Konfekt@users.noreply.github.com >
2025-11-15 23:46:08 +00:00
zeertzjq and Christian Brabandt
8d72d1ceb4
vim-patch:9.1.1916: WinEnter autocommand confuses Vim when closing tabpage ( #36567 )
...
Problem: WinEnter autocommand may confuse Vim when closing tabpage
(hokorobi)
Solution: Verify that curwin did not change in close_others()
fixes : vim/vim#18722
closes : vim/vim#18733
https://github.com/vim/vim/commit/61b73b89a3114b4bf62ffbedc8d0d3aa321bdcd5
Co-authored-by: Christian Brabandt <cb@256bit.org >
2025-11-15 23:18:39 +00:00
Chip Senkbeil
c123b7245c
refactor(path)!: support RFC3986 in path_with_url() #36564
...
Problem:
Nvim does not recognize URI scheme with numeric characters. While rare, there
are URIs that contain numbers (e.g. [ed2k://](https://en.wikipedia.org/wiki/Ed2k_URI_scheme ))
and characters like `+` (e.g. `svn+ssh`). I use it in
[distant.nvim](https://github.com/chipsenkbeil/distant.nvim ) to support
multiple, distinct connections using `distant+1234://` as the scheme.
Otherwise, if you open a file with the same name & path on two different
machines from the same Nvim instance, their buffer names will conflict
when just using `distant://`.
Solution:
Adds full support for detecting URI scheme per
[RFC3986](https://www.rfc-editor.org/rfc/rfc3986#section-3.1 )
2025-11-15 13:40:01 -08:00
zeertzjq and Konfekt
b3c099b1dd
vim-patch:d0dd561: runtime(compiler): add biome linter ( #36562 )
...
closes : vim/vim#18685
https://github.com/vim/vim/commit/d0dd5614dbfedbb270690561b6f72b0a5d5246fb
Co-authored-by: Konfekt <Konfekt@users.noreply.github.com >
2025-11-15 11:21:19 +00:00
zeertzjq and Doug Kearns
dc682bcbcf
vim-patch:9.1.1915: :breaklist accepts unprocessed arguments. ( #36561 )
...
Problem: :breaklist accepts unprocessed arguments.
Solution: Remove EX_EXTRA flag from the Ex command definition.
(Doug Kearns)
The command should emit an "E488: Trailing characters" error rather than
silently accept arguments.
closes : vim/vim#18746
https://github.com/vim/vim/commit/de7049ede1a31c73bfac70b78a2613d690eb1594
Co-authored-by: Doug Kearns <dougkearns@gmail.com >
2025-11-15 19:09:19 +08:00
zeertzjq
e0ac78f707
Merge pull request #36560 from zeertzjq/vim-fe24972
...
vim-patch: Vim syntax updates
2025-11-15 19:03:51 +08:00
zeertzjq and Doug Kearns
d1c5c11ee0
vim-patch:f46616f: runtime(vim): Update base syntax and generator, match :cd commands
...
Match :cd commands explicitly.
fixes : vim/vim#17964
closes : vim/vim#18736
Reported by Maxim Kim.
https://github.com/vim/vim/commit/f46616f0c4b7254cfe2153c845f33c347ef67446
Co-authored-by: Doug Kearns <dougkearns@gmail.com >
2025-11-15 18:28:00 +08:00
zeertzjq and Doug Kearns
2fdf097fa5
vim-patch:4f19d27: runtime(vim): Update base syntax, match :prompt command args
...
closes : vim/vim#18732
https://github.com/vim/vim/commit/4f19d2768a2251d03acd3a91f93cb3eb39595803
Co-authored-by: Doug Kearns <dougkearns@gmail.com >
2025-11-15 18:26:56 +08:00
zeertzjq and Doug Kearns
2c9b102a9f
vim-patch:fe24972: runtime(vim): Update base syntax, refine object constructor matching
...
Match "object" and "<" ... ">" separately with dedicated syntax groups
to allow for highlighting distinct from that generally used for types.
closes : vim/vim#18721
https://github.com/vim/vim/commit/fe249721390cae1ad26f8637bdfe4716bb5bb241
Co-authored-by: Doug Kearns <dougkearns@gmail.com >
2025-11-15 18:26:14 +08:00
Christian Clason
776d6442bd
build(deps): bump luajit to 5c8cee3df
2025-11-15 10:38:49 +01:00
zeertzjq and Christian Brabandt
d017f3c9a0
vim-patch:9.1.1914: runtime(netrw): wipes unnamed buffers ( #36551 )
...
Problem: runtime(netrw): LocalBrowseCheck() wipes unnamed buffers when
g:netrw_fastbrowse=0 (Carlos Falgueras García)
Solution: Check that bufname() is not empty
fixes : vim/vim#18740
closes : vim/vim#18741
https://github.com/vim/vim/commit/384685fadeb19760709d0909dfa00f9544fed10d
Co-authored-by: Christian Brabandt <cb@256bit.org >
2025-11-13 23:59:35 +00:00
zeertzjq and Christian Brabandt
16e9c21d8d
vim-patch:9.1.1913: Error message with :unlet! and non-existing dictionary item ( #36549 )
...
Problem: Error message with :unlet! and non-existing dictionary item
(Coacher)
Solution: Set GLV_QUIET when using unlet with bang attribute
fixes : vim/vim#18516
closes : vim/vim#18734
https://github.com/vim/vim/commit/b8119920eb8dbfed39af88f66d85c65ea4fd8ecf
Co-authored-by: Christian Brabandt <cb@256bit.org >
2025-11-13 23:32:42 +00:00
zeertzjq and Doug Kearns
1a5f0ba201
vim-patch:eb732ed: runtime(doc): Wrap overlength lines in uganda.txt ( #36550 )
...
Wrap overlength lines and normalise URL indentation.
closes : vim/vim#18737
https://github.com/vim/vim/commit/eb732ed26de4c0c402aeb3bd3ae7c768d7a627f8
Co-authored-by: Doug Kearns <dougkearns@gmail.com >
2025-11-13 23:28:34 +00:00
Christian Clason
31d5730995
build(deps): bump utf8proc to v2.11.1
2025-11-13 22:07:15 +01:00
Justin M. Keyes
72110da567
Merge #36468 from echasnovski/pack-consistency
...
`vim.pack` consistency improvements: full hashes, state->revision, buffer URI name
2025-11-13 02:00:05 -05:00
Jan Edmund Lazo
d2517acdc5
fix(vim-patch.sh): 'vim-patch:<hash>' token for 'non-patch' commits #36534
...
Vim may tag runtime-only commits without the 2-liner version.c change.
Inspect both tag and commit message to "guess" if it the patch
should go to version.c or not.
2025-11-12 20:46:22 -08:00
Toby She
4dd9137215
fix(lsp): reuse_win prioritizes windows/tabs currently displayed #36486
...
Problem: reuse_win will always jump to the first window containing the
target buffer rather even if the buffer is displayed in the current
window/tab
Solution: check to see if the buffer is already displayed in the
current window or any window of the current buffer
2025-11-12 20:43:25 -08:00
Andrey Starodubtsev
4143bcbd37
fix(tutor): escape tutor filename #36539
...
Since NeoVim is installed in `Program Files` directory by default, path
to tutor filename must be quoted before passing to `:drop`.
2025-11-12 19:27:24 -08:00
zeertzjq and Callum Andrew
756043760b
vim-patch:9.1.1909: filetype: .mom files recognized as nroff files ( #36543 )
...
Problem: filetype: .mom files recognized as nroff files
Solution: Detect *.mom files as groff filetype instead
(Callum Andrew)
Reference:
- mom macros are written specifically for groff:
https://www.schaffter.ca/mom/
closes : vim/vim#18718
https://github.com/vim/vim/commit/23e12c0b7ec02cc374f111fd9dfaa84734dbb7f5
Co-authored-by: Callum Andrew <dev@candrew.net >
2025-11-13 00:22:11 +00:00
Maria Solano
5582005ac7
fix(docs): add --clean arg to LSP bug report ( #36530 )
2025-11-12 19:07:17 -05:00
zeertzjq and Vadim Yanitskiy
fbcdbd458f
vim-patch:e9d296e: runtime(erlang): recognize -if/-elif as erlangPreCondit in syntax script ( #36542 )
...
The -if(Condition)/-elif(Condition) are compiler macros that evaluate
the following lines only if Condition evaluates to true. This patch
enables syntax highlighting for these macros.
https://www.erlang.org/doc/system/macros.html#conditional-compilation
closes : vim/vim#18729
https://github.com/vim/vim/commit/e9d296e52a6d0cb13d71b36ca60bfb470ce56868
Co-authored-by: Vadim Yanitskiy <fixeria@osmocom.org >
2025-11-12 23:45:50 +00:00
zeertzjq and Doug Kearns
1571fde23e
vim-patch:9ab6a22: runtime(doc): Improve :help :ls description formatting ( #36541 )
...
Quote the special buffer names for consistency (see :help bufname()) and
so that they're not incorrectly highlighted as optional command
arguments.
closes : vim/vim#18730
https://github.com/vim/vim/commit/9ab6a22c900aab5fa1859f27d3394d50be04a412
Co-authored-by: Doug Kearns <dougkearns@gmail.com >
2025-11-12 23:04:06 +00:00
Yochem van Rosmalen
94ae48ff29
docs(undotree): rename help tag #36497
...
Problem: confusing that there is the tag `undo-tree` (the Vim
implementation) and `undotree` (the Lua plugin for visualization).
Solution: rename tag to undotree-plugin. Mention the plugin in the docs of
|undotree|.
2025-11-12 09:00:27 -08:00
Christian Clason
4110e6730a
build(deps): bump luajit to eba91fceb
2025-11-12 16:08:15 +01:00
bfredl
d84e786112
fix(tests): use correct signature for unpacker_teardown()
2025-11-12 14:19:06 +01:00
Christian Clason
ce8842998b
build(deps): bump luajit to 5c647754a
2025-11-12 14:19:06 +01:00
Christian Clason
587a933cea
build(deps): bump luajit to eba91fceb
2025-11-12 14:19:06 +01:00
zeertzjq
8bce9342d1
fix(vim-patch.sh): don't treat 1-file runtime-only patch as N/A ( #36525 )
...
If the patch in question does not change src/version.c, `git log -1`
instead shows the previous patch that changes src/version.c, which
causes 1-file runtime-only patches to be considered N/A.
Check that the remaining file is src/version.c to fix this problem.
Also use `git diff-tree` instead of `git log -1` for version.c.
2025-11-12 14:45:20 +08:00
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
zeertzjq and Neil 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
zeertzjq and botantony
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
Jan Edmund Lazo
7fe02126f9
feat(vim-patch.sh): add n flag to list possible N/A patches ( #36431 )
...
Scan all unmerged Vim commits to determine which commits are N/A
for Neovim.
vim_na_regexp.txt contains the file patterns to filter out N/A files
in a Vim commit.
vim_na_files.txt contains "absolute filepath" of N/A files.
It relies on vim_na_regexp.txt to reduce file size.
If version.c remains and it has the expected 2-liner update,
then it's considered N/A.
https://github.com/neovim/neovim/discussions/36326
2025-11-11 03:09:44 +00: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
zeertzjq and tocariimaa
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
zeertzjq and Doug 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
zeertzjq and Doug 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
zeertzjq
cf347110c1
Merge pull request #36504 from zeertzjq/vim-c8eeda9
...
vim-patch: doc header updates
2025-11-10 11:46:45 +08:00