12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- ## Basic Composer command completion
- # Since Zsh 5.7, an improved composer command completion is provided
- if ! is-at-least 5.7; then
- _composer () {
- local curcontext="$curcontext" state line
- typeset -A opt_args
- _arguments '*:: :->subcmds'
- if (( CURRENT == 1 )) || ( (( CURRENT == 2 )) && [[ "$words[1]" = "global" ]] ); then
- # Command list
- local -a subcmds
- subcmds=("${(@f)"$($_comp_command1 --no-ansi 2>/dev/null | awk '
- /Available commands/{ r=1 }
- r == 1 && /^[ \t]*[a-z]+/{
- gsub(/^[ \t]+/, "")
- gsub(/ +/, ":")
- print $0
- }
- ')"}")
- _describe -t commands 'composer command' subcmds
- else
- # Required list
- compadd $($_comp_command1 show -s --no-ansi 2>/dev/null \
- | sed '1,/requires/d' \
- | awk 'NF > 0 && !/^requires \(dev\)/{ print $1 }')
- fi
- }
- compdef _composer composer
- compdef _composer composer.phar
- fi
- ## Aliases
- alias c='composer'
- alias ccp='composer create-project'
- alias cdo='composer dump-autoload -o'
- alias cdu='composer dump-autoload'
- alias cget='curl -s https://getcomposer.org/installer | php'
- alias cgr='composer global require'
- alias cgrm='composer global remove'
- alias cgu='composer global update'
- alias ci='composer install'
- alias co='composer outdated'
- alias cod='composer outdated --direct'
- alias cr='composer require'
- alias crm='composer remove'
- alias cs='composer show'
- alias csu='composer self-update'
- alias cu='composer update'
- alias cuh='composer update --working-dir=$(composer config -g home)'
- ## If Composer not found, try to add known directories to $PATH
- if (( ! $+commands[composer] )); then
- [[ -d "$HOME/.composer/vendor/bin" ]] && export PATH="$PATH:$HOME/.composer/vendor/bin"
- [[ -d "$HOME/.config/composer/vendor/bin" ]] && export PATH="$PATH:$HOME/.config/composer/vendor/bin"
- # If still not found, don't do the rest of the script
- (( $+commands[composer] )) || return 0
- fi
- ## Add Composer's global binaries to PATH
- autoload -Uz _store_cache _retrieve_cache _cache_invalid
- _retrieve_cache composer
- if [[ -z $__composer_bin_dir ]]; then
- __composer_bin_dir=$(composer global config bin-dir --absolute 2>/dev/null)
- _store_cache composer __composer_bin_dir
- fi
- # Add Composer's global binaries to PATH
- export PATH="$PATH:$__composer_bin_dir"
- unset __composer_bin_dir
|