Merge from emacs-23; up to 2010-06-11T21:26:13Z!lekktu@gmail.com.
This commit is contained in:
commit
db0406bb64
4 changed files with 43 additions and 4 deletions
|
@ -1,3 +1,19 @@
|
|||
2011-05-24 Kenichi Handa <handa@m17n.org>
|
||||
|
||||
* mail/sendmail.el: Require `rfc2047'.
|
||||
(mail-insert-from-field): Do not perform RFC2047 encoding.
|
||||
(mail-encode-header): New function.
|
||||
(sendmail-send-it): Set buffer-file-coding-system of the work
|
||||
buffer to the return value of select-message-coding-system. Call
|
||||
mail-encode-header.
|
||||
|
||||
* mail/smtpmail.el (smtpmail-send-it): Call mail-encode-header.
|
||||
|
||||
2011-05-24 Sean Neakums <sneakums@zork.net> (tiny change)
|
||||
|
||||
* mail/supercite.el (sc-default-cite-frame): Handle
|
||||
sc-nested-citation-p when sc-cite-blank-lines-p is non-nil.
|
||||
|
||||
2011-05-24 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* progmodes/python.el (brm-menu): Declare.
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
;;; Code:
|
||||
(require 'mail-utils)
|
||||
|
||||
(autoload 'rfc2047-encode-string "rfc2047")
|
||||
(require 'rfc2047)
|
||||
|
||||
(defgroup sendmail nil
|
||||
"Mail sending commands for Emacs."
|
||||
|
@ -945,12 +945,14 @@ of outgoing mails regardless of the current language environment.
|
|||
See also the function `select-message-coding-system'.")
|
||||
|
||||
(defun mail-insert-from-field ()
|
||||
"Insert the \"From:\" field of a mail header.
|
||||
The style of the field is determined by the variable `mail-from-style'.
|
||||
This function does not perform RFC2047 encoding."
|
||||
(let* ((login user-mail-address)
|
||||
(fullname (user-full-name))
|
||||
(quote-fullname nil))
|
||||
(if (string-match "[^\0-\177]" fullname)
|
||||
(setq fullname (rfc2047-encode-string fullname)
|
||||
quote-fullname t))
|
||||
(setq quote-fullname t))
|
||||
(cond ((null mail-from-style)
|
||||
(insert "From: " login "\n"))
|
||||
;; This is deprecated.
|
||||
|
@ -1010,6 +1012,20 @@ See also the function `select-message-coding-system'.")
|
|||
(goto-char fullname-start))))
|
||||
(insert ")\n")))))
|
||||
|
||||
(defun mail-encode-header (beg end)
|
||||
"Encode the mail header between BEG and END according to RFC2047.
|
||||
Return non-nil if and only if some part of the header is encoded."
|
||||
(save-restriction
|
||||
(narrow-to-region beg end)
|
||||
(let* ((selected (select-message-coding-system))
|
||||
(mm-coding-system-priorities
|
||||
(if (and selected (coding-system-get selected :mime-charset))
|
||||
(cons selected mm-coding-system-priorities)
|
||||
mm-coding-system-priorities))
|
||||
(tick (buffer-chars-modified-tick)))
|
||||
(rfc2047-encode-message-header)
|
||||
(= tick (buffer-chars-modified-tick)))))
|
||||
|
||||
;; Normally you will not need to modify these options unless you are
|
||||
;; using some non-genuine substitute for sendmail which does not
|
||||
;; implement each and every option that the original supports.
|
||||
|
@ -1050,6 +1066,7 @@ external program defined by `sendmail-program'."
|
|||
(unless multibyte
|
||||
(set-buffer-multibyte nil))
|
||||
(insert-buffer-substring mailbuf)
|
||||
(set-buffer-file-coding-system selected-coding)
|
||||
(goto-char (point-max))
|
||||
;; require one newline at the end.
|
||||
(or (= (preceding-char) ?\n)
|
||||
|
@ -1155,6 +1172,8 @@ external program defined by `sendmail-program'."
|
|||
(if mail-interactive
|
||||
(with-current-buffer errbuf
|
||||
(erase-buffer))))
|
||||
;; Encode the header according to RFC2047.
|
||||
(mail-encode-header (point-min) delimline)
|
||||
(goto-char (point-min))
|
||||
(if (let ((case-fold-search t))
|
||||
(or resend-to-addresses
|
||||
|
|
|
@ -361,6 +361,8 @@ The list is in preference order.")
|
|||
(if mail-interactive
|
||||
(with-current-buffer errbuf
|
||||
(erase-buffer))))
|
||||
;; Encode the header according to RFC2047.
|
||||
(mail-encode-header (point-min) delimline)
|
||||
;;
|
||||
(setq smtpmail-address-buffer (generate-new-buffer "*smtp-mail*"))
|
||||
(setq smtpmail-recipient-address-list
|
||||
|
|
|
@ -184,7 +184,9 @@ See the variable `sc-cite-frame-alist' for details."
|
|||
;; paragraph, unless sc-cite-blank-lines-p is non-nil, in which
|
||||
;; case we treat blank lines just like any other line.
|
||||
("^[ \t]*$" (if sc-cite-blank-lines-p
|
||||
(sc-cite-line)
|
||||
(if sc-nested-citation-p
|
||||
(sc-add-citation-level)
|
||||
(sc-cite-line))
|
||||
(sc-fill-if-different "")))
|
||||
;; do nothing if looking at a reference tag. make sure that the
|
||||
;; tag string isn't the empty string since this will match every
|
||||
|
|
Loading…
Add table
Reference in a new issue