rubyで設定ファイルを書くとき

いままではmoduleを使って
setting.rb

module Env
  HOGE_PATH = "./fuga/"
end

として、
main.rb

path = Env::HOGE_PATH

としていたけど、あまり使い勝手がよろしくない。
ので、id:viverに聞いてみた。

で、

こんな打開策。
設定を書くconfig.rbを、こんな感じに。

@hoge = "fuga"
@you = "otaku"

$config = Hash.new
instance_variables.each {|name|
  $config[name[1..-1].to_sym] = instance_variable_get(name)
}

いじょ。

で、test.rb

load 'config.rb',true

p $config

これを実行してみると、

$ ruby test.rb
{:hoge=>"fuga", :you=>"otaku"}

となる。
これは使いやすい。

ところで

はてな書いてる途中で、保存のつもりでvimコマンド「:w」を無意識に叩いて悲劇が。

Escの代わりに"CTRL + 「"を叩く => ブラウザが一個バックする => /(^o^)\

2回も同じ言をやってしまったので、結局vimで書きましたよ。
世の中はすべてvimキーバインドになればいいのに。