about summary refs log tree commit diff
path: root/Doc
diff options
context:
space:
mode:
authorPeter Stephenson <pws@users.sourceforge.net>2012-04-22 18:10:42 +0000
committerPeter Stephenson <pws@users.sourceforge.net>2012-04-22 18:10:42 +0000
commit5eb53bf88d3153510f0a5304e921b46419fe5721 (patch)
tree944578b22dcca9b8a6d3e1b211dfd04386ced7a6 /Doc
parent19fe2dcc03d6f3c418e738061e46d0ae013c2550 (diff)
downloadzsh-5eb53bf88d3153510f0a5304e921b46419fe5721.tar.gz
zsh-5eb53bf88d3153510f0a5304e921b46419fe5721.tar.xz
zsh-5eb53bf88d3153510f0a5304e921b46419fe5721.zip
30431 with typo in _typeset fix:
add ${...:|...} and ${...:*...} operators, as documented
Diffstat (limited to 'Doc')
-rw-r--r--Doc/Zsh/expn.yo13
1 files changed, 13 insertions, 0 deletions
diff --git a/Doc/Zsh/expn.yo b/Doc/Zsh/expn.yo
index 25c44f331..dbbdc5073 100644
--- a/Doc/Zsh/expn.yo
+++ b/Doc/Zsh/expn.yo
@@ -604,6 +604,19 @@ If var(name) is an array
 the matching array elements are removed (use the `tt((M))' flag to
 remove the non-matched elements).
 )
+item(tt(${)var(name)tt(:|)var(arrayname)tt(}))(
+If var(arrayname) is the name (N.B., not contents) of an array
+variable, then any elements contained in var(arrayname) are removed
+from the substitution of var(name).  If the substitution is scalar,
+either because var(name) is a scalar variable or the expression is
+quoted, the elements of var(arrayname) are instead tested against the
+entire expression.
+)
+item(tt(${)var(name)tt(:*)var(arrayname)tt(}))(
+Similar to the preceding subsitution, but in the opposite sense,
+so that entries present in both the original substitution and as
+elements of var(arrayname) are retained and others removed.
+)
 xitem(tt(${)var(name)tt(:)var(offset)tt(}))
 item(tt(${)var(name)tt(:)var(offset)tt(:)var(length)tt(}))(
 This syntax gives effects similar to parameter subscripting