blob: b4fa5fb88dd61d0df7449b50db69e7c94697f2f5 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
#compdef kill
local list expl
if compset -P 1 -; then
_description expl signal
compadd "$expl[@]" $signals[1,-3]
else
local tags ret=1
_tags job process
while _tags; do
[[ "$tags" = *:job:* ]] && _jobs && ret=0
if [[ "$tags" = *:process:* ]]; then
list=("${(@M)${(f@)$(ps ${=compconfig[ps_listargs]:-$=compconfig[ps_args]} 2>/dev/null)}[2,-1]:#[ ]#${PREFIX}[0-9]#${SUFFIX}[ ]*}")
_description expl 'process ID'
compadd "$expl[@]" -ld list - \
${${${(f)"$(ps $=compconfig[ps_args] 2>/dev/null)"}[2,-1]## #}%% *} &&
ret=0
fi
(( ret )) || break
done
return ret
fi
|