LT発表 RSpec on Rails の色

LT(ライトニングトークで発表しました、発表内容はこの間の日記記事ネタ。
RSpec on Rails の色 - Rubyとか Illustratorとか SFとか折紙とか

この、黒地に赤い字見え難いというのは結構多くの方が気になってたみたい。

require について(角谷さん方式)

トーク後、角谷さん方法では require に失敗する件、その時点で Spec::Runner がないというなら、予め空のを作っておけば良いのではないかという指摘を受けました。それで次のような感じにしてみたんだけどやっぱりうまく行きません。
定数エラーがおきて require も出来ませんという状況からは改善したんだけどうまく行かない。

module Spec
  module Runner
    class Formatter
      class ProgressBarFormatter
      end
    end
  end
end
class InvertedWellLitProgressBarFormatter < Spec::Runner::Formatter::ProgressBarFormatter
  def red(text); colour(text, "\e[1;41m") end
  def magenta(text); colour(text, "\e[1;45m") end
end # class InvertedWellLitProgressBarFormatter < Spec::Runner::Formatter::ProgressBarFormatter

こんな感じのエラーになる。

vendor/plugins/rspec/lib/spec/runner/options.rb:169:in `initialize': wrong number of arguments (2 for 0) (ArgumentError)
        from vendor/plugins/rspec/lib/spec/runner/options.rb:169:in `new'
        from vendor/plugins/rspec/lib/spec/runner/options.rb:169:in `load_formatters'

フォーマッター作りか、なんか require、ロードの順とか、メソッドの定義順とか微妙なんだと思う。この方向性についてはここまで。

railsコマンドとの関係

出来れば、テンプレート修正などによってで、railsコマンドにて Railsアプリケーション作成時点でここまでの設定が出来てるようになってくれると嬉しい。しかし、それはちょっと難しい。何故かと言うと、そもそも、rspecrspec_on_rails 自体が、Railsアプリケーション作成後にプラグインをインストールしてくる物だからだ。
プラグインのインストールやその他の準備も全部やってくれるようなスクリプトを書くのもなんだかなあ。プラグインのインストールなんて結構時間掛かるし、そういうのに Windows の(DOS)バッチファイルで臨むのは気が進まない。Ruby?