85 lines
2.4 KiB
Bash
85 lines
2.4 KiB
Bash
|
alias bi="bower install"
|
||
|
alias bisd="bower install --save-dev"
|
||
|
alias bis="bower install --save"
|
||
|
alias bl="bower list"
|
||
|
alias bs="bower search"
|
||
|
|
||
|
_bower_installed_packages () {
|
||
|
bower_package_list=$(bower ls --no-color 2>/dev/null| awk 'NR>3{print p}{p=$0}'| cut -d ' ' -f 2|sed 's/#.*//')
|
||
|
}
|
||
|
_bower ()
|
||
|
{
|
||
|
local -a _1st_arguments _no_color _dopts _save_dev _force_latest _production
|
||
|
local expl
|
||
|
typeset -A opt_args
|
||
|
|
||
|
_no_color=('--no-color[Do not print colors (available in all commands)]')
|
||
|
|
||
|
_dopts=(
|
||
|
'(--save)--save[Save installed packages into the project"s bower.json dependencies]'
|
||
|
'(--force)--force[Force fetching remote resources even if a local copy exists on disk]'
|
||
|
)
|
||
|
|
||
|
_save_dev=('(--save-dev)--save-dev[Save installed packages into the project"s bower.json devDependencies]')
|
||
|
|
||
|
_force_latest=('(--force-latest)--force-latest[Force latest version on conflict]')
|
||
|
|
||
|
_production=('(--production)--production[Do not install project devDependencies]')
|
||
|
|
||
|
_1st_arguments=(
|
||
|
'cache-clean:Clean the Bower cache, or the specified package caches' \
|
||
|
'help:Display help information about Bower' \
|
||
|
'info:Version info and description of a particular package' \
|
||
|
'init:Interactively create a bower.json file' \
|
||
|
'install:Install a package locally' \
|
||
|
'link:Symlink a package folder' \
|
||
|
'lookup:Look up a package URL by name' \
|
||
|
'register:Register a package' \
|
||
|
'search:Search for a package by name' \
|
||
|
'uninstall:Remove a package' \
|
||
|
'update:Update a package' \
|
||
|
{ls,list}:'[List all installed packages]'
|
||
|
)
|
||
|
_arguments \
|
||
|
$_no_color \
|
||
|
'*:: :->subcmds' && return 0
|
||
|
|
||
|
if (( CURRENT == 1 )); then
|
||
|
_describe -t commands "bower subcommand" _1st_arguments
|
||
|
return
|
||
|
fi
|
||
|
|
||
|
case "$words[1]" in
|
||
|
install)
|
||
|
_arguments \
|
||
|
$_dopts \
|
||
|
$_save_dev \
|
||
|
$_force_latest \
|
||
|
$_no_color \
|
||
|
$_production
|
||
|
;;
|
||
|
update)
|
||
|
_arguments \
|
||
|
$_dopts \
|
||
|
$_no_color \
|
||
|
$_force_latest
|
||
|
_bower_installed_packages
|
||
|
compadd "$@" $(echo $bower_package_list)
|
||
|
;;
|
||
|
uninstall)
|
||
|
_arguments \
|
||
|
$_no_color \
|
||
|
$_dopts
|
||
|
_bower_installed_packages
|
||
|
compadd "$@" $(echo $bower_package_list)
|
||
|
;;
|
||
|
*)
|
||
|
_arguments \
|
||
|
$_no_color \
|
||
|
;;
|
||
|
esac
|
||
|
|
||
|
}
|
||
|
|
||
|
compdef _bower bower
|