岡部@京大です。 In article <199408221831.DAA24174@melon.jaist.ac.jp>, 守岡 知彦 (MORIOKA Tomohiko) writes: 守岡> 現実逃避して、大きな message を発送する時、自動的に message/partial 守岡> 形式に分割してくれるものを書きました。 便利なので、すこし改良(改悪?)してみました。 1. mime-mode-exit を条件付きで呼ぶようにし、mime-mode 以外でも 使えるようにした。 最近 mh-e 4.1 の mh-edit-mhn も使ってみているので、mime-mode 以外でも 使えるようにしたというのが動機です。極端に言えば普段は MIME を全然使って いない人でも、自動分割には使えると思います。 # mh-edit-mhn で変換した後 mime/view-mode に入ってプレビューし、 うまくいってなかったら mh-revert-mhn-edit でやり直す、という 手順は mime-mode と metamail-* よりは快適です。 2. ヘッダとボディの区切りが空行の場合にも対応した。 mh-edit-mhn の出力はこの形式なので、やむを得ずそうしました。 3. mime/draft-file-name が nil のときに使うファイル名を以下のようにした。 (make-temp-name (expand-file-name "tm-draft" mime/tmp-dir)) 4. 分割したメッセージには、もとの Subject のうしろに (1/3) などとつく ようにした。 近い将来、super-pipe や gnus-uu のように、message/partial のときはど れかひとつの記事をみれば他のを探しに行く機能が tm-view.el に実装される ことを願ってのことです ^_^ まだ気に入らない点ですが、 1. もとの(書きかけの)メッセージのヘッダをそのまま送ってしまうので、 例えば MH の場合、Bcc:, Dcc: Fcc: など本来送った時に消える はずのものが届いてしまう(とくに Bcc: が見えるのは問題)。 隠すフィールドを指定できるようにすべき。 2. 生成される id が長ったらしくてかっこ悪い。 (例えば GNUS の message-id 生成ルーチンを転用してはどうか) などがあります。 守岡> また、message の最大行数を変数 mime/message-max-length で指定できま 守岡> す。とりあえず、default では 1000 行にしてありますが、これに関する一般 守岡> 的な値はあるんでしょうか? 行数よりはバイト数が大事なはずで、よく言われるのは1通あたり50KBを超え ないようにという制約ですね(うちのセンターの利用の手引にもそう書いてあ りました)。巨大なメールの多くはバイナリファイルの転送で、中身は base64 で一行80字弱になっていると仮定すると、600 行強にあたります。しかし50KB 以上のものは通らないようになっているというわけではなく単に安全や効率を 考えての値でしょうから、split の標準値でもある 1000 で問題ないと思います。 ----- 岡部寿男@京都大学大型計算機センター研究開発部