commit c556c6677bed0e37f5600cd4fbcc7e81eed4bff5
parent 4962c60c6fee44c51261daa03bf3362a1c8aa54e
Author: zeertzjq <zeertzjq@outlook.com>
Date: Sun, 20 Jul 2025 22:11:30 +0800
vim-patch:31ec664: runtime(doc): Update help syntax, match :autocmd options (#35008)
- Match :autocmd options and special buffer pattern.
- Normalise ellipsis (three dots) in Ex command argument lists.
closes: vim/vim#17793
https://github.com/vim/vim/commit/31ec66403d1976a67a95b3774c7c1b9062381e8d
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
Diffstat:
4 files changed, 15 insertions(+), 10 deletions(-)
diff --git a/runtime/doc/editing.txt b/runtime/doc/editing.txt
@@ -630,7 +630,7 @@ list of the current window.
buffer.
Also see |++opt| and |+cmd|.
-:[count]arge[dit][!] [++opt] [+cmd] {name} .. *:arge* *:argedit*
+:[count]arge[dit][!] [++opt] [+cmd] {name} ... *:arge* *:argedit*
Add {name}s to the argument list and edit it.
There is no check for duplicates, it is possible to
add a file to the argument list twice |:argded|.
@@ -645,7 +645,7 @@ list of the current window.
edited. No check for duplicates is done.
Also see |++opt| and |+cmd|.
-:[count]arga[dd] {name} .. *:arga* *:argadd* *E479*
+:[count]arga[dd] {name} ... *:arga* *:argadd* *E479*
:[count]arga[dd] *E1156*
Add the {name}s to the argument list. When {name} is
omitted add the current buffer name to the argument
@@ -676,7 +676,7 @@ list of the current window.
If your current file is a duplicate, your current file
will change to the original file index.
-:argd[elete] {pattern} .. *:argd* *:argdelete* *E480* *E610*
+:argd[elete] {pattern} ... *:argd* *:argdelete* *E480* *E610*
Delete files from the argument list that match the
{pattern}s. {pattern} is used like a file pattern,
see |file-pattern|. "%" can be used to delete the
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
@@ -3825,13 +3825,13 @@ SYNTAX ISKEYWORD SETTING *:syn-iskeyword*
DEFINING KEYWORDS *:syn-keyword*
-:sy[ntax] keyword {group-name} [{options}] {keyword} .. [{options}]
+:sy[ntax] keyword {group-name} [{options}] {keyword} ... [{options}]
This defines a number of keywords.
{group-name} Is a syntax group name such as "Comment".
[{options}] See |:syn-arguments| below.
- {keyword} .. Is a list of keywords which are part of this group.
+ {keyword} ... Is a list of keywords which are part of this group.
Example: >
:syntax keyword Type int long char
diff --git a/runtime/doc/vimeval.txt b/runtime/doc/vimeval.txt
@@ -2460,7 +2460,7 @@ text...
line and not see the "|" that separates the commands.
*:ec* *:echo*
-:ec[ho] {expr1} .. Echoes each {expr1}, with a space in between. The
+:ec[ho] {expr1} ... Echoes each {expr1}, with a space in between. The
first {expr1} starts on a new line.
Also see |:comment|.
Use "\n" to start a new line. Use "\r" to move the
@@ -2493,7 +2493,7 @@ text...
level.
*:echon*
-:echon {expr1} .. Echoes each {expr1}, without anything added. Also see
+:echon {expr1} ... Echoes each {expr1}, without anything added. Also see
|:comment|.
Uses the highlighting set by the `:echohl` command.
Cannot be followed by a comment.
@@ -2524,7 +2524,7 @@ text...
otherwise all following echo's will be highlighted.
*:echom* *:echomsg*
-:echom[sg] {expr1} .. Echo the expression(s) as a true message, saving the
+:echom[sg] {expr1} ... Echo the expression(s) as a true message, saving the
message in the |message-history|.
Spaces are placed between the arguments as with the
`:echo` command. But unprintable characters are
@@ -2539,8 +2539,9 @@ text...
:echomsg "It's a Zizzer Zazzer Zuzz, as you can plainly see."
< See |:echo-redraw| to avoid the message disappearing
when the screen is redrawn.
+
*:echoe* *:echoerr*
-:echoe[rr] {expr1} .. Echo the expression(s) as an error message, saving the
+:echoe[rr] {expr1} ... Echo the expression(s) as an error message, saving the
message in the |message-history|. When used in a
script or function the line number will be added.
Spaces are placed between the arguments as with the
@@ -2572,7 +2573,7 @@ text...
*:exe* *:execute*
-:exe[cute] {expr1} .. Executes the string that results from the evaluation
+:exe[cute] {expr1} ... Executes the string that results from the evaluation
of {expr1} as an Ex command.
Multiple arguments are concatenated, with a space in
between. To avoid the extra space use the ".."
diff --git a/runtime/syntax/help.vim b/runtime/syntax/help.vim
@@ -108,6 +108,7 @@ syn match helpSpecial "^\t[>enf{}^L:=lbghNEpti+cC/(uUwWkmMjJ)*#P]N\s"ms=s+2,me=
syn match helpSpecial "{[-_a-zA-Z0-9'"*+/:%#=[\]<>.,]\+}"
syn match helpSpecial "\s\[[-a-z^A-Z0-9_]\{2,}]"ms=s+1
syn match helpSpecial "<[-a-zA-Z0-9_]\+>"
+syn match helpSpecial "<buffer=\w\+>"
syn match helpSpecial "<[SCM]-.>"
syn match helpNormal "<---*>"
syn match helpSpecial "\[range]"
@@ -120,6 +121,9 @@ syn match helpSpecial "\[+num]"
syn match helpSpecial "\[-num]"
syn match helpSpecial "\[+cmd]"
syn match helpSpecial "\[++opt]"
+syn match helpSpecial "\[++once]"
+syn match helpSpecial "\[++nested]"
+syn match helpSpecial "\[++t]"
syn match helpSpecial "\[arg]"
syn match helpSpecial "\[arguments]"
syn match helpSpecial "\[ident]"