QA@ITに投稿して回答をいただいたけどbundler使うケースで死んだので無理矢理対処。
- やりたいこととしては、tappが便利すぎて死ぬけどrequire 'tapp'するのめんどい。
- ruby -rtappすればいいけどbinとかどうすんの
QA@ITで上記の質問をしたら以下の回答が得られた
Ruby起動時にデフォルトでrequireさせるには
一旦これで解決したように見えたんだけど、bundler使っていてbundle execするとrequireしたいやつがbundler installされてないと死ぬ。
そこで無理矢理以下の方法で対処した。
- requireさせたいものををlibディレクトリにコピー
- RUBYOPTで-rを指定する
libディレクトリは以下で出てくる
ruby -rrbconfig -e 'p RbConfig.const_get(:CONFIG)["rubylibdir"]'
今回tappを使いたかったのでgem which tappで出てくる場所にあるlib以下を全部コピーした
で、.zshrcとかに以下を記述
export RUBYOPT="-rtapp"
ちょうきもいけどとりあえず解決。
こんな風にするとただでさえ消し忘れるtappがさらに消し忘れるけど、tappにはコマンドとしてのtappがあって、これを使うとtapp消し忘れがわかるからgitのpre-commitとかに仕掛ければいいよ。
git管理されてるリポジトリで実行する
tapp grep
tappちょうはかどる