diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | Completion/Base/Core/_description | 13 |
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 |