9a40ae9b5f463614ec16d39df4268b53d745ce8c

Author
Robby Russell <robby@planetargon.com>
Committer
Robby Russell <robby@planetargon.com>
Date

Message

Merge pull request #2212 from bsiegel/bundler_bi_function

Change bundler plugin's `bi` alias to a function

Diff

 1diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh
 2index e390f8620bb1252e7b0f14072bf90c7d92fef36e..4c3580caca9accf93d6359afb706a681c99968f5 100644
 3--- a/plugins/bundler/bundler.plugin.zsh
 4+++ b/plugins/bundler/bundler.plugin.zsh
 5@@ -4,13 +4,31 @@ alias bp="bundle package"
 6 alias bo="bundle open"
 7 alias bu="bundle update"
 8 
 9-
10 # The following is based on https://github.com/gma/bundler-exec
11 
12 bundled_commands=(annotate berks cap capify cucumber foodcritic foreman guard jekyll kitchen knife middleman nanoc rackup rainbows rake rspec ruby shotgun spec spin spork strainer tailor taps thin thor unicorn unicorn_rails puma)
13 
14 ## Functions
15 
16+bi() {
17+  if _bundler-installed && _within-bundled-project; then
18+    local bundler_version=`bundle version | cut -d' ' -f3`
19+    if [[ $bundler_version > '1.4.0' || $bundler_version = '1.4.0' ]]; then
20+      if [[ "$(uname)" == 'Darwin' ]]
21+      then
22+        local cores_num="$(sysctl hw.ncpu | awk '{print $2}')"
23+      else
24+        local cores_num="$(nproc)"
25+      fi
26+      bundle install --jobs=$cores_num $@
27+    else
28+      bundle install $@
29+    fi
30+  else
31+    echo "Can't 'bundle install' outside a bundled project"
32+  fi
33+}
34+
35 _bundler-installed() {
36   which bundle > /dev/null 2>&1
37 }
38@@ -32,28 +50,14 @@ _run-with-bundler() {
39   fi
40 }
41 
42-if _bundler-installed; then
43-	bundler_version=`bundle version | cut -d' ' -f3`
44-	if [[ $bundler_version > '1.4.0' || $bundler_version = '1.4.0' ]]; then
45-		if [[ "$(uname)" == 'Darwin' ]]
46-		then
47-			local cores_num="$(sysctl hw.ncpu | awk '{print $2}')"
48-		else
49-			local cores_num="$(nproc)"
50-		fi
51-		eval "alias bi='bundle install --jobs=$cores_num'"
52-	else
53-		alias bi='bundle install' 
54-	fi
55-
56-	## Main program
57-	for cmd in $bundled_commands; do
58-		eval "function unbundled_$cmd () { $cmd \$@ }"
59-		eval "function bundled_$cmd () { _run-with-bundler $cmd \$@}"
60-		alias $cmd=bundled_$cmd
61-
62-		if which _$cmd > /dev/null 2>&1; then
63-			compdef _$cmd bundled_$cmd=$cmd
64-		fi
65-	done
66-fi
67+## Main program
68+for cmd in $bundled_commands; do
69+  eval "function unbundled_$cmd () { $cmd \$@ }"
70+  eval "function bundled_$cmd () { _run-with-bundler $cmd \$@}"
71+  alias $cmd=bundled_$cmd
72+
73+  if which _$cmd > /dev/null 2>&1; then
74+        compdef _$cmd bundled_$cmd=$cmd
75+  fi
76+done
77+