From 093ebca43d6295ffb04e053f5b99f19dfa9f5e1d Mon Sep 17 00:00:00 2001 From: Bodo Tasche Date: Sun, 12 Jun 2011 13:13:39 +0200 Subject: [PATCH 1/5] Added bundler-exec plugin --- plugins/bundler-exec/bundler-exec.plugin.zsh | 37 ++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 plugins/bundler-exec/bundler-exec.plugin.zsh diff --git a/plugins/bundler-exec/bundler-exec.plugin.zsh b/plugins/bundler-exec/bundler-exec.plugin.zsh new file mode 100644 index 000000000..966725976 --- /dev/null +++ b/plugins/bundler-exec/bundler-exec.plugin.zsh @@ -0,0 +1,37 @@ +# This plugin is based on https://github.com/gma/bundler-exec +# modify the BUNDLED_COMMANDS if needed + +BUNDLED_COMMANDS=(cucumber heroku rackup rails rake rspec ruby shotgun spec spork) + +## Functions + +bundler-installed() +{ + which bundle > /dev/null 2>&1 +} + +within-bundled-project() +{ + local dir="$(pwd)" + while [ "$(dirname $dir)" != "/" ]; do + [ -f "$dir/Gemfile" ] && return + dir="$(dirname $dir)" + done + false +} + +run-with-bundler() +{ + local command="$1" + shift + if bundler-installed && within-bundled-project; then + bundle exec $command "$@" + else + $command "$@" + fi +} + +## Main program +for CMD in $BUNDLED_COMMANDS; do + alias $CMD="run-with-bundler $CMD" +done From 6791ef70fec7f62d1f007ac2d16942a9cd771ea0 Mon Sep 17 00:00:00 2001 From: Bodo Tasche Date: Sun, 12 Jun 2011 15:52:58 +0200 Subject: [PATCH 2/5] use lowercase for variablenames --- plugins/bundler-exec/bundler-exec.plugin.zsh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/plugins/bundler-exec/bundler-exec.plugin.zsh b/plugins/bundler-exec/bundler-exec.plugin.zsh index 966725976..cfab16c5e 100644 --- a/plugins/bundler-exec/bundler-exec.plugin.zsh +++ b/plugins/bundler-exec/bundler-exec.plugin.zsh @@ -1,7 +1,7 @@ # This plugin is based on https://github.com/gma/bundler-exec # modify the BUNDLED_COMMANDS if needed -BUNDLED_COMMANDS=(cucumber heroku rackup rails rake rspec ruby shotgun spec spork) +bundled_commands=(cucumber heroku rackup rails rake rspec ruby shotgun spec spork) ## Functions @@ -32,6 +32,6 @@ run-with-bundler() } ## Main program -for CMD in $BUNDLED_COMMANDS; do - alias $CMD="run-with-bundler $CMD" +for cmd in $bundled_commands; do + alias $cmd="run-with-bundler $cmd" done From 9bd3f67a0e48095e4fcb56ce651ab6dbac6ad26b Mon Sep 17 00:00:00 2001 From: Bodo Tasche Date: Sun, 12 Jun 2011 19:16:04 +0200 Subject: [PATCH 3/5] changed names of functions and variables to fit naming conventions --- plugins/bundler-exec/bundler-exec.plugin.zsh | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/plugins/bundler-exec/bundler-exec.plugin.zsh b/plugins/bundler-exec/bundler-exec.plugin.zsh index cfab16c5e..4684dcb8d 100644 --- a/plugins/bundler-exec/bundler-exec.plugin.zsh +++ b/plugins/bundler-exec/bundler-exec.plugin.zsh @@ -5,26 +5,26 @@ bundled_commands=(cucumber heroku rackup rails rake rspec ruby shotgun spec spor ## Functions -bundler-installed() +_bundler-installed() { which bundle > /dev/null 2>&1 } -within-bundled-project() +_within-bundled-project() { - local dir="$(pwd)" - while [ "$(dirname $dir)" != "/" ]; do - [ -f "$dir/Gemfile" ] && return - dir="$(dirname $dir)" + local check_dir=$PWD + while [ "$(dirname $check_dir)" != "/" ]; do + [ -f "$check_dir/Gemfile" ] && return + dir="$(dirname $check_dir)" done false } -run-with-bundler() +_run-with-bundler() { local command="$1" shift - if bundler-installed && within-bundled-project; then + if _bundler-installed && _within-bundled-project; then bundle exec $command "$@" else $command "$@" @@ -33,5 +33,5 @@ run-with-bundler() ## Main program for cmd in $bundled_commands; do - alias $cmd="run-with-bundler $cmd" + alias $cmd="_run-with-bundler $cmd" done From 5210d0656aefc4934faa7dd294c5a4864b5b2b7a Mon Sep 17 00:00:00 2001 From: Bodo Tasche Date: Sun, 12 Jun 2011 20:28:27 +0200 Subject: [PATCH 4/5] forgot to rename one variable --- plugins/bundler-exec/bundler-exec.plugin.zsh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/bundler-exec/bundler-exec.plugin.zsh b/plugins/bundler-exec/bundler-exec.plugin.zsh index 4684dcb8d..bc4d35a84 100644 --- a/plugins/bundler-exec/bundler-exec.plugin.zsh +++ b/plugins/bundler-exec/bundler-exec.plugin.zsh @@ -15,7 +15,7 @@ _within-bundled-project() local check_dir=$PWD while [ "$(dirname $check_dir)" != "/" ]; do [ -f "$check_dir/Gemfile" ] && return - dir="$(dirname $check_dir)" + check_dir="$(dirname $check_dir)" done false } @@ -27,7 +27,7 @@ _run-with-bundler() if _bundler-installed && _within-bundled-project; then bundle exec $command "$@" else - $command "$@" + $command "$@" fi } From c5e67bcdc09b6605183f3ed0e9036c30c42b105a Mon Sep 17 00:00:00 2001 From: Bodo Tasche Date: Sun, 12 Jun 2011 23:16:47 +0200 Subject: [PATCH 5/5] Moved opening braces --- plugins/bundler-exec/bundler-exec.plugin.zsh | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/plugins/bundler-exec/bundler-exec.plugin.zsh b/plugins/bundler-exec/bundler-exec.plugin.zsh index bc4d35a84..09f44ed5e 100644 --- a/plugins/bundler-exec/bundler-exec.plugin.zsh +++ b/plugins/bundler-exec/bundler-exec.plugin.zsh @@ -1,17 +1,15 @@ # This plugin is based on https://github.com/gma/bundler-exec -# modify the BUNDLED_COMMANDS if needed +# modify the bundled_commands if needed bundled_commands=(cucumber heroku rackup rails rake rspec ruby shotgun spec spork) ## Functions -_bundler-installed() -{ +_bundler-installed() { which bundle > /dev/null 2>&1 } -_within-bundled-project() -{ +_within-bundled-project() { local check_dir=$PWD while [ "$(dirname $check_dir)" != "/" ]; do [ -f "$check_dir/Gemfile" ] && return @@ -20,8 +18,7 @@ _within-bundled-project() false } -_run-with-bundler() -{ +_run-with-bundler() { local command="$1" shift if _bundler-installed && _within-bundled-project; then