[Mew-dist 08027] guess on draft (LONG)

OBATA Noboru obata at example.com
1999年 3月 12日 (金) 02:17:20 JST


小幡です。ユーザ会とても刺激になりました。楽しかったです。

>> In message <19990311170929K.kazu at example.com>,
>> Kazu Yamamoto (山本和彦) <kazu at example.com> writes:

> そうですね。小幡さんがまとめて下さっている推測&テンプレート機能に統合
> するのが、(Mew に依存してしまうけど)筋がいいように思います。
> 
> 任せてよいですか? > 小幡さん

はい、仕様がまとまってきたら統合できるようにしたいと思います。

draft モードでの推測&テンプレート機能ですが、ちょっと説明が足ら
ないと感じています。下記のようにまとめてみましたのでご意見を頂け
ると嬉しいです。

■ やろうと考えていること

draft モードで、書きかけのヘッダから推測して、

- ヘッダを書き換える (挿入、置換、既存のコンテンツに追加、削除)

- 本文にファイルを挿入する (位置→先頭、末尾、カーソル位置)

という機能を提供したいと思います。用語を固定するつもりはありませ
んが、とりあえず前者をヘッダ推測、後者をテンプレート推測と呼ぶこ
とにします。

後者には、加えて

- 挿入したファイルの中身に対して mew-fib.el に似た形式のキーワー
  ド置換を行う (|>氏名<| → 小幡 昇 のような)

ということ(キーワード置換)ができるようにしたいと思います。

なお、推測は mew-refile-guess-alist のような形でのルール記述に基
づいて行います。

■ 動機

主に会社で Mew を使っているのですが、プロジェクトの慣習で、メー
ルの文頭に

                                             1999年 3月 12日(金)
○○○○株式会社
○○ ○○ 様
                                              □□□□□□□(株)
                                                         小幡 昇
いつもお世話になっております。

のように書きます。これを自動化したかったのがテンプレート推測の動
機です。

また会社で書くメールは、私用メール(?)は Dcc: で会社と自宅にコピー
を送っているのですが、仕事のメールは自宅には転送したくないので、
いちいちヘッダを削っていました。これも面倒なので何とかしたいと思っ
ていました。

一方、自宅ではメールアドレスを使い分けるため、From: や署名を宛先
に応じて切り換えられればと常々思っていました。From: は Config で
切り換えられることは知っていたのですが、どうも draft モードで見
えていないと不安で、使っていませんでした。

このようなことがヘッダ推測の動機です。

■ 署名の推測

テンプレート推測は、挿入位置を変えることで、署名推測として動作し
ます。

■ Config 推測との関係

ヘッダ推測は mew-config-guess-alist による Config: の推測と非常
に良く似ています。ルールに基づいて、任意のヘッダコンテンツを操作
できるように拡張したのが、ヘッダ推測だと考えてよいと思います。

したがって、現在ある draft モードでの Config 推測の機能と統合で
きると思ってます。

先日のユーザ会でも

>> In message <19990311171655F.kazu at example.com>,
>> Kazu Yamamoto (山本和彦) <kazu at example.com> writes:

> 	- 作れるフィールドは全部 Mew で作り、値は補間、展開しておく
> 		* そうじゃないと不安だ
> 	- Config は IM の通信動作を指定するために使う
> 		* POP サーバや SMTP サーバの切替えなど
> という合意が得られました。

ので、この機能が役に立てばと思います。

■ 乃村さんのアイディアとの整合

ユーザ会で乃村さんが、

>> In message <19990311115445P.nom at example.com>,
>> Yoshinari NOMURA <nom at example.com> writes:

> ・ Alias, Petname, Guess-Alist, Template, その他のヘッダ書換えに便
>    利なパッケージを作ろう
> 
>   どの level で提供するのか?
> 
>     欲しいもの(?)
> 	header から情報をひっぱってくる機能。
> 	データベースを引く機能。
> 	出て来た答えから、動作を起こす部分。

のような、パッケージの提案をされました。実は、未だこの全体像が上
手にイメージできません。乃村さんの頭の中にはあるようですので、機
会がありましたら教えて下さいね。

現在のぼくの頭には、単独のメールに対して mew-refile-guess-alist 
のような alist から何かを推測する、という狭いイメージ (とコード)
しかありません。

いずれにせよ、このパッケージとリンクできるような作りでありたいも
のです。

■ 当面の仕様

以前投稿したパッチの反応から、仕様を固めていこうと思っていたので
すが、なかなか反応がありませんので、ぼくが現在使っている仕様で改
めて mew-guess.el として投稿しましょうか。どうしましょうか。

先日、署名ファイル推測は希望者が複数いたのでマージできそうだね、
とかずさんがおっしゃっていましたが、今や署名ファイル推測は、テン
プレート推測 (+キーワード置換) の一部になってしまったので、単純
に [Mew-dist 07526] のパッチでおしまいという訳ではないんですよ‥。

ヘッダ推測、テンプレート推測、キーワード置換をごっちゃにしている
からマージしにくいのであれば、別々にすることもできます。このあた
り、かずさんの感触としては、どのように進めるのが好みでしょうか。

-- 
小幡 昇 (obata at example.com)



Mew-dist メーリングリストの案内