From a7388c9a369504a8de494bed38b72f386e5e004d Mon Sep 17 00:00:00 2001 From: morioka Date: Tue, 10 Mar 1998 11:26:23 +0000 Subject: [PATCH] tm 7.102. --- ChangeLog | 129 ++++++++++++++++++++++++++++++++ Makefile | 18 +++-- README.en | 14 +++- TM-CFG | 6 +- TM-ELS | 3 +- doc/tm-en.info | 208 ++++++++++++++++++++++++++-------------------------- doc/tm-en.sgml | 5 +- doc/tm-en.texi | 4 +- doc/tm-ja.info | 212 +++++++++++++++++++++++++++-------------------------- doc/tm-ja.sgml | 10 ++- doc/tm-ja.texi | 9 ++- methods/ChangeLog | 13 +++- methods/tm-au | 33 +++++++-- methods/tm-file | 20 ++++- methods/tm-html | 20 ++++- methods/tm-image | 4 +- methods/tm-mpeg | 4 +- methods/tm-plain | 22 +++++- methods/tm-ps | 4 +- methods/tmdecode | 4 +- mime-setup.el.in | 13 +++- tm-def.el | 7 +- tm-edit.el | 31 ++++---- tm-ew-d.el | 56 +++++++++----- tm-pgp.el | 78 ++++++++++---------- 25 files changed, 596 insertions(+), 331 deletions(-) diff --git a/ChangeLog b/ChangeLog index e7fbd22..5a304c7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,132 @@ +1997-01-30 MORIOKA Tomohiko + + * emu: Version 7.37.5 was released. + * tm: Version 7.102 was released. + * gnus-mime: Version 0.14 was released. + * tm-vm: Version 8.4 was released. + +Thu Jan 30 11:40:09 1997 MORIOKA Tomohiko + + * README.en (PROBLEMS): Internal quoted-printable encoder seems to + work fine. + (TODO): modified. + +Thu Jan 30 08:47:51 1997 Shuhei KOBAYASHI + + * mime-setup.el.in (mime-editor/split-message-sender-alist): Set + split-message-sender for mail-mode. + +1997-01-30 Carsten Leonhardt + + * tm-edit.el (mime-editor/exit): fix problem of removing + menu-items when there's no menubar support in + XEmacs. (cf. [bug-tm-en:1169]) + +Wed Jan 29 15:18:53 1997 MORIOKA Tomohiko + + * tm-pgp.el (pgp-snarf-keys-function): New variable. + (mime-article/add-pgp-keys): Use variable + `pgp-snarf-keys-function'. + + Use autoload instead of "(require 'mailcrypt)". + + * tm-pgp.el (pgp-fetch-key-function): New variable. + (mime-article/check-pgp-signature): Use variable + `pgp-fetch-key-function'. + + * tm-pgp.el (mime-article/check-pgp-signature): Use macro + `as-binary-output-file'. + + * tm-pgp.el (pgp-verify-function): New variable. + (pgp-decrypt-function): New variable. + (mime-article/view-application/pgp): Use variable + `pgp-verify-function' and `pgp-decrypt-function'. + + +1997-01-21 MORIOKA Tomohiko + + * emu: Version 7.37.4 was released. + * tl: Version 7.61.16 was released. + * MU: Version 0.39.1 was released. + * tm: Version 7.101 was released. + +Tue Jan 21 07:23:27 1997 MORIOKA Tomohiko + + * TM-ELS: tm-edit-tipgp.el was separated from tm-oomori package. + +Tue Jan 21 06:23:24 1997 MORIOKA Tomohiko + + * README.en (PROBLEMS): New section. + +Tue Jan 21 06:17:18 1997 Shuhei KOBAYASHI + + * tm-ew-d.el (mime-eword/decode-region): Use + mime/encoded-word-regexp. + (mime/decode-encoded-word): Put `tm:warning-face' to invalid + encoded-text. + (mime/decode-encoded-text): Would decode invalid encoded-text. + + * tm-def.el (tm:warning-face): New variable. + +Sat Jan 18 18:04:39 1997 Shuhei KOBAYASHI + + * tm-def.el (base64-token-regexp): padding character (`=') was + removed. + +Fri Jan 17 04:26:29 1997 Shuhei KOBAYASHI + + * tm-ew-d.el (mime-eword/decode-region): Regexp was simplified to + avoid backtracking. + +Tue Jan 14 12:30:01 1997 MORIOKA Tomohiko + + * tm-edit.el (mime/editor-mode): Use Spanish as a sample instead + of Japanese. + +Tue Jan 14 08:57:44 1997 Shuhei KOBAYASHI + + * tm-ew-d.el (mime/decode-encoded-text): If `must-unfold' is + non-nil, replace TAB with SPACE to avoid treating TAB as a NOV + separator. + +Fri Jan 10 06:32:24 1997 MORIOKA Tomohiko + + * doc/tm-ja.sgml: sync with tm-en.sgml 3.3. + + * doc/tm-en.sgml (tm-MUA): tm-vm_en was renamed to tm-vm-en. + + * doc/tm-en.sgml (Introduction): Add link for tm-vm-en. + +Fri Jan 10 02:09:55 1997 Alexandre Oliva + + * Makefile: for several architectures (cf. [tm-en:1114]) + +Tue Jan 7 05:44:39 1997 Joe Nuspl + + * tm-ew-d.el: Must require tl-str. (cf. [xemacs-beta:998]) + + +Wed Jan 1 11:07:09 1997 MORIOKA Tomohiko + + * tl: Version 7.61.17 was released. + * MEL: Version 6.2.1 was released. + * tm: Version 7.100.3 was released. + * tm-mh-e: Version 7.73.1 was released. + * tm-gnus: Version 7.28.1 was released. + * gnus-mime: Version 0.12.3 was released. + +Wed Dec 28 13:57:22 1996 Martin Buchholz + + * TM-CFG: Use variable `default-directory' instead of `(getenv + "PWD")'. (cf. [tm-en:1084]) + + * Makefile: A makefile command like `cd some-dir; do-something' is + generally better written as: `cd some-dir && do-something' since + if the cd fails (usually because of a coding or file-system error) + the do-something is not executed in the wrong + directory. (cf. [tm-en:1084]) + + Fri Dec 27 20:39:43 1996 MORIOKA Tomohiko * tm: Version 7.100.2 was released. diff --git a/Makefile b/Makefile index 1c39ada..f2bd706 100644 --- a/Makefile +++ b/Makefile @@ -1,8 +1,8 @@ # -# $Id: Makefile,v 7.43 1996/12/25 19:18:43 morioka Exp morioka $ +# $Id: Makefile,v 7.45 1997/01/10 15:42:29 morioka Exp morioka $ # -VERSION = 7.100.2 +VERSION = 7.102 SHELL = /bin/sh MAKE = make @@ -107,7 +107,11 @@ ps: ol2 cd doc; $(MAKE) ps -install: $(UTILS) methods install-elc +install: $(UTILS) methods install-elc install-execs + +execs: $(UTILS) + +install-execs: $(EMACS) $(FLAGS) -l TM-MK -f install-execs $(PREFIX) $(EXEC_PREFIX) @@ -117,10 +121,10 @@ update-xemacs: clean: -$(RM) $(GOMI) - -cd doc; $(MAKE) clean - -cd gnus; $(MAKE) clean - -cd mh-e; $(MAKE) clean - cd ../mel; PWD=`pwd` $(MAKE) clean + -cd doc && $(MAKE) clean + -cd gnus && $(MAKE) clean + -cd mh-e && $(MAKE) clean + cd ../mel && $(MAKE) clean oomori: diff --git a/README.en b/README.en index 9bcfd1d..0cd7fa5 100644 --- a/README.en +++ b/README.en @@ -1,7 +1,7 @@ [README for tm (English Version)] by MORIOKA Tomohiko and KOBAYASHI Shuhei -$Id: README.en,v 7.26 1996/12/27 12:11:29 morioka Exp $ +$Id: README.en,v 7.28 1997/01/30 11:40:09 morioka Exp $ 1 What's tm? @@ -375,9 +375,17 @@ and its mirrors: ftp://ftp.nisiq.net/pub/gnu/emacs-lisp/tm/ (US) -10 TODO +10 PROBLEMS -- better identification calculus system as successor of atype system +- Window configuration is broken after combining partial messages or + playing other internal methods. +- Automatic combining method for message/partial is not implemented + for RMAIL. + + +11 TODO + +- better method selecting system as successor of atype system - development of internal method for message/external-body based on tm-ftp - better automatic MIME preview support diff --git a/TM-CFG b/TM-CFG index 5ac59cd..21da4c9 100644 --- a/TM-CFG +++ b/TM-CFG @@ -1,13 +1,13 @@ ;;; -*-Emacs-Lisp-*- ;;; -;;; $Id: TM-CFG,v 7.27 1996/12/16 15:12:55 morioka Exp $ +;;; $Id: TM-CFG,v 7.28 1997/01/01 06:52:52 morioka Exp morioka $ ;;; (defvar default-load-path load-path) (setq load-path (append (mapcar (function (lambda (path) - (expand-file-name path (getenv "PWD")) + (expand-file-name path default-directory) )) '("." "../emu" "../tl" "../bitmap-mule" "../mu" "../mel" @@ -235,7 +235,7 @@ (setq TM_GNUS_RELATIVE_DIR TM_KERNEL_RELATIVE_DIR) (setq TM_GNUS_INSTALL_FORMAT - "cd gnus; PWD=`pwd` make install-19 EMACS=%s TMDIR19=%s") + "cd gnus; make install-19 EMACS=%s TMDIR19=%s") (setq TM_GNUS_COMPILE ".gnus-compile") (setq MAKE "make") diff --git a/TM-ELS b/TM-ELS index 475c24f..b5f030e 100644 --- a/TM-ELS +++ b/TM-ELS @@ -1,6 +1,6 @@ ;;; -*-Emacs-Lisp-*- ;;; -;;; $Id: TM-ELS,v 7.5 1996/12/10 08:29:42 morioka Exp $ +;;; $Id: TM-ELS,v 7.6 1997/01/21 07:23:27 morioka Exp $ ;;; (setq tm-modules-to-compile @@ -28,7 +28,6 @@ '((ange-ftp tm-ftp) (mailcrypt tm-pgp tm-edit-mc) (bbdb tm-bbdb) - (tinypgpa tm-edit-tipgp) )) (if (and (file-exists-p "tm-evs.el") diff --git a/doc/tm-en.info b/doc/tm-en.info index 0a978d4..4f542b4 100644 --- a/doc/tm-en.info +++ b/doc/tm-en.info @@ -43,6 +43,8 @@ and more. * tm-MUA for mh-e (*Note (tm-mh-e-en)::) + * tm-MUA for VM (*Note (tm-vm-en)::) + * mime/viewer-mode (*Note (tm-view-en)::) * mime/editor-mode (*Note (tm-edit-en)::) @@ -1555,7 +1557,7 @@ tm-MUA * *gnus-mime* (*Note (gnus-mime-en)::) for Gnus - * *tm-vm* (*Note (tm-vm_en)::) for VM + * *tm-vm* (*Note (tm-vm-en)::) for VM * *tm-rmail* for RMAIL @@ -1995,107 +1997,107 @@ Variable Index Tag Table: Node: Top89 Node: Introduction497 -Node: Glossary1167 -Node: 7bit3183 -Node: 8bit4132 -Node: 94-character set5292 -Node: 96-character set5659 -Node: 94x94-character set6010 -Node: ASCII6403 -Node: Base646859 -Node: binary7464 -Node: cn-gb7796 -Node: cn-big58249 -Node: CNS 116438834 -Node: coded character set9583 -Node: code extension9918 -Node: Content-Disposition10207 -Node: Content-Type field10652 -Node: Emacs11706 -Node: encoded-word11924 -Node: encapsulation12344 -Node: entity12642 -Node: euc-kr12929 -Node: FTP13430 -Node: GB 231213618 -Node: GB 8565.214076 -Node: graphic character set14513 -Node: hz-gb231214737 -Node: ISO 202215576 -Node: iso-2022-cn15985 -Node: iso-2022-cn-ext16457 -Node: iso-2022-jp17107 -Node: iso-2022-jp-217819 -Node: iso-2022-kr18236 -Node: ISO 64618676 -Node: ISO 8859-118966 -Node: iso-8859-119283 -Node: ISO 8859-219757 -Node: iso-8859-220077 -Node: ISO 8859-320551 -Node: ISO 8859-420871 -Node: ISO 8859-521191 -Node: iso-8859-521515 -Node: ISO 8859-621957 -Node: ISO 8859-722279 -Node: iso-8859-722600 -Node: ISO 8859-823150 -Node: ISO 8859-923472 -Node: ISO-IR-16523792 -Node: JIS X020124275 -Node: JIS C622624969 -Node: JIS X020825221 -Node: JIS X021226675 -Node: koi8-r26999 -Node: KS C560127467 -Node: media type27885 -Node: message28839 -Node: message/rfc82229079 -Node: method29460 -Node: MIME29931 -Node: MIME charset30936 -Node: MTA31567 -Node: MUA31774 -Node: MULE31944 -Node: multipart32709 -Node: multipart/alternative33458 -Node: multipart/digest33923 -Node: multipart/encrypted34580 -Node: multipart/mixed34878 -Node: multipart/parallel35211 -Node: multipart/signed35658 -Node: PGP35934 -Node: PGP-kazu36619 -Node: PGP/MIME37255 -Node: Quoted-Printable37880 -Node: RFC 82138274 -Node: RFC 82238470 -Node: RFC 93438878 -Node: RFC 103639309 -Node: RFC 115339716 -Node: RFC 155739886 -Node: RFC 192240254 -Node: RFC 204540886 -Node: RFC 204641202 -Node: RFC 204841496 -Node: RFC 204941811 -Node: plain text42130 -Node: Security multipart42424 -Node: text/enriched43052 -Node: text/plain43322 -Node: tm-kernel43812 -Node: tm-MUA44229 -Node: us-ascii44681 -Node: Setting45296 -Node: mime-setup45903 -Node: signature46392 -Node: Notice about GNUS47928 -Node: tm-setup48813 -Node: setting for VM49366 -Node: manual setting49679 -Node: Bug report50283 -Node: Acknowledgments51737 -Node: Concept Index52830 -Node: Variable Index61554 +Node: Glossary1208 +Node: 7bit3224 +Node: 8bit4173 +Node: 94-character set5333 +Node: 96-character set5700 +Node: 94x94-character set6051 +Node: ASCII6444 +Node: Base646900 +Node: binary7505 +Node: cn-gb7837 +Node: cn-big58290 +Node: CNS 116438875 +Node: coded character set9624 +Node: code extension9959 +Node: Content-Disposition10248 +Node: Content-Type field10693 +Node: Emacs11747 +Node: encoded-word11965 +Node: encapsulation12385 +Node: entity12683 +Node: euc-kr12970 +Node: FTP13471 +Node: GB 231213659 +Node: GB 8565.214117 +Node: graphic character set14554 +Node: hz-gb231214778 +Node: ISO 202215617 +Node: iso-2022-cn16026 +Node: iso-2022-cn-ext16498 +Node: iso-2022-jp17148 +Node: iso-2022-jp-217860 +Node: iso-2022-kr18277 +Node: ISO 64618717 +Node: ISO 8859-119007 +Node: iso-8859-119324 +Node: ISO 8859-219798 +Node: iso-8859-220118 +Node: ISO 8859-320592 +Node: ISO 8859-420912 +Node: ISO 8859-521232 +Node: iso-8859-521556 +Node: ISO 8859-621998 +Node: ISO 8859-722320 +Node: iso-8859-722641 +Node: ISO 8859-823191 +Node: ISO 8859-923513 +Node: ISO-IR-16523833 +Node: JIS X020124316 +Node: JIS C622625010 +Node: JIS X020825262 +Node: JIS X021226716 +Node: koi8-r27040 +Node: KS C560127508 +Node: media type27926 +Node: message28880 +Node: message/rfc82229120 +Node: method29501 +Node: MIME29972 +Node: MIME charset30977 +Node: MTA31608 +Node: MUA31815 +Node: MULE31985 +Node: multipart32750 +Node: multipart/alternative33499 +Node: multipart/digest33964 +Node: multipart/encrypted34621 +Node: multipart/mixed34919 +Node: multipart/parallel35252 +Node: multipart/signed35699 +Node: PGP35975 +Node: PGP-kazu36660 +Node: PGP/MIME37296 +Node: Quoted-Printable37921 +Node: RFC 82138315 +Node: RFC 82238511 +Node: RFC 93438919 +Node: RFC 103639350 +Node: RFC 115339757 +Node: RFC 155739927 +Node: RFC 192240295 +Node: RFC 204540927 +Node: RFC 204641243 +Node: RFC 204841537 +Node: RFC 204941852 +Node: plain text42171 +Node: Security multipart42465 +Node: text/enriched43093 +Node: text/plain43363 +Node: tm-kernel43853 +Node: tm-MUA44270 +Node: us-ascii44722 +Node: Setting45337 +Node: mime-setup45944 +Node: signature46433 +Node: Notice about GNUS47969 +Node: tm-setup48854 +Node: setting for VM49407 +Node: manual setting49720 +Node: Bug report50324 +Node: Acknowledgments51778 +Node: Concept Index52871 +Node: Variable Index61595  End Tag Table diff --git a/doc/tm-en.sgml b/doc/tm-en.sgml index 9dce3b8..d84ed8d 100644 --- a/doc/tm-en.sgml +++ b/doc/tm-en.sgml @@ -1,5 +1,5 @@ - + tm 7.100 Manual (English Version) <author>MORIOKA Tomohiko <mail>morioka@jaist.ac.jp</mail> @@ -36,6 +36,7 @@ Please read following about each topics: <li><a file="gnus-mime-en">tm-MUA for Gnus</a> <li><a file="tm-gnus-en">tm-MUA for GNUS</a> <li><a file="tm-mh-e-en">tm-MUA for mh-e</a> +<li><a file="tm-vm-en">tm-MUA for VM</a> <li><a file="tm-view-en">mime/viewer-mode</a> <li><a file="tm-edit-en">mime/editor-mode</a> </ul> @@ -1315,7 +1316,7 @@ emacs. tm stands for `tools for MIME'. for <a file="mh-e">mh-e</a> <li><a file="tm-gnus_en"><concept>tm-gnus</concept></a> for GNUS <li><a file="gnus-mime-en"><concept>gnus-mime</concept></a> for Gnus -<li><a file="tm-vm_en"><concept>tm-vm</concept></a> for VM +<li><a file="tm-vm-en"><concept>tm-vm</concept></a> for VM <li><concept>tm-rmail</concept> for RMAIL </ul> diff --git a/doc/tm-en.texi b/doc/tm-en.texi index 183a1c8..e724553 100644 --- a/doc/tm-en.texi +++ b/doc/tm-en.texi @@ -51,6 +51,8 @@ tm-MUA for GNUS (@ref{(tm-gnus-en)}) @item tm-MUA for mh-e (@ref{(tm-mh-e-en)}) @item +tm-MUA for VM (@ref{(tm-vm-en)}) +@item mime/viewer-mode (@ref{(tm-view-en)}) @item mime/editor-mode (@ref{(tm-edit-en)}) @@ -1866,7 +1868,7 @@ MUA (@ref{MUA}) or MUA extender using tm (@ref{tm-kernel}).@refill @item @strong{gnus-mime} (@ref{(gnus-mime-en)}) for Gnus @item -@strong{tm-vm} (@ref{(tm-vm_en)}) for VM +@strong{tm-vm} (@ref{(tm-vm-en)}) for VM @item @strong{tm-rmail} for RMAIL @end itemize diff --git a/doc/tm-ja.info b/doc/tm-ja.info index 1d08dfe..d20371f 100644 --- a/doc/tm-ja.info +++ b/doc/tm-ja.info @@ -44,6 +44,7 @@ tm $B$O(B GNU Emacs $B$G(B MIME $B$r3Z$7$`$?$a$N(B package $B$G$9!#(Btm * tm-MUA for Gnus (*Note (gnus-mime-ja)::) * tm-MUA for GNUS (*Note (tm-gnus-ja)::) * tm-MUA for mh-e (*Note (tm-mh-e-ja)::) + * tm-MUA for VM (*Note (tm-vm-en)::) * mime/viewer-mode (*Note (tm-view-ja)::) * mime/editor-mode (*Note (tm-edit-ja)::) @@ -1841,10 +1842,11 @@ extender. *tm $BBg@9$j(B package* $B$K$O(B - * mh-e (*Note (mh-e)::) $BMQ$N(B *tm-mh-e* - * GNUS $BMQ$N(B *tm-gnus* + * mh-e (*Note (mh-e)::) $BMQ$N(B + *tm-mh-e* (*Note (tm-mh-e-en)::) + * GNUS $BMQ$N(B *tm-gnus* (*Note (tm-gnus-ja)::) * Gnus $BMQ$N(B *gnus-mime* (*Note (gnus-mime-ja)::) - * VM $BMQ$N(B *tm-vm* + * VM $BMQ$N(B *tm-vm* (*Note (tm-vm-en)::) * RMAIL $BMQ$N(B *tm-rmail* $B$,4^$^$l$F$$$k!#(B @@ -2329,107 +2331,107 @@ File: tm-ja.info, Node: Variable Index, Prev: Concept Index, Up: Top Tag table: Node: Top152 Node: Introduction721 -Node: Glossary1462 -Node: 7bit4992 -Node: 8bit6273 -Node: 94-character set8293 -Node: 96-character set8579 -Node: 94x94-character set8859 -Node: ASCII9176 -Node: Base649606 -Node: binary10304 -Node: cn-gb10859 -Node: cn-big511338 -Node: CNS 1164311981 -Node: Coded character set12751 -Node: Code extension13084 -Node: Content-Disposition13442 -Node: Content-Type field13891 -Node: Emacs14986 -Node: encoded-word15220 -Node: encapsulation15642 -Node: entity15937 -Node: euc-kr16228 -Node: FTP16738 -Node: GB 231217023 -Node: GB 8565.217585 -Node: Graphic character set18076 -Node: hz-gb231218340 -Node: ISO 202219161 -Node: iso-2022-cn19791 -Node: iso-2022-cn-ext20274 -Node: iso-2022-jp20953 -Node: iso-2022-jp-221663 -Node: iso-2022-kr22072 -Node: ISO 64622505 -Node: ISO 8859-123180 -Node: iso-8859-123611 -Node: ISO 8859-224056 -Node: iso-8859-224490 -Node: ISO 8859-324929 -Node: ISO 8859-425246 -Node: ISO 8859-525563 -Node: iso-8859-525972 -Node: ISO 8859-626414 -Node: ISO 8859-726733 -Node: iso-8859-727137 -Node: ISO 8859-827687 -Node: ISO 8859-928006 -Node: ISO-IR-16528323 -Node: JIS X020128845 -Node: JIS C622629748 -Node: JIS X020830040 -Node: JIS X021231939 -Node: koi8-r32298 -Node: KS C560132796 -Node: media type33208 -Node: message34616 -Node: message/rfc82234881 -Node: method35189 -Node: MIME35540 -Node: MIME charset36764 -Node: MTA37340 -Node: MUA37554 -Node: MULE37729 -Node: multipart38592 -Node: multipart/alternative39457 -Node: multipart/digest39762 -Node: multipart/encrypted40424 -Node: multipart/mixed40754 -Node: multipart/parallel41047 -Node: multipart/signed41334 -Node: PGP41630 -Node: PGP-kazu42466 -Node: PGP/MIME43872 -Node: Quoted-Printable44905 -Node: RFC 82145671 -Node: RFC 82245951 -Node: RFC 93446435 -Node: RFC 103646888 -Node: RFC 115347344 -Node: RFC 155747841 -Node: RFC 192248232 -Node: RFC 204548897 -Node: RFC 204649208 -Node: RFC 204849497 -Node: RFC 204949812 -Node: plain text50126 -Node: Security multipart50401 -Node: text/enriched51037 -Node: text/plain51479 -Node: tm-kernel51984 -Node: tm-MUA52489 -Node: us-ascii53008 -Node: Setting53674 -Node: mime-setup54354 -Node: signature54975 -Node: Notice about GNUS56733 -Node: tm-setup57885 -Node: setting for VM58725 -Node: manual setting59091 -Node: Bug report59646 -Node: Acknowledgments61258 -Node: Concept Index62898 -Node: Variable Index72297 +Node: Glossary1502 +Node: 7bit5032 +Node: 8bit6313 +Node: 94-character set8333 +Node: 96-character set8619 +Node: 94x94-character set8899 +Node: ASCII9216 +Node: Base649646 +Node: binary10344 +Node: cn-gb10899 +Node: cn-big511378 +Node: CNS 1164312021 +Node: Coded character set12791 +Node: Code extension13124 +Node: Content-Disposition13482 +Node: Content-Type field13931 +Node: Emacs15026 +Node: encoded-word15260 +Node: encapsulation15682 +Node: entity15977 +Node: euc-kr16268 +Node: FTP16778 +Node: GB 231217063 +Node: GB 8565.217625 +Node: Graphic character set18116 +Node: hz-gb231218380 +Node: ISO 202219201 +Node: iso-2022-cn19831 +Node: iso-2022-cn-ext20314 +Node: iso-2022-jp20993 +Node: iso-2022-jp-221703 +Node: iso-2022-kr22112 +Node: ISO 64622545 +Node: ISO 8859-123220 +Node: iso-8859-123651 +Node: ISO 8859-224096 +Node: iso-8859-224530 +Node: ISO 8859-324969 +Node: ISO 8859-425286 +Node: ISO 8859-525603 +Node: iso-8859-526012 +Node: ISO 8859-626454 +Node: ISO 8859-726773 +Node: iso-8859-727177 +Node: ISO 8859-827727 +Node: ISO 8859-928046 +Node: ISO-IR-16528363 +Node: JIS X020128885 +Node: JIS C622629788 +Node: JIS X020830080 +Node: JIS X021231979 +Node: koi8-r32338 +Node: KS C560132836 +Node: media type33248 +Node: message34656 +Node: message/rfc82234921 +Node: method35229 +Node: MIME35580 +Node: MIME charset36804 +Node: MTA37380 +Node: MUA37594 +Node: MULE37769 +Node: multipart38632 +Node: multipart/alternative39497 +Node: multipart/digest39802 +Node: multipart/encrypted40464 +Node: multipart/mixed40794 +Node: multipart/parallel41087 +Node: multipart/signed41374 +Node: PGP41670 +Node: PGP-kazu42506 +Node: PGP/MIME43912 +Node: Quoted-Printable44945 +Node: RFC 82145711 +Node: RFC 82245991 +Node: RFC 93446475 +Node: RFC 103646928 +Node: RFC 115347384 +Node: RFC 155747881 +Node: RFC 192248272 +Node: RFC 204548937 +Node: RFC 204649248 +Node: RFC 204849537 +Node: RFC 204949852 +Node: plain text50166 +Node: Security multipart50441 +Node: text/enriched51077 +Node: text/plain51519 +Node: tm-kernel52024 +Node: tm-MUA52529 +Node: us-ascii53121 +Node: Setting53787 +Node: mime-setup54467 +Node: signature55088 +Node: Notice about GNUS56846 +Node: tm-setup57998 +Node: setting for VM58838 +Node: manual setting59204 +Node: Bug report59759 +Node: Acknowledgments61371 +Node: Concept Index63011 +Node: Variable Index72410  End tag table diff --git a/doc/tm-ja.sgml b/doc/tm-ja.sgml index f2661cf..d06161e 100644 --- a/doc/tm-ja.sgml +++ b/doc/tm-ja.sgml @@ -1,5 +1,5 @@ <!doctype sinfo system> -<!-- $Id: tm-ja.sgml,v 7.5 1996/12/25 18:38:38 morioka Exp $ --> +<!-- $Id: tm-ja.sgml,v 7.6 1997/01/10 06:32:24 morioka Exp $ --> <head> <title>tm 7.100 Manual$B!JF|K\8lHG!K(B <author>$B<i2,(B $BCNI'(B <mail>morioka@jaist.ac.jp</mail> @@ -38,6 +38,7 @@ tm $B$O(B GNU Emacs $B$G(B MIME $B$r3Z$7$`$?$a$N(B package $B$G$9!#(Btm <li><a file="gnus-mime-ja">tm-MUA for Gnus</a> <li><a file="tm-gnus-ja">tm-MUA for GNUS</a> <li><a file="tm-mh-e-ja">tm-MUA for mh-e</a> +<li><a file="tm-vm-en">tm-MUA for VM</a> <li><a file="tm-view-ja">mime/viewer-mode</a> <li><a file="tm-edit-ja">mime/editor-mode</a> </ul> @@ -1367,10 +1368,11 @@ Emacs $B$G(B <dref>MIME</dref> $B$rMxMQ$9$k$?$a$N(B user interface $B$rDs( <concept>tm $BBg@9$j(B package</concept> $B$K$O(B <ul> -<li><a file="mh-e">mh-e</a> $BMQ$N(B <concept>tm-mh-e</concept> -<li>GNUS $BMQ$N(B <concept>tm-gnus</concept> +<li><a file="mh-e">mh-e</a> $BMQ$N(B + <a file="tm-mh-e-en"><concept>tm-mh-e</concept></a> +<li>GNUS $BMQ$N(B <a file="tm-gnus-ja"><concept>tm-gnus</concept></a> <li>Gnus $BMQ$N(B <a file="gnus-mime-ja"><concept>gnus-mime</concept></a> -<li>VM $BMQ$N(B <concept>tm-vm</concept> +<li>VM $BMQ$N(B <a file="tm-vm-en"><concept>tm-vm</concept></a> <li>RMAIL $BMQ$N(B <concept>tm-rmail</concept> </ul> diff --git a/doc/tm-ja.texi b/doc/tm-ja.texi index a56c44a..8afade4 100644 --- a/doc/tm-ja.texi +++ b/doc/tm-ja.texi @@ -52,6 +52,8 @@ tm-MUA for GNUS (@ref{(tm-gnus-ja)}) @item tm-MUA for mh-e (@ref{(tm-mh-e-ja)}) @item +tm-MUA for VM (@ref{(tm-vm-en)}) +@item mime/viewer-mode (@ref{(tm-view-ja)}) @item mime/editor-mode (@ref{(tm-edit-ja)}) @@ -1881,13 +1883,14 @@ extender.@refill @itemize @bullet @item -mh-e (@ref{(mh-e)}) $BMQ$N(B @strong{tm-mh-e} +mh-e (@ref{(mh-e)}) $BMQ$N(B + @strong{tm-mh-e} (@ref{(tm-mh-e-en)}) @item -GNUS $BMQ$N(B @strong{tm-gnus} +GNUS $BMQ$N(B @strong{tm-gnus} (@ref{(tm-gnus-ja)}) @item Gnus $BMQ$N(B @strong{gnus-mime} (@ref{(gnus-mime-ja)}) @item -VM $BMQ$N(B @strong{tm-vm} +VM $BMQ$N(B @strong{tm-vm} (@ref{(tm-vm-en)}) @item RMAIL $BMQ$N(B @strong{tm-rmail} @end itemize diff --git a/methods/ChangeLog b/methods/ChangeLog index 2b242c3..279b927 100644 --- a/methods/ChangeLog +++ b/methods/ChangeLog @@ -1,6 +1,15 @@ -Fri Dec 27 20:14:12 1996 MORIOKA Tomohiko <morioka@jaist.ac.jp> +1997-01-22 Steve Carney <carney@gvc.dec.com> - * tm-au: rearrangement. + * tm-au: modified to support Digital Unix. + +Fri Jan 10 14:53:36 1997 MORIOKA Tomohiko <morioka@jaist.ac.jp> + + * tm-plain, tm-html, tm-file, tm-au: Add header. + +Tue Jan 7 04:07:20 1997 Martin Buchholz <mrb@Eng.Sun.COM> + + * tmdecode, tm-ps, tm-plain, tm-html, tm-mpeg, tm-image, tm-file, + tm-au: avoid to lost submodules. Fri Dec 27 13:57:36 1996 Chris Felaco <felaco@GPW058.ED.RAY.COM> diff --git a/methods/tm-au b/methods/tm-au index d6b47ec..e87255f 100755 --- a/methods/tm-au +++ b/methods/tm-au @@ -1,7 +1,25 @@ #!/bin/sh - # -# $Id: tm-au,v 3.4 1996/12/27 20:14:12 morioka Exp $ +# $Id: tm-au,v 4.1 1997/01/27 15:52:59 morioka Exp $ # +# Copyright 1994,1995,1996,1997 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Emacs; see the file COPYING. If not, write to the +# Free Software Foundation, Inc., 59 Temple Place - Suite 330, +# Boston, MA 02111-1307, USA. + +PATH=${PATH:-/usr/bin:/bin}:`dirname $0 2>/dev/null`; export PATH if [ "$TM_TMP_DIR" = "" ]; then TM_TMP_DIR=/tmp @@ -20,14 +38,15 @@ case "$4" in echo "$2; $3 ->" tmdecode $3 $1 $filename if [ "$AUDIOSERVER" = "" ]; then - if [ `uname` = "IRIX" ]; then - sfplay $filename - else - cat $filename > /dev/audio - fi + case "`uname`" in + IRIX ) sfplay $filename ;; + OSF1 ) decsound -play $filename ;; + * ) cat $filename > /dev/audio ;; + esac else - autool -v 40 $filename + autool -v 40 $filename fi + trap 'rm -f $filename' 0 1 2 3 13 15 ;; "extract") diff --git a/methods/tm-file b/methods/tm-file index bac4bfa..154b520 100755 --- a/methods/tm-file +++ b/methods/tm-file @@ -1,7 +1,25 @@ #!/bin/sh - # -# $Id: tm-file,v 3.0 1995/12/18 11:39:26 morioka Exp $ +# $Id: tm-file,v 4.0 1997/01/10 14:50:32 morioka Exp $ # +# Copyright 1994,1995,1996,1997 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Emacs; see the file COPYING. If not, write to the +# Free Software Foundation, Inc., 59 Temple Place - Suite 330, +# Boston, MA 02111-1307, USA. + +PATH=${PATH:-/usr/bin:/bin}:`dirname $0 2>/dev/null`; export PATH if [ "$TM_TMP_DIR" = "" ]; then TM_TMP_DIR=/tmp diff --git a/methods/tm-html b/methods/tm-html index a1b07b7..4b561f3 100755 --- a/methods/tm-html +++ b/methods/tm-html @@ -1,7 +1,25 @@ #!/bin/sh # -# $Id: tm-html,v 4.1 1996/08/08 15:58:28 morioka Exp $ +# $Id: tm-html,v 5.0 1997/01/10 14:51:59 morioka Exp $ # +# Copyright 1994,1995,1996,1997 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Emacs; see the file COPYING. If not, write to the +# Free Software Foundation, Inc., 59 Temple Place - Suite 330, +# Boston, MA 02111-1307, USA. + +PATH=${PATH:-/usr/bin:/bin}:`dirname $0 2>/dev/null`; export PATH if [ "$TM_TMP_DIR" = "" ]; then TM_TMP_DIR=/tmp diff --git a/methods/tm-image b/methods/tm-image index 5691bd2..786973d 100755 --- a/methods/tm-image +++ b/methods/tm-image @@ -1,6 +1,6 @@ #!/bin/sh - # -# $Id: tm-image,v 1.1 1996/09/21 15:12:12 morioka Exp $ +# $Id: tm-image,v 2.0 1997/01/10 14:42:48 morioka Exp $ # # Copyright 1994, 1995, 1996 Free Software Foundation, Inc. @@ -19,6 +19,8 @@ # Free Software Foundation, Inc., 59 Temple Place - Suite 330, # Boston, MA 02111-1307, USA. +PATH=${PATH:-/usr/bin:/bin}:`dirname $0 2>/dev/null`; export PATH + if [ "$TM_TMP_DIR" = "" ]; then TM_TMP_DIR=/tmp export TM_TMP_DIR diff --git a/methods/tm-mpeg b/methods/tm-mpeg index 20231aa..d11f4c2 100755 --- a/methods/tm-mpeg +++ b/methods/tm-mpeg @@ -1,6 +1,6 @@ #!/bin/sh - # -# $Id: tm-mpeg,v 1.1 1996/09/21 15:14:49 morioka Exp $ +# $Id: tm-mpeg,v 2.0 1997/01/10 14:43:13 morioka Exp $ # # Copyright 1994, 1995, 1996 Free Software Foundation, Inc. @@ -19,6 +19,8 @@ # Free Software Foundation, Inc., 59 Temple Place - Suite 330, # Boston, MA 02111-1307, USA. +PATH=${PATH:-/usr/bin:/bin}:`dirname $0 2>/dev/null`; export PATH + if [ "$TM_TMP_DIR" = "" ]; then TM_TMP_DIR=/tmp export TM_TMP_DIR diff --git a/methods/tm-plain b/methods/tm-plain index d53741e..7509f7b 100755 --- a/methods/tm-plain +++ b/methods/tm-plain @@ -1,7 +1,25 @@ #!/bin/sh - # -# $Id: tm-plain,v 3.0 1995/12/18 11:37:12 morioka Exp $ +# $Id: tm-plain,v 4.0 1997/01/10 14:53:36 morioka Exp $ # +# Copyright 1994,1995,1996,1997 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Emacs; see the file COPYING. If not, write to the +# Free Software Foundation, Inc., 59 Temple Place - Suite 330, +# Boston, MA 02111-1307, USA. + +PATH=${PATH:-/usr/bin:/bin}:`dirname $0 2>/dev/null`; export PATH if [ "$TM_TMP_DIR" = "" ]; then TM_TMP_DIR=/tmp @@ -27,4 +45,4 @@ case "$4" in echo "$2; $3 ->" tmdecode "$3" "$1" /dev/stdout | lpr ;; -esac \ No newline at end of file +esac diff --git a/methods/tm-ps b/methods/tm-ps index e413fb1..f0fb101 100755 --- a/methods/tm-ps +++ b/methods/tm-ps @@ -1,6 +1,6 @@ #!/bin/sh - # -# $Id: tm-ps,v 1.1 1996/09/21 15:07:41 morioka Exp $ +# $Id: tm-ps,v 2.0 1997/01/10 14:46:10 morioka Exp $ # # Copyright 1994, 1995, 1996 Free Software Foundation, Inc. @@ -19,6 +19,8 @@ # Free Software Foundation, Inc., 59 Temple Place - Suite 330, # Boston, MA 02111-1307, USA. +PATH=${PATH:-/usr/bin:/bin}:`dirname $0 2>/dev/null`; export PATH + if [ "$TM_TMP_DIR" = "" ]; then TM_TMP_DIR=/tmp export TM_TMP_DIR diff --git a/methods/tmdecode b/methods/tmdecode index 5f251b9..2a09588 100755 --- a/methods/tmdecode +++ b/methods/tmdecode @@ -1,6 +1,6 @@ #!/bin/sh - # -# $Id: tmdecode,v 4.0 1996/09/21 15:08:47 morioka Exp $ +# $Id: tmdecode,v 4.1 1997/01/10 14:47:06 morioka Exp $ # # Copyright 1994, 1995, 1996 Free Software Foundation, Inc. @@ -19,6 +19,8 @@ # Free Software Foundation, Inc., 59 Temple Place - Suite 330, # Boston, MA 02111-1307, USA. +PATH=${PATH:-/usr/bin:/bin}:`dirname $0 2>/dev/null`; export PATH + trap 'rm -f $2' 0 1 2 3 13 15 case "$3" in diff --git a/mime-setup.el.in b/mime-setup.el.in index 331b49c..c12bc6f 100644 --- a/mime-setup.el.in +++ b/mime-setup.el.in @@ -1,10 +1,10 @@ ;;; mime-setup.el --- setup file for tm viewer and composer. -;; Copyright (C) 1995,1996 Free Software Foundation, Inc. +;; Copyright (C) 1995,1996,1997 Free Software Foundation, Inc. ;; Author: MORIOKA Tomohiko <morioka@jaist.ac.jp> ;; Version: -;; $Id: mime-setup.el.in,v 7.29 1996/11/05 02:53:26 shuhei-k Exp $ +;; $Id: mime-setup.el.in,v 7.31 1997/01/30 09:10:29 morioka Exp $ ;; Keywords: mail, news, MIME, multimedia, multilingual, encoded-word ;; This file is part of tm (Tools for MIME). @@ -102,13 +102,18 @@ (add-hook 'mu-cite/pre-cite-hook 'mime/decode-message-header) -;;; @ for RMAIL and VM +;;; @ for mail-mode, RMAIL and VM ;;; (add-hook 'mail-setup-hook 'mime/decode-message-header) (add-hook 'mail-setup-hook 'mime/editor-mode 'append) (add-hook 'mail-send-hook 'mime-editor/maybe-translate) - +(set-alist 'mime-editor/split-message-sender-alist + 'mail-mode (function + (lambda () + (interactive) + (funcall send-mail-function) + ))) ;;; @ for mh-e ;;; diff --git a/tm-def.el b/tm-def.el index cae6e27..bd80377 100644 --- a/tm-def.el +++ b/tm-def.el @@ -3,7 +3,7 @@ ;; Copyright (C) 1995,1996 Free Software Foundation, Inc. ;; Author: MORIOKA Tomohiko <morioka@jaist.ac.jp> -;; Version: $Id: tm-def.el,v 7.67 1996/12/27 20:39:43 morioka Exp $ +;; Version: $Id: tm-def.el,v 7.69 1997/01/21 06:13:15 shuhei-k Exp $ ;; Keywords: mail, news, MIME, multimedia, definition ;; This file is part of tm (Tools for MIME). @@ -111,6 +111,9 @@ (defvar tm:mouse-face 'highlight "Face used for MIME-preview buffer mouse highlighting. [tm-def.el]") +(defvar tm:warning-face nil + "Face used for invalid encoded-word.") + (defun tm:add-button (from to func &optional data) "Create a button between FROM and TO with callback FUNC and data DATA." (and tm:button-face @@ -183,7 +186,7 @@ ;;; @@ Base64 ;;; -(defconst base64-token-regexp "[A-Za-z0-9+/=]") +(defconst base64-token-regexp "[A-Za-z0-9+/]") (defconst base64-token-padding-regexp "[A-Za-z0-9+/=]") (defconst mime/B-encoded-text-regexp diff --git a/tm-edit.el b/tm-edit.el index 26f2732..a3daada 100644 --- a/tm-edit.el +++ b/tm-edit.el @@ -1,12 +1,12 @@ ;;; tm-edit.el --- Simple MIME Composer for GNU Emacs -;; Copyright (C) 1993 .. 1996 Free Software Foundation, Inc. +;; Copyright (C) 1993,1994,1995,1996,1997 Free Software Foundation, Inc. ;; Author: UMEDA Masanobu <umerin@mse.kyutech.ac.jp> ;; MORIOKA Tomohiko <morioka@jaist.ac.jp> ;; Maintainer: MORIOKA Tomohiko <morioka@jaist.ac.jp> ;; Created: 1994/08/21 renamed from mime.el -;; Version: $Revision: 7.100 $ +;; Version: $Revision: 7.102 $ ;; Keywords: mail, news, MIME, multimedia, multilingual ;; This file is part of tm (Tools for MIME). @@ -41,8 +41,8 @@ ;; resulted in RFC 1468 (ISO-2022-JP charset for MIME). In order to ;; enable multilingual capability in single text message in MIME, ;; charset of multilingual text written in Mule is declared as either -;; `ISO-2022-JP-2' [RFC 1554] or `ISO-2022-INT-1'. Mule is required -;; for reading the such messages. +;; `ISO-2022-JP-2' [RFC 1554]. Mule is required for reading the such +;; messages. ;; This MIME composer can work with Mail mode, mh-e letter Mode, and ;; News mode. First of all, you need the following autoload @@ -96,7 +96,7 @@ ;; This is also a plain text. But, it is explicitly specified as is. ;; ;;--[[text/plain; charset=ISO-2022-JP]] -;; $B$3$l$O(B charset $B$r(B ISO-2022-JP $B$K;XDj$7$?F|K\8l$N(B plain $B%F%-%9%H$G$9(B. +;; $(B$3$l$O(B charset $(B$r(B ISO-2022-JP $(B$K;XDj$7$?F|K\8l$N(B plain $(B%F%-%9%H$G$9(B. ;; ;;--[[text/richtext]] ;; <center>This is a richtext.</center> @@ -120,7 +120,7 @@ ;;; (defconst mime-editor/RCS-ID - "$Id: tm-edit.el,v 7.100 1996/12/25 17:10:58 morioka Exp $") + "$Id: tm-edit.el,v 7.102 1997/01/30 11:31:36 morioka Exp $") (defconst mime-editor/version (get-version-string mime-editor/RCS-ID)) @@ -741,13 +741,15 @@ TABs at the beginning of the line are not a part of the message: --[[text/plain]] This is also a plain text. But, it is explicitly specified as is. - --[[text/plain; charset=ISO-2022-JP]] - $B$3$l$O(B charset $B$r(B ISO-2022-JP $B$K;XDj$7$?F|K\8l$N(B plain $B%F%-%9(B - $B%H$G$9(B. - --[[text/richtext]] - <center>This is a richtext.</center> - --[[image/gif][base64]]^M...image encoded in base64 here... - --[[audio/basic][base64]]^M...audio encoded in base64 here... + --[[text/plain; charset=ISO-8859-1]] + This is also a plain text. But charset is specified as + iso-8859-1. + + ¡Hola! Buenos días. ¿Cómo está usted? + --[[text/enriched]] + This is a <bold>enriched text</bold>. + --[[image/gif][base64]]...image encoded in base64 here... + --[[audio/basic][base64]]...audio encoded in base64 here... User customizable variables (not documented all of them): mime-prefix @@ -851,7 +853,8 @@ just return to previous mode." ;; Restore previous state. (setq mime/editor-mode-flag nil) (cond (running-xemacs - (delete-menu-item (list mime-editor/menu-title))) + (if (featurep 'menubar) + (delete-menu-item (list mime-editor/menu-title)))) (t (use-local-map mime/editor-mode-old-local-map))) diff --git a/tm-ew-d.el b/tm-ew-d.el index 9eec4d7..9ebf125 100644 --- a/tm-ew-d.el +++ b/tm-ew-d.el @@ -1,6 +1,6 @@ ;;; tm-ew-d.el --- RFC 2047 based encoded-word decoder for GNU Emacs -;; Copyright (C) 1995,1996 Free Software Foundation, Inc. +;; Copyright (C) 1995,1996,1997 Free Software Foundation, Inc. ;; Author: ENAMI Tsugutomo <enami@sys.ptg.sony.co.jp> ;; MORIOKA Tomohiko <morioka@jaist.ac.jp> @@ -9,7 +9,7 @@ ;; Original: 1992/07/20 ENAMI Tsugutomo's `mime.el'. ;; Renamed: 1993/06/03 to tiny-mime.el. ;; Renamed: 1995/10/03 from tiny-mime.el. (split off encoder) -;; Version: $Revision: 7.34 $ +;; Version: $Revision: 7.39 $ ;; Keywords: encoded-word, MIME, multilingual, header, mail, news ;; This file is part of tm (Tools for MIME). @@ -35,13 +35,14 @@ (require 'std11) (require 'mel) (require 'tm-def) +(require 'tl-str) ;;; @ version ;;; (defconst tm-ew-d/RCS-ID - "$Id: tm-ew-d.el,v 7.34 1996/12/04 04:49:14 morioka Exp $") + "$Id: tm-ew-d.el,v 7.39 1997/01/21 06:17:18 shuhei-k Exp $") (defconst mime/eword-decoder-version (get-version-string tm-ew-d/RCS-ID)) @@ -122,10 +123,13 @@ such as a version of Net$cape). [tm-ew-d.el]" (mime/unfolding) ) (goto-char (point-min)) - (while (re-search-forward "\\?=\\(\n*\\s +\\)+=\\?" nil t) - (replace-match "?==?") + (while (re-search-forward (concat "\\(" mime/encoded-word-regexp "\\)" + "\\(\n?[ \t]\\)+" + "\\(" mime/encoded-word-regexp "\\)") + nil t) + (replace-match "\\1\\6") + (goto-char (point-min)) ) - (goto-char (point-min)) (let (charset encoding text) (while (re-search-forward mime/encoded-word-regexp nil t) (insert (mime/decode-encoded-word @@ -194,8 +198,13 @@ as a version of Net$cape). [tm-ew-d.el]" )) (condition-case err (mime/decode-encoded-text charset encoding text must-unfold) - (error nil)) - )) + (error + (and (tl:add-text-properties 0 (length word) + (and tm:warning-face + (list 'face tm:warning-face)) + word) + word))) + )) word)) @@ -216,24 +225,31 @@ as a version of Net$cape). [tm-ew-d.el]" (let ((cs (mime-charset-to-coding-system charset))) (if cs (let ((dest - (cond ((and (string-equal "B" encoding) - (string-match mime/B-encoded-text-regexp string)) - (base64-decode-string string)) - ((and (string-equal "Q" encoding) - (string-match mime/Q-encoded-text-regexp string)) - (q-encoding-decode-string string)) - (t (message "Invalid encoded-word %s" encoding) - nil)))) + (cond + ((string-equal "B" encoding) + (if (and (string-match mime/B-encoded-text-regexp string) + (string-equal string (match-string 0 string))) + (base64-decode-string string) + (error "Invalid encoded-text %s" string))) + ((string-equal "Q" encoding) + (if (and (string-match mime/Q-encoded-text-regexp string) + (string-equal string (match-string 0 string))) + (q-encoding-decode-string string) + (error "Invalid encoded-text %s" string))) + (t + (error "Invalid encoding %s" encoding) + ))) + ) (if dest (progn (setq dest (decode-coding-string dest cs)) (if must-unfold (mapconcat (function (lambda (chr) - (if (eq chr ?\n) - "" - (char-to-string chr) - ) + (cond + ((eq chr ?\n) "") + ((eq chr ?\t) " ") + (t (char-to-string chr))) )) (std11-unfold-string dest) "") diff --git a/tm-pgp.el b/tm-pgp.el index bb9a422..cafdb9f 100644 --- a/tm-pgp.el +++ b/tm-pgp.el @@ -1,11 +1,10 @@ ;;; tm-pgp.el --- tm-view internal methods for PGP. -;; Copyright (C) 1995,1996 Free Software Foundation, Inc. +;; Copyright (C) 1995,1996,1997 MORIOKA Tomohiko ;; Author: MORIOKA Tomohiko <morioka@jaist.ac.jp> -;; Maintainer: MORIOKA Tomohiko <morioka@jaist.ac.jp> ;; Created: 1995/12/7 -;; Version: $Id: tm-pgp.el,v 7.24 1996/10/18 04:47:02 morioka Exp $ +;; Version: $Id: tm-pgp.el,v 7.28 1997/01/29 15:18:53 morioka Exp $ ;; Keywords: mail, news, MIME, multimedia, PGP, security ;; This file is part of tm (Tools for MIME). @@ -29,22 +28,37 @@ ;; This module is based on 2 drafts about PGP MIME integration: -;; - draft-elkins-pem-pgp-04.txt -;; ``MIME Security with Pretty Good Privacy (PGP)'' +;; - RFC 2015: "MIME Security with Pretty Good Privacy (PGP)" ;; by Michael Elkins <elkins@aero.org> (1996/6) ;; -;; - draft-kazu-pgp-mime-00.txt -;; ``PGP MIME Integration'' -;; by Kazuhiko Yamamoto <kazu@is.aist-nara.ac.jp> (1995/10) +;; - draft-kazu-pgp-mime-00.txt: "PGP MIME Integration" +;; by Kazuhiko Yamamoto <kazu@is.aist-nara.ac.jp> +;; (1995/10; expired) ;; -;; These drafts may be contrary to each other. You should decide -;; which you support. +;; These drafts may be contrary to each other. You should decide +;; which you support. (Maybe you should use PGP/MIME) ;;; Code: -(require 'mailcrypt) (require 'tm-play) +(defvar pgp-verify-function + 'mc-verify "*PGP verify function.") + +(defvar pgp-decrypt-function + 'mc-decrypt "*PGP decrypt function.") + +(defvar pgp-fetch-key-function + 'mc-pgp-fetch-key "*PGP fetch key function.") + +(defvar pgp-snarf-keys-function + 'mc-snarf-keys "*PGP snarf keys function.") + +(autoload pgp-verify-function "mc-toplev") +(autoload pgp-decrypt-function "mc-toplev") +(autoload pgp-fetch-key-function "mc-toplev") +(autoload pgp-snarf-keys-function "mc-toplev") + ;;; @ internal method for application/pgp ;;; @@ -56,8 +70,9 @@ (new-name (format "%s-%s" (buffer-name) cnum)) (mother mime::article/preview-buffer) (mode major-mode) - code-converter str) - (setq str (buffer-substring beg end)) + code-converter + (str (buffer-substring beg end)) + ) (switch-to-buffer new-name) (erase-buffer) (insert str) @@ -65,7 +80,7 @@ (goto-char (point-min)) (re-search-forward "^-+BEGIN PGP SIGNED MESSAGE-+$" nil t) ) - (mc-verify) + (funcall pgp-verify-function) (goto-char (point-min)) (delete-region (point-min) @@ -91,7 +106,7 @@ (goto-char (point-min)) (re-search-forward "^-+BEGIN PGP MESSAGE-+$" nil t) ) - (as-binary-process (mc-decrypt)) + (as-binary-process (funcall pgp-decrypt-function)) (goto-char (point-min)) (delete-region (point-min) (and @@ -117,7 +132,7 @@ ;;; @ Internal method for application/pgp-signature ;;; -;;; It is based on draft-elkins-pem-pgp-02.txt +;;; It is based on RFC 2015. (defvar tm-pgp::default-language 'en "*Symbol of language for pgp. @@ -186,15 +201,7 @@ It should be ISO 639 2 letter language code such as en, ja, ...") (while (re-search-forward "\n" nil t) (replace-match "\r\n") ) - (let ((mc-flag nil) ; for Mule - (file-coding-system *noconv*) - kanji-flag ; for NEmacs - (emx-binary-mode t) ; for OS/2 - jka-compr-compression-info-list ; for jka-compr - jam-zcat-filename-list ; for jam-zcat - require-final-newline) - (write-file orig-file) - ) + (as-binary-output-file (write-file orig-file)) (kill-buffer (current-buffer)) ) (save-excursion @@ -210,16 +217,7 @@ It should be ISO 639 2 letter language code such as en, ja, ...") (set-buffer (setq kbuf (get-buffer-create mime/temp-buffer-name))) (insert str) (mime-decode-region (point-min)(point-max) encoding) - (let ((mc-flag nil) ; for Mule - (file-coding-system *noconv*) - kanji-flag ; for NEmacs - (emx-binary-mode t) ; for OS/2 - jka-compr-compression-info-list ; for jka-compr - jam-zcat-filename-list ; for jam-zcat - require-final-newline) - (write-file sig-file) - ) - ;;(get-buffer-create mime/output-buffer-name) + (as-binary-output-file (write-file sig-file)) (or (mime::article/call-pgp-to-check-signature mime/output-buffer-name orig-file) (let (pgp-id) @@ -243,7 +241,7 @@ It should be ISO 639 2 letter language code such as en, ja, ...") (format "Key %s not found; attempt to fetch? " pgp-id)) ) (progn - (mc-pgp-fetch-key (cons nil pgp-id)) + (funcall pgp-fetch-key-function (cons nil pgp-id)) (mime::article/call-pgp-to-check-signature mime/output-buffer-name orig-file) )) @@ -264,7 +262,7 @@ It should be ISO 639 2 letter language code such as en, ja, ...") ;;; @ Internal method for application/pgp-encrypted ;;; -;;; It is based on draft-elkins-pem-pgp-02.txt +;;; It is based on RFC 2015. (defun mime-article/decrypt-pgp (beg end cal) (let* ((cnum (mime-article/point-content-number beg)) @@ -290,9 +288,7 @@ It should be ISO 639 2 letter language code such as en, ja, ...") ;;; @ Internal method for application/pgp-keys ;;; -;;; It is based on draft-elkins-pem-pgp-02.txt - -(autoload 'mc-snarf-keys "mc-toplev") +;;; It is based on RFC 2015. (defun mime-article/add-pgp-keys (beg end cal) (let* ((cnum (mime-article/point-content-number beg)) @@ -313,7 +309,7 @@ It should be ISO 639 2 letter language code such as en, ja, ...") (delete-region (point-min) (match-end 0)) ) (mime-decode-region (point-min)(point-max) encoding) - (mc-snarf-keys) + (funcall pgp-snarf-keys-function) (kill-buffer (current-buffer)) )) -- 1.7.10.4