Add plugin for LXD autocomplete (#7457)
parent
6b5c872836
commit
f742baf73c
2 changed files with 35 additions and 0 deletions
@ -0,0 +1,9 @@ |
||||
# lxd |
||||
|
||||
This plugin provides completion for [lxd](https://linuxcontainers.org/lxd/), as well as aliases |
||||
for frequent lxc commands. |
||||
|
||||
To use it add `lxd` to the plugins array in your zshrc file. |
||||
|
||||
```zsh |
||||
plugins=(... lxd) |
||||
@ -0,0 +1,26 @@ |
||||
_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 |
||||
Loading…
Reference in new issue