Subversion のコミットメール (のログ) が化けるよー!
ということで、いったい何人が書きなおしてるのかわからんが Subversion のコミットメールスクリプトを書き直してみた。
メール送信は SMTP を使う。 レポジトリのエンコーディングとかの環境に依存する部分は 全部コマンドラインオプションから指定させる仕様にした。 詳しくは --help 見てね。
% svn-commit-mail.rb --help Usage: svn-commit-mail.rb [options] <repository> <rev> --svnlook=PATH svnlook command location.(default:/opt/local/bin/svnlook) --host=NAME SMTP server address. --port=NUM SMTP server port. --from=ADDR Mail from. --to=ADDR Mail to. --repository-encoding=NAME Character encoding ofrepository content. --mail-encoding=NAME Character encoding of the mail. --diff-deleted Create diff for deleted files --debug-smtp-mailer Dumps SMTP session. --help Prints this message and quit.
ちなみに --to は複数指定可能。
リファレンスマニュアルのソースコードは euc-jp で コミットログは UTF-8 だけども、 いまんとこ化けずに送れているようだ。
……よく考えると、メール送信は別のプログラムにして パイプでつないだほうが利便性が高いような気がするな。 まあ、それだと今度は --to と --from を二回指定するのがめどいか。 いや To: と From: だけ送信プログラムのほうに生成させればいいのか?
(11:38)
Copyright (c) 2002-2007 青木峰郎 / Minero Aoki. All rights reserved.