FLIM 1.14 API (Re: flim-1_13-rfc2231 vs flim-1_14-rfc2231)
Shuhei KOBAYASHI
shuhei @ aqua.ocn.ne.jp
2001年 4月 29日 (日) 15:00:39 JST
>>>>> In <861yqc9ue3.fsf @ aqua.ocn.ne.jp>,
>>>>> Shuhei KOBAYASHI <shuhei @ aqua.ocn.ne.jp> wrote:
> FLIM の RFC 2231 対応の main trunk への merge を検討しているのですが...
これに関連するのですが, FLIM-API.en に関していくつか質問があります.
`mime-parse-Content-Type' に関する記述が 2 か所に出てきますが,
| * MIME content information
|
| ** How to use
|
| (require 'mime)
|
|
| ** Content-Type
|
| [Function] mime-parse-Content-Type (string)
| Parse STRING as field-body of Content-Type field, and
| return the result as `mime-content-type' structure.
[...]
| * MIME Field parsing
|
| ** How to use
|
| (require 'mime)
|
|
| ** Level 2 features
[...]
| [Function] mime-parse-Content-Type (string)
| Parse STRING as field-body of Content-Type field.
|
| Return value is
| (PRIMARY-TYPE SUBTYPE (NAME1 . VALUE1)(NAME2 . VALUE2) ...)
| or nil. PRIMARY-TYPE and SUBTYPE are symbol and NAME_n and VALUE_n
| are string.
Q1. "Level 2 features" って何ですか?
std11 の方には "Level 1 features" という記述もあるみたいですね.
Q2. ("Level 2 features" では?) `mime-content-type' 型の構造まで定めて
しまうのですか?
Q2-1. 現在の FLIM 1.14 実装とは `mime-content-type' の構造が異なって
いますが, これは FLIM 1.14 実装の bug なのでしょうか?
Q2-2. IMAP4 では parameter list を alist ではなく plist で表現してい
ますが, FLIM の特定の実装でも同様に plist を採用するというのは
許容されないのでしょうか?
Q2-3. `mime-content-type-parameters' の返り値の型は?
| [Inline function] mime-content-type-parameters (content-type)
| Return parameters of CONTENT-TYPE.
`mime-content-type' 型の構造が API に含まれないとなれば, この関数の返り
値の型は実装依存になりますね. そもそも, `mime-content-type-parameter' と
`mime-content-type-parameters' の両方があるのは冗長ではないですか?
>>>>> In <861yqc9ue3.fsf @ aqua.ocn.ne.jp>,
>>>>> Shuhei KOBAYASHI <shuhei @ aqua.ocn.ne.jp> wrote:
> このため flim-1_13-rfc2231 とは異なり, API の拡張[*]は不要になっています.
flim-1_13-rfc2231 が「API の拡張」と呼ぶところの変更は `parameters' を
外に見せているために必要となったもので, `mime-content-type-parameter'
だけを使用していれば API の変更は不要ではないでしょうか?
;; language info 関連を除く.
あ, "[Inline function]" と規定しているのも問題ですね.
`mime-content-type' 型の詳細を隠蔽できなくなってしまいます.
守岡さんは(or FLIM API では) *.elc の互換性は気にしないのでしたっけ?
Q3. `make-mime-content-type' は API に含まれないのですか?
`make-mime-content-disposition' は? (現在の FLIM 1.14 実装では未定義)
RFC 2231 からは離れますが,
| [Function] mime-entity-encoding (entity &optional default-encoding)
| [Function] mime-read-Content-Transfer-Encoding (&optional default-encoding)
Q4. `default-encoding' は不要ではないでしょうか?
実際, FLIM 1.14 でも `(or (mime-entity-encoding entity) "7bit")' の
ような書き方がされています.
ちなみに, flim-1_14-rfc2231 では `default-encoding' をこっそりと廃止して
あったのですが, 問題があるという報告は出ていません;-)
FLIM-API.en には他にも気になる点がありますが, とりあえずここまで.
--
Shuhei KOBAYASHI
More information about the Emacs-mime-ja
mailing list