mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2024-11-26 10:13:37 +08:00
Added bundler-exec plugin
This commit is contained in:
parent
3552423de3
commit
9e8194355c
37
plugins/bundler-exec/bundler-exec.plugin.zsh
Normal file
37
plugins/bundler-exec/bundler-exec.plugin.zsh
Normal file
|
@ -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
|
Loading…
Reference in New Issue
Block a user