[Tokyo-pm] mg-5.0.1.3 release

Kazumasa Utashiro utashiro @ iij.ad.jp
2005年 1月 10日 (月) 07:45:33 PST


ちょっと日が経ちましたが、おめでとうございます。

以前から grep で足りない機能を実装するために Perl で mg というコマンド
を作って、自分では結構重宝して使っています。いくらかは他のユーザもいる
ようなので、アップデートすると 昔は comp.lang.perl とか
fj.comp.lang.perl あたりにアナウンスしていたのですが、もはやニュースを
読んでいないので場所がありません。

3年ぶりくらいで新しいバージョンを作ったので、とりあえずここに報告させて
ください。一応マニュアルも更新してあるつもりなので、詳しい機能はそっち
を読んでください。

	http://www.srekcah.org/~utashiro/perl/scripts/mg/
	http://www.srekcah.org/~utashiro/perl/scripts/mg/mg-5.0.1.3

こういうものについてのフィードバックを受け付ける場所をどうしたものかと
思って、いくらか工夫もしてみたのですが、メーリングリストというのは、ど
うもうまくいきません。最大の原因はメールをちゃんと読まないことなのでしょ
う。じゃあ blog はどうなんだということで、実験的にサービスを買ってみま
した。

	http://log.utashiro.com/pub/project_mg/

巷では流行っているらしいので、去年一時期使おうとしてみたものの、インタ
フェースとしてはあまり感心できるものではなく、どうしたものかと思っては
いるのですが、よかったら活用してみてください。うまくいかない根本的な原
因は、手を抜きたいと思っているからなのかも知れませんが :)。そこから抜い
た文章を最後に付けておきます。

ところで、このメーリングリストは、最近あまり活発ではないのですかね。こ
の前、偶然通りがかって Shibuya Mongers の会合を覗いたら大変盛況でしたが、
そういう情報は流れないの? それとも、普通は両方に入るのか? でも、渋谷に
馴染みはないからなあ…

----------------------------------------------------------------------
最近、翻訳の仕事をしているのだが、原文をテキストでもらっているので、そ
れに訳文を加える形で作業をしている。訳語を確認するために、以前のテキス
トを検索することがよくあるが、原文にも出てくる言葉を探そうとするとマッ
チしすぎて不便である。

そこで、検索対象の範囲を制限するためのオプションを追加した。--exclude
オプションでパターンを指定すると、そのパターンにマッチする部分は検索の
対象からはずれるのである。あっても出てこないだけで、テキストの中には残っ
ているので、行番号がずれるようなことはない。

たとえば、

	mg --exclude '(?s)/\*.*?\*/' if *.c

のようにすると、C のコメント以外の部分からだけ if を探すことができる。
逆に --include にすれば、コメントからだけ検索する。

これは大変便利なのだが、このオプションを使おうとすると、手で入力するの
はあまり現実的ではない。ましてや、emacs の grep コマンドから使うのは大
変。そこで、ユーザが自分自身で新しいオプションを定義できるようにしてみ
た。ホームディレクトリの .mgrc にオプション定義を書いておくと起動時に読
んでくれる。これで複雑なオプションも簡単に使うことができるようになった。

さらに、--exlucde と --include のオプションには、パターンだけでなくて関
数も指定することができて、複雑なパターンは自分でプログラムを書いて範囲
を生成する。実際、翻訳原稿の処理などはパターンで指定できるほど単純では
ないので、プログラムを書くのである。このプログラムもやはり .mgrc に書く
ことができる。
----------------------------------------------------------------------

--utashiro


Tokyo-pm メーリングリストの案内