[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] trunk r115839: Minor rmail fixes.
From: |
Richard M. Stallman |
Subject: |
[Emacs-diffs] trunk r115839: Minor rmail fixes. |
Date: |
Thu, 02 Jan 2014 22:33:31 +0000 |
User-agent: |
Bazaar (2.6b2) |
------------------------------------------------------------
revno: 115839
revision-id: address@hidden
parent: address@hidden
author: rms
committer: Richard Stallman <address@hidden>
branch nick: trunk
timestamp: Thu 2014-01-02 17:30:32 -0500
message:
Minor rmail fixes.
* mail/rmail.el (rmail-get-coding-function): Variable.
(rmail-get-coding-system): Use it.
* mail/rmail.el (rmail-make-in-reply-to-field):
Add parens in message-id.
* mail/rmailmm.el (rmail-mime-message-p): Moved to rmail.el.
* mail/rmail.el (rmail-mime-message-p): Moved from rmailmm.el.
(rmail-epa-decrypt): Turn off mime processing.
modified:
lisp/ChangeLog changelog-20091113204419-o5vbwnq5f7feedwu-1432
lisp/mail/rmail.el rmail.el-20091113204419-o5vbwnq5f7feedwu-8812
lisp/mail/rmailmm.el rmailmm.el-20091113204419-o5vbwnq5f7feedwu-8815
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog 2014-01-02 21:05:34 +0000
+++ b/lisp/ChangeLog 2014-01-02 22:30:32 +0000
@@ -1,3 +1,15 @@
+2014-01-02 Richard Stallman <address@hidden>
+
+ * mail/rmailmm.el (rmail-mime-message-p): Moved to rmail.el.
+ * mail/rmail.el (rmail-mime-message-p): Moved from rmailmm.el.
+ (rmail-epa-decrypt): Turn off mime processing.
+
+ * mail/rmail.el (rmail-make-in-reply-to-field):
+ Add parens in message-id.
+
+ * mail/rmail.el (rmail-get-coding-function): Variable.
+ (rmail-get-coding-system): Use it.
+
2014-01-02 Vincent Belaïche <address@hidden>
* ses.el (ses-initial-global-parameters-re): New defconst, a
=== modified file 'lisp/mail/rmail.el'
--- a/lisp/mail/rmail.el 2014-01-01 07:43:34 +0000
+++ b/lisp/mail/rmail.el 2014-01-02 22:30:32 +0000
@@ -104,6 +104,11 @@
"Non-nil if message has been processed by `rmail-show-mime-function'.")
(put 'rmail-mime-decoded 'permanent-local t) ; for rmail-edit
+(defsubst rmail-mime-message-p ()
+ "Non-nil if and only if the current message is a MIME."
+ (or (get-text-property (point) 'rmail-mime-entity)
+ (get-text-property (point-min) 'rmail-mime-entity)))
+
(defgroup rmail nil
"Mail reader for Emacs."
:group 'mail)
@@ -686,6 +691,12 @@
This is set to nil by default.")
+(defcustom rmail-get-coding-function nil
+ "Function of no args to try to determine coding system for a message."
+ :type 'function
+ :group 'rmail
+ :version "24.4")
+
(defcustom rmail-enable-mime t
"If non-nil, RMAIL automatically displays decoded MIME messages.
For this to work, the feature specified by `rmail-mime-feature' must
@@ -1029,9 +1040,10 @@
The buffer is expected to be narrowed to just the header of the message."
(save-excursion
(goto-char (point-min))
- (if (re-search-forward rmail-mime-charset-pattern nil t)
- (coding-system-from-name (match-string 1))
- 'undecided)))
+ (or (funcall rmail-get-coding-function)
+ (if (re-search-forward rmail-mime-charset-pattern nil t)
+ (coding-system-from-name (match-string 1))
+ 'undecided))))
;;; Set up Rmail mode keymaps
@@ -3863,16 +3875,18 @@
message-id))
;; missing From, or Message-ID is sufficiently informative
message-id
- (concat message-id " (" tem ")"))
+ (concat message-id " (" tem ")"))
+ ;; Message has no Message-ID field.
;; Copy TEM, discarding text properties.
(setq tem (copy-sequence tem))
(set-text-properties 0 (length tem) nil tem)
(setq tem (copy-sequence tem))
;; Use prin1 to fake RFC822 quoting
(let ((field (prin1-to-string tem)))
+ ;; Wrap it in parens to make it a comment according to RFC822
(if date
- (concat field "'s message of " date)
- field)))))
+ (concat "(" field "'s message of " date ")")
+ (concat "(" field ")"))))))
((let* ((foo "[^][\000-\037()<>@,;:\\\" ]+")
(bar "[^][\000-\037()<>@,;:\\\"]+"))
;; These strings both match all non-ASCII characters.
@@ -3898,7 +3912,8 @@
(if message-id
;; "<address@hidden> (message from Unix Loser on 1-Apr-89)"
(concat message-id " (" field ")")
- field))))
+ ;; Wrap in parens to make it a comment, for RFC822.
+ (concat "(" field ")")))))
(t
;; If we can't kludge it simply, do it correctly
(let ((mail-use-rfc822 t))
@@ -4483,7 +4498,7 @@
;; There doesn't really seem to be an appropriate menu.
;; Eg the edit command is not in a menu either.
(defun rmail-epa-decrypt ()
- "Decrypt OpenPGP armors in current message."
+ "Decrypt GnuPG or OpenPGP armors in current message."
(interactive)
;; Save the current buffer here for cleanliness, in case we
@@ -4493,14 +4508,10 @@
(let (decrypts)
(goto-char (point-min))
- ;; In case the encrypted data is inside a mime attachment,
- ;; show it. This is a kludge; to be clean, it should not
- ;; modify the buffer, but I don't see how to do that.
- (when (search-forward "octet-stream" nil t)
- (beginning-of-line)
- (forward-button 1)
- (if (looking-at "Show")
- (rmail-mime-toggle-hidden)))
+ ;; Turn off mime processing.
+ (when (and (rmail-mime-message-p)
+ (not (get-text-property (point-min) 'rmail-mime-hidden)))
+ (rmail-mime))
;; Now find all armored messages in the buffer
;; and decrypt them one by one.
@@ -4560,6 +4571,7 @@
(when armor-end
(delete-region armor-start armor-end)
(insert-buffer-substring from-buffer (nth 0 d) (nth 1
d)))))))))))))
+
;;;; Desktop support
=== modified file 'lisp/mail/rmailmm.el'
--- a/lisp/mail/rmailmm.el 2014-01-01 07:43:34 +0000
+++ b/lisp/mail/rmailmm.el 2014-01-02 22:30:32 +0000
@@ -230,11 +230,6 @@
(defsubst rmail-mime-entity-set-truncated (entity truncated)
(aset entity 9 truncated))
-(defsubst rmail-mime-message-p ()
- "Non-nil if and only if the current message is a MIME."
- (or (get-text-property (point) 'rmail-mime-entity)
- (get-text-property (point-min) 'rmail-mime-entity)))
-
;;; Buttons
(defun rmail-mime-save (button)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] trunk r115839: Minor rmail fixes.,
Richard M. Stallman <=