You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
505 B
29 lines
505 B
# Yii2 command completion |
|
|
|
_yii2_format_command () { |
|
awk '/^- [a-z]+/ { sub(":", "", $2); print $2 }' |
|
} |
|
|
|
_yii2 () { |
|
if [ -f ./yii ]; then |
|
_arguments \ |
|
'1: :->command'\ |
|
'*: :->params' |
|
|
|
case $state in |
|
command) |
|
|
|
local -a commands |
|
local -a name |
|
|
|
if [[ $words[2] == *\/ ]]; then |
|
name=$words[2] |
|
fi |
|
|
|
commands=(${(f)"$(./yii help $name --color=0 | _yii2_format_command)"}) |
|
compadd -Q -S '' -a -- commands |
|
esac |
|
fi |
|
} |
|
|
|
compdef _yii2 yii |