b7608bf32de06a546ae509f872bba44a46e10f0a
- Author
- Adam Krebs <amk528@cs.nyu.edu>
- Committer
- Adam Krebs <amk528@cs.nyu.edu>
- Date
Message
add bower autocompletion
Diff
1diff --git a/plugins/bower/_bower b/plugins/bower/_bower
2new file mode 100644
3index 0000000000000000000000000000000000000000..1b582a55e170bc23b7afd6d03dacd4d3d78e9eba
4--- /dev/null
5+++ b/plugins/bower/_bower
6@@ -0,0 +1,58 @@
7+
8+
9+# Credits to npm's. Awesome completion utility.
10+#
11+# Bower completion script, based on npm completion script.
12+
13+###-begin-bower-completion-###
14+#
15+# Installation: bower completion >> ~/.bashrc (or ~/.zshrc)
16+# Or, maybe: bower completion > /usr/local/etc/bash_completion.d/npm
17+#
18+
19+COMP_WORDBREAKS=${COMP_WORDBREAKS/=/}
20+COMP_WORDBREAKS=${COMP_WORDBREAKS/@/}
21+export COMP_WORDBREAKS
22+
23+if type complete &>/dev/null; then
24+ _bower_completion () {
25+ local si="$IFS"
26+ IFS=$'\n' COMPREPLY=($(COMP_CWORD="$COMP_CWORD" \
27+ COMP_LINE="$COMP_LINE" \
28+ COMP_POINT="$COMP_POINT" \
29+ bower completion -- "${COMP_WORDS[@]}" \
30+ 2>/dev/null)) || return $?
31+ IFS="$si"
32+ }
33+ complete -F _bower_completion bower
34+elif type compdef &>/dev/null; then
35+ _bower_completion() {
36+ si=$IFS
37+ compadd -- $(COMP_CWORD=$((CURRENT-1)) \
38+ COMP_LINE=$BUFFER \
39+ COMP_POINT=0 \
40+ bower completion -- "${words[@]}" \
41+ 2>/dev/null)
42+ IFS=$si
43+ }
44+ compdef _bower_completion bower
45+elif type compctl &>/dev/null; then
46+ _bower_completion () {
47+ local cword line point words si
48+ read -Ac words
49+ read -cn cword
50+ let cword-=1
51+ read -l line
52+ read -ln point
53+ si="$IFS"
54+ IFS=$'\n' reply=($(COMP_CWORD="$cword" \
55+ COMP_LINE="$line" \
56+ COMP_POINT="$point" \
57+ bower completion -- "${words[@]}" \
58+ 2>/dev/null)) || return $?
59+ IFS="$si"
60+ }
61+ compctl -K _bower_completion bower
62+fi
63+###-end-bower-completion-###
64+