summaryrefslogtreecommitdiffstats
path: root/bash-completion/eject
diff options
context:
space:
mode:
authorKarel Zak2013-04-05 14:58:07 +0200
committerKarel Zak2013-04-05 14:58:07 +0200
commit20da58084a68b118b15fa01228192463b61fa28f (patch)
tree07beea113d5a68749264ad59e4d17fbc4bf9fe1d /bash-completion/eject
parentMerge branch 'shell-completion' of git://github.com/kerolasa/lelux-utiliteetit (diff)
downloadkernel-qcow2-util-linux-20da58084a68b118b15fa01228192463b61fa28f.tar.gz
kernel-qcow2-util-linux-20da58084a68b118b15fa01228192463b61fa28f.tar.xz
kernel-qcow2-util-linux-20da58084a68b118b15fa01228192463b61fa28f.zip
bash-completion: rename shell-completion -> bash-completion
Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'bash-completion/eject')
-rw-r--r--bash-completion/eject61
1 files changed, 61 insertions, 0 deletions
diff --git a/bash-completion/eject b/bash-completion/eject
new file mode 100644
index 000000000..b767e8198
--- /dev/null
+++ b/bash-completion/eject
@@ -0,0 +1,61 @@
+_eject_module()
+{
+ local cur prev OPTS
+ COMPREPLY=()
+ cur="${COMP_WORDS[COMP_CWORD]}"
+ prev="${COMP_WORDS[COMP_CWORD-1]}"
+ case $prev in
+ '-a'|'--auto'|'-i'|'--manualeject')
+ COMPREPLY=( $(compgen -W "off on" -- $cur) )
+ return 0
+ ;;
+ '-c'|'--changerslot')
+ # FIXME: there must be way to determine slots
+ COMPREPLY=( $(compgen -W "slot" -- $cur) )
+ return 0
+ ;;
+ '-x'|'--cdspeed')
+ COMPREPLY=( $(compgen -W "$(eject -X)" -- $cur) )
+ return 0
+ ;;
+ esac
+ case $cur in
+ -*)
+ OPTS="-a --auto
+ -c --changerslot
+ -d --default
+ -f --floppy
+ -F --force
+ -i --manualeject
+ -m --no-unmount
+ -M --no-partitions-unmount
+ -n --noop
+ -p --proc
+ -q --tape
+ -r --cdrom
+ -s --scsi
+ -t --trayclose
+ -T --traytoggle
+ -v --verbose
+ -x --cdspeed
+ -X --listspeed
+ -h --help
+ -V --version"
+ COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) )
+ return 0
+ ;;
+ esac
+ local DEVS
+ DEVS="$(for I in /sys/class/block/*/removable; do
+ if [ $(cat $I) -ne 0 ]; then
+ OLD_IFS=$IFS
+ IFS='/';
+ ARR=($I)
+ echo "/dev/${ARR[4]}"
+ IFS=$OLD_IFS
+ fi
+ done)"
+ COMPREPLY=( $(compgen -W "$DEVS" $cur) )
+ return 0
+}
+complete -F _eject_module eject