From 6102757833936a617b3beebfc3a5a39df3336358 Mon Sep 17 00:00:00 2001 From: pomaxa Date: Thu, 2 Aug 2012 14:05:27 +0300 Subject: [PATCH] extend composer auto-complete --- plugins/composer/composer.plugin.zsh | 39 +++++++++++++++++++++++----- 1 file changed, 32 insertions(+), 7 deletions(-) diff --git a/plugins/composer/composer.plugin.zsh b/plugins/composer/composer.plugin.zsh index 69a637c02..73bc5319f 100644 --- a/plugins/composer/composer.plugin.zsh +++ b/plugins/composer/composer.plugin.zsh @@ -1,13 +1,38 @@ # Composer basic command completion -_composer_get_command_list () { - php composer.phar --no-ansi | sed "1,/Available commands/d" | awk '/^ [a-z]+/ { print $1 }' -} +_composer_chpwd () { + if [ -f composer.json ]; then +# echo "composer exist"; + else +# + fi -_composer () { - if [ -f composer.phar ]; then - compadd `_composer_get_command_list` + if (( $+commands[composer] )) ; then + # it exists + #echo "exist command"; + #$COMPOSER_AS_COMMAND TRUE; + _composer_get_command_list () { + composer --no-ansi | sed "1,/Available commands/d" | awk '/^ [a-z]+/ { print $1 }' + } + + _composer () { + compadd `_composer_get_command_list` + } + + compdef _composer composer + else + _composer_get_command_list () { + php composer.phar --no-ansi | sed "1,/Available commands/d" | awk '/^ [a-z]+/ { print $1 }' + } + + _composer () { + if [ -f composer.phar ]; then + compadd `_composer_get_command_list` + fi + } + + compdef _composer composer.phar fi } -compdef _composer composer.phar +chpwd_functions=( "${chpwd_functions[@]}" _composer_chpwd )