27 lines
548 B
Bash
27 lines
548 B
Bash
|
_lxc_get_command_list () {
|
||
|
$_comp_command1 | sed "1,/Available Commands/d" | awk '/^[ \t]*[a-z]+/ { print $1 }'
|
||
|
}
|
||
|
|
||
|
_lxc_get_subcommand_list () {
|
||
|
$_comp_command1 ${words[2]} | sed "1,/Available Commands/d" | awk '/^[ \t]*[a-z]+/ { print $1 }'
|
||
|
}
|
||
|
|
||
|
_lxc () {
|
||
|
local curcontext="$curcontext" state line
|
||
|
typeset -A opt_args
|
||
|
_arguments \
|
||
|
'1: :->command'\
|
||
|
'*: :->args'
|
||
|
|
||
|
case $state in
|
||
|
command)
|
||
|
compadd $(_lxc_get_command_list)
|
||
|
;;
|
||
|
*)
|
||
|
compadd $(_lxc_get_subcommand_list)
|
||
|
;;
|
||
|
esac
|
||
|
}
|
||
|
|
||
|
compdef _lxc lxc
|