changeset 17762:dfefaeb20c75

(rmail-enable-decoding-message): New variable. (rmail-convert-file): Comment fixed. (rmail-revert): Do not decode RMAIL file again because the backup file is saved in Emacs internal format. (rmail-convert-to-babyl-format): Check rmail-enable-decoding-message.
author Kenichi Handa <handa@m17n.org>
date Mon, 12 May 1997 06:56:27 +0000
parents c5f430853301
children 9ba20cfe79f2
files lisp/mail/rmail.el
diffstat 1 files changed, 17 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/mail/rmail.el	Mon May 12 06:56:25 1997 +0000
+++ b/lisp/mail/rmail.el	Mon May 12 06:56:27 1997 +0000
@@ -391,6 +391,14 @@
 This is set to nil by default.")
 
 ;;;###autoload
+(defvar rmail-enable-decoding-message nil
+  "*If non-nil, RMAIL decode character code of incomming mails automatically.
+The default value is nil.
+
+Regardless of the value of this variable, MIME messages are decoded
+if rmail-enable-mime is non-nil.")
+
+;;;###autoload
 (defcustom rmail-enable-mime nil
   "*If non-nil, RMAIL uses MIME feature.
 If the value is t, RMAIL automatically shows MIME decoded message.
@@ -517,9 +525,9 @@
     (if (and (not convert)
 	     (not rmail-enable-mime)
 	     rmail-file-coding-system)
-	;; Decode BABYL part at the headq only.  The remaining non
-	;; BABYL parts are decode in rmail-convert-to-babyl-format if
-	;; necessary..
+	;; Decode coding system of BABYL part at the head only.  The
+	;; remaining non BABYL parts are decoded in
+	;; rmail-convert-to-babyl-format if necessary.
 	(rmail-decode-babyl-format))
     ;; If file was not a Babyl file or if there are
     ;; Unix format messages added at the end,
@@ -885,7 +893,10 @@
     (if (revert-buffer arg noconfirm)
 	;; If the user said "yes", and we changed something,
 	;; reparse the messages.
-	(progn
+	;; But, we don't have to convert coding system because backup
+	;; files should have been saved by Emacs' internal format.
+	(let ((rmail-file-coding-system nil)
+	      (rmail-enable-decoding-message nil))
 	  (rmail-convert-file)
 	  (goto-char (point-max))
 	  (rmail-mode)))))
@@ -1389,7 +1400,7 @@
 		   (while (search-forward "\n\^_" nil t); single char "\^_"
 		     (replace-match "\n^_")))); 2 chars: "^" and "_"
 	       (or rmail-enable-mime
-		   (not rmail-file-coding-system)
+		   (not rmail-enable-decoding-message)
 		   (decode-coding-region start (point) 'automatic-conversion))
 	       (narrow-to-region (point) (point-max))
 	       (setq count (1+ count)))
@@ -1452,7 +1463,7 @@
 		     (replace-match "\n^_")))); 2 chars: "^" and "_"
 	       (insert ?\^_)
 	       (or rmail-enable-mime
-		   (not rmail-file-coding-system)
+		   (not rmail-enable-decoding-message)
 		   (decode-coding-region start (point) 'automatic-conversion))
 	       (narrow-to-region (point) (point-max)))
 	      ;;