flashlog.txt をカラーにする


Vimeo で見ると HD サイズで見れるお)

久しぶりに FLARToolKit とは関係ない Flash をやってみております。というかなんかふと思いついたんだな。自分でもなんでこんなん思いついたのかよくわからない。まあいいや。えっと、タイトル通りなんだけど、みんな Flash のデバッグは何つかってるかな? 基本、trace したログを何らかの方法で見たりしてると思うのだけど。僕は Terminal.app で flashlog.txt を眺めてるのね。

tail -f ~/Library/Preferences/Macromedia/Flash\ Player/Logs/flashlog.txt

Terminal.app(あー、Mac ね)開いて↑のコマンドを入れる。と、まあ、だーっと流れる。Unix 流ログ眺め方法。んでまあぼけーっと見てたときに思いついたんだろうね。ターミナルだったらエスケープシーケンス使えるんじゃ?と。エスケープシーケンスっていうのは、むかーしむかし、MS-DOS とかいう OS がありまして、っていうぐらい昔、GUI がないころに作られた仕組みで、特定の文字列を表示させるとカーソルの位置とか文字の色を変更できる。じゃあ trace でエスケープシーケンス出力すれば色とかいじれるやん?ってわけですね。

んで、できたのが ColorLog てやつ。
これを使えばエスケープシーケンスとかわからなくても色とカーソルの操作が簡単にできちゃう。もちろん Terminal.app で tail して flashlog.txt を見る前提(Windows だと Cygwin?)。とりあえず作ってみたデモはまったくの遊びなのでこんなことまでできますってだけだけど、うまく使えば実用的になるんじゃないかな。エラーレベル(info とか warn とか error とかってやつ)で色変えるとか。問題は Terminal で tail する以外の方法で開こうとするとエスケープシーケンスだらけで読めないっていうとこか。。。

ダウンロードはこちら。ムービー内で使ってたデモもいちおうアップ。swf だけ見てもしかたないので flashlog.txt を眺めてください。α版レベルのブツですのでサンプルとか見てわかる人だけ使ってみてくださいまし。Spark project にもつっこんであるのでいい感じに改良してくれても可。
(HD version is available on Vimeo)

I playing some Flash not related with FLARToolKit after a long time. yes, I came up with an idea during watching flashlog.txt. How do you debug Flash? I always debugging to watch flashlog.txt using with Terminal.app, like this.

tail -f ~/Library/Preferences/Macromedia/Flash\ Player/Logs/flashlog.txt

Open Terminal.app (on Mac) and type this commande. Then, trace log displayed in realtime. Unix like log watching method. So, an inspration hits me. In Terminal.app, it’s able to use escape sequence. Escape sequences are used to change the character color, cursor position and so on, to output centain character codes.

Then, I made it, ColorLog library.

You can control the character color and cursor position, if you don’t know about escape sequenses. Of course, this library is based on assumption using Terminal.app and above command. Samples inculded in this library are useless, but it has some potential, I think. change the color by log level like INFO, WARN or ERROR.

Download from here. Demo swf using in the video is also uploaded. It’ totaly useless to watch only swf. Please watch flashlog.txt with Terminal.app. I also commited the source code to Spark project.