a41d308f70
When another function calls one of the bundler plugin's wrapper functions, the command to run gets passed as an array instead of a space-separated string. That works fine when the arguments are expanded alone, like `bundle exec $@`, but something like `./bin/$@` will expand to something like `./bin/rake ./bin/--silent ./bin/--tasks`, which of course will explode. This was causing a nasty interaction with the rake-fast plugin, and I'd be shocked if it wasn't causing other problems. The fix is to explicitly turn off the `RC_EXPAND_PARAM` option for that expansion. See http://zsh.sourceforge.net/Doc/Release/Expansion.html#Parameter-Expansion for more details. |
||
---|---|---|
.. | ||
_bundler | ||
bundler.plugin.zsh | ||
README.md |
Bundler
- adds completion for basic bundler commands
- adds short aliases for common bundler commands
be
aliased tobundle exec
. It also supports aliases (ifrs
israils server
,be rs
will bundle-execrails server
).bl
aliased tobundle list
bp
aliased tobundle package
bo
aliased tobundle open
bout
aliased tobundle outdated
bu
aliased tobundle update
bi
aliased tobundle install --jobs=<cpu core count>
(only for bundler>= 1.4.0
)
- adds a wrapper for common gems:
- looks for a binstub under
./bin/
and executes it (if present) - calls
bundle exec <gem executable>
otherwise
- looks for a binstub under
Common gems wrapped by default (by name of the executable):
annotate
, cap
, capify
, cucumber
, foodcritic
, guard
, hanami
, irb
, jekyll
, kitchen
, knife
, middleman
, nanoc
, pry
, puma
, rackup
, rainbows
, rake
, rspec
, rubocop
, shotgun
, sidekiq
, spec
, spork
, spring
, strainer
, tailor
, taps
, thin
, thor
, unicorn
and unicorn_rails
.
Configuration
Please use the exact name of the executable and not the gem name.
Add additional gems to be wrapped
Add this before the plugin-list in your .zshrc
:
BUNDLED_COMMANDS=(rubocop)
plugins=(... bundler ...)
This will add the wrapper for the rubocop
gem (i.e. the executable).
Exclude gems from being wrapped
Add this before the plugin-list in your .zshrc
:
UNBUNDLED_COMMANDS=(foreman spin)
plugins=(... bundler ...)
This will exclude the foreman
and spin
gems (i.e. their executable) from being wrapped.
Excluded gems
These gems should not be called with bundle exec
. Please see issue #2923 on GitHub for clarification.
berks
foreman
mailcatcher
rails
ruby
spin