2001-02-24 00:00:00 ShengHuo ZHU <zsh@cs.rochester.edu>
authorShengHuo ZHU <zsh@cs.rochester.edu>
Sat, 24 Feb 2001 05:02:51 +0000 (05:02 +0000)
committerShengHuo ZHU <zsh@cs.rochester.edu>
Sat, 24 Feb 2001 05:02:51 +0000 (05:02 +0000)
* gnus.el (gnus-read-method): Remove redundancy.

2001-02-23 23:00:00  ShengHuo ZHU  <zsh@cs.rochester.edu>

* nnslashdot.el (nnslashdot-backslash-url): New.
(nnslashdot-request-list): Use it.

lisp/ChangeLog
lisp/gnus.el
lisp/nnslashdot.el

index 339bbf9..1416241 100644 (file)
@@ -1,3 +1,12 @@
+2001-02-24 00:00:00  ShengHuo ZHU  <zsh@cs.rochester.edu>
+
+       * gnus.el (gnus-read-method): Remove redundancy.
+
+2001-02-23 23:00:00  ShengHuo ZHU  <zsh@cs.rochester.edu>
+
+       * nnslashdot.el (nnslashdot-backslash-url): New.
+       (nnslashdot-request-list): Use it.
+
 2001-02-23 22:00:00  ShengHuo ZHU  <zsh@cs.rochester.edu>
 
        * nnml.el (nnml-generate-active-info): Fix the case when there is
index e51c2af..09c8620 100644 (file)
@@ -3017,11 +3017,19 @@ Disallow invalid group names."
 (defun gnus-read-method (prompt)
   "Prompt the user for a method.
 Allow completion over sensible values."
-  (let* ((servers
-         (append gnus-valid-select-methods
-                 (mapcar (lambda (i) (list (format "%s:%s" (caar i)
-                                                   (cadar i))))
-                         gnus-opened-servers)
+  (let* ((open-servers 
+         (mapcar (lambda (i) (cons (format "%s:%s" (caar i) (cadar i)) i))
+                 gnus-opened-servers))
+        (valid-methods
+         (let (methods)
+           (dolist (method gnus-valid-select-methods)
+             (if (or (memq 'prompt-address method)
+                     (not (assoc (format "%s:" (car method)) open-servers)))
+                 (push method methods)))
+           methods))
+        (servers
+         (append valid-methods
+                 open-servers
                  gnus-predefined-server-alist
                  gnus-server-alist))
         (method
@@ -3036,13 +3044,7 @@ Allow completion over sensible values."
                               (assoc method gnus-valid-select-methods))
                         (read-string "Address: ")
                       "")))
-       (or (let ((opened gnus-opened-servers))
-             (while (and opened
-                         (not (equal (format "%s:%s" method address)
-                                     (format "%s:%s" (caaar opened)
-                                             (cadaar opened)))))
-               (pop opened))
-             (caar opened))
+       (or (cadr (assoc (format "%s:%s" method address) open-servers))
            (list (intern method) address))))
      ((assoc method servers)
       method)
index 94bf470..6286c86 100644 (file)
@@ -57,6 +57,9 @@
     "http://slashdot.org/article.pl?sid=%s&mode=nocomment"
   "Where nnslashdot will fetch the article from.")
 
+(defvoo nnslashdot-backslash-url "http://slashdot.org/slashdot.xml"
+  "Where nnslashdot will fetch the stories from.")
+
 (defvoo nnslashdot-threshold -1
   "The article threshold.")
 
         ;; First we do the Ultramode to get info on all the latest groups.
        (progn
          (mm-with-unibyte-buffer
-           (nnweb-insert "http://slashdot.org/slashdot.xml" t)
+           (nnweb-insert nnslashdot-backslash-url t)
            (goto-char (point-min))
            (while (search-forward "<story>" nil t)
              (narrow-to-region (point) (search-forward "</story>"))