mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-09-29 06:51:03 +02:00
32472: new pgrep completion options
This commit is contained in:
parent
ba44ba6e6f
commit
de68b6bbf1
2 changed files with 38 additions and 2 deletions
|
@ -1,3 +1,7 @@
|
||||||
|
2014-03-13 Peter Stephenson <p.w.stephenson@ntlworld.com>
|
||||||
|
|
||||||
|
* Kosuke Asami: 32472: Completion/Unix/Command/_pgrep: new options.
|
||||||
|
|
||||||
2014-03-13 Peter Stephenson <p.stephenson@samsung.com>
|
2014-03-13 Peter Stephenson <p.stephenson@samsung.com>
|
||||||
|
|
||||||
* Jun T: 32480: Src/Zle/zle_vi.c: fix crash in vi mode when too
|
* Jun T: 32480: Src/Zle/zle_vi.c: fix crash in vi mode when too
|
||||||
|
|
|
@ -5,18 +5,29 @@ typeset -A opt_args
|
||||||
typeset -a arguments
|
typeset -a arguments
|
||||||
|
|
||||||
arguments=('-P[parent process id]:parent process id:->ppid'
|
arguments=('-P[parent process id]:parent process id:->ppid'
|
||||||
|
'-F[match only in process in pidfile]:files:_files'
|
||||||
'-g[match only in process group ids]:group:->pgid'
|
'-g[match only in process group ids]:group:->pgid'
|
||||||
'-G[match only real group id]:group:_groups'
|
'-G[match only real group id]:group:_groups'
|
||||||
|
'-j[match only in processes inside jails]'
|
||||||
|
'-M[extract the name list from the specified core]:files:_files'
|
||||||
|
'-N[extract the name list from the specified system]:files:_files'
|
||||||
'-s[match only session id]:session id:->sid'
|
'-s[match only session id]:session id:->sid'
|
||||||
'-t[match only controlled by terminal]:terminal device:->tty'
|
'-t[match only controlled by terminal]:terminal device:->tty'
|
||||||
|
'-T[match only in processes specified routing table in rtable]'
|
||||||
'-u[match only effective user id]:user:_users'
|
'-u[match only effective user id]:user:_users'
|
||||||
'-U[match only real user id]:user:_users'
|
'-U[match only real user id]:user:_users'
|
||||||
'(-n)-o[oldest process]'
|
'(-n)-o[oldest process]'
|
||||||
'(-o)-n[newest process]'
|
'(-o)-n[newest process]'
|
||||||
|
'-a[include process ancestors in the match list]'
|
||||||
|
'-c[print a count of matching processes]'
|
||||||
'-f[match against full command line]'
|
'-f[match against full command line]'
|
||||||
|
'-i[ignore case distinctions]'
|
||||||
|
'-I[confirmation before attempting to single each process]'
|
||||||
|
'-L[given pidfile must be locked]'
|
||||||
|
'-q[do not write anything to standard output]'
|
||||||
|
'-S[search also in system processes]'
|
||||||
'-v[negate matching]'
|
'-v[negate matching]'
|
||||||
'-x[match exactly]'
|
'-x[match exactly]')
|
||||||
'*:process name:->pname')
|
|
||||||
|
|
||||||
if [[ $service == 'pkill' ]]
|
if [[ $service == 'pkill' ]]
|
||||||
then
|
then
|
||||||
|
@ -27,6 +38,27 @@ then
|
||||||
'-l[list name in addition to id]')
|
'-l[list name in addition to id]')
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
local optchars
|
||||||
|
case "$OSTYPE" in
|
||||||
|
linux*)
|
||||||
|
optchars="cflvxdnoPgsuUGt"
|
||||||
|
;;
|
||||||
|
freebsd*)
|
||||||
|
optchars="LSafilnoqvxFGMNPUdgjstu"
|
||||||
|
;;
|
||||||
|
openbsd*)
|
||||||
|
optchars="flnoqvxdGgPsTtUu"
|
||||||
|
;;
|
||||||
|
darwin*)
|
||||||
|
optchars="LafilnoqvxFGPUdgtu"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
optchars="flvxdnoPgsuUGt"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
arguments=( ${(M)arguments:#(|\*)(|\(*\))-[$optchars]*}
|
||||||
|
'*:process name:->pname')
|
||||||
|
|
||||||
_arguments -s -w $arguments && ret=0
|
_arguments -s -w $arguments && ret=0
|
||||||
|
|
||||||
case $state in
|
case $state in
|
||||||
|
|
Loading…
Reference in a new issue