From c58a1d81507054959211e9339fb8e36a3cbc0bd6 Mon Sep 17 00:00:00 2001 From: yamaoka Date: Wed, 10 May 2000 07:56:43 +0000 Subject: [PATCH] Sync with latest Gnus. --- lisp/ChangeLog | 8 ++++++++ lisp/nnslashdot.el | 42 +++++++++++++++++++++++++++--------------- 2 files changed, 35 insertions(+), 15 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 38048b9..27c4ff8 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,11 @@ +2000-05-10 09:11:48 Lars Magne Ingebrigtsen + + * nnslashdot.el (nnslashdot-sid-strip): New function. + (nnslashdot-threaded-retrieve-headers): New format. + (nnslashdot-sane-retrieve-headers): Ditto. + (nnslashdot-request-article): Ditto. + (nnslashdot-threaded-retrieve-headers): Thread properly. + 2000-05-09 13:23:50 Shenghuo ZHU * gnus-sum.el (gnus-with-article): Define it before use it. diff --git a/lisp/nnslashdot.el b/lisp/nnslashdot.el index c19f13c..be4591c 100644 --- a/lisp/nnslashdot.el +++ b/lisp/nnslashdot.el @@ -105,7 +105,8 @@ (let ((case-fold-search t)) (erase-buffer) (when (= start 1) - (nnweb-insert (format nnslashdot-article-url sid) t) + (nnweb-insert (format nnslashdot-article-url + (nnslashdot-sid-strip sid)) t) (goto-char (point-min)) (search-forward "Posted by ") (when (looking-at "]+>\\([^<]+\\)") @@ -117,19 +118,22 @@ (setq lines (count-lines (point) (search-forward - "A href=http://slashdot.org/article" nil t))) + "A href=\"/article" nil t))) (push (cons 1 (make-full-mail-header - 1 group from date (concat "<" sid "%1@slashdot>") + 1 group from date + (concat "<" (nnslashdot-sid-strip sid) "%1@slashdot>") "" 0 lines nil nil)) headers)) (while (and (setq start (pop startats)) (< start last)) (setq point (goto-char (point-max))) (nnweb-insert - (format nnslashdot-comments-url sid nnslashdot-threshold 0 start) + (format nnslashdot-comments-url + (nnslashdot-sid-strip sid) + nnslashdot-threshold 0 start) t) (when first-comments (setq first-comments nil) @@ -164,7 +168,7 @@ (setq lines (/ (abs (- (search-forward ""))) 70)) - (forward-line 2) + (forward-line 4) (setq parent (if (looking-at ".*cid=\\([0-9]+\\)") (match-string 1) @@ -177,11 +181,11 @@ (1+ article) (concat subject " (" score ")") from date - (concat "<" sid "%" + (concat "<" (nnslashdot-sid-strip sid) "%" (number-to-string (1+ article)) "@slashdot>") (if parent - (concat "<" sid "%" + (concat "<" (nnslashdot-sid-strip sid) "%" (number-to-string (1+ (string-to-number parent))) "@slashdot>") "") @@ -205,7 +209,8 @@ (set-buffer nnslashdot-buffer) (erase-buffer) (when (= start 1) - (nnweb-insert (format nnslashdot-article-url sid) t) + (nnweb-insert (format nnslashdot-article-url + (nnslashdot-sid-strip sid)) t) (goto-char (point-min)) (search-forward "Posted by ") (when (looking-at "]+>\\([^<]+\\)") @@ -216,12 +221,13 @@ (forward-line 2) (setq lines (count-lines (point) (search-forward - "A href=http://slashdot.org/article"))) + "A href=\"/article"))) (push (cons 1 (make-full-mail-header - 1 group from date (concat "<" sid "%1@slashdot>") + 1 group from date (concat "<" (nnslashdot-sid-strip sid) + "%1@slashdot>") "" 0 lines nil nil)) headers)) (while (or (not article) @@ -231,7 +237,8 @@ (setq start (1+ article))) (setq point (goto-char (point-max))) (nnweb-insert - (format nnslashdot-comments-url sid nnslashdot-threshold 4 start) + (format nnslashdot-comments-url (nnslashdot-sid-strip sid) + nnslashdot-threshold 4 start) t) (goto-char point) (while (re-search-forward @@ -270,11 +277,11 @@ (make-full-mail-header (1+ article) (concat subject " (" score ")") from date - (concat "<" sid "%" + (concat "<" (nnslashdot-sid-strip sid) "%" (number-to-string (1+ article)) "@slashdot>") (if parent - (concat "<" sid "%" + (concat "<" (nnslashdot-sid-strip sid) "%" (number-to-string (1+ (string-to-number parent))) "@slashdot>") "") @@ -330,7 +337,7 @@ (point) (progn (re-search-forward - "

.*A href=http://slashdot\\.org/article") + "

.*A href=\"/article") (match-beginning 0))))) (search-forward (format "" (1- article))) (setq contents @@ -424,7 +431,7 @@ (deffoo nnslashdot-request-post (&optional server) (nnslashdot-possibly-change-server nil server) - (let ((sid (message-fetch-field "newsgroups")) + (let ((sid (nnslashdot-sid-strip (message-fetch-field "newsgroups"))) (subject (message-fetch-field "subject")) (references (car (last (split-string (message-fetch-field "references"))))) @@ -533,6 +540,11 @@ (defun nnslashdot-lose (why) (error "Slashdot HTML has changed; please get a new version of nnslashdot")) +(defun nnslashdot-sid-strip (sid) + (if (string-match "^00/" sid) + (substring sid (match-end 0)) + sid)) + (provide 'nnslashdot) ;;; nnslashdot.el ends here -- 1.7.10.4