about summary refs log tree commit diff
path: root/Completion/Builtins/_unhash
blob: b99c00ad37580bd7a197a9cdb6c6260b81784173 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#compdef unhash

local expl state line curcontext="$curcontext"

_arguments -C -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]' \
  '*:commands:_command_names -e'  && return 0

if [[ "$state" = nameddir ]]; then
  _wanted nameddir expl 'named directory' compadd - ${(@k)nameddirs}
fi