[Mew-dist 05469] Re: Mew 1.93b44, x-cite, mew-summary-reply-with-citation()

Toshio HORI toshi at example.com
1998年 7月 10日 (金) 16:08:10 JST


In article <19980710154243V.mit at example.com>,
	Mito <mit at example.com> writes:
mit> 少なくとも、prefix を regist する機能がありますので、
mit> Supercite よりも高機能だと思いました。

堀はsupercite 2.3にsc-registerを組み合わせて使ってますが、sc-register
では

% cat ~/.scrc.el
(setq sc-registered-name-alist '(
	:
("toshi at example.com" . "堀")
	:
))

みたいなfileを用意しておけばFrom:行(?)を見てprefixを設定してくれます。

設定していないFrom:行の場合には、defaultではFrom:行から抽出可能なlogin
名(mail addressの"@"の前)とか、user name(comment部分)とか、そのinitial
とかは引用時にprefixの選択候補に入れてくれますから、時と場合(と気分:-)
によってprefixも変えられます。

また、From:行とprefixの関係listを保存するように設定しておけば、たとえ
ば水戸さんのこのmailを引用するときに手動でprefixを"水戸"と入力すると
emacsを終了するときに上記のfileに

("mit at example.com" . "水戸")

を加えてくれて、次回からはこれもprefixの選択候補(default値)になります
から、「意識して」addressとprefixの対応を記述する必要もありません。

# 逆に、このsc-registerの機能が使いたいためにsuperciteを2.3から上げら
# れない(^_^;;)

mit> ・「"ま" こと matusita at example.com さん」のようにしたい

superciteの場合、たとえばこのmailの先頭のような記述を入れるには

(defun my-sc-header-inarticle-writes ()
  (let* ((sc-mumble-string "")
	 (whofrom (sc-field "from"))
	 (msgid   (sc-field "message-id")))
    (if (not (string= whofrom ""))
	(insert sc-reference-tag-string
		(if (not (string= msgid ""))
		    (concat "In article " msgid ",\n\t") "")
		whofrom " writes:\n"))))
(setq sc-rewrite-header-list
      '((sc-no-header)
	(my-sc-header-inarticle-writes)
	(sc-header-inarticle-writes)
	(sc-header-regarding-adds)
	(sc-header-attributed-writes)
	(sc-header-verbose)
	(se-no-blank-line-or-header)
	))

みたいな関数を作ってsc-rewrite-header-listに登録してやればできますし、
実際の引用時には、このlistから自由に選択できます。

// 堀 俊夫 / toshi at example.com
// 電子技術総合研究所 知能システム部
// Homepage : http://www.etl.go.jp/~toshi/



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