mirror of
				https://github.com/ohmyzsh/ohmyzsh.git
				synced 2024-05-11 05:55:17 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			77 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			77 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| ## 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
 |