From: morioka Date: Mon, 15 Jun 1998 15:56:20 +0000 (+0000) Subject: New files. X-Git-Tag: semi-1_6_0~3 X-Git-Url: http://git.chise.org/gitweb/?a=commitdiff_plain;h=eab9e8aa01b183d090dc91157eb7017a57709d67;p=elisp%2Fsemi.git New files. --- diff --git a/mime-view-ja.sgml b/mime-view-ja.sgml new file mode 100644 index 0000000..e0591a2 --- /dev/null +++ b/mime-view-ja.sgml @@ -0,0 +1,278 @@ + + +SEMI 1.6 MIME-View 説明書 +<author>守岡 知彦 <mail>morioka@jaist.ac.jp</mail> +<date>1998/06/15 + +<toc> +</head> + +<body> + +<abstract> +<p> +This file documents MIME-View, a MIME Viewer for GNU Emacs. +<p> +GNU Emacs 用の MIME Viewer である MIME-View について説明します。 +</abstract> + + +<h1> MIME-View って何? +<node> Introduction +<p> +MIME-View は GNU Emacs で動作する汎用的な MIME viewer です。 +<p> +MIME-View は MIME message を閲覧するための利用者界面 (user interface) +の核であり、この上で presentation-method と呼ばれる表示を作るプログラム +を動かしたり、acting-method と呼ばれる entity の処理プログラムを動かす +ことが可能で、さまざまな種類の entity を扱う事ができるようになっています。 + + +<h1> MIME-View 概説 +<node> Overview +<p> +Internet の電子書簡・ネットニュースなどの書面 (message) の表現形式は +STD 11 に基づいています。STD 11 の書面本体 (message body) は行を唯一の +構造とする簡易文面 (plain text) であり、文字符号も us-ascii と定められ +ています。実際には、文字符号を us-ascii の代わりにその言語圏で用いられ +る文字符号とした『地域化された STD 11』書面も用いられてきましたが、こ +の場合も書面の文字符号は1つです。このため、利用者界面 (Message User +Agent) は、しばしば、byte 列 = us-ascii 文字列、ないしは、byte 列 = そ +の言語圏で用いる文字符号の文字列のように見倣してきました。 +<p> +しかしながら、MIME では書面は entity を単位とする木構造になり、また、 +1つの書面で複数の文字符号を用いることができます。また、entity の内容 +は文面や絵のような単純に表示可能なものだけでなく、音声や動画などの一定 +時間再生されるようなものや特定のアプリケーションのデータやプログラムの +ソース、あるいは、ftp や mail service の利用法や URL といった形で表さ +れた外部参照などのさまざまなものが考えらます。このため、表示だけを考え +ていた STD 11 における利用者界面の単純な延長では MIME の全ての機能を扱 +うことはできません。つまり、MIME の形式に合わせて復号するだけでは不十 +分であり、利用者との対話的な再生処理を考慮する必要があります。MIME 書 +面の形式は自動処理がしやすく設計されていますが、MIME 書面に含まれる内 +容の中にはセキュリティー上の問題から自動処理をするべきでないものがあり、 +こういったものの再生に関しては利用者の判断を仰ぐように設計されるべきで +しょう。結局、MIME 書面を扱うためには STD 11 および MIME の構文で記述 +されたメッセージの情報交換用表現とその解釈結果である表示画面や再生等の +処理を区別して考える必要があります。また、利用者との対話的な再生処理が +必要です。 +<p> +このため、MIME-View は1つの書面に対して、情報交換用表現を格納する +mime-raw-buffer と表示用表現を格納する mime-preview-buffer の2つの +buffer を用います。 +<p> +MIME-View は mime-preview-buffer に対して mime-view-mode という MIME +message を閲覧するための mode を提供します。利用者はここで各 entity に +対して操作を行うことができます。 + + +<h1> mime-preview-buffer の画面構成 +<node> MIME-Preview +<p> +mime-view-mode では各 entity に対して +<p> +<verb> + [entity-button] + (header) + + (body) + (separator) +</verb> +<p> +<noindent> +という情報を表示します。これらは条件に従って design を変更したり、表示 +を抑制することもできます。 +<p> +以下に、表示例を示します。 + + +<verb> +From: morioka@jaist.ac.jp (守岡 知彦 / MORIOKA Tomohiko) +Subject: Re: 質問? +Newsgroups: zxr.message.mime +Date: 22 Oct 93 11:02:44 +Mime-Version: 1.0 +Organization: Japan Advanced Institute of Science and Technology, + Ishikawa, Japan + +[1 (text/plain)] + MIME-Edit mode における、MIME message の作り方。 + + C-c C-x ? を押すと help が出てくる。 + +C-c C-x C-t insert a text message. +C-c C-x TAB insert a (binary) file. +C-c C-x C-e insert a reference to external body. +C-c C-x C-v insert a voice message. +C-c C-x C-y insert a mail or news message. +C-c C-x RET insert a mail message. +C-c C-x C-s insert a signature file at end. +C-c C-x t insert a new MIME tag. +C-c C-x a enclose as multipart/alternative. +C-c C-x p enclose as multipart/parallel. +C-c C-x m enclose as multipart/mixed. +C-c C-x d enclose as multipart/digest. +C-c C-x s enclose as PGP signed. +C-c C-x e enclose as PGP encrypted. +C-c C-x C-k insert PGP public key. +C-c C-x C-p preview editing MIME message. +... + +って訳で、C-c C-x C-i を押して、挿入したい binary file を指定します。 + + binary file の MIME encoding には、普通、Base64 を指定します。 + +[2 (image/gif)] + +[3 (text/plain)] + + こんな風に、絵入り message のでき上がり。 + +〓〓〓〓〓〓〓〓〓〓〓 ロシアン・ティーを一杯。 〓〓〓〓〓〓〓〓〓〓〓 +〓〓〓〓〓 ☆ ジャムではなくマーマレードでもなく蜂蜜で ☆ 〓〓〓〓〓 +〓〓〓〓〓 МОРいОКА ТОМОХИКО 〓〓〓〓〓 +〓〓〓〓〓〓〓 Internet E-mail: <morioka@jaist.ac.jp> 〓〓〓〓〓〓〓 +</verb> + + +<h2> entity-button +<node> entity-button +<p> +<concept>entity-button</concept> は entity の先頭にあって、その entity +に関する大まかな情報を表示する部分です。 +<p> +標準では + +<verb> + [1.3 test (text/plain)] +</verb> + +<noindent> +のような感じに表示されます。 +<p> +最初の数字は message 中のこの entity の位置を節番号のように表したもの +で、<concept>entity-number</concept> と呼びます。 +<p> +2番目の文字列は表題を表します。この情報は、 + +<ol> +<li>Content-Description field もしくは Subject field に書かれた表題 +<li>Content-Disposition field の filename parameter に書かれた file 名 +<li>Content-Type field の name parameter に書かれた file 名 +<li> uuencode の場合の file 名 +</ol> + +<noindent> +から作ります。どれも存在しない場合は空白が表示されます。 +<p> +3番目の括弧の中の情報はその entity の media-type/subtype を表します。 +非 MIME entity の場合、<code>nil</code> が表示されます。 +<p> +この entity-button は entity の内容を象徴する icon のような役割を果た +します。例えば、 + +<verb> + [2 (image/gif)] +</verb> + +<noindent> +の上で <kbd>v</kbd> を押せばここに入っている絵が表示されます。 +<p> +また、mouse 操作が可能な場合、entity-button を第2ボタン(3 button +mouse の場合、中央のボタン)で押せば、同様にその絵が表示されます。 + + +<h2> entity-header +<node> entity-header +<p> +<concept>entity-header</concept> はある entity の header を表示する部 +分です(「そのままやんけ」って怒らないで。そういうもんなんです)。 + + +<h2> entity-body +<node> entity-body +<p> +<concept>entity-body</concept> は part の内容を表示する部分です。 +<p> +これもひねりが足りないですが、まあ、そういうもんです。 +<p> +とはいえ、実際には少しひねってます。 +<p> +text entity の場合は charset に応じて code 変換したりしますし、XEmacs +では image entity を変換しないといけないし。 +<p> +詳しくはまた後で。 + + +<h1> mime-preview-buffer での操作 +<node> mime-view-mode +<p> +mime-preview-buffer には以下の機能があります。 +<p> +<kl> +<kt>u +<kd> +上の part に戻る(message の一番上の part でこれを行なうと Summary +mode に戻る (*1)) +</kd> +<kt>p<kd>前の part に移動する +</kd> +<kt>M-TAB<kd>前の part に移動する +</kd> +<kt>n<kd>次の part に移動する +</kd> +<kt>TAB<kd>次の part に移動する +</kd> +<kt>SPC<kd>scroll up する +</kd> +<kt>M-SPC<kd>scroll down する +</kd> +<kt>DEL<kd>scroll down する +</kd> +<kt>RET<kd>次の行に移動する +</kd> +<kt>M-RET<kd>前の行に移動する +</kd> +<kt>v<kd>part を再生する (*2) +</kd> +<kt>e<kd>part から file を取り出す (*2) +</kd> +<kt>C-c C-p<kd>part を印刷する (*2) +</kd> +<kt>mouse-button-2 +<kd> +preview-buffer 中の mouse button を起動する +<p> +content-button を押せば、その part が再生される(*2) +<p> +URL-button を押せば、その WWW browser が起動される +</kd> +</kl> +<p> +<memo title="注意"> +<p> +(*1) MUA で mime-view の設定をしていない場合、Summary mode には戻りま +せん。 +<p> +(*2) 実際の動作は対応する method に依ります。 +</memo> + + +<h1> 概念索引 +<node> Concept Index + +<cindex> + + +<h1> 関数索引 +<node> Function Index + +<findex> + + +<h1> 変数索引 +<node> Variable Index + +<vindex> + +</body> diff --git a/mime-view-ja.texi b/mime-view-ja.texi new file mode 100644 index 0000000..3ee2adc --- /dev/null +++ b/mime-view-ja.texi @@ -0,0 +1,311 @@ +\input texinfo.tex +@setfilename mime-view-ja.info +@settitle{SEMI 1.6 MIME-View 説明書} +@titlepage +@title SEMI 1.6 MIME-View 説明書 +@author 守岡 知彦 <morioka@@jaist.ac.jp> +@subtitle 1998/06/15 +@end titlepage +@node Top, Introduction, (dir), (dir) +@top SEMI 1.6 MIME-View 説明書 + +@ifinfo + +This file documents MIME-View, a MIME Viewer for GNU Emacs.@refill + +GNU Emacs 用の MIME Viewer である MIME-View について説明します。 +@end ifinfo + +@menu +* Introduction:: MIME-View って何? +* Overview:: MIME-View 概説 +* MIME-Preview:: mime-preview-buffer の画面構成 +* mime-view-mode:: mime-preview-buffer での操作 +* Concept Index:: 概念索引 +* Function Index:: 関数索引 +* Variable Index:: 変数索引 +@end menu + +@node Introduction, Overview, Top, Top +@chapter MIME-View って何? + +MIME-View は GNU Emacs で動作する汎用的な MIME viewer です。@refill + +MIME-View は MIME message を閲覧するための利用者界面 (user interface) +の核であり、この上で presentation-method と呼ばれる表示を作るプログラム +を動かしたり、acting-method と呼ばれる entity の処理プログラムを動かす +ことが可能で、さまざまな種類の entity を扱う事ができるようになっています。 + + +@node Overview, MIME-Preview, Introduction, Top +@chapter MIME-View 概説 + +Internet の電子書簡・ネットニュースなどの書面 (message) の表現形式は STD +11 に基づいています。STD 11 の書面本体 (message body) は行を唯一の構造と +する簡易文面 (plain text) であり、文字符号も us-ascii と定められています。 +実際には、文字符号を us-ascii の代わりにその言語圏で用いられる文字符号と +した『地域化された STD 11』書面も用いられてきましたが、この場合も書面の +文字符号は1つです。このため、利用者界面 (Message User Agent) は、しばし +ば、byte 列 = us-ascii 文字列、ないしは、byte 列 = その言語圏で用いる文 +字符号の文字列のように見倣してきました。@refill + +しかしながら、MIME では書面は entity を単位とする木構造になり、また、1 +つの書面で複数の文字符号を用いることができます。また、entity の内容は文 +面や絵のような単純に表示可能なものだけでなく、音声や動画などの一定時間再 +生されるようなものや特定のアプリケーションのデータやプログラムのソース、 +あるいは、ftp や mail service の利用法や URL といった形で表された外部参 +照などのさまざまなものが考えらます。このため、表示だけを考えていた STD +11 における利用者界面の単純な延長では MIME の全ての機能を扱うことはでき +ません。つまり、MIME の形式に合わせて復号するだけでは不十分であり、利用 +者との対話的な再生処理を考慮する必要があります。MIME 書面の形式は自動処 +理がしやすく設計されていますが、MIME 書面に含まれる内容の中にはセキュリ +ティー上の問題から自動処理をするべきでないものがあり、こういったものの再 +生に関しては利用者の判断を仰ぐように設計されるべきでしょう。結局、MIME +書面を扱うためには STD 11 および MIME の構文で記述されたメッセージの情報 +交換用表現とその解釈結果である表示画面や再生等の処理を区別して考える必要 +があります。また、利用者との対話的な再生処理が必要です。@refill + +このため、MIME-View は1つの書面に対して、情報交換用表現を格納する +mime-raw-buffer と表示用表現を格納する mime-preview-buffer の2つの +buffer を用います。@refill + +MIME-View は mime-preview-buffer に対して mime-view-mode という MIME +message を閲覧するための mode を提供します。利用者はここで各 entity に +対して操作を行うことができます。 + + +@node MIME-Preview, mime-view-mode, Overview, Top +@chapter mime-preview-buffer の画面構成 + +mime-view-mode では各 entity に対して@refill + +@example + [entity-button] + (header) + + (body) + (separator) +@end example + +@noindent +という情報を表示します。これらは条件に従って design を変更したり、表示 +を抑制することもできます。 + +以下に、表示例を示します。 + + +@example +From: morioka@@jaist.ac.jp (守岡 知彦 / MORIOKA Tomohiko) +Subject: Re: 質問? +Newsgroups: zxr.message.mime +Date: 22 Oct 93 11:02:44 +Mime-Version: 1.0 +Organization: Japan Advanced Institute of Science and Technology, + Ishikawa, Japan + +[1 (text/plain)] + MIME-Edit mode における、MIME message の作り方。 + + C-c C-x ? を押すと help が出てくる。 + +C-c C-x C-t insert a text message. +C-c C-x TAB insert a (binary) file. +C-c C-x C-e insert a reference to external body. +C-c C-x C-v insert a voice message. +C-c C-x C-y insert a mail or news message. +C-c C-x RET insert a mail message. +C-c C-x C-s insert a signature file at end. +C-c C-x t insert a new MIME tag. +C-c C-x a enclose as multipart/alternative. +C-c C-x p enclose as multipart/parallel. +C-c C-x m enclose as multipart/mixed. +C-c C-x d enclose as multipart/digest. +C-c C-x s enclose as PGP signed. +C-c C-x e enclose as PGP encrypted. +C-c C-x C-k insert PGP public key. +C-c C-x C-p preview editing MIME message. +... + +って訳で、C-c C-x C-i を押して、挿入したい binary file を指定します。 + + binary file の MIME encoding には、普通、Base64 を指定します。 + +[2 (image/gif)] + +[3 (text/plain)] + + こんな風に、絵入り message のでき上がり。 + +〓〓〓〓〓〓〓〓〓〓〓 ロシアン・ティーを一杯。 〓〓〓〓〓〓〓〓〓〓〓 +〓〓〓〓〓 ☆ ジャムではなくマーマレードでもなく蜂蜜で ☆ 〓〓〓〓〓 +〓〓〓〓〓 МОРいОКА ТОМОХИКО 〓〓〓〓〓 +〓〓〓〓〓〓〓 Internet E-mail: <morioka@@jaist.ac.jp> 〓〓〓〓〓〓〓 +@end example + + + +@menu +* entity-button:: +* entity-header:: +* entity-body:: +@end menu + +@node entity-button, entity-header, MIME-Preview, MIME-Preview +@section entity-button +@cindex entity-number +@cindex entity-button + +@strong{entity-button} は entity の先頭にあって、その entity に関する大 +まかな情報を表示する部分です。@refill + +標準では + +@example + [1.3 test (text/plain)] +@end example + +@noindent +のような感じに表示されます。 + +最初の数字は message 中のこの entity の位置を節番号のように表したもので、 +@strong{entity-number} と呼びます。@refill + +2番目の文字列は表題を表します。この情報は、 + +@enumerate +@item +Content-Description field もしくは Subject field に書かれた表題 +@item +Content-Disposition field の filename parameter に書かれた file 名 +@item +Content-Type field の name parameter に書かれた file 名 +@item + uuencode の場合の file 名 +@end enumerate + +@noindent +から作ります。どれも存在しない場合は空白が表示されます。 + +3番目の括弧の中の情報はその entity の media-type/subtype を表します。非 +MIME entity の場合、@code{nil} が表示されます。@refill + +この entity-button は entity の内容を象徴する icon のような役割を果た +します。例えば、 + +@example + [2 (image/gif)] +@end example + +@noindent +の上で @kbd{v} を押せばここに入っている絵が表示されます。 + +また、mouse 操作が可能な場合、entity-button を第2ボタン(3 button +mouse の場合、中央のボタン)で押せば、同様にその絵が表示されます。 + + +@node entity-header, entity-body, entity-button, MIME-Preview +@section entity-header +@cindex entity-header + +@strong{entity-header} はある entity の header を表示する部 +分です(「そのままやんけ」って怒らないで。そういうもんなんです)。 + + +@node entity-body, , entity-header, MIME-Preview +@section entity-body +@cindex entity-body + +@strong{entity-body} は part の内容を表示する部分です。@refill + +これもひねりが足りないですが、まあ、そういうもんです。@refill + +とはいえ、実際には少しひねってます。@refill + +text entity の場合は charset に応じて code 変換したりしますし、XEmacs で +は image entity を変換しないといけないし。@refill + +詳しくはまた後で。 + + +@node mime-view-mode, Concept Index, MIME-Preview, Top +@chapter mime-preview-buffer での操作 + +mime-preview-buffer には以下の機能があります。@refill + +@table @kbd +@item @key{u} +上の part に戻る(message の一番上の part でこれを行なうと Summary +mode に戻る (*1)) + +@item @key{p} +前の part に移動する + +@item @key{M-TAB} +前の part に移動する + +@item @key{n} +次の part に移動する + +@item @key{TAB} +次の part に移動する + +@item @key{SPC} +scroll up する + +@item @key{M-SPC} +scroll down する + +@item @key{DEL} +scroll down する + +@item @key{RET} +次の行に移動する + +@item @key{M-RET} +前の行に移動する + +@item @key{v} +part を再生する (*2) + +@item @key{e} +part から file を取り出す (*2) + +@item @key{C-c C-p} +part を印刷する (*2) + +@item @key{mouse-button-2} +preview-buffer 中の mouse button を起動する + +content-button を押せば、その part が再生される(*2)@refill + +URL-button を押せば、その WWW browser が起動される@refill + +@end table + +@noindent +@strong{[注意]} +@quotation + +(*1) MUA で mime-view の設定をしていない場合、Summary mode には戻りませ +ん。@refill + +(*2) 実際の動作は対応する method に依ります。 +@end quotation + + + +@node Concept Index, Function Index, mime-view-mode, Top +@chapter 概念索引 + +@printindex cp + +@node Function Index, Variable Index, Concept Index, Top +@chapter 関数索引 + +@printindex fn + +@node Variable Index, , Function Index, Top +@chapter 変数索引 + +@printindex vr +@bye