Ramaze (Windows XP 上) をインストールしましたが、実行時に色付きのログ出力を取得するために win32console もインストールするよう提案されました。
ただし、そうすると、以下に示すように、色ではなくエスケープコードが表示されます。
W [2009-04-29 09:02:55 $5064] WARN | : ←[33mNo explicit root folder found, assuming it is C:/Projects/Ruby/Ramaze/Conferences←[0m
D [2009-04-29 09:02:55 $5064] DEBUG | : ←[34mUsing webrick←[0m
I [2009-04-29 09:02:55 $5064] INFO | : ←[37mWEBrick 1.3.1←[0m
I [2009-04-29 09:02:55 $5064] INFO | : ←[37mruby 1.8.6 (2008-08-11) [i386-mswin32]←[0m
D [2009-04-29 09:02:55 $5064] DEBUG | : ←[34mTCPServer.new(0.0.0.0, 7000)←[0m
D [2009-04-29 09:02:55 $5064] DEBUG | : ←[34mRack::Handler::WEBrick is mounted on /.←[0m
I [2009-04-29 09:02:55 $5064] INFO | : ←[37mWEBrick::HTTPServer#start: pid=5064 port=7000←[0m
これは、Ruby/Ramaze/win32console のクリーン インストールでも発生します。
私のセットアップは次のとおりです。
- Windows XP SP#3
- ruby 1.8.6 (2008-08-11 パッチレベル 287) [i386-mswin32]
- rubygems バージョン 1.3.1
- win32console gem バージョン 1.2.0
ちなみに、次のテスト プログラムは動作しているように見えるので、私のマシンの Ramaze/win32console の問題ではないかと考えています。
#!/usr/bin/ruby
require 'rubygems'
require 'win32console'
[0, 1, 4, 5, 7].each do |attr|
puts '----------------------------------------------------------------'
puts "ESC[#{attr};Foreground;Background"
30.upto(37) do |fg|
40.upto(47) do |bg|
print "\033[#{attr};#{fg};#{bg}m #{fg};#{bg} "
end
puts "\033[0m"
end
end