Commit decf9cdb authored by Gunther Konig's avatar Gunther Konig
Browse files

autocomplete required packages as second argumet

parent 46d4606e
...@@ -10,14 +10,36 @@ _composer_get_command_list () { ...@@ -10,14 +10,36 @@ _composer_get_command_list () {
composer --no-ansi | sed "1,/Available commands/d" | awk '/^ [a-z]+/ { print $1 }' composer --no-ansi | sed "1,/Available commands/d" | awk '/^ [a-z]+/ { print $1 }'
} }
_composer_get_required_list () {
composer show -s --no-ansi | sed '1,/requires/d' | awk 'NF > 0 && !/^requires \(dev\)/{ print $1 }'
}
_composer () { _composer () {
local curcontext="$curcontext" state line
typeset -A opt_args
_arguments \
'1: :->command'\
'*: :->args'
if [ -f composer.json ]; then if [ -f composer.json ]; then
case $state in
command)
compadd `_composer_get_command_list` compadd `_composer_get_command_list`
;;
*)
compadd `_composer_get_required_list`
;;
esac
else else
compadd create-project init search selfupdate show compadd create-project init search selfupdate show
fi fi
} }
_composer_required () {
if [ -f composer.json ]; then
compadd `_composer_get_required_list`
fi
}
compdef _composer composer compdef _composer composer
# Aliases # Aliases
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment