summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--Doc/Zsh/expn.yo19
2 files changed, 24 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index cb7f07687..cb073f93d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2015-05-12 Jun-ichi Takimoto <takimoto-j@kba.biglobe.ne.jp>
+
+ * 35086: Doc/Zsh/expn.yo: reapply 35067 which has been
+ mistakenly reverted by 35075
+
2015-05-12 Daniel Hahler <git@thequod.de>
* 35060 + 35072: Completion/Unix/Command/_git: completion: git: split
diff --git a/Doc/Zsh/expn.yo b/Doc/Zsh/expn.yo
index 1089ddf40..6bb0b4ada 100644
--- a/Doc/Zsh/expn.yo
+++ b/Doc/Zsh/expn.yo
@@ -1014,6 +1014,25 @@ form of single quoting is used that only quotes the string if needed to
protect special characters. Typically this form gives the most readable
output.
)
+item(tt(b))(
+Quote with backslashes only characters that are special to pattern
+matching. This is useful when the contents of the variable are to be
+tested using tt(GLOB_SUBST), including the tt(${~)var(...)tt(}) switch.
+
+Quoting using one of the tt(q) family of flags does not work
+for this purpose since quotes are not stripped from non-pattern
+characters by tt(GLOB_SUBST). In other words,
+
+example(foo='a\ b'
+[[ 'a b' = ${~foo} ]])
+
+fails, whereas
+
+example(foo='a\*b'
+[[ 'a*b' = ${~foo} ]])
+
+succeeds. The tt(b) flag ensures the correct quoting.
+)
item(tt(Q))(
Remove one level of quotes from the resulting words.
)