No bundle exec
イントロ
bundle exec
したくない、という話。随分前に調べたやつ。
bundle exec
メンドイ- しかも使用頻度高い
- コマンド自体が長くなって、初めて見るコマンドを覚えづらい
bundle exec
以降を覚えればいいけど、ついつい全部覚えてしまう。- コマンドが長いとそれだけで疲れる
- しかも
bundle exec
自体は本質的ではない
alias be='bundle exec'
とかあるけど、be
打つのもだるい
という問題意識があります。
候補
実は探せば結構ある。自分が触ったのは以下の 3 つ
結論
direnv
≒ rbenv-bundler
> rbenv-binstubs
今は何も考えず direnv
で良いと思う
direnv
安定の direnv
さん。
新しい rails なら PATH_add bin
もやっておくと良い。
方法
bundle install --path vendor/bundle --binstubs=vendor/bundle/bin direnv edit PATH_add vendor/bundle/bin # この一行を追加して save
長所
- 拡張性の高さ
go
製なので独立したアプリケーションno bundle exec
以外にも使える
短所
- ちょっと手順が多い
--binstubs
を忘れると OUT
rbenv-bundler
以前使用していた
最近 update したら、使えなくなってた。
その後 direnv
に乗り換えた。
方法
bundle install --path vendor/bundle rbenv rehash
長所
- 移行コストが非常に低い
- いつもと変わらぬ感じで利用できる
短所
- 重い
- 今は使えない
rbenv-binstubs
binstubs
を指定するのがダルくて、rbenv-bundler
に移行した。
これをつかうなら direnv
で良いと思う
方法
bundle install --path vendor/bundle --binstubs=vendor/bundle/bin rbenv rehash
長所
- ないかも...
短所
binstubs
忘れたら OUT- direnv と比較すると、下位互換的な感じ
- 実質
bundler
でしか機能しないので
- 実質