summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--Doc/Zsh/compsys.yo10
2 files changed, 8 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index 6fb11c15b..87bbf9763 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2026-06-23 dana <dana@dana.is>
+ * 54818: Doc/Zsh/compsys.yo: clarify _arguments {...} action
+ behaviour
+
* 54823: Doc/Zsh/expn.yo: clarify ::= behaviour
2026-06-23 Jun-ichi Takimoto <takimoto-j@kba.biglobe.ne.jp>
diff --git a/Doc/Zsh/compsys.yo b/Doc/Zsh/compsys.yo
index e08ca30ec..a9b965998 100644
--- a/Doc/Zsh/compsys.yo
+++ b/Doc/Zsh/compsys.yo
@@ -3985,9 +3985,9 @@ to prevent tt(_arguments) from altering the global environment.
)
item(tt({)var(eval-string)tt(}))(
vindex(expl, use of)
-A string in braces is evaluated as shell code to generate matches. If the
-var(eval-string) itself does not begin with an opening parenthesis or
-brace it is split into separate words before execution.
+A string in braces is evaluated as shell code to generate matches.
+This is similar to the `tt(SP())var(word) var(...)' action described
+below, but isn't limited to a single command.
)
item(tt(= )var(action))(
If the var(action) starts with `tt(= )' (an equals sign followed by a
@@ -4005,8 +4005,8 @@ causes tt(_arguments) on a restricted range; it is necessary to use this
trick to insert an appropriate command name into the range for the second
call to tt(_arguments) to be able to parse the line.
)
-xitem(var(tt(SP())word...))
-item(var(word...))(
+xitem(tt(SP())var(word) var(...))
+item(var(word) var(...))(
This covers all forms other than those above. If the var(action)
starts with a space, the remaining list of words will be invoked unchanged.