From 190c0b14719b4a4fd376654f10cabbb1c7716f3a Mon Sep 17 00:00:00 2001 From: Oliver Kiddle Date: Thu, 13 Nov 2003 17:45:35 +0000 Subject: merge 19019 back from 4.1 (with tweaks) --- Completion/Zsh/Command/_alias | 23 +++++++++++++++++++++++ Completion/Zsh/Command/_unhash | 13 +++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 Completion/Zsh/Command/_alias create mode 100644 Completion/Zsh/Command/_unhash (limited to 'Completion') diff --git a/Completion/Zsh/Command/_alias b/Completion/Zsh/Command/_alias new file mode 100644 index 000000000..be4aa60bf --- /dev/null +++ b/Completion/Zsh/Command/_alias @@ -0,0 +1,23 @@ +#compdef alias + +local curcontext="$curcontext" state line expl type suf +typeset -A opt_args + +_arguments -C -s -A "-*" -S \ + '(-r +r)-+g[list or define global aliases]' \ + '(-g +g)-+r[list or define regular aliases]' \ + '-+m[print aliases matching specified pattern]' \ + '-L[print each alias in the form of calls to alias]' \ + '*::alias definition:->defn' + +if [[ -n "$state" ]]; then + if compset -P 1 '*='; then + compset -q + _normal + else + compset -S '=*' || suf='=' + type=( ${opt_args[(i)[-+][gr]]#?} ) + (( $#type )) && type=( -s $type ) + _wanted alias expl 'alias definition' _aliases -S "$suf" "$type[@]" + fi +fi diff --git a/Completion/Zsh/Command/_unhash b/Completion/Zsh/Command/_unhash new file mode 100644 index 000000000..88484385e --- /dev/null +++ b/Completion/Zsh/Command/_unhash @@ -0,0 +1,13 @@ +#compdef unhash + +local expl state line curcontext="$curcontext" + +_arguments -C -s -S \ + '(-a -f *)-d[remove named directories]:*:named directory:->nameddir' \ + '(-d -f *)-a[remove aliases]:*:aliases:_aliases' \ + '(-d -a *)-f[remove functions]:*:functions:_functions' \ + '-m[treat arguments as patterns]' \ + '(-a -d -f -m)*:command: _command_names -e' && return 0 + +[[ "$state" = nameddir ]] && + _wanted named-directories expl 'named directory' compadd -k nameddirs -- cgit 1.4.1