summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--Completion/Base/Core/_description13
2 files changed, 14 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 24be33402..6d656aa7a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2009-07-30 Peter Stephenson <p.w.stephenson@ntlworld.com>
+
+ * users/14267: Completion/Base/Core/_description: files added
+ for the ignore-line style need to be quoted to be treated
+ literally.
+
2009-07-24 Peter Stephenson <p.w.stephenson@ntlworld.com>
* 27188: Doc/Zsh/builtins.yo, Src/builtin.c, Test/B04read.ztst,
@@ -12034,5 +12040,5 @@
*****************************************************
* This is used by the shell to define $ZSH_PATCHLEVEL
-* $Revision: 1.4750 $
+* $Revision: 1.4751 $
*****************************************************
diff --git a/Completion/Base/Core/_description b/Completion/Base/Core/_description
index 593369a0a..3d993271c 100644
--- a/Completion/Base/Core/_description
+++ b/Completion/Base/Core/_description
@@ -49,13 +49,14 @@ if [[ -z "$_comp_no_ignore" ]]; then
zstyle -s ":completion:${curcontext}:$1" ignore-line hidden &&
case "$hidden" in
- true|yes|on|1) _comp_ignore=( "$_comp_ignore[@]" "$words[@]" );;
- current) _comp_ignore=( "$_comp_ignore[@]" "$words[CURRENT]" );;
- current-shown) [[ "$compstate[old_list]" = *shown* ]] &&
- _comp_ignore=( "$_comp_ignore[@]" "$words[CURRENT]" );;
+ true|yes|on|1) _comp_ignore=( "$_comp_ignore[@]" ${(q)"${words[@]}"} );;
+ current) _comp_ignore=( "$_comp_ignore[@]" "${(q)words[CURRENT]}" );;
+ current-shown)
+ [[ "$compstate[old_list]" = *shown* ]] &&
+ _comp_ignore=( "$_comp_ignore[@]" "${(q)words[CURRENT]}" );;
other) _comp_ignore=( "$_comp_ignore[@]"
- "${(@)words[1,CURRENT-1]}"
- "${(@)words[CURRENT+1,-1]}" );;
+ "${(@q)words[1,CURRENT-1]}"
+ "${(@q)words[CURRENT+1,-1]}" );;
esac
# Ensure the ignore option is first so we can override it