Newsgroups: fj.mail Path: etl.go.jp!wnoc-tyo-news!cs.titech!jaist-news!morioka From: morioka@jaist.ac.jp (守岡 知彦 (MORIOKA Tomohiko)) Subject: list of MIME tools Content-Type: multipart/mixed; boundary="Multipart Fri Oct 29 14:22:25 1993" Message-ID: Sender: news@jaist.ac.jp (News System Administrator) Content-Transfer-Encoding: 7bit Organization: Japan Advanced Institute of Science and Technology, Ishikawa, Japan Mime-Version: 1.0 Date: Fri, 29 Oct 1993 19:22:25 GMT --Multipart Fri Oct 29 14:22:25 1993 Content-Type: text/plain; charset=ISO-2022-JP MIME の NG 設立を期待して、簡単な MIME tool のリストを作成しました。 間違い等多く含まれているとは思いますが、指摘して頂けたら幸いです。 --Multipart Fri Oct 29 14:22:25 1993 Content-Type: application/octet-stream; name="mime-list.ol" Content-Transfer-Encoding: 7bit 『MIME 関連 tool カタログ Ver.0』 by. 守岡 知彦 1993年10月29日 このカタログを作成するに際して、以下の記事を使用、編集しています。 藤村@芸工大 (Naomi Fujimura) in article , 村上麻里子@慶応大 (Mariko Murakami) in article , みんみん@アステック (Masato Minda) in article , ysato@etl.go.jp (Yutaka Sato 佐藤豊) in article , えなみ つぐとも (enami tsugutomo) in article * MH ** MH-6.8 これをインストールするために必要なソースファイルは各所の anonymous ftp サイトにおいてありますが、 ftp.kyushu-id.ac.jp:/pub/dist/mh の下にも次のファイルをまとめておいてあります。 443 Sep 30 10:57 Bcc-problem.patch.gz 1389 Aug 21 15:52 mh-6.8-JP-patch.2a.gz 986 Aug 21 15:52 mh-6.8-JP-patch.2b.gz 372 Aug 21 15:52 mh-6.8-JP-patch.2c.gz 6314 Sep 25 17:20 mh-6.8-JP.1.tar.gz 23529 Sep 25 17:20 mh-6.8-JP.2.tar.gz 1269474 Jul 1 10:18 mh-6.8.tar.gz 2238 Sep 27 19:41 mh-jheader-kit.tar.gz また、これらのファイルを使ってインストールする手順やパラメータ、MIME 対応にして漢字を含むヘッダーを扱えるようにする設定などについては、 ftp.kyushu-id.ac.jp:/pub/EDU/log/SunOS-4.1.1-JLE/mh-6.8JP2_install.gz が参考になると思います(あくまで参考ということで、よろしく)。 これらのファイルは anonymous ftp でももちろん持っていけますが、メー ルサーバでも持っていけますので、IP 接続していないところでも利用するこ とができます。メールサーバの使い方は次のようにすると解説を手に入れるこ とができます。 ---------------------------------------------------------------------- sample % mail mail-server@ftp.kyushu-id.ac.jp Subject: no effect help ---------------------------------------------------------------------- * metamail etlport.etl.go.jp: /pub/mime/mm* 単なるページャのように使います。例えば、MHでしたら show | metamail のようにします。ヘッダだけでなく、MIME で規定された他の機能(画像や音 声など)も一通り全てあつかってます。 マニュアルにも記述がありますが …… metamail を利用する場合、環境変 数の“MM_CHARSET”に“iso-2022-jp”を設定すると(日本語の場合に)見や すくなります。 (c.f.) metamail.el in emacs-mime-tools.shar metamail は MIME (RFC1351) の著者である BELLCORE の Nathaniel S. Borenstein 氏が開発したツール (user agent) です。規格の作成と並行して、 その検証の役割を兼ねて作られたと言っても良いでしょう。 metamail の特徴は、“mailcap”(RFC1343) という Configuration ファイ ルを使って利用者の環境に応じたカスタマイズができたり、既存の色んなツー ルに容易に外付けして MIME 機能を提供できるように作られているところです。 viewer の本体である metamail, composer の本体である mailto を中心と して、MIME の個々のデータ型に対する viewer や composer のコマンド群 (ほとんど shell スクリプトで書かれています)からなります。MH のノリに 近いですね。BASE64/QUOTED-PRINTABLE エンコーダや、richtext 処理系など も含め、metamail とは独立に単体で使えるコマンド群を多く含んでいます。 metamail の現在の版は mm2.6(93年7月版)で、配布セットは本体の mm2.6.tar と、contribute された関連ソフト contrib2.6.tar からなります。 contrib の中には、Amiga や MS-DOS 上で動く metamail のサブセット、MIME メッセージでお返事をくれる list/archive server(ServiceMail。Tclで書か れています)などが含まれています。 なお、同じく N.S.Borenstein 氏が収集した MIME のサンプルメッセージ(60 件ほど)が、上述のディレクトリの下の samples.tar.gz にあります。 * mimehead.tar etlport.etl.go.jp:~ftp/pub/mime/mimehead.tar.Z 電総研の佐藤さんが作った、ニュースの MIME ヘッダー用の nntpd へのパッ チ及びエンコーダ、デコーダです。toMime/fromMime というコマンドがあって、 メールのヘッダーのデコーダ、エンコーダにも応用がききます。 これは実際には、metamail の contrib に置いてある「MMS:metamail server」(metamail にクライアント/サーバ風インターフェイスを付けたも の)の中から、RFC1522(ヘッダのエンコーディング)に関する部分を抜き出 したものです。mm2.6/contrib2.6 に含まれるものは旧い RFC1342 対応ですが、 mimehead.tar のは 1522 に対応しています。以下のような使い方ができます。 ** フィルタコマンドとして (toMime/fromMime) 標準入力をMIMEエンコード/デコードして標準出力に出すプログラムテキス トエディタの中から「バッファ内容をフィルタに通してバッファに戻す」とか、 ページャの前段やポスターの後段にかませて使えます。 ** エンコード/デコード関数ライブラリとして (libmms.a)   与えられたファイルや文字列を、エンコード/デコードして、ファイルや文 字列に書き出す関数群。 ** nntpdへのパッチとして   上述の関数を nntpd に組み込んで、MIME のエンコード/デコードを自動的 に行うようにするパッチです。ニュースリーダと nntpd は、ローカルコード (日本語: ISO-2022-JP)を含んだヘッダをやりとりします(HEAD, ARTICLE, POSTコマンド)。 * ucb/mail etlport.etl.go.jp:~ftp/pub/mime/tahoe.tar.Z フリーのucb/mailに、N.S.Borensteinがmetamailを組み込んだものです。 * Emacs Lisp ** emacs-mime-tools.shar wnoc-fuk.wide.ad.jp:~ftp/pub/GNU/etc/emacs-mime-tools.shar Umerin さんがニュースで投稿していたものです。 Emacs でメールを読み書きしている人のためのツールです。 ・MIME message を書くためのマイナーモード、mime-mode (mime.el) ・metamail を Emacs から利用するためのパッケージ metamail.el ・metamail.el を rmail から利用するための rmailmime.el が含まれます。 (c.f.) metamail *** mime.el metamail のパッケイジに含まれる mmencode を使って MIME message を作 るためのパッケイジです。 絵や音なども含めた多目的メッセイジを作るための mime-mode があります。 もちろん、header の encode もできます。 多目的メッセイジが割合簡単に作れると思います。 mime-mode では C-c C-x ? で Help が出てくるので、それを参照されると 良いでしょう。 (要)mmencode in metamail *** metamail.el metamail を使って MIME message の再生をするためのパッケイジです。 絵や音なども含めた多目的メッセイジの再生ができます。 結構、重たいです。 (要)metamail in metamail ** mime-kit.el えなみさんの作られた mime-header の decoder です。 ISO-2022-JP, ISO-8859-*, US-ASCII の Base64, Quoted-Printable に対応 しています。 mime/decode-message-header 関数は、unfolding(encode された時、折り 返されたものを元に戻す)を指定しないと、正しく decode しないというバグ? があるようです。 また、encoder も含まれていますが、encode 結果が RFC 1522 に違反する ので encoder は使用しない方が良いでしょう。 *** GNUS で mime-kit.el を使うためのヒント **** *Article* buffer の decode gnus-article-prepare-hook で (mime/decode-message-header t t) を呼ぶ。 更に (mime/decode-region-quietly (point-min) (point-max)) を呼ぶと body 部も decode される。このとき、変数の t/nil によって decode するし ないを制御できるようにしておくと、 (defun gnus-summary-save-in-folder-without-conversion (&optional folder) (let ((gnus-decode-mime nil)) (setq gnus-current-article nil) (gnus--summary-save-in-folder folder))) などという関数を gnus-default-article-saver などに設定することによって、 無変換の記事を save したりできる。 **** *Summary* buffer の decode (1) gnus-summary-prepare-hook で mime/decode-region-quietly を呼ぶ、あ るいは、 (2) gnus-select-group-hook で nntp-set-header-subjet / gnus-header-subject を使って decode 後の文字列を subject に設定す る、のどちらか。(2) の場合はのちのち gnus-header-subject を使う場 合にいちいち decode しなくてよくなる. **** *Article* buffer の mode line gnus-article-set-mode-line を再定義して、日本語などがはいっていても 切れないようにする。↑で (1) の方法をとったばあいはここで subject の変 換もする。 ** tiny-mime.el えなみさんの mime-kit.el の前身の mime.el から派生した MIME header の decoder です。ISO-2022-JP, ISO-8859-* の header が復元できます。 (ただし、NEmacs, NEpoch では、ISO-2022-JP, Base64 のみ) また、encoder も含まれていますが、encode 結果が RFC 1522 に違反する ので encoder は使用しない方が良いでしょう。 tiny-mime.el を組み込んだ以下の patch が存在します。この patch を組 み込んだ GNUS, mh-e では、M-t を押す毎に、 [header のみの decode] (1) ↓ [metamail による処理] (2) ↓ [何もしない] (nil) と MIME の処理モードが変わっていきます。括弧内の数字は、gnus-show-mime の値です。普通は、1 が良いでしょう。 *** GNUS 3.14.4 + tiny-mime GNUS 3.14.4 に tiny-mime-mode と metamail-mode を組み込んだものです。 M-t で再生モードが切り替わります。 Summary, mode-line も復元して表示します。日本語文字列を文字の途中で ぶった切ったりしないので、mode-line に正しく日本語文字列を表示できます。 (要)metamail, metamail.el *** GNUS 4.1 + tiny-mime GNUS 4.1 に tiny-mime-mode と metamail-mode を組み込んだものです。 M-t で再生モードが切り替わります。 Summary, mode-line も復元して表示します。日本語文字列を文字の途中で ぶった切ったりしないので、mode-line に正しく日本語文字列を表示できます。 (要)metamail, metamail.el *** mh-e 3.8 + tiny-mime mh-e 3.8 に tiny-mime-mode と metamail-mode を組み込んだものです。 M-t で再生モードが切り替わります。 (要)metamail, metamail.el ** GNUS GNUS は 3.14.4 以降?、metamail.el を用いた、MIME へのサポートを行なっ ています。標準の GNUS の場合、Summary mode 上で、M-t を押すことによっ て、MIME の decode をしないモードと、metamail による MIME の decode を 行なうモードが切り替わります。しかし、metamail を用いた decode は重た いです。 また、tiny-mime.el を用いた patch が存在します。(c.f.) tiny-mime.el さらに、header だけの decode で良いのなら、えなみさんの mime-kit.el を用いて、 GNUS 3 の場合、 (setq gnus-Article-prepare-hook 'mime/decode-message-header t t) GNUS 4 の場合、 (setq gnus-article-prepare-hook 'mime/decode-message-header t t) と書いておけば良いと思います。ただ、いつも decode しちゃうのが問題かも 知れない。 ** その他 MH 附属の mh-e 用の MIME message encoder があるみたいです。 (c.f.) MH 6.8 * まとめ metamail は、是非、インストールしましょう。結構簡単にできます。 インストールのし易さなら、tiny-mime.el が一番でしょう。+ tiny-mime patch を使って、metamail も使うと快適です。 MIME message を書くなら、Umerin さんの mime.el の mime-mode は快適で す。metamail パッケイジがインストールされていれば、OK です。 MH-6.8-JP2 をインストールすれば、MH 自体が MIME をサポートします。そ れが無理なら、metamail を使いましょう。 * Q & A Q: In article ... というところに From: から取り出したフルネームが入る とそれは変換してくれません。 A: GNUS だったら news-reply-mode-hook に header の decoder を入れてお けば、ちゃんとやってくると思います。他の mailer/news reader の場合 でも同様です。 ---------------------------------------------------------------------- Q: MIME-encode されたフルネームが In-article 云々にすでに入っている記 事を読む際に decode できないでしょうか? A1: (for Emacs) こういう場合、tiny-mime.el やその本家筋に当たる mime-kit.el の mime/decode-region 関数を使って、decode したい region を decode すれば OK です。例えば、 In article morioka@jaist.ac.jp (=?ISO-2022-JP?B?GyRCPGkyLBsoQiAbJEJDTkknGyhC?= (MORIOKA Tomohiko)) writes: の場合、行頭で C-SPACE を押し、行末で M-x mime/decode-region を押せば、 In article morioka@jaist.ac.jp (守岡 知彦 (MORIOKA Tomohiko)) writes: と decode されます。 A2: (for vi user) (日本語化)viを使用している私たちは、 !!fromMime とか 1G!GfromMime などを愛用致しております(^_^) --Multipart Fri Oct 29 14:22:25 1993 Content-Type: text/plain; charset=ISO-2022-JP 〓〓〓〓〓〓〓〓〓〓〓 ロシアン・ティーを一杯。 〓〓〓〓〓〓〓〓〓〓〓 〓〓〓〓〓 ☆ ジャムではなくマーマレードでもなく蜂蜜で ☆ 〓〓〓〓〓 〓〓〓〓〓 МОРいОКА ТОМОХИКО 〓〓〓〓〓 〓〓〓〓〓〓〓 Internet E-mail: 〓〓〓〓〓〓〓 --Multipart Fri Oct 29 14:22:25 1993--