diff options
| author | Katsumi Yamaoka | 2011-12-01 04:55:39 +0000 |
|---|---|---|
| committer | Katsumi Yamaoka | 2011-12-01 04:55:39 +0000 |
| commit | f65bd83340979074157d53c8b162340ae9954fb4 (patch) | |
| tree | 29e6748ebb3e13891af0fcaaa367b2a747d71e22 /lisp | |
| parent | 1bbe96b252f080bd9782d140673bf7f54ced9eea (diff) | |
| download | emacs-f65bd83340979074157d53c8b162340ae9954fb4.tar.gz emacs-f65bd83340979074157d53c8b162340ae9954fb4.zip | |
Gnus: Share the value of the buffer-local `message-options' variable between a draft buffer and temprary working buffers.
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/gnus/ChangeLog | 8 | ||||
| -rw-r--r-- | lisp/gnus/gnus-msg.el | 5 | ||||
| -rw-r--r-- | lisp/gnus/message.el | 9 | ||||
| -rw-r--r-- | lisp/gnus/mml.el | 21 |
4 files changed, 32 insertions, 11 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index f767ee4407b..b517c81b2b9 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog | |||
| @@ -1,3 +1,11 @@ | |||
| 1 | 2011-12-01 Katsumi Yamaoka <yamaoka@jpl.org> | ||
| 2 | |||
| 3 | * gnus-msg.el (gnus-inews-do-gcc): | ||
| 4 | * message.el (message-send-mail): | ||
| 5 | * mml.el (mml-generate-mime): Share the value of the buffer-local | ||
| 6 | `message-options' variable between a draft buffer and temprary working | ||
| 7 | buffers. | ||
| 8 | |||
| 1 | 2011-11-30 Stefan Monnier <monnier@iro.umontreal.ca> | 9 | 2011-11-30 Stefan Monnier <monnier@iro.umontreal.ca> |
| 2 | 10 | ||
| 3 | * message.el (message-pop-to-buffer): Revert 2011-09-11 change. | 11 | * message.el (message-pop-to-buffer): Revert 2011-09-11 change. |
diff --git a/lisp/gnus/gnus-msg.el b/lisp/gnus/gnus-msg.el index e6a06a0500d..e06d475ed6c 100644 --- a/lisp/gnus/gnus-msg.el +++ b/lisp/gnus/gnus-msg.el | |||
| @@ -1549,7 +1549,7 @@ this is a reply." | |||
| 1549 | (message-narrow-to-headers) | 1549 | (message-narrow-to-headers) |
| 1550 | (let ((gcc (or gcc (mail-fetch-field "gcc" nil t))) | 1550 | (let ((gcc (or gcc (mail-fetch-field "gcc" nil t))) |
| 1551 | (cur (current-buffer)) | 1551 | (cur (current-buffer)) |
| 1552 | groups group method group-art | 1552 | groups group method group-art options |
| 1553 | mml-externalize-attachments) | 1553 | mml-externalize-attachments) |
| 1554 | (when gcc | 1554 | (when gcc |
| 1555 | (message-remove-header "gcc") | 1555 | (message-remove-header "gcc") |
| @@ -1573,6 +1573,7 @@ this is a reply." | |||
| 1573 | gnus-gcc-externalize-attachments)) | 1573 | gnus-gcc-externalize-attachments)) |
| 1574 | (save-excursion | 1574 | (save-excursion |
| 1575 | (nnheader-set-temp-buffer " *acc*") | 1575 | (nnheader-set-temp-buffer " *acc*") |
| 1576 | (setq message-options (with-current-buffer cur message-options)) | ||
| 1576 | (insert-buffer-substring cur) | 1577 | (insert-buffer-substring cur) |
| 1577 | (message-encode-message-body) | 1578 | (message-encode-message-body) |
| 1578 | (save-restriction | 1579 | (save-restriction |
| @@ -1629,6 +1630,8 @@ this is a reply." | |||
| 1629 | (boundp 'gnus-inews-mark-gcc-as-read) | 1630 | (boundp 'gnus-inews-mark-gcc-as-read) |
| 1630 | (symbol-value 'gnus-inews-mark-gcc-as-read)))) | 1631 | (symbol-value 'gnus-inews-mark-gcc-as-read)))) |
| 1631 | (gnus-group-mark-article-read group (cdr group-art))) | 1632 | (gnus-group-mark-article-read group (cdr group-art))) |
| 1633 | (setq options message-options) | ||
| 1634 | (with-current-buffer cur (setq message-options options)) | ||
| 1632 | (kill-buffer (current-buffer))))))))) | 1635 | (kill-buffer (current-buffer))))))))) |
| 1633 | 1636 | ||
| 1634 | (defun gnus-inews-insert-gcc (&optional group) | 1637 | (defun gnus-inews-insert-gcc (&optional group) |
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el index eea50de4cec..ee9d4992158 100644 --- a/lisp/gnus/message.el +++ b/lisp/gnus/message.el | |||
| @@ -4507,7 +4507,8 @@ This function could be useful in `message-setup-hook'." | |||
| 4507 | (boundp 'gnus-group-posting-charset-alist)) | 4507 | (boundp 'gnus-group-posting-charset-alist)) |
| 4508 | (gnus-setup-posting-charset nil) | 4508 | (gnus-setup-posting-charset nil) |
| 4509 | message-posting-charset)) | 4509 | message-posting-charset)) |
| 4510 | (headers message-required-mail-headers)) | 4510 | (headers message-required-mail-headers) |
| 4511 | options) | ||
| 4511 | (when (and message-generate-hashcash | 4512 | (when (and message-generate-hashcash |
| 4512 | (not (eq message-generate-hashcash 'opportunistic))) | 4513 | (not (eq message-generate-hashcash 'opportunistic))) |
| 4513 | (message "Generating hashcash...") | 4514 | (message "Generating hashcash...") |
| @@ -4546,9 +4547,11 @@ This function could be useful in `message-setup-hook'." | |||
| 4546 | (error "Failed to send the message"))))) | 4547 | (error "Failed to send the message"))))) |
| 4547 | ;; Let the user do all of the above. | 4548 | ;; Let the user do all of the above. |
| 4548 | (run-hooks 'message-header-hook)) | 4549 | (run-hooks 'message-header-hook)) |
| 4550 | (setq options message-options) | ||
| 4549 | (unwind-protect | 4551 | (unwind-protect |
| 4550 | (with-current-buffer tembuf | 4552 | (with-current-buffer tembuf |
| 4551 | (erase-buffer) | 4553 | (erase-buffer) |
| 4554 | (setq message-options options) | ||
| 4552 | ;; Avoid copying text props (except hard newlines). | 4555 | ;; Avoid copying text props (except hard newlines). |
| 4553 | (insert (with-current-buffer mailbuf | 4556 | (insert (with-current-buffer mailbuf |
| 4554 | (mml-buffer-substring-no-properties-except-hard-newlines | 4557 | (mml-buffer-substring-no-properties-except-hard-newlines |
| @@ -4630,9 +4633,11 @@ If you always want Gnus to send messages in one piece, set | |||
| 4630 | (message "Sending via mail...") | 4633 | (message "Sending via mail...") |
| 4631 | (funcall (or message-send-mail-real-function | 4634 | (funcall (or message-send-mail-real-function |
| 4632 | message-send-mail-function))) | 4635 | message-send-mail-function))) |
| 4633 | (message-send-mail-partially))) | 4636 | (message-send-mail-partially)) |
| 4637 | (setq options message-options)) | ||
| 4634 | (kill-buffer tembuf)) | 4638 | (kill-buffer tembuf)) |
| 4635 | (set-buffer mailbuf) | 4639 | (set-buffer mailbuf) |
| 4640 | (setq message-options options) | ||
| 4636 | (push 'mail message-sent-message-via))) | 4641 | (push 'mail message-sent-message-via))) |
| 4637 | 4642 | ||
| 4638 | (defvar sendmail-program) | 4643 | (defvar sendmail-program) |
diff --git a/lisp/gnus/mml.el b/lisp/gnus/mml.el index 8aa5fbff6b8..867c3be4b60 100644 --- a/lisp/gnus/mml.el +++ b/lisp/gnus/mml.el | |||
| @@ -466,16 +466,21 @@ If MML is non-nil, return the buffer up till the correspondent mml tag." | |||
| 466 | (defun mml-generate-mime () | 466 | (defun mml-generate-mime () |
| 467 | "Generate a MIME message based on the current MML document." | 467 | "Generate a MIME message based on the current MML document." |
| 468 | (let ((cont (mml-parse)) | 468 | (let ((cont (mml-parse)) |
| 469 | (mml-multipart-number mml-multipart-number)) | 469 | (mml-multipart-number mml-multipart-number) |
| 470 | (options message-options)) | ||
| 470 | (if (not cont) | 471 | (if (not cont) |
| 471 | nil | 472 | nil |
| 472 | (mm-with-multibyte-buffer | 473 | (prog1 |
| 473 | (if (and (consp (car cont)) | 474 | (mm-with-multibyte-buffer |
| 474 | (= (length cont) 1)) | 475 | (setq message-options options) |
| 475 | (mml-generate-mime-1 (car cont)) | 476 | (if (and (consp (car cont)) |
| 476 | (mml-generate-mime-1 (nconc (list 'multipart '(type . "mixed")) | 477 | (= (length cont) 1)) |
| 477 | cont))) | 478 | (mml-generate-mime-1 (car cont)) |
| 478 | (buffer-string))))) | 479 | (mml-generate-mime-1 (nconc (list 'multipart '(type . "mixed")) |
| 480 | cont))) | ||
| 481 | (setq options message-options) | ||
| 482 | (buffer-string)) | ||
| 483 | (setq message-options options))))) | ||
| 479 | 484 | ||
| 480 | (defun mml-generate-mime-1 (cont) | 485 | (defun mml-generate-mime-1 (cont) |
| 481 | (let ((mm-use-ultra-safe-encoding | 486 | (let ((mm-use-ultra-safe-encoding |