Ruby1.8.6でsassがodd number of arguments for Hash (ArgumentError)ってエラー吐いて動かないので調べた。
生成するハッシュのkey,valueに配列が含まれる場合1.8.6だとこのエラーになる。1.8.7は動く
Ruby1.8.6リファレンス
(4) キーや値が配列だと (2) や (3) の方法は使えないので地道に代入するしかない
h = Hash.new alist = [[1,["a"]], [2,["b"]], [3,["c"]]] alist.each {|k,v| h[k] = v } p h # => {1=>["a"], 2=>["b"], 3=>["c"]}
Ruby1.8.7リファレンス
(4) キーや値が配列の場合
alist = [[1,["a"]], [2,["b"]], [3,["c"]], [[4,5], ["a", "b"]]] hash = Hash[alist] # => {1=>["a"], 2=>["b"], 3=>["c"], [4, 5]=>["a", "b"]}