From 9a8a7cf3acdbe3bdc8efdc5b91836a472b894bf9 Mon Sep 17 00:00:00 2001 From: Clint Adams Date: Thu, 19 Sep 2002 15:22:17 +0000 Subject: 17252: Sven: Completion/Unix/Type/_path_files: fix for use of (z) parameter modifier; the first word in the parameter is parsed like the first word on a command line, treating parens specially --- Completion/Unix/Type/_path_files | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'Completion') diff --git a/Completion/Unix/Type/_path_files b/Completion/Unix/Type/_path_files index 5e36a4c2a..664b0d85f 100644 --- a/Completion/Unix/Type/_path_files +++ b/Completion/Unix/Type/_path_files @@ -23,9 +23,11 @@ sopt="-${(@j::M)${(@)tmp1#-}#?}" (( $tmp1[(I)-[/g]*] )) && haspats=yes (( $tmp1[(I)-g*] )) && gopt=yes if (( $tmp1[(I)-/] )); then - pats=( '*(-/)' ${(z)${(M)tmp1:#-g*}#-g} ) + pats="${(@)${(@M)tmp1:#-g*}#-g}" + pats=( '*(-/)' ${${(z):-x $pats}[2,-1]} ) else - pats=( "${(@z)${(@M)tmp1:#-g*}#-g}" ) + pats="${(@)${(@M)tmp1:#-g*}#-g}" + pats=( ${${(z):-x $pats}[2,-1]} ) fi pats=( "${(@)pats:# #}" ) @@ -332,7 +334,7 @@ for prepath in "$prepaths[@]"; do else compfiles -p$cfopt tmp1 accex "$skipped" "$_matcher $matcher[2]" '' fake "$pats[@]" fi - tmp1=( $~tmp1 ) + tmp1=( $~tmp1 ) 2> /dev/null if [[ -n "$PREFIX$SUFFIX" ]]; then # See which of them match what's on the line. -- cgit 1.4.1