X-Git-Url: http://cgit.sxemacs.org/?a=blobdiff_plain;f=lisp%2Fgnus-msg.el;h=971709adc1564feb085da5e751caf5b6b203f584;hb=99ed16919eb88d1f82250c2c4ef6309f8cceb571;hp=0538280f533e29219f7684533f74fdf522f8ba09;hpb=d397f2c72ba7fa32b2966d74aeff050b798e28ef;p=gnus diff --git a/lisp/gnus-msg.el b/lisp/gnus-msg.el index 0538280f5..971709adc 100644 --- a/lisp/gnus-msg.el +++ b/lisp/gnus-msg.el @@ -101,6 +101,9 @@ the second with the current group name.") (defvar gnus-posting-styles nil "*Alist of styles to use when posting.") +(defvar gnus-inews-mark-gcc-as-read nil + "If non-nil, automatically mark Gcc articles as read.") + (defcustom gnus-group-posting-charset-alist '(("^\\(no\\|fr\\|dk\\)\\.[^,]*\\(,[ \t\n]*\\(no\\|fr\\|dk\\)\\.[^,]*\\)*$" iso-8859-1 (iso-8859-1)) ("^\\(fido7\\|relcom\\)\\.[^,]*\\(,[ \t\n]*\\(fido7\\|relcom\\)\\.[^,]*\\)*$" koi8-r (koi8-r)) @@ -202,20 +205,6 @@ Thank you for your help in stamping out bugs. ;; "c" gnus-summary-send-draft "r" gnus-summary-resend-message) -;;;###autoload -(defun gnus-msg-mail (&rest args) - "Start editing a mail message to be sent. -Like `message-mail', but with Gnus paraphernalia, particularly the -the Gcc: header for archiving purposes." - (interactive) - (gnus-setup-message 'message - (apply 'message-mail args))) - -;;;###autoload -(define-mail-user-agent 'gnus-user-agent - 'gnus-msg-mail 'message-send-and-exit - 'message-kill-buffer 'message-send-hook) - ;;; Internal functions. (defvar gnus-article-reply nil) @@ -256,6 +245,20 @@ the Gcc: header for archiving purposes." (gnus-configure-windows ,config t) (set-buffer-modified-p nil)))) +;;;###autoload +(defun gnus-msg-mail (&rest args) + "Start editing a mail message to be sent. +Like `message-mail', but with Gnus paraphernalia, particularly the +the Gcc: header for archiving purposes." + (interactive) + (gnus-setup-message 'message + (apply 'message-mail args))) + +;;;###autoload +(define-mail-user-agent 'gnus-user-agent + 'gnus-msg-mail 'message-send-and-exit + 'message-kill-buffer 'message-send-hook) + (defun gnus-setup-posting-charset (group) (let ((alist gnus-group-posting-charset-alist) (group (or group "")) @@ -1067,7 +1070,7 @@ this is a reply." (message-narrow-to-headers) (let ((gcc (or gcc (mail-fetch-field "gcc" nil t))) (cur (current-buffer)) - groups group method) + groups group method group-art) (when gcc (message-remove-header "gcc") (widen) @@ -1095,10 +1098,19 @@ this is a reply." (concat "^" (regexp-quote mail-header-separator) "$") nil t) (replace-match "" t t )) - (unless (gnus-request-accept-article group method t t) + (unless (setq group-art + (gnus-request-accept-article group method t t)) (gnus-message 1 "Couldn't store article in group %s: %s" group (gnus-status-message method)) (sit-for 2)) + (when gnus-inews-mark-gcc-as-read + (let ((active (gnus-active group))) + (when active + (if (< (cdr active) (cdr group-art)) + (gnus-set-active group (cons (car active) + (cdr group-art)))) + (gnus-group-make-articles-read group + (list (cdr group-art)))))) (kill-buffer (current-buffer)))))))))) (defun gnus-inews-insert-gcc ()