summaryrefslogtreecommitdiffstats
path: root/completions/kill
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--completions/kill29
-rw-r--r--completions/killall36
2 files changed, 65 insertions, 0 deletions
diff --git a/completions/kill b/completions/kill
new file mode 100644
index 0000000..25cddba
--- /dev/null
+++ b/completions/kill
@@ -0,0 +1,29 @@
+# kill(1) completion -*- shell-script -*-
+
+_kill()
+{
+ local cur prev words cword
+ _init_completion || return
+
+ case $prev in
+ -s)
+ _signals
+ return
+ ;;
+ -l)
+ return
+ ;;
+ esac
+
+ if [[ $cword -eq 1 && $cur == -* ]]; then
+ # return list of available signals
+ _signals -
+ COMPREPLY+=($(compgen -W "-s -l" -- "$cur"))
+ else
+ # return list of available PIDs
+ _pids
+ fi
+} &&
+ complete -F _kill kill
+
+# ex: filetype=sh
diff --git a/completions/killall b/completions/killall
new file mode 100644
index 0000000..c7c0b0f
--- /dev/null
+++ b/completions/killall
@@ -0,0 +1,36 @@
+# killall(1) completion -*- shell-script -*-
+
+[[ $OSTYPE == *@(linux|freebsd|darwin)* ]] || return 1
+
+_killall()
+{
+ local cur prev words cword split
+ _init_completion -s || return
+
+ case $prev in
+ --context | --older-than | --younger-than | --version | -!(-*)@([Zoy]|V*))
+ return
+ ;;
+ --signal | -!(-*)s)
+ _signals
+ return
+ ;;
+ --user | -!(-*)u)
+ _allowed_users
+ return
+ ;;
+ esac
+
+ $split && return
+
+ if [[ $cur == -* ]]; then
+ COMPREPLY=($(compgen -W '$(_parse_help "$1")' -- "$cur"))
+ ((cword == 1)) && _signals -
+ return
+ fi
+
+ _pnames
+} &&
+ complete -F _killall killall
+
+# ex: filetype=sh