Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: Odd expansion behavior
On Thu, 03 Jul 2014 10:12:01 +0100
Peter Stephenson <p.stephenson@xxxxxxxxxxx> wrote:
> That's the difference between a scalar and an array assignment.
The doc is somewhat scattered. This might help a bit.
diff --git a/Doc/Zsh/grammar.yo b/Doc/Zsh/grammar.yo
index 719f06a..77f0098 100644
--- a/Doc/Zsh/grammar.yo
+++ b/Doc/Zsh/grammar.yo
@@ -19,7 +19,11 @@ cindex(simple commands)
cindex(commands, simple)
A em(simple command) is a sequence of optional parameter
assignments followed by blank-separated words,
-with optional redirections interspersed.
+with optional redirections interspersed. For a description
+of assignment, see the beginning of
+ifnzman(noderef(Parameters))\
+ifzman(zmanref(zshparam)).
+
The first word is the command to be executed, and the remaining
words, if any, are arguments to the command.
If a command name is given, the parameter assignments modify
diff --git a/Doc/Zsh/params.yo b/Doc/Zsh/params.yo
index 5bccdc2..dbac511 100644
--- a/Doc/Zsh/params.yo
+++ b/Doc/Zsh/params.yo
@@ -21,14 +21,20 @@ indent(var(name)tt(=)var(value))
If the integer attribute, tt(-i), is set for var(name), the var(value)
is subject to arithmetic evaluation. Furthermore, by replacing `tt(=)'
-with `tt(+=)', a parameter can be added or appended to. See
+with `tt(+=)', a parameter can be added or appended to.
+
+In scalar assignment, var(value) is expanded as a single string, in
+which the elements of arrays are joined together; filename expansion is
+not performed unless the option tt(GLOB_ASSIGN) is set. See
noderef(Array Parameters) for additional forms of assignment.
To refer to the value of a parameter, write `tt($)var(name)' or
`tt(${)var(name)tt(})'. See
ifzman(em(Parameter Expansion) in zmanref(zshexpn))\
ifnzman(noderef(Parameter Expansion))
-for complete details.
+for complete details. This section also explains the effect
+of the difference between scalar and array assignment on parameter
+expansion.
In the parameter lists that follow, the mark `<S>' indicates that the
parameter is special.
pws
Messages sorted by:
Reverse Date,
Date,
Thread,
Author