diff options
author | ekaragodin <ekaragodin@gmail.com> | 2014-12-14 11:09:34 +0600 |
---|---|---|
committer | ekaragodin <ekaragodin@gmail.com> | 2014-12-14 11:43:52 +0600 |
commit | 08b9f8d6770e2f626bca0d320d2b577e0e1597c5 (patch) | |
tree | 2cf7741885ec700936e3cbc8501076c6b62ebefb /plugins/yii2/yii2.plugin.zsh | |
parent | 141c2e593401f245a9f9bb0799ada8bf14b677d7 (diff) | |
download | zsh-08b9f8d6770e2f626bca0d320d2b577e0e1597c5.tar.gz zsh-08b9f8d6770e2f626bca0d320d2b577e0e1597c5.tar.bz2 zsh-08b9f8d6770e2f626bca0d320d2b577e0e1597c5.zip |
Added Yii2 command completion
Diffstat (limited to 'plugins/yii2/yii2.plugin.zsh')
-rw-r--r-- | plugins/yii2/yii2.plugin.zsh | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/plugins/yii2/yii2.plugin.zsh b/plugins/yii2/yii2.plugin.zsh new file mode 100644 index 000000000..137b3a076 --- /dev/null +++ b/plugins/yii2/yii2.plugin.zsh @@ -0,0 +1,29 @@ +# 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 | _yii2_format_command)"}) + compadd -Q -S '' -a -- commands + esac + fi +} + +compdef _yii2 yii |