Blame view

plugins/bower/bower.plugin.zsh 2.28 KB
093a6c34b   mj   Squashed 'repos/r...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
  alias bi="bower install"
  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_lastest _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_lastest=('(--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_lastest \
          $_no_color \
          $_production
          ;;
          update)
          _arguments \
          $_dopts \
          $_no_color \
          $_force_lastest
          _bower_installed_packages
          compadd "$@" $(echo $bower_package_list)
          ;;
          uninstall)
          _arguments \
          $_no_color \
          $_dopts
          _bower_installed_packages
          compadd "$@" $(echo $bower_package_list)
          ;;
          *)
          $_no_color \
          ;;
      esac
  
  }
  
  compdef _bower bower