Browse Source

Merge pull request #2243 from sabarishcrri/bundle_plugin_nobundle_fix

bundle plugin throwing error when bundle is not in path while initializing
Robby Russell 11 years ago
parent
commit
a4f4ed037a
1 changed files with 25 additions and 23 deletions
  1. 25 23
      plugins/bundler/bundler.plugin.zsh

+ 25 - 23
plugins/bundler/bundler.plugin.zsh

@@ -4,18 +4,6 @@ alias bp="bundle package"
 alias bo="bundle open"
 alias bu="bundle update"
 
-bundler_version=`bundle version | cut -d' ' -f3`
-if [[ $bundler_version > '1.4.0' || $bundler_version = '1.4.0' ]]; then
-  if [[ "$(uname)" == 'Darwin' ]]
-  then
-    local cores_num="$(sysctl hw.ncpu | awk '{print $2}')"
-  else
-    local cores_num="$(nproc)"
-  fi
-  eval "alias bi='bundle install --jobs=$cores_num'"
-else
-  alias bi='bundle install' 
-fi
 
 # The following is based on https://github.com/gma/bundler-exec
 
@@ -44,14 +32,28 @@ _run-with-bundler() {
   fi
 }
 
-## Main program
-for cmd in $bundled_commands; do
-  eval "function unbundled_$cmd () { $cmd \$@ }"
-  eval "function bundled_$cmd () { _run-with-bundler $cmd \$@}"
-  alias $cmd=bundled_$cmd
-
-  if which _$cmd > /dev/null 2>&1; then
-        compdef _$cmd bundled_$cmd=$cmd
-  fi
-done
-
+if _bundler-installed; then
+	bundler_version=`bundle version | cut -d' ' -f3`
+	if [[ $bundler_version > '1.4.0' || $bundler_version = '1.4.0' ]]; then
+		if [[ "$(uname)" == 'Darwin' ]]
+		then
+			local cores_num="$(sysctl hw.ncpu | awk '{print $2}')"
+		else
+			local cores_num="$(nproc)"
+		fi
+		eval "alias bi='bundle install --jobs=$cores_num'"
+	else
+		alias bi='bundle install' 
+	fi
+
+	## Main program
+	for cmd in $bundled_commands; do
+		eval "function unbundled_$cmd () { $cmd \$@ }"
+		eval "function bundled_$cmd () { _run-with-bundler $cmd \$@}"
+		alias $cmd=bundled_$cmd
+
+		if which _$cmd > /dev/null 2>&1; then
+			compdef _$cmd bundled_$cmd=$cmd
+		fi
+	done
+fi