Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

PATCH: pws-19: document minor syntactic innovation



"Bart Schaefer" wrote:
> On May 23,  5:15pm, Peter Stephenson wrote:
> }   ${${${${(f)"$(typeset)"}:#*local *\=*}%%\=*}##* }

I should note that things like ${"foo"} only work by accident: you'll find,
for example, that ${"foo"%bar} doesn't work.  That would require swallowing
nulled out quotes at another point in paramsubst(), which I hinted at
before.  I didn't do this because I didn't see a use for it, but maybe it's
more consistent that way?

> What's the right way to document this change, including odd stuff like
> the above?

Here's a possible chunk for 3.1.5-pws-20.

> Should the FAQ recommend using this form in some circumstances because
> of the (@) change in 3.1.5?

Well, the new nested substitution section (3.22) is really about getting a
parameter evaluated as a parameter name and I'm not sure it's a good idea
to put in a lot of stuff about other flags and their uses, which could get
quite involved.  Maybe it needs a separate question, but I'm not sure I can
even remember the full effect of the changes.

--- Doc/Zsh/expn.yo.qt	Mon May 10 10:18:42 1999
+++ Doc/Zsh/expn.yo	Tue Jun  1 11:41:35 1999
@@ -502,6 +502,15 @@
 deleted.  The form with tt($LPAR())...tt(RPAR()) is often useful in
 combination with the flags described next; see the examples below.
 
+Note that double quotes may appear around nested quotations, in which case
+only the part inside is treated as quoted; for example, tt(${(f)"$(foo)"})
+quotes the result of tt($(foo)), but the flag `tt((f))' (see below) is
+applied using the rules for unquoted substitutions.  Note further that
+quotes are themselves nested in this context; for example, in
+tt("${(@f)"$(foo)"}"), there are two sets of quotes, one surrounding the
+whole expression, the other (redundant) surrounding the tt($(foo)) as
+before.
+
 subsect(Parameter Expansion Flags)
 cindex(parameter expansion flags)
 cindex(flags, parameter expansion)

-- 
Peter Stephenson <pws@xxxxxxxxxxxxxxxxx>       Tel: +39 050 844536
WWW:  http://www.ifh.de/~pws/
Dipartimento di Fisica, Via Buonarroti 2, 56127 Pisa, Italy



Messages sorted by: Reverse Date, Date, Thread, Author