oh-my-fish/plugins/bundler/bundler.load

55 lines
1.5 KiB
Fish
Raw Normal View History

# These methods override the default calls to append `bundle exec` if this gem
# is available within the context of bundler.
#
set -l execs annotate \
cap \
capify \
cucumber \
dashing \
foreman \
guard \
kitchen \
middleman \
nanoc \
puma \
rackup \
rainbows \
rake \
rspec \
rubocop \
ruby \
shotgun \
sidekiq \
spec \
spinach \
spork \
thin \
thor \
unicorn \
unicorn_rails
2012-07-29 20:31:04 +00:00
set -l do_eval (function --help | grep -q 'inheritvariable'; and echo false)
2012-07-29 20:31:04 +00:00
for executable in $execs
if test -z "$do_eval"
eval "function $executable; __execute_as_bundler $executable \$argv; end"
else
function $executable --inherit-variable executable
__execute_as_bundler $executable $argv
end
2012-07-29 20:31:04 +00:00
end
end
function __execute_as_bundler
if __is_a_bundled_executable $argv[1]
2012-07-29 20:31:04 +00:00
command bundle exec $argv
else
eval command $argv
2012-07-29 20:31:04 +00:00
end
end
function __is_a_bundled_executable
set -l bindir (command bundle exec ruby -e 'puts Gem.bindir')
test -f "$bindir/$argv"
2012-07-29 20:31:04 +00:00
end