From 36b2667e6f7734597f987ee1e6189a6f93200b03 Mon Sep 17 00:00:00 2001 From: Tanaka Akira Date: Tue, 7 Dec 1999 16:25:53 +0000 Subject: zsh-workers/8932 --- Completion/Core/_description | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) (limited to 'Completion/Core/_description') diff --git a/Completion/Core/_description b/Completion/Core/_description index 0d28284ed..9f315f9b1 100644 --- a/Completion/Core/_description +++ b/Completion/Core/_description @@ -1,8 +1,9 @@ #autoload -local gropt format gname +local name gropt format gname hidden hide gropt=(-J) +hide=() if [[ "$1" = -[VJ] ]]; then gropt=("$1") @@ -16,20 +17,30 @@ _lastdescr=( "$_lastdescr[@]" "$3" ) _setup "$1" -_style -s descriptions format format +name="$2" + +_style -s "$1" format format || _style -s descriptions format format +_style -s "$1" hidden hidden +if [[ "$hidden" = (all|yes|true|1|on) ]]; then + [[ "$hidden" = all ]] && format='' + hide=(-n) +fi _style -s "$1" group-name gname && [[ -z "$gname" ]] && gname="$1" +shift 2 +[[ -n "$format" ]] && compfmt format "$format" "d:$1" "${(@)argv[2,-1]}" + if [[ -n "$gname" ]]; then if [[ -n "$format" ]]; then - eval "$2=($gropt ${(q)gname} -X ${(q)format//\\%d/$3})" + eval "${name}=($hide $gropt ${(q)gname} -X \"${format}\")" else - eval "$2=($gropt ${(q)gname})" + eval "${name}=($hide $gropt ${(q)gname})" fi else if [[ -n "$format" ]]; then - eval "$2=(-J -default- -X ${(q)format//\\%d/$3})" + eval "${name}=($hide -J -default- -X \"${format}\")" else - eval "$2=(-J -default-)" + eval "${name}=($hide -J -default-)" fi fi -- cgit 1.4.1