+2012-04-12 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-sum.el (gnus-handle-ephemeral-exit): Avoid creating the group
+ buffer if it doesn't exist.
+
+ * gnus-group.el (gnus-group-read-ephemeral-group): If no quit-config is
+ given, mark the group as ephemeral with the current window conf.
+
+ * gnus-sum.el (gnus-set-global-variables): Don't assume that the group
+ buffer exists, which it doesn't if we haven't started Gnus.
+ (gnus-summary-exit): Allow quitting when we don't have a group buffer.
+
+2012-04-11 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ pgg-def.el, pgg-gpg.el, pgg-parse.el, pgg-pgp.el, pgg-pgp5.el, pgg.el:
+ Remove.
+
+ dgnushack.el (pgg-snarf-keys-region): Remove autoload.
+
+ lpath.el (pgg-parse-crc24-string, pgg-parse-crc24): Remove declaration.
+
+2012-04-10 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * mml.el (mml-generate-mime): Allow specifying what the top-level part
+ type is.
+
+ * gnus-start.el (gnus-clean-old-newsrc): Remove totally bogus
+ `unexists' entries.
+ (gnus-clean-old-newsrc): Fix last checkin.
+
+ * nnimap.el (nnimap-update-info): None of the articles below the active
+ low-water mark exist.
+
+ * dgnushack.el: Get rid of XEmacs compilation warning.
+
+ * gnus-msg.el (gnus-summary-cancel-article): See what From header we
+ would have gotten if we posted to the group, and use that to compare
+ against the message we want to cancel (bug#10808).
+
+ * gnus-sum.el (gnus-auto-center-summary): `scroll-margin' isn't defined
+ on XEmacs.
+
+2012-04-10 Philipp Haselwarter <philipp.haselwarter@gmx.de> (tiny change)
+
+ * gnus-sum.el (gnus-auto-center-summary): Set default to respect
+ `scroll-margin'.
+
+2012-04-10 Elias Oltmanns <eo@nebensachen.de> (tiny change)
+
+ * gnus-cite.el (gnus-dissect-cited-text): A single line without
+ citation prefix within a block of cited text should be considered part
+ of that block *only* if it is a blank line.
+
+2012-04-09 Chong Yidong <cyd@gnu.org>
+
+ * binhex.el, hashcash.el, uudecode.el:
+ Remove * characters from the front of variable docstrings.
+
+2012-04-05 Bastien Guerry <bzg@altern.org>
+
+ * color.el (color-lighten-name): Fix typo.
+
+2012-04-02 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * shr.el (shr-find-fill-point): Remove unused code; don't break a line
+ before kinsoku-bol characters nor within kinsoku-eol characters.
+
+2012-03-27 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * gnus-sync.el (gnus-topic-alist, gnus-group-topic)
+ (gnus-topic-create-topic, gnus-topic-enter-dribble): Silence compiler.
+ (gnus-sync-read): Use mapc instead of mapcar.
+
+ * mm-archive.el: Require mm-decode for some macros.
+ (gnus-recursive-directory-files, mailcap-extension-to-mime): Silence
+ the byte compiler.
+ (mm-archive-decoders): New function that returns the value of
+ the mm-archive-decoders variable.
+
+ * mm-decode.el: Don't require mm-archive; autoload mm-archive functions
+ instead.
+ (mm-dissect-singlepart): Use the function mm-archive-decoders.
+
+ * nnimap.el (gnus-refer-thread-use-nnir):
+ * nnmail.el (mail-send-and-exit): Silence the byte compiler.
+
+2012-03-22 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-compat.el: Define `bound-and-true-p' for XEmacs.
+
+2012-03-12 Peter Münster <pmrb@free.fr>
+
+ * gnus-demon.el (gnus-demon-timers): Now a plist (function -> timer).
+ (gnus-demon-cancel): Ditto.
+ (gnus-demon-run-callback): When function cannot be called due to low
+ idleness, call it when idleness reaches the expected value, instead of
+ waiting another timer period.
+ (gnus-demon-init): Add `time' to arguments of call-back.
+
+2012-03-22 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * dgnushack.el: Bind `gnus-registry-enabled' for XEmacs.
+
+ * gnus.el: Register gnus-registry functions.
+
+ * gnus-registry.el (gnus-try-warping-via-registry): Moved here and
+ indent.
+
+ * gnus-int.el (gnus-warp-to-article): Check whether the registry is
+ enabled before warping.
+
+2012-03-22 Dave Abrahams <dave@boostpro.com>
+
+ * gnus-sum.el (gnus-summary-insert-subject): Record information in the
+ registry about each article retrieved.
+
+ * gnus-int.el (gnus-select-group-with-message-id): New function.
+ (gnus-try-warping-via-registry): Ditto.
+ (gnus-warp-to-article): Fall back on the registry.
+
+2012-03-22 Sergio Martínez <samf0xb58@gmail.com> (tiny change)
+
+ * nnimap.el (nnimap-request-scan): Allow `nnimap-inbox' to be a list of
+ inboxes.
+
+2012-03-22 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * nnimap.el (nnimap-fetch-partial-articles): Minor doc string fixup.
+
+2012-03-22 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * gnus-msg.el (gnus-summary-resend-message-insert-gcc): Assume that
+ gnus-gcc-self-resent-messages may be a group parameter.
+ (gnus-summary-resend-message): Don't encode encoded words in header
+ when Gcc'ing resent message.
+
+2012-03-19 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * shr.el (shr-insert): Treat non-breaking space just like normal
+ space. This seems to produce more pleasing results.
+ (shr-insert): Only insert a blank line if we're starting from an image.
+ (shr-tag-br): Allow <br> to end lines or to make a single blank line.
+ (shr-ensure-paragraph): Consider lines with white space to be blank.
+
+2012-03-15 Elias Pipping <pipping@lavabit.com>
+
+ * Makefile.in: Respect DESTDIR.
+
+2012-03-14 Christopher Schmidt <christopher@ch.ristopher.com>
+
+ * gnus-msg.el (gnus-inews-do-gcc): Add gnus-gcc-pre-body-encode-hook
+ and gnus-gcc-post-body-encode-hook.
+
+2012-03-10 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-group.el (gnus-group-expire-articles-1): Don't try to expire
+ messages that don't exist.
+
+ * gnus-sum.el (gnus-summary-expire-articles): Ditto.
+
+2012-03-14 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ 2012-04-12 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-msg.el (gnus-inews-insert-gcc): Don't do the alist stuff when we
+ don't have a current group.
+
+ 2012-04-11 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ pgg-def.el, pgg-gpg.el, pgg-parse.el, pgg-pgp.el, pgg-pgp5.el, pgg.el:
+ Remove.
+
+ dgnushack.el (pgg-snarf-keys-region): Remove autoload.
+
+ lpath.el (pgg-parse-crc24-string, pgg-parse-crc24): Remove declaration.
+
2012-04-10 Lars Magne Ingebrigtsen <larsi@gnus.org>
* gnus-msg.el (gnus-inews-insert-gcc): Protect against when we don't
2012-03-14 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * gnus-sum.el (gnus-update-marks): Don't propagate marks unless
- requested (bug#10961).
-
* shr.el (shr-table-widths): Divide the extra width more fairly over
the TDs (bug#10973).
(shr-render-td): Don't delete too much padding.
* nntp.el (nntp-send-authinfo): Work for secure nntp entry in authinfo.
+2012-02-20 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-start.el (gnus-clean-old-newsrc): Allow a FORCE parameter.
+
2012-02-20 Lars Ingebrigtsen <larsi@gnus.org>
* mm-decode.el (mm-shr): Remove "soft hyphens".
* gnus-start.el (gnus-1): Avoid duplicate entries.
- 2012-02-16 Lars Ingebrigtsen <larsi@gnus.org>
-
- * mm-decode.el (mm-dissect-singlepart): Guess what the type of
- application/octet-stream parts really is.
-
- * gnus-sum.el (gnus-propagate-marks): Remove.
-
2012-02-15 Lars Ingebrigtsen <larsi@gnus.org>
- * shr.el (shr-remove-trailing-whitespace): Really delete the padding on
- too-wide lines.
+ * imap.el: Remove.
+
+ * nntp.el (nntp-coding-system-for-read): Remove.
+ (nntp-coding-system-for-write): Ditto.
+ (nntp-open-connection): Just use `binary' directly.
+
+ * gnus-start.el (gnus-clean-old-newsrc): Delete `unexist' from pre-Ma
+ Gnus 0.3.
+
++2012-02-16 Lars Ingebrigtsen <larsi@gnus.org>
++
++ * mm-decode.el (mm-dissect-singlepart): Guess what the type of
++ application/octet-stream parts really is.
++
++ * gnus-sum.el (gnus-propagate-marks): Remove.
+
2012-02-15 Paul Eggert <eggert@cs.ucla.edu>
* shr.el (shr-rescale-image): Undo previous change; see
<http://lists.gnu.org/archive/html/emacs-devel/2012-02/msg00540.html>.
+2012-02-15 Lars Magne Ingebrigtsen <lars@ingebrigtsen.no>
+
+ * gnus.el: Ma Gnus v0.3 is released.
+
+2012-02-15 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-sum.el (gnus-summary-local-variables): Make
+ `gnus-newsgroup-unexist' into a local variable.
+
+2012-02-14 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * registry.el (registry-usage-test, registry-persistence-test): Move to
+ tests/gnustest-registry.el.
+ (registry-make-testable-db, registry-match-test)
+ (registry-instantiation-test): Move to tests/gnustest-registry.el.
+
+ * gnus-registry.el (gnus-registry-misc-test)
+ (gnus-registry-usage-test): Move to tests/gnustest-registry.el.
+
+ * tests/gnustest-registry.el: New file with the registry and
+ gnus-registry ERT tests.
+
+2012-02-13 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * gnus-msg.el (gnus-summary-resend-message): Make
+ gnus-summary-resend-message-insert-gcc be last item in
+ message-header-setup-hook.
+
+2012-02-13 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * nnfolder.el (nnfolder-marks-directory, nnfolder-marks-is-evil)
+ (nnfolder-marks, nnfolder-marks-file-suffix, nnfolder-marks-modtime):
+ Remove.
+ (nnfolder-open-server): Don't use marks.
+ (nnfolder-request-delete-group): Ditto.
+ (nnfolder-request-rename-group): Ditto.
+ (nnfolder-request-set-mark, nnfolder-request-marks)
+ (nnfolder-group-marks-pathname, nnfolder-marks-changed-p)
+ (nnfolder-save-marks, nnfolder-open-marks): Remove.
+
+ * nnml.el (nnml-marks-is-evil, nnml-marks-file-name, nnml-marks)
+ (nnml-marks-modtime): Remove.
+ (nnml-request-delete-group): Don't use marks.
+ (nnml-request-rename-group): Ditto.
+ (nnml-request-set-mark, nnml-request-marks, nnml-marks-changed-p)
+ (nnml-save-marks, nnml-open-marks): Remove.
+
+ * nntp.el (nntp-marks-is-evil, nntp-marks-file-name, nntp-marks)
+ (nntp-marks-modtime, nntp-marks-directory, nntp-request-set-mark)
+ (nntp-request-marks, nntp-marks-directory, nntp-marks-changed-p)
+ (nntp-save-marks, nntp-open-marks, nntp-possibly-create-directory)
+ (nntp-server-to-method-cache): Remove.
+
+ * shr.el (shr-rescale-image): Fix wrong merge.
+
+2012-02-15 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * shr.el (shr-remove-trailing-whitespace): Really delete the padding on
+ too-wide lines.
+
2012-02-13 Lars Ingebrigtsen <larsi@gnus.org>
* nnimap.el (nnimap-record-commands): New variable.
* auth-source.el (auth-source-cache-expiry):
Add missing :version tags to new defcustoms and defgroups.
+2012-02-11 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-sum.el (gnus-adjust-marked-articles): Add to
+ `gnus-newsgroup-unexist'.
+
+ * gnus.el (gnus-article-mark-lists): Add `unexist' to the list of
+ marks.
+ (gnus-article-special-mark-lists): Put the `unexist' in the special
+ marks list instead.
+
+ * gnus-sum.el (gnus-articles-to-read): Don't include unexisting
+ articles in the list of articles to be selected.
+
+ * nnimap.el (nnimap-retrieve-group-data-early): Query for unexisting
+ articles.
+ (nnimap-update-info): Keep track of unexisting articles.
+ (nnimap-update-qresync-info): Ditto.
+
2012-02-10 Lars Ingebrigtsen <larsi@gnus.org>
* message.el (message-default-send-mail-function): Made into own
* gnus.el (gnus-method-ephemeral-p): Move after declaration of defsubst
`gnus-sloppily-equal-method-parameters' to avoid a warning.
+2012-02-09 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * mm-archive.el (mm-archive-dissect-and-inline): New function.
+ (mm-archive-dissect-and-inline): Fix up the undisplayer.
+
+ * gnus-compat.el: Define `timer-set-function'.
+
+ * mm-decode.el (mm-display-external): Output the text from the command
+ in the buffer after the command finished. This makes text-based
+ commands behave better.
+
+2012-02-08 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-compat.el: Add a compat for the old `url-retrieve'.
+
+2012-02-07 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-compat.el: Make `help-function-arglist' be compatible on Emacs
+ 23.1.
+
+2012-02-07 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * gnus-sum.el (gnus-summary-show-thread): Revert last two changes.
+
+2012-02-07 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * message.el (smtpmail-smtp-user): Silence compiler warning.
+
+2012-02-06 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * message.el (message-multi-smtp-send-mail): Also allow specifying the
+ SMTP user name.
+
+2012-02-06 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * gnus-sum.el (gnus-summary-show-thread):
+ next-single-char-property-change may return nil in XEmacs.
+ (gnus-summary-article-map): Fix typo.
+
2012-02-09 Lars Ingebrigtsen <larsi@gnus.org>
* gnus-msg.el (gnus-msg-mail): Use `message-mail' if Gnus isn't
lines that are narrower than the window width. Otherwise background
"blocks" will look less readable.
-2012-02-07 Katsumi Yamaoka <yamaoka@jpl.org>
-
- * gnus-sum.el (gnus-summary-show-thread): Revert last two changes.
-
2012-02-07 Lars Ingebrigtsen <larsi@gnus.org>
* nnimap.el (nnimap-transform-headers): Remove unused variable.
* gnus-sum.el (gnus-summary-exit-no-update): Really deaden the summary
buffer if `gnus-kill-summary-on-exit' is nil.
-2012-02-06 Katsumi Yamaoka <yamaoka@jpl.org>
-
- * gnus-sum.el (gnus-summary-show-thread):
- next-single-char-property-change may return nil in XEmacs.
-
2012-02-06 Lars Ingebrigtsen <larsi@gnus.org>
* gnus-sum.el (gnus-handle-ephemeral-exit): Allow exiting from Gnus
* gnus-sum.el (gnus-summary-show-thread):
next-single-char-property-change never returns nil (Bug#8657).
+2012-02-02 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * message.el (message-multi-smtp-send-mail): New function.
+ (message-multi-smtp-send-mail): Respect the X-Message-SMTP-Method
+ header to implement multi-SMTP functionality.
+
+ * gnus-agent.el (gnus-agent-send-mail-function): Removed.
+ (gnus-agentize): Don't set it.
+ (gnus-agent-send-mail): Don't use it.
+
+ * gnus-sum.el (gnus-summary-widget-backward): New function and
+ keystroke.
+
+ * gnus-compat.el: More the compat functions more compatible.
+
+ * shr.el (shr-put-image): Remove underlines from sliced images.
+ (shr-zoom-image): Compute the region to be replaced more correctly.
+
+2012-02-02 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * gnus-msg.el (gnus-gcc-self-resent-messages): New user option.
+ (gnus-summary-resend-message-insert-gcc): New function.
+ (gnus-summary-resend-message): Modify message-header-setup-hook and
+ message-sent-hook to make it work for Gcc.
+ (gnus-inews-do-gcc): Update the number of unread articles of groups
+ that messages are Gcc'd to.
+
+ * message.el (message-resend): Run message-sent-hook to do Gcc.
+
+2012-02-01 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * lpath.el: Fix an XEmacs compilation warning.
+
+ * gnus-compat.el: Require `help-fns' to fix compilation error.
+
+ * gnus-registry.el (gnus-registry-fixup-registry): Move the message to
+ a higher level to silence compilation.
+
+ * gnus-art.el (gnus-shr-put-image): Take and pass on a `flags'
+ parameter to allow controlling the scaling.
+
+ * shr.el (shr-zoom-image): New command and keystroke.
+ (shr-put-image): Take a `size' flag to say how to scale the image.
+
+ * gnus-compat.el: Redefine `delete-directory' to provide recursive
+ deletion unless already defined.
+
+ * gnus.el (gnus-compat): Require it.
+
+ * gnus-compat.el: New file.
+
+ * gnus-start.el (gnus-clean-old-newsrc): New function.
+ (gnus-read-newsrc-file): Use it.
+
+ * mm-archive.el (mm-dissect-archive): Use it to get all file names.
+ Use recursive deletion.
+ (mm-dissect-archive): Add support for zip files.
+
+ * gnus-util.el (gnus-recursive-directory-files): New function.
+
+ * mm-archive.el (mm-archive-list-files): Inline text and image parts.
+ (mm-archive-decoders): Add tgz support.
+
+ * mm-decode.el (mm-shr): Make sure that the HTML ends with a newline.
+ Otherwise inserting text into the Gnus buffer can look odd.
+
+ * gnus-art.el (gnus-mime-inline-part): Slight clean-up.
+
+ * mm-archive.el (mm-archive-decoders): Add support for tar.
+
+ * gnus.el (gnus-logo-color-alist): Change the colours for Ma Gnus.
+
+ * nnmail.el (nnmail-extra-headers): Add Cc to the default.
+
+2012-01-31 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * mm-decode.el (mm-dissect-singlepart): Check that the decoder exists.
+
+ * mm-archive.el: New file.
+
+ * mm-decode.el (mm-dissect-singlepart): Use it to decode ms-tnef files.
+
+ * mm-util.el (mm-find-buffer-file-coding-system): Comment fix.
+
+ * message.el (message-goto-*): Make all the `message-goto-*' commands
+ push the mark before moving point. This makes it easier to go back to
+ where you came from after editing whatever you jumped to.
+
+2012-01-31 Lars Magne Ingebrigtsen <lars@ingebrigtsen.no>
+
+ * gnus.el: Ma Gnus v0.1 is released.
+
2012-02-05 Lars Ingebrigtsen <larsi@gnus.org>
* nnimap.el (nnimap-open-server): Allow switching the nnoo server
2012-01-31 Jim Meyering <jim@meyering.net>
* gnus-agent.el (gnus-agent-expire-unagentized-dirs):
- Correct a comment (insert "not") and hide nominally-doubled "to".
+ Correct a comment (insert "not") and hide nominally-doubled "to".
-2012-01-31 Lars Magne Ingebrigtsen <lars@ingebrigtsen.no>
+2012-01-31 Lars Ingebrigtsen <larsi@gnus.org>
- * gnus.el: No Gnus v0.19 is released.
+ * gnus.el (gnus-version): Change name to "Ma Gnus".
2012-01-30 Philipp Haselwarter <philipp.haselwarter@gmx.de> (tiny change)
(const all :tag "Any")
(string :tag "Regexp")))
+(defcustom gnus-gcc-self-resent-messages 'no-gcc-self
+ "Like `gcc-self' group parameter, only for unmodified resent messages.
+Applied to messages sent by `gnus-summary-resend-message'. Non-nil
+value of this variable takes precedence over any existing Gcc header.
+
+If this is `none', no Gcc copy will be made. If this is t, messages
+resent will be Gcc'd to the current group. If this is a string, it
+specifies a group to which resent messages will be Gcc'd. If this is
+nil, Gcc will be done according to existing Gcc header(s), if any.
+If this is `no-gcc-self', resent messages will be Gcc'd to groups that
+existing Gcc header specifies, except for the current group."
+ :version "24.2"
+ :group 'gnus-message
+ :type '(choice (const none) (const t) string (const nil)
+ (const no-gcc-self)))
+
(gnus-define-group-parameter
posting-charset-alist
:type list
:group 'gnus-message
:type 'boolean)
+(defcustom gnus-gcc-pre-body-encode-hook nil
+ "A hook called before encoding the body of the Gcc copy of a message.
+The current buffer (when the hook is run) contains the message
+including the message header. Changes made to the message will
+only affect the Gcc copy, but not the original message."
+ :group 'gnus-message
+ :type 'hook)
+
+(defcustom gnus-gcc-post-body-encode-hook nil
+ "A hook called after encoding the body of the Gcc copy of a message.
+The current buffer (when the hook is run) contains the message
+including the message header. Changes made to the message will
+only affect the Gcc copy, but not the original message."
+ :group 'gnus-message
+ :type 'hook)
+
(autoload 'gnus-message-citation-mode "gnus-cite" nil t)
;;; Internal variables.
(interactive (gnus-interactive "P\ny"))
(let ((message-post-method
`(lambda (arg)
- (gnus-post-method (eq ',symp 'a) ,gnus-newsgroup-name))))
+ (gnus-post-method (eq ',symp 'a) ,gnus-newsgroup-name)))
+ (user-mail-address user-mail-address))
(dolist (article (gnus-summary-work-articles n))
(when (gnus-summary-select-article t nil nil article)
+ ;; Pretend that we're doing a followup so that we can see what
+ ;; the From header would have ended up being.
+ (save-window-excursion
+ (save-excursion
+ (gnus-summary-followup nil)
+ (let ((from (message-fetch-field "from")))
+ (when from
+ (setq user-mail-address
+ (car (mail-header-parse-address from)))))
+ (kill-buffer (current-buffer))))
+ ;; Now cancel the article using the From header we got.
(when (gnus-eval-in-buffer-window gnus-original-article-buffer
(message-cancel-news))
(gnus-summary-mark-as-read article gnus-canceled-mark)
(set-buffer gnus-original-article-buffer)
(message-forward post)))))))
+(defun gnus-summary-resend-message-insert-gcc ()
+ "Insert Gcc header according to `gnus-gcc-self-resent-messages'."
+ (gnus-inews-insert-gcc)
+ (let ((gcc (mapcar
+ (lambda (group)
+ (mm-encode-coding-string
+ group
+ (gnus-group-name-charset (gnus-inews-group-method group)
+ group)))
+ (message-unquote-tokens
+ (message-tokenize-header (mail-fetch-field "gcc" nil t)
+ " ,"))))
+ (self (with-current-buffer gnus-summary-buffer
+ gnus-gcc-self-resent-messages)))
+ (message-remove-header "gcc")
+ (when gcc
+ (goto-char (point-max))
+ (cond ((eq self 'none))
+ ((eq self t)
+ (insert "Gcc: \"" gnus-newsgroup-name "\"\n"))
+ ((stringp self)
+ (insert "Gcc: "
+ (mm-encode-coding-string
+ (if (string-match " " self)
+ (concat "\"" self "\"")
+ self)
+ (gnus-group-name-charset (gnus-inews-group-method self)
+ self))
+ "\n"))
+ ((null self)
+ (insert "Gcc: " (mapconcat 'identity gcc ", ") "\n"))
+ ((eq self 'no-gcc-self)
+ (when (setq gcc (delete
+ gnus-newsgroup-name
+ (delete (concat "\"" gnus-newsgroup-name "\"")
+ gcc)))
+ (insert "Gcc: " (mapconcat 'identity gcc ", ") "\n")))))))
+
(defun gnus-summary-resend-message (address n)
"Resend the current article to ADDRESS."
(interactive
(with-current-buffer gnus-original-article-buffer
(nnmail-fetch-field "to"))))
current-prefix-arg))
- (dolist (article (gnus-summary-work-articles n))
- (gnus-summary-select-article nil nil nil article)
- (with-current-buffer gnus-original-article-buffer
- (let ((gnus-gcc-externalize-attachments nil))
- (message-resend address)))
- (gnus-summary-mark-article-as-forwarded article)))
+ (let ((message-header-setup-hook (copy-sequence message-header-setup-hook))
+ (message-sent-hook (copy-sequence message-sent-hook)))
+ ;; `gnus-summary-resend-message-insert-gcc' must run last.
+ (add-hook 'message-header-setup-hook
+ 'gnus-summary-resend-message-insert-gcc t)
+ (add-hook 'message-sent-hook
+ `(lambda ()
+ (let ((rfc2047-encode-encoded-words nil))
+ ,(if gnus-agent
+ '(gnus-agent-possibly-do-gcc)
+ '(gnus-inews-do-gcc)))))
+ (dolist (article (gnus-summary-work-articles n))
+ (gnus-summary-select-article nil nil nil article)
+ (with-current-buffer gnus-original-article-buffer
+ (let ((gnus-gcc-externalize-attachments nil)
+ (message-inhibit-body-encoding t))
+ (message-resend address)))
+ (gnus-summary-mark-article-as-forwarded article))))
;; From: Matthieu Moy <Matthieu.Moy@imag.fr>
(defun gnus-summary-resend-message-edit ()
(nnheader-set-temp-buffer " *acc*")
(setq message-options (with-current-buffer cur message-options))
(insert-buffer-substring cur)
+ (run-hooks 'gnus-gcc-pre-body-encode-hook)
(message-encode-message-body)
+ (run-hooks 'gnus-gcc-post-body-encode-hook)
(save-restriction
(message-narrow-to-headers)
(let* ((mail-parse-charset message-default-charset)
(when (and group-art
;; FIXME: Should gcc-mark-as-read work when
;; Gnus is not running?
- (gnus-alive-p)
- (or gnus-gcc-mark-as-read
- (and
- (boundp 'gnus-inews-mark-gcc-as-read)
- (symbol-value 'gnus-inews-mark-gcc-as-read))))
- (gnus-group-mark-article-read group (cdr group-art)))
+ (gnus-alive-p))
+ (if (or gnus-gcc-mark-as-read
+ (and (boundp 'gnus-inews-mark-gcc-as-read)
+ (symbol-value 'gnus-inews-mark-gcc-as-read)))
+ (gnus-group-mark-article-read group (cdr group-art))
+ (with-current-buffer gnus-group-buffer
+ (let ((gnus-group-marked (list group))
+ (gnus-get-new-news-hook nil)
+ (inhibit-read-only t))
+ (gnus-group-get-new-news-this-group nil t)))))
(setq options message-options)
(with-current-buffer cur (setq message-options options))
(kill-buffer (current-buffer)))))))))
((functionp var)
;; A function.
(funcall var group))
- (t
+ (group
;; An alist of regexps/functions/forms.
(while (and var
(not