diff options
Diffstat (limited to 'Completion/Builtins/_pids')
-rw-r--r-- | Completion/Builtins/_pids | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/Completion/Builtins/_pids b/Completion/Builtins/_pids index 0ffda900b..f96c11e2d 100644 --- a/Completion/Builtins/_pids +++ b/Completion/Builtins/_pids @@ -3,7 +3,9 @@ # If given the `-m <pattern>' option, this tries to complete only pids # of processes whose command line match the `<pattern>'. -local list expl match +local list expl match desc + +_tags any processes || return 1 if [[ "$1" = -m ]]; then match="${2}*" @@ -12,7 +14,12 @@ fi _description expl 'process ID' -list=("${(@Mr:COLUMNS-1:)${(f@)$(ps ${=compconfig[ps_listargs]:-$=compconfig[ps_args]} 2>/dev/null)}[2,-1]:#[ ]#${PREFIX}[0-9]#${SUFFIX}[ ]*${~match}}") +if _style processes description yes; then + list=("${(@Mr:COLUMNS-1:)${(f@)$(ps ${=compconfig[ps_listargs]:-$=compconfig[ps_args]} 2>/dev/null)}[2,-1]:#[ ]#${PREFIX}[0-9]#${SUFFIX}[ ]*${~match}}") + desc=(-ld list) +else + desc=() +fi -compadd "$expl[@]" "$@" -ld list - \ +compadd "$expl[@]" "$@" "$desc[@]" - \ ${${${(M)${(f)"$(ps $=compconfig[ps_args] 2>/dev/null)"}[2,-1]:#*${~match}}## #}%% *} |