A Day in the Life

環境変数 RUBYOPT

環境変数 RUBYOPT

環境変数自体知らなかった。これ設定して

export RUBYOPT='rubygems'

しておくと毎回 ruby -rrubygems したときと同じ挙動になる。

しかしなんでこれで rubygems が使えるのかよくわからなかったので調べてみたら

  • rubygems を require するだけの ubygems.rb ライブラリがある(これはよく知られる話ですね
    • ruby -rubygems -e '' と書けるようにするためのライブラリ
  • RUBYOPT の指定方法は '-rubygems' でも 'rubygems' でも OK。-(ハイフン)がついて無くても最初の一文字目で判定してるようで '-rubygems -Ke' のような指定方法と 'rubygems Ke' のような指定方法は等価っぽい。

ぽいぽい。Ruby のソースコード読んでないので本当に正しいかどうかは知らない。