あらすじ
WindowsでRails(Redmine)を実行した時のログが超見づらいのはなんで?
こんな風になる。helloと表示されるはずの場合。
[31mhello[0m
何とかしたい。
環境
- Windows 7
- Rails 3.2
参考サイト
ANSIカラーというコードを使用されている
この現象自体を止めるには
Windows(コマンドプロンプト)でもANSIカラー(未実施)
- WindowsのコマンドプロンプトでRailsのログをカラー表示する - yyamasakの日記 - Rubyist
- Windows ansi.sys
- WindowsのコマンドプロンプトでもANSIカラーを使いたい「wac」|オープンソース・ソフトウェア、ITニュースを毎日紹介するエンジニア、デザイナー向けブログ
ANSIカラー
- ターミナルにおいて、文字に色を付けるためのエスケープシーケンスみたい
- ソースコード上には
print "\e[31mhello\e[0m"
こう記載されている\e[xxm
がコード31
は文字色を赤に0
は終われ- コードによって文字色、背景色、装飾をいじることができる
で、Rail3はこれに対応しているので、UnixとかMacとかだとログが色分けされ美しく表示されるようになっている。(あとCygwinでもいけるっぽい)
そういえば、さくらVPS上(CentOS)でRailsを実行している時は奇麗だったんだよな思い出してみれば。
無効化するには
Windowsでも色つけができる(参考サイト参照)ようだが、めんどいので無効化する方向で。
REDMINE/config/application.rb
に以下の記述を追加。
config.colorize_logging = false
特定環境のみとかの設定もできるが、とりあえずオールオフで。