summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVille Skyttä <ville.skytta@iki.fi>2011-10-03 23:57:34 +0300
committerVille Skyttä <ville.skytta@iki.fi>2011-10-03 23:57:34 +0300
commitd54fcf100e27a8c29d7a6f863b15c72eb10e7fa2 (patch)
tree8e87c704540e005a8264b48243892457b4ba8dc2
parentc3d29e2e0d088b9c082161911b0409d94fc444b6 (diff)
downloadbash-completion-d54fcf100e27a8c29d7a6f863b15c72eb10e7fa2.tar.gz
ionice: New completion.
-rw-r--r--completions/util-linux55
-rw-r--r--test/completion/ionice.exp1
-rw-r--r--test/lib/completions/ionice.exp18
3 files changed, 74 insertions, 0 deletions
diff --git a/completions/util-linux b/completions/util-linux
index 72b97765..6243a4d9 100644
--- a/completions/util-linux
+++ b/completions/util-linux
@@ -61,6 +61,61 @@ _look()
} &&
complete -F _look -o default look
+have ionice &&
+_ionice()
+{
+ local cur prev words cword
+ _init_completion || return
+
+ local offset=0 i
+ for (( i=1; i <= cword; i++ )); do
+ case ${words[i]} in
+ -h)
+ return
+ ;;
+ -p)
+ offset=0
+ break
+ ;;
+ -c|-n)
+ (( i++ ))
+ continue
+ ;;
+ -*)
+ continue
+ ;;
+ esac
+ offset=$i
+ break
+ done
+
+ if [[ $offset -gt 0 ]]; then
+ _command_offset $offset
+ return
+ fi
+
+ case $prev in
+ -c)
+ COMPREPLY=( $( compgen -W '{0..3}' -- "$cur" ) )
+ return
+ ;;
+ -n)
+ COMPREPLY=( $( compgen -W '{0..7}' -- "$cur" ) )
+ return
+ ;;
+ -p)
+ _pids
+ return
+ ;;
+ esac
+
+ if [[ $cur == -* ]]; then
+ COMPREPLY=( $( compgen -W '$( _parse_help "$1" -h )' -- "$cur" ) )
+ return
+ fi
+} &&
+complete -F _ionice ionice
+
# Local variables:
# mode: shell-script
# sh-basic-offset: 4
diff --git a/test/completion/ionice.exp b/test/completion/ionice.exp
new file mode 100644
index 00000000..d569f418
--- /dev/null
+++ b/test/completion/ionice.exp
@@ -0,0 +1 @@
+assert_source_completions ionice
diff --git a/test/lib/completions/ionice.exp b/test/lib/completions/ionice.exp
new file mode 100644
index 00000000..d0ff8b64
--- /dev/null
+++ b/test/lib/completions/ionice.exp
@@ -0,0 +1,18 @@
+proc setup {} {
+ save_env
+}
+
+
+proc teardown {} {
+ assert_env_unmodified
+}
+
+
+setup
+
+
+assert_complete_any "ionice -"
+sync_after_int
+
+
+teardown