yii2.plugin.zsh
506 bytes
1# Yii2 command completion
2
3_yii2_format_command () {
4 awk '/^- [a-z]+/ { sub(":", "", $2); print $2 }'
5}
6
7_yii2 () {
8 if [ -f ./yii ]; then
9 _arguments \
10 '1: :->command'\
11 '*: :->params'
12
13 case $state in
14 command)
15
16 local -a commands
17 local -a name
18
19 if [[ $words[2] == *\/ ]]; then
20 name=$words[2]
21 fi
22
23 commands=(${(f)"$(./yii help $name --color=0 | _yii2_format_command)"})
24 compadd -Q -S '' -a -- commands
25 esac
26 fi
27}
28
29compdef _yii2 yii