気が向いたので。
http://shinh.skr.jp/mlpp/mlpp.tar.bz2
テンポラリファイルは -s を付けない限りは消します。 -v を付けない限りメッセージを吐きません。
独自マクロをサポートしました。とりあえず __MLPP_LINE__, __MLPP_FILE__, __MLPP_FUNCTION__, __MLPP_CLASS__ を。
__MLPP_CLASS__: match: '^(\s*(public|protected|private|final)\s+)class\s+(\w+)' to: '"$3"'
などと設定すると、 match の方の正規表現を毎行チェックして、前回マッチしたデータを使用して to に置換します。
もちろんこの正規表現に従ってないとダメなので __MLPP_FUNCTION__ と __MLPP_CLASS__ はかなりいいかげんなものだと言えます。でも D 言語で、
class Test { static void test() { printf("line=%d\n", __MLPP_LINE__); stdout.writeLine("file=" ~ __MLPP_FILE__); stdout.writeLine("func=" ~ __MLPP_FUNCTION__); stdout.writeLine("class=" ~ __MLPP_CLASS__); } }
などと書いて func=test class=Test と出るのは嬉しいですね。
あと -c で設定ファイルを指定できるみたいです。前からあった機能らしい。