# HG changeset patch # User Miles Bader # Date 1126230453 0 # Node ID 45be648405bbfff20bfe4ec8129434eda619e75a # Parent b08e4ec020151c56e94867a6c0aaae9d555ef5a2 Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-536 Merge from gnus--rel--5.10 Patches applied: * gnus--rel--5.10 (patch 112-114) - Update from CVS 2005-09-07 Reiner Steib * lisp/gnus/spam-report.el (spam-report-gmane): Make it work without X-Report-Spam header. Gmane now only provides Archived-At. This is only used if `spam-report-gmane-use-article-number' is nil. (spam-report-gmane-spam-header): Removed. Not used anymore. * lisp/gnus/nnweb.el (nnweb-google-wash-article): Print a message if article is not available. 2005-09-07 TSUCHIYA Masatoshi * lisp/gnus/gnus-art.el (gnus-mime-display-single): Decode text/* parts content before displaying. 2005-09-06 Reiner Steib * lisp/gnus/mml-smime.el: Remove defvar of gnus-extract-address-components. 2005-09-06 Katsumi Yamaoka * lisp/gnus/mm-view.el (mm-display-inline-fontify): Disable support modes. diff -r b08e4ec02015 -r 45be648405bb lisp/gnus/ChangeLog --- a/lisp/gnus/ChangeLog Fri Sep 09 01:37:45 2005 +0000 +++ b/lisp/gnus/ChangeLog Fri Sep 09 01:47:33 2005 +0000 @@ -1,3 +1,26 @@ +2005-09-07 Reiner Steib + + * spam-report.el (spam-report-gmane): Make it work without + X-Report-Spam header. Gmane now only provides Archived-At. This + is only used if `spam-report-gmane-use-article-number' is nil. + (spam-report-gmane-spam-header): Removed. Not used anymore. + + * nnweb.el (nnweb-google-wash-article): Print a message if article + is not available. + +2005-09-07 TSUCHIYA Masatoshi + + * gnus-art.el (gnus-mime-display-single): Decode text/* parts + content before displaying. + +2005-09-06 Reiner Steib + + * mml-smime.el: Remove defvar of gnus-extract-address-components. + +2005-09-06 Katsumi Yamaoka + + * mm-view.el (mm-display-inline-fontify): Disable support modes. + 2005-09-05 Reiner Steib * message.el (message-tab-body-function): Fixed mismatched custom @@ -5,7 +28,7 @@ * gnus.el (gnus-group-change-level-function): Ditto. - * gnus-msg.el (gnus-outgoing-message-group): Ditto. + * gnus-msg.el (gnus-outgoing-message-group): Ditto. * gnus-art.el (gnus-signature-limit) (gnus-article-mime-part-function): Ditto. @@ -237,8 +260,6 @@ * gnus-util.el (gnus-beginning-of-window): Remove. (gnus-end-of-window): Remove. - * lpath.el: Don't bind scroll-margin. - 2005-07-25 Simon Josefsson * pgg.el (pgg-insert-url-with-w3): Don't load w3, it is possible diff -r b08e4ec02015 -r 45be648405bb lisp/gnus/gnus-art.el --- a/lisp/gnus/gnus-art.el Fri Sep 09 01:37:45 2005 +0000 +++ b/lisp/gnus/gnus-art.el Fri Sep 09 01:47:33 2005 +0000 @@ -4862,7 +4862,14 @@ (forward-line -1) (setq beg (point))) (gnus-article-insert-newline) - (mm-insert-inline handle (mm-get-part handle)) + (mm-insert-inline handle + (let ((charset + (mail-content-type-get + (mm-handle-type handle) 'charset))) + (if (eq charset 'gnus-decoded) + (mm-get-part handle) + (mm-decode-string (mm-get-part handle) + charset)))) (goto-char (point-max)))) ;; Do highlighting. (save-excursion diff -r b08e4ec02015 -r 45be648405bb lisp/gnus/mm-view.el --- a/lisp/gnus/mm-view.el Fri Sep 09 01:37:45 2005 +0000 +++ b/lisp/gnus/mm-view.el Fri Sep 09 01:47:33 2005 +0000 @@ -476,14 +476,16 @@ (buffer-disable-undo) (mm-insert-part handle) (require 'font-lock) - ;; Inhibit font-lock this time (*-mode-hook might run - ;; `turn-on-font-lock') so that jit-lock may not turn off - ;; font-lock immediately after this. - (let ((font-lock-mode t)) - (funcall mode)) - (let ((font-lock-verbose nil)) - ;; I find font-lock a bit too verbose. - (font-lock-fontify-buffer)) + (let ((font-lock-maximum-size nil) + ;; Disable support modes, e.g., jit-lock, lazy-lock, etc. + (font-lock-mode-hook nil) + (font-lock-support-mode nil) + ;; I find font-lock a bit too verbose. + (font-lock-verbose nil)) + (funcall mode) + ;; The mode function might have already turned on font-lock. + (unless (symbol-value 'font-lock-mode) + (font-lock-fontify-buffer))) ;; By default, XEmacs font-lock uses non-duplicable text ;; properties. This code forces all the text properties ;; to be copied along with the text. diff -r b08e4ec02015 -r 45be648405bb lisp/gnus/mml-smime.el --- a/lisp/gnus/mml-smime.el Fri Sep 09 01:37:45 2005 +0000 +++ b/lisp/gnus/mml-smime.el Fri Sep 09 01:47:33 2005 +0000 @@ -29,8 +29,6 @@ (eval-when-compile (require 'cl)) -(defvar gnus-extract-address-components) - (require 'smime) (require 'mm-decode) (autoload 'message-narrow-to-headers "message") diff -r b08e4ec02015 -r 45be648405bb lisp/gnus/nnweb.el --- a/lisp/gnus/nnweb.el Fri Sep 09 01:37:45 2005 +0000 +++ b/lisp/gnus/nnweb.el Fri Sep 09 01:47:33 2005 +0000 @@ -319,12 +319,22 @@ ;; We have Google's masked e-mail addresses here. :-/ (let ((case-fold-search t)) (goto-char (point-min)) - (delete-region (point-min) - (1+ (re-search-forward "^
" nil t)))
-    (goto-char (point-min))
-    (delete-region (- (re-search-forward "^
" nil t) (length "")) - (point-max)) - (mm-url-decode-entities))) + (if (save-excursion + (or (re-search-forward "The requested message.*could not be found." + nil t) + (not (and (re-search-forward "^
" nil t)
+			(re-search-forward "^
" nil t))))) + ;; FIXME: Don't know how to indicate "not found". + ;; Should this function throw an error? --rsteib + (progn + (gnus-message 3 "Requested article not found") + (erase-buffer)) + (delete-region (point-min) + (1+ (re-search-forward "^
" nil t)))
+      (goto-char (point-min))
+      (delete-region (- (re-search-forward "^
" nil t) (length "")) + (point-max)) + (mm-url-decode-entities)))) (defun nnweb-google-parse-1 (&optional Message-ID) (let ((i 0) diff -r b08e4ec02015 -r 45be648405bb lisp/gnus/spam-report.el --- a/lisp/gnus/spam-report.el Fri Sep 09 01:37:45 2005 +0000 +++ b/lisp/gnus/spam-report.el Fri Sep 09 01:47:33 2005 +0000 @@ -49,12 +49,6 @@ (regexp :value "^nntp\+.*:gmane\.")) :group 'spam-report) -(defcustom spam-report-gmane-spam-header - "^X-Report-Spam: http://\\([^/]+\\)\\(.*\\)$" - "String matching Gmane spam-reporting header. Two match groups are needed." - :type 'regexp - :group 'spam-report) - (defcustom spam-report-gmane-use-article-number t "Whether the article number (faster!) or the header should be used." :type 'boolean @@ -103,19 +97,40 @@ article)) (with-current-buffer nntp-server-buffer (gnus-request-head article gnus-newsgroup-name) - (goto-char (point-min)) - (if (re-search-forward spam-report-gmane-spam-header nil t) - (let* ((host (match-string 1)) - (report (match-string 2)) - (url (format "http://%s%s" host report))) - (gnus-message 7 "Reporting spam through URL %s..." url) - (spam-report-url-ping host report)) - (gnus-message 3 "Could not find X-Report-Spam in article %d..." - article))))))) + (let ((case-fold-search t) + field host report url) + ;; First check for X-Report-Spam because it's more specific to + ;; spam reporting than Archived-At. OTOH, all new articles on + ;; Gmane don't have X-Report-Spam anymore (unless Lars changes his + ;; mind :-)). + ;; + ;; There might be more than one Archived-At header so we need to + ;; find (and transform) the one related to Gmane. + (setq field (or (gnus-fetch-field "X-Report-Spam") + (gnus-fetch-field "Archived-At"))) + (setq host (progn + (string-match + (concat "http://\\([a-z]+\\.gmane\\.org\\)" + "\\(/[^:/]+[:/][0-9]+\\)") + field) + (match-string 1 field))) + (setq report (match-string 2 field)) + (when (string-equal "permalink.gmane.org" host) + (setq host "spam.gmane.org")) + (setq url (format "http://%s%s" host report)) + (if (not (and host report url)) + (gnus-message + 3 "Could not find a spam report header in article %d..." + article) + (gnus-message 7 "Reporting spam through URL %s..." url) + (spam-report-url-ping host report)))))))) (defun spam-report-url-ping (host report) "Ping a host through HTTP, addressing a specific GET resource using the function specified by `spam-report-url-ping-function'." + ;; Example: + ;; host: "spam.gmane.org" + ;; report: "/gmane.some.group:123456" (funcall spam-report-url-ping-function host report)) (defun spam-report-url-ping-plain (host report)