zeertzjq and Doug 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
zeertzjq and Doug 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
zeertzjq and Jesse 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
zeertzjq and Doug 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
zeertzjq and Doug 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
zeertzjq and Doug 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
zeertzjq and Doug 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
zeertzjq and Doug 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
zeertzjq and Doug 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
zeertzjq and Konfekt
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
zeertzjq and tocariimaa
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
zeertzjq and Christian 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
zeertzjq and Evgeni 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
zeertzjq and Christian 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
zeertzjq and Christian 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
zeertzjq and Mohammad 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
zeertzjq and Mao-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
zeertzjq and Samuel 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
zeertzjq and Christian 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
zeertzjq and Konfekt
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
zeertzjq and Christian 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
zeertzjq and Konfekt
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
zeertzjq and Bruno 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
zeertzjq and Doug 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
zeertzjq and Christian 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
Gregory Anders
bb6f5c3b31
fix(tui): reset cursor style on exit ( #36261 )
...
Fix the cursor style terminfo capability (should be Se, not se). Also
include foot in the list of terminals that supports setting and
resetting cursor style (see
https://codeberg.org/dnkl/foot/issues/797#issuecomment-280305 )
2025-10-28 13:11:00 -05:00
Justin M. Keyes
3fb53abe2a
fix(health): attempt to concatenate table value #36369
2025-10-28 07:52:22 -07:00
zeertzjq
7088441de4
vim-patch:58ab343: runtime(netrw): fix misaligned comment after vim/vim#18611 ( #36362 )
...
related" vim/vim#18611
closes : vim/vim#18644
https://github.com/vim/vim/commit/58ab3438b7b4e1828efa2f86a5f37af5a7dbf259
2025-10-28 00:12:21 +00:00
zeertzjq and Aaron Jacobs
59a44caac6
vim-patch:eba5133: runtime(rust): Do not use rustfmt as 'formatprg' by default ( #36361 )
...
This reverts commit 4ac995bf9366c6624a0724d19b2226f4c95694b3.
This was added in vim/vim#16807 , with no explanation for why it was necessary beyond
"it's an example of an idea". It completely breaks `gq` for me—rustfmt doesn't
reflow comments so is not an appropriate tool here! Beyond that, formatting a
selection with rustfmt treats that selection as if it were an entire file,
throwing away any indentation.
For example, the commit causes `gq` to turn this:
```rust
pub fn foo() {
// blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah
}
```
into this:
```rust
pub fn foo() {
// blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah
}
```
which is totally wrong. In contrast, if I clear `formatprg` then `gq` does the
right thing again:
```rust
pub fn foo() {
// blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah
// blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah
// blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah
// blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah
// blah blah blah blah blah blah
}
```
related: vim/vim#16967
related: vim/vim#17055
closes : vim/vim#18640
https://github.com/vim/vim/commit/eba51337d4b8051b768164f3394d680742234ca8
Co-authored-by: Aaron Jacobs <jacobsa@google.com >
2025-10-27 23:45:14 +00:00
Justin M. Keyes
88b45614e9
fix(build): gen_help_html fails #36359
...
Problem:
fe4faaf81a added an invalid "redirect" item, which caused the
assert() to fail, which then caused the neovim/doc/ CI to fail:
https://github.com/neovim/doc/actions/runs/18830779387/job/53721736276 :
The previous commit e69beb9b1a tried to fix a different issue, which
has gone hidden because the "invalid tags" failure has been present on
the neovim/doc/ but was silently failing.
invalid tags: {
["g:netrw_keepdir"] = "usr_22.txt",
netrw = "vi_diff.txt",
...
plugins = "editorconfig"
}
Solution:
- Fix the invalid redirect.
- Improve the redirects assertion.
2025-10-27 15:36:59 -07:00
Eduardo Cruz Guedes
5e039c8e97
fix(tutor): remove hyperlinks, simplify non-interactive examples #36307
...
1. Every hyperlink-like element was replaced by `"$1"` (where $1 is the original string showed in the hyperlink);
2. Arrows `--->` were used in lines containing practice examples when no editing text is involved;
3. Context on interactivity was minimally adapted when strictly needed, not to disrupt the original tutor's intent;
4. Tests regarding the tutor file refactored to ensure the new syntax is not flagged as an error.
2025-10-27 10:24:00 -07:00
yilisharcs and Luuk van Baal
b9451dfd4c
fix(ui2): emit FileType event after setting default pager options #36315
...
Problem: Setting a filetype before configuring default options for ui2
buffers (pager, cmd, ...) prevents users from setting their own options.
Solution: Call nvim_set_option_value after defaults are set.
Closes #36314
Co-authored-by: Luuk van Baal <luukvbaal@gmail.com >
2025-10-27 10:19:16 -07:00
tao
a768d0a95b
fix(lsp): stop repeatedly resuming dead coroutine #35743
...
Problem:
Error extracting content-length causes all future coroutine resumes to
fail.
Solution:
Replace coroutine.wrap with coroutine.create in create_read_loop
so that we can check its status and catch any errors, allowing us to
stop the lsp client and avoid repeatedly resuming the dead coroutine.
2025-10-27 10:03:45 -07:00
zeertzjq and Doug Kearns
87ede4ab4f
vim-patch:842c778: runtime(vim): Update base syntax, improve :@ highlighting
...
- Highlight :@ as a normal Ex command rather than something special.
- Fix erroneous matching of the Ex command as a register variable.
closes : vim/vim#18624
https://github.com/vim/vim/commit/842c7788a5af903df6f8c0dffefaf1607c8c8ed8
Co-authored-by: Doug Kearns <dougkearns@gmail.com >
2025-10-27 16:52:49 +08:00
zeertzjq and Doug Kearns
b21a9d5b22
vim-patch:7dba04f: runtime(doc,vim): Update base syntax, match full :syntime command
...
- Use the optional tail command-name spec at :help :syntime.
- Match full :syntime command and highlight args.
https://github.com/vim/vim/commit/7dba04f15cc43562c67c4cd0db82c2165c1cdb40
Co-authored-by: Doug Kearns <dougkearns@gmail.com >
2025-10-27 16:52:09 +08:00
zeertzjq and Doug Kearns
e61880957f
vim-patch:da5b600: runtime(vim): Update base syntax, match :terminal command
...
Match the full :terminal command syntax.
closes : vim/vim#18367
https://github.com/vim/vim/commit/da5b6007fb75d4a0fb20583ffd298f032acdfc0d
Co-authored-by: Doug Kearns <dougkearns@gmail.com >
2025-10-27 16:51:19 +08:00
zeertzjq and Václav Kobera
070f4d3da0
vim-patch:9.1.1875: username parsing bug in netrw plugin ( #36348 )
...
Problem: username parsing bug in netrw plugin when using remote adding
feature
Solution: Allow any characters except for "@" (Václav Kobera), add a
test for the netrw plugin
closes : vim/vim#18611
https://github.com/vim/vim/commit/f17f78c557c4a437cd06bc7a69ed345176c157fd
Co-authored-by: Václav Kobera <vasekobera@gmail.com >
2025-10-27 03:20:34 +00:00
zeertzjq and James McCoy
3bbab42a8d
vim-patch:d535e58: runtime(debversions): Add resolute (26.04) as Ubuntu release name ( #36345 )
...
closes : vim/vim#18637
https://github.com/vim/vim/commit/d535e5852b931e607a40217f3bb5b08b781d0c8a
Co-authored-by: James McCoy <jamessan@jamessan.com >
2025-10-27 03:05:57 +00:00