[mew-dist 22180] Re: about PGP clear signature
Tatsuya Kinoshita
tats at example.com
2002年 11月 1日 (金) 20:29:42 JST
On November 1, 2002, [mew-dist 22175],
NINOMIYA Hideyuki <nin at example.com> wrote:
> XEmacs (だからではなく自分の環境かもっ f^^;)ではうまく行きませんでしたので
>
> (defun mew-mc-sign (arg)
> (interactive "p")
> (let ((mew-use-8bit t)
> start end)
> (setq start (mew-body-min) end (mew-body-max))
> (require 'mailcrypt)
> (mc-sign-region arg start end)
> (mew-draft-make-message)))
>
> なんてしてみました
手元のXEmacs 21.4.8でも、mc-sign-regionを使うことでうまくいくよう
になりました。
ちなみに、mew-use-8bitをtにしているのは、署名の検証(`C-c C-z':
mew-summary-decode-pgp)で`CTE: quoted-printable'を扱えないからです。
さらに、attachmentsの*Cover.txtで`C'によりcharsetを指定した場合に
対応できていなかったのを修正しました。(たとえば、Text/Plain(euc-jp)
のメッセージにも署名できます)
----
(autoload 'mc-sign-region "mc-toplev" nil t)
(setq mc-default-scheme 'mc-scheme-gpg)
(defadvice mc-gpg-process-region (around my-mew-cs-fix activate)
(let* ((cs (mew-charset-to-cs (my-mew-body-charset)))
(coding-system-for-read cs)
(coding-system-for-write cs))
ad-do-it))
(defun my-mew-draft-share-user-keymap (symmap)
(define-key (symbol-value symmap) "\C-cz" 'my-mew-mc-sign))
(my-mew-draft-share-user-keymap 'mew-draft-header-map)
(my-mew-draft-share-user-keymap 'mew-draft-body-map)
(my-mew-draft-share-user-keymap 'mew-draft-attach-map)
(defun my-mew-mc-sign(arg)
(interactive "p")
(let ((mew-use-8bit t))
(mc-sign-region arg (my-mew-body-min) (my-mew-body-max))
(if (mew-draft-p)
(mew-draft-make-message))))
(defun my-mew-body-charset ()
(interactive)
(let (char)
(if (mew-attach-p)
(setq char (mew-syntax-get-param
(mew-syntax-get-ct
(mew-syntax-get-entry mew-encode-syntax '(1)))
"charset")))
(or char
(mew-charset-guess-region (my-mew-body-min) (my-mew-body-max)))))
(defun my-mew-body-min ()
(interactive)
(save-excursion
(mew-header-goto-body)
(point)))
(defun my-mew-body-max ()
(interactive)
(save-excursion
(if (not (mew-attach-p))
(point-max)
(mew-attach-move-onto-body)
(point))))
----
--
木下達也
Mew-dist メーリングリストの案内