bash-completion/completions/qemu

111 lines
3.3 KiB
Bash

# bash completion for qemu -*- shell-script -*-
_qemu()
{
local cur prev words cword
_init_completion || return
case $prev in
-fd[ab]|-hd[abcd]|-cdrom|-option-rom|-kernel|-initrd|-bootp|-pidfile| \
-loadvm|-mtdblock|-sd|-pflash|-bios)
_filedir
return 0
;;
-tftp|-smb|-L|-chroot)
_filedir -d
return 0
;;
-boot)
COMPREPLY=( $( compgen -W 'a c d n' -- "$cur" ) )
return 0
;;
-k)
COMPREPLY=( $( compgen -W 'ar de-ch es fo fr-ca hu ja mk no pt-br
sv da en-gb et fr fr-ch is lt nl pl ru th de en-us fi fr-be hr
it lv nl-be pt sl tr' -- "$cur" ) )
return 0
;;
-soundhw)
COMPREPLY=( $( compgen -W "$( $1 -soundhw ? | awk \
'/^[[:lower:]]/ {print $1}' ) all" -- "$cur" ) )
return 0
;;
-M)
COMPREPLY=( $( compgen -W "$( $1 -M ? | awk \
'/^[[:lower:]]/ {print $1}' )" -- "$cur" ) )
return 0
;;
-cpu)
COMPREPLY=( $( compgen -W "$( $1 -cpu ? | awk \
'{print $2}' )" -- "$cur" ) )
return 0
;;
-usbdevice)
COMPREPLY=( $( compgen -W 'mouse tablet disk: host: serial: braille
net' -- "$cur" ) )
return 0
;;
-net)
COMPREPLY=( $( compgen -W 'nic user tap socket vde none dump' \
-- "$cur" ) )
return 0
;;
-serial|-parallel|-monitor)
COMPREPLY=( $( compgen -W 'vc pty none null /dev/ file: stdio pipe:
COM udp: tcp: telnet: unix: mon: braille' -- "$cur" ) )
return 0
;;
-redir)
COMPREPLY=( $( compgen -S":" -W 'tcp udp' -- "$cur" ) )
return 0
;;
-bt)
COMPREPLY=( $( compgen -W 'hci vhci device' -- "$cur" ) )
return 0
;;
-vga)
COMPREPLY=( $( compgen -W 'cirrus std vmware xenfb none' \
-- "$cur" ) )
return 0
;;
-drive)
COMPREPLY=( $( compgen -S"=" -W 'file if bus unit index media cyls
snapshot cache format serial addr' -- "$cur" ) )
return 0
;;
-balloon)
COMPREPLY=( $( compgen -W 'none virtio' -- "$cur" ) )
return 0
;;
-smbios)
COMPREPLY=( $( compgen -W 'file type' -- "$cur" ) )
return 0
;;
-watchdog)
COMPREPLY=( $( compgen -W "$( $1 -watchdog ? 2>&1 | \
awk '{print $1}' )" -- "$cur" ) )
return 0
;;
-watchdog-action)
COMPREPLY=( $( compgen -W 'reset shutdown poweroff pause debug
none' -- "$cur" ) )
return 0
;;
-runas)
_allowed_users
return 0
;;
esac
if [[ "$cur" == -* ]]; then
COMPREPLY=( $( compgen -W '$( _parse_help "$1" -help ) -fd{a,b}
-hd{a..d}' -- "$cur" ) )
else
_filedir
fi
} &&
complete -F _qemu qemu qemu-kvm qemu-system-i386 qemu-system-x86_64
# ex: ts=4 sw=4 et filetype=sh