0
0
mirror of https://github.com/vim/vim.git synced 2025-11-13 22:54:27 -05:00
Commit Graph

5912 Commits

Author SHA1 Message Date
Christian Brabandt
f11d9e4d28 runtime(doc): regenerate help tags file after eba51337
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-27 17:53:44 +00:00
Aaron Jacobs
eba51337d4 runtime(rust): Do not use rustfmt as 'formatprg' by default
This reverts commit 4ac995bf93.

This was added in #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: #16967
related: #17055
closes: #18640

Signed-off-by: Aaron Jacobs <jacobsa@google.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-27 17:46:11 +00:00
Riley Bruins
9fff99c3c2 patch 9.1.1878: filetype: Soy files are not recognized
Problem:  filetype: Soy files are not recognized
Solution: Detect *.soy files as soy filetype,
          include a soy filetype plugin (Riley Bruins)

closes: #18640

Signed-off-by: Riley Bruins <ribru17@hotmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-26 20:00:03 +00:00
Christian Brabandt
6a8ab8f5d4 runtime(doc): update the :split help tags.
closes: #18640

Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-26 19:57:46 +00:00
Doug Kearns
c8eeda9b15 runtime(doc): Improve header formatting
- Normalise header formatting and highlight all bylines.
- Remove broken email address from if_sniff.txt.

closes: #18601

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-26 19:29:28 +00:00
Christian Brabandt
3fc00c05fb runtime(doc): mention that 'incsearch' ignores addresses and offset
closes: #18639

Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-26 18:53:00 +00:00
Doug Kearns
8e600aded2 runtime(doc): Normalise heredoc end marker label at :help const
Match the name used at :help :let-heredoc, {endmarker}.

closes: #18638

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-26 18:44:19 +00:00
Girish Palya
ef5bf58d8c patch 9.1.1876: pre-inserted text not exposed in cmdcomplete_info()
Problem:  pre-inserted text not exposed in complete_info()
Solution: Add the pre-inserted text to the complete_info() Vim script
          function (Girish Palya)

closes: #18571

Signed-off-by: Girish Palya <girishji@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
Feat: expose preinserted text in complete_info()

Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-26 18:37:57 +00:00
Václav Kobera
f17f78c557 patch 9.1.1875: username parsing bug in netrw plugin
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: #18611

Signed-off-by: Václav Kobera <vasekobera@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-26 18:21:04 +00:00
Doug Kearns
842c7788a5 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: #18624

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-26 13:50:05 +00:00
Foxe Chen
00e8452191 patch 9.1.1873: Clipboard provider feature broke clipboard support
Problem:  Clipboard provider feature broke clipboard support
          (Yee Cheng Chin)
Solution: Revert clipboard changes (Foxe Chen).

fixes: #18600
closes: #18633

Signed-off-by: Foxe Chen <chen.foxe@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-26 13:46:05 +00:00
zeertzjq
97b6e8b424 patch 9.1.1872: Cmdline history not updated when mapping <Up> and <CR>
Problem:  Cmdline history not updated when mapping both <Up> and <CR>.
Solution: Consider the command typed when in Cmdline mode and there is
          no pending input (zeertzjq).

Although the existing behavior technically does match documentation, the
"completely come from mappings" part is a bit ambiguous, because one may
argue that the command doesn't completely come from mappings as long as
the user has typed a key in Cmdline mode.  I'm not entirely sure if this
change will cause problems, but it seems unlikely.

fixes: #2771
related: neovim/neovim#36256
closes: #18607

Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-26 13:29:09 +00:00
Maxim Kim
4eef8ba498 runtime(colors): Add PmenuBorder/PmenuShadow
closes: #18635

Signed-off-by: Maxim Kim <habamax@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-26 13:24:53 +00:00
James McCoy
d535e5852b runtime(debversions): Add resolute (26.04) as Ubuntu release name
closes: #18637

Signed-off-by: James McCoy <jamessan@jamessan.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-26 13:24:04 +00:00
Yiyang Wu
7193cab6c8 runtime(make): Prevent makeTargetinDefine matching extra line
This fixes a bug introduced in 2a33b499a3:
When makeTargetinDefine ends with makeIdent, makeSpecTarget or
makeComment, the following line is also matched as makeTargetinDefine.

So, add keepend to prevent that just as makeTarget does.

related: #18403
closes: #18570

Signed-off-by: Yiyang Wu <xgreenlandforwyy@gmail.com>
Signed-off-by: Roland Hieber <rohieb+vim-iR0jGdkV@rohieb.name>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-25 14:19:07 +00:00
Doug Kearns
418ff5185e runtime(doc): Improve highlighting of the +feature-list table
Fix false positives for headings and command specification counts.

closes: #18603

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-25 14:15:15 +00:00
Anton Parkhomenko
bbf4a10fe4 runtime(unison): update syntax from upstream repository
closes: #18623

Signed-off-by: Anton Parkhomenko <mailbox@chuwy.me>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-25 03:39:08 +00:00
Doug Kearns
7bb56b49ef runtime(doc): Fix option markup at :help 'pumborder'
Remove the redundant helpHyperTextJump markup around options.  Options
are never wrapped as jumps.

See :help help-writing (TAGS section)

closes: #18619

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-25 03:37:07 +00:00
Phạm Bình An
9978bb77c6 patch 9.1.1870: :Tutor may not work as expected
Problem:  :Tutor may not work as expected
Solution: set buftype=nowrite instead of nofile
          (Phạm Bình An)

closes: #18613

Signed-off-by: Phạm Bình An <phambinhanctb2004@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-25 03:33:12 +00:00
Fabian Eberts
0ef50d9d8d runtime(tutor): Update German translation for the tutor
closes: #18625

Signed-off-by: Fabian Eberts <64541491+feberts@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-24 15:48:45 +00:00
Hirohito Higashi
5b5290ec02 patch 9.1.1865: tests: do not notice lines containing only a tab
Problem:  tests: test_codestyle does not notice lines containing only a
          tab
Solution: Fix the whitespace issue in eval.txt, update test_codestyle to
          notice such issues (Hirohito Higashi)

closes: #18595

Signed-off-by: Hirohito Higashi <h.east.727@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-18 13:57:53 +00:00
Hirohito Higashi
1b565eee6d Fix incorrect spelling of Vim script and Vim9 script
closes: #18591

Signed-off-by: Hirohito Higashi <h.east.727@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-17 17:50:29 +00:00
Maxim Kim
30ff1e3b02 runtime(vimcomplete): do not complete 'shellcmd' on WSL and Windows
- shellcmd completion is VERY slow on both WSL and Windows, e.g. `term
  something` or `!something` might take ~10 seconds to show first
  results. Do not complete it there.

- revert previous change to not complete on whitespace, do not complete
  on *empty* lines instead.

closes: #18568

Signed-off-by: Maxim Kim <habamax@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-16 19:17:02 +00:00
Foxe Chen
f22cedd75f patch 9.1.1863: Cannot test for working "+" register
Problem:  Cannot test for working "+" register
Solution: Add a few more feature tests (Foxe Chen)

closes: #18541

Signed-off-by: Foxe Chen <chen.foxe@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-16 19:11:37 +00:00
Maxim Kim
a30cf0b3ac runtime(odin): fix indent for mis-identified case statements
related: habamax/vim-odin#11
closes: #18578

Signed-off-by: Maxim Kim <habamax@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-16 18:53:19 +00:00
Foxe Chen
761a484e12 patch 9.1.1860: clipboard register "+" enabled with cplipboard provider feature
Problem:  clipboard register "+" enabled with cplipboard provider feature
          (BenYip, after v9.1.1857)
Solution: Don't make clipboard provider enable plus register on UNIX
          (Foxe Chen)

fixes: #18580
closes: #18580

Signed-off-by: Foxe Chen <chen.foxe@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-16 18:41:02 +00:00
Foxe Chen
67860efe5b patch 9.1.1857: Missing clipboard provider support
Problem:  Missing clipboard provider support
          (lilydjwg)
Solution: Add clipboard provider feature
          (Foxe Chen)

fixes: #12419
closes: #17998

Signed-off-by: Foxe Chen <chen.foxe@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-14 19:35:17 +00:00
Girish Palya
1a09f11f5d patch 9.1.1856: cannot style popup window (border, shadow, etc)
Problem:  cannot style popup window (border, shadow, etc)
Solution: Extend the 'completepopup' option with additional properties
          (Girish Palya)

This patch extends the 'completepopup' option with additional settings
to allow more configuration of info popup window.

New values:
```
- close           "on" (default) or "off"
- resize          "on" (default) or "off"
- borderchars     specify eight characters (separated by semicolons) to
                  draw the popup border: top, right, bottom, left,
                  topleft, topright, botright, botleft.
- borderhighlight highlight group for the popup border characters
- shadow          pum shadow
```

closes: #18487

Signed-off-by: Girish Palya <girishji@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-14 18:48:36 +00:00
Doug Kearns
c95e143819 runtime(doc): Miscellaneous documentation fixes
- Use full option name for 'clipboard' at :help :put.
- Minor rewordings, typo fixes, and formatting fixes.

related: #18453
closes: #18572

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-14 18:24:54 +00:00
Doug Kearns
97da1ec670 runtime(doc): Fix example highlighting at :help prop_list()
closes: #18573

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-13 21:07:22 +00:00
Doug Kearns
83eb1da19e runtime(doc): Normalise formatting of builtin function descriptions
- Column align tags
- Move tags to the same line as the function signature
- Move descriptions to the line below the function signature
- Add missing hyperlinks to builtins in the description text

closes: #18478

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-13 19:17:14 +00:00
Doug Kearns
a37fd72749 runtime(doc): Remove accidental option name highlighting from :help channel.txt
closes: #18564

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-13 19:08:45 +00:00
Maxim Kim
5b058c76b4 runtime(vimcomplete): do not complete on empty line
closes: #18561

Signed-off-by: Maxim Kim <habamax@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-13 18:58:17 +00:00
zeertzjq
6ab45471d4 runtime(doc): fix inconsistent alignment
closes: #18562

Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-13 18:55:19 +00:00
Martin Schwan
5fe4faa711 runtime(bitbake): fix multiline Python function parameter syntax
Fix syntax highlighting for def-style Python functions, with their
parameters spanning multiple lines. E.g. the following should match as
valid Python code in Bitbake recipes:

    def myFunction(one, two, \
                   three, four):
        pass

For this to work, use the prefix modifier "\_" before the wildcard ".",
to also match newline characters.

closes: #18565

Signed-off-by: Martin Schwan <m.schwan@phytec.de>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-13 18:50:20 +00:00
Marshall Ward
64c8105867 runtime(rst): Preserve indentation of directives
This patch preserves indentation in comments.  It work by removing the
explicit 3-space indentation and replaces with with an expression which
uses the current value with a minimum of three spaces.

Discussed in the mailing list:

    https://groups.google.com/g/vim_dev/c/rn8ZLDrCbYU

Thanks to Friedrich Romstedt for reporting and Christian Brabandt for
investigating the issue.

closes: #18566

Signed-off-by: Marshall Ward <marshall.ward@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-13 18:40:16 +00:00
Doug Kearns
5ffb23c967 runtime(rst): Update b:undo_ftplugin variable
The value of this variable is evaluated when the 'filetype' option is
changed and should be a command string that will undo any configuration
changes that the plugin has made.

See :help undo_indent for details

related: #18566

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Marshall Ward <marshall.ward@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-13 18:36:38 +00:00
Marshall Ward
46d86979a9 runtime(rst): Style update
Minor style and whitespace changes to the reST syntax file, to sync with
the development branch.

related: #18566

Signed-off-by: Marshall Ward <marshall.ward@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-13 18:33:56 +00:00
Kirk Roemer
a70f346706 runtime(rst): Enable spell checking for more syntax constructs
Enable spell checking for more recognised constructs:

* comments
* footnotes
* citations
* directives
* inline markup (*text*, **text**, ...)

related: #18566

Signed-off-by: Kirk Roemer <91125534+kirk-roemer@users.noreply.github.com>
Signed-off-by: Marshall Ward <marshall.ward@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-13 18:32:57 +00:00
Marshall Ward
d7fb4cd2f8 runtime(rst): Inline literal escape support
Escape character support was disabled for inline literals, which are
handled separately from standard inline highlights, in that escape
characters are unsupported.

related: #18566

Signed-off-by: Marshall Ward <marshall.ward@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-13 18:31:49 +00:00
Kirk Roemer
5485827c5f runtime(rst): Recognise numeric footnotes [1] correctly
The markup for footonotes [1] and citations [2] are almost identical.
The difference is that footnotes allow numeric values but citations
allow every valid reference name except numeric values.

The regex for matching citations currently only checks for valid
reference names but does not exclude number-only labels, thus also
matches numeric footnotes.  To match such footnotes, e.g. ``[1]`` define
the syntax rule for footnotes after the syntax rule for citations so it
gets higher precedence and matches first.

[1] https://docutils.sourceforge.io/docs/ref/rst/restructuredtext.html#footnotes
[2] https://docutils.sourceforge.io/docs/ref/rst/restructuredtext.html#citations

related: #18566

Signed-off-by: Kirk Roemer <91125534+kirk-roemer@users.noreply.github.com>
Signed-off-by: Marshall Ward <marshall.ward@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-13 18:30:48 +00:00
Antony Lee
4e9f16dd1e runtime(rst): Correctly end nested comments
Previously, a comment in a directive block would incorrectly mark
all subsequent lines in the directive block as comment, because the
syn-region did not check the leading indent.

related: #18566

Signed-off-by: Antony Lee <anntzer.lee@gmail.com>
Signed-off-by: Marshall Ward <marshall.ward@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-13 18:28:58 +00:00
Minjie Xu
47949b4b46 runtime(rst): Fix highlights nested in directive body
The leading two dots of a RST directive gets matched by
rstExplicitMarkup group first, and then the directive name and directive
body will be matched by the groups contained in rstDirectives cluster in
order.

The rstExDirective group in rstDiretives matches any RST directives
other than footnote, citation and hyperlink target, therefore admonition
and code block will be matched by rstExDirective. This fix has
rstExDirective contain rstExplicitMarkup so as to enable recursive RST
directives match.

The interpreted texts enclosed in quotes are not highlighted within a
RST directive body, because the rstCruft cluster contains a non-existing
rstInterpretedText group.It should be renamed to
rstInterpretedTextOrHyperlinkReference which is defined in a
DefineInlineMarkup function call.

related: #18566

Signed-off-by: Minjie Xu <madjxatw@gmail.com>
Signed-off-by: Marshall Ward <marshall.ward@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-13 18:27:49 +00:00
Dragan Simic
310082f3cf runtime(rst): Add support for rst_minlines
Following the approach used in other syntax definitions, add support for
defining the "syntax sync minlines=..." values for rst files in the
users' ~/.vimrc files, to allow the users to adjust that value in case
syntax highlighting stops working for some of the files they edit.

related: #18566

Signed-off-by: Dragan Simic <dsimic@manjaro.org>
Signed-off-by: Marshall Ward <marshall.ward@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-13 18:26:54 +00:00
Kirk Roemer
0940465866 runtime(rst): Fix doctest block syntax
A doctest block usually spans multiple lines, e.g.

>>> print('this is a Doctest block')
this is a Doctest block

Remove ``oneline`` argument to syntax region as this requirement is not
met.  Consequently, also remove ``display`` as the prerequisite (the
syntax region is on a single line) is no longer met.

----

Recognise '>>>' inside doctest blocks

Recognise subsequent '>>>' prompts in doctest blocks, e.g.

>>> print('this is a Doctest block')
this is a Doctest block
>>> print('this is a second Doctest block')
this is a second Doctest block
A doctest block usually spans multiple lines, e.g.

>>> print('this is a Doctest block')
this is a Doctest block

related: #18566

Signed-off-by: Kirk Roemer <91125534+kirk-roemer@users.noreply.github.com>
Signed-off-by: Marshall Ward <marshall.ward@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-13 18:24:09 +00:00
Doug Kearns
c58f91c035 runtime(doc): Whitespace updates
Use double sentence spacing and wrap lines at 'textwidth'.  Code
examples and tables were not wrapped unless this had already been done
locally.

closes: #18453

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-12 15:31:37 +00:00
Yiyang Wu
2a33b499a3 runtime(make): syntax highlighting update for makeDefine
Previously contents in makeDefine are nearly highlighted as Define, so
comments and targets shares the same color as Define, making it hard to
distinguish if someone write large block of targets-recipes as defined
function.

Such scenario is common in building data analysis pipeline. Recipes are
reused and targets may have multiple variables, and a single % implicit
rule is not enough.

closes: #18403

Signed-off-by: Yiyang Wu <xgreenlandforwyy@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-12 15:20:28 +00:00
Doug Kearns
7e9ccdd3f2 runtime(vim): Update syntax, add missing commands to generator exclusion list
closes: #18548

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-12 15:15:00 +00:00
Girish Palya
da2dabc6f7 patch 9.1.1850: completion: not triggered after i_Ctrl-W/i_Ctrl-U
Problem:  completion: not triggered after i_Ctrl-W/i_Ctrl-U
Solution: Trigger autocomplete when entering Insert mode
          (Girish Palya).

fixes: #18535
closes: #18543

Signed-off-by: Girish Palya <girishji@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-12 14:37:02 +00:00
bfoersterling
fcf4c435af patch 9.1.1849: CTRL-F and CTRL-B don't work in more prompt
Problem:  CTRL-F and CTRL-B don't work in more prompt
Solution: Make CTRL-F and CTRL-B scroll by a screen down/up
          (Bjoern Foersterling)

closes: #18545

Signed-off-by: bfoersterling <bjoern.foersterling@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-10-12 14:26:34 +00:00