X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=lisp%2Fgnus-srvr.el;h=835cd1492f5c65d9616ef9599789ab252e17bcfd;hb=f702159a4d7cb8471a17884108880aa8d7961728;hp=240ff3bac27baa34647cb78234da7a71e2bc4d61;hpb=78a147fda022ac79f5398b254c6f713bac89feae;p=elisp%2Fgnus.git- diff --git a/lisp/gnus-srvr.el b/lisp/gnus-srvr.el index 240ff3b..835cd14 100644 --- a/lisp/gnus-srvr.el +++ b/lisp/gnus-srvr.el @@ -71,6 +71,7 @@ See Info node `(gnus)Formatting Variables'." (defcustom gnus-server-browse-in-group-buffer nil "Whether server browsing should take place in the group buffer. If nil, a faster, but more primitive, buffer is used instead." + :version "21.4" :group 'gnus-server-visual :type 'boolean) @@ -204,26 +205,31 @@ If nil, a faster, but more primitive, buffer is used instead." (defcustom gnus-server-agent-face 'gnus-server-agent-face "Face name to use on AGENTIZED servers." + :version "21.4" :group 'gnus-server-visual :type 'face) (defcustom gnus-server-opened-face 'gnus-server-opened-face "Face name to use on OPENED servers." + :version "21.4" :group 'gnus-server-visual :type 'face) (defcustom gnus-server-closed-face 'gnus-server-closed-face "Face name to use on CLOSED servers." + :version "21.4" :group 'gnus-server-visual :type 'face) (defcustom gnus-server-denied-face 'gnus-server-denied-face "Face name to use on DENIED servers." + :version "21.4" :group 'gnus-server-visual :type 'face) (defcustom gnus-server-offline-face 'gnus-server-offline-face "Face name to use on OFFLINE servers." + :version "21.4" :group 'gnus-server-visual :type 'face) @@ -313,7 +319,6 @@ The following commands are available: (gnus-set-format 'server t) (let ((alist gnus-server-alist) (buffer-read-only nil) - (opened gnus-opened-servers) done server op-ser) (erase-buffer) (setq gnus-inserted-opened-servers nil) @@ -328,16 +333,15 @@ The following commands are available: (pop alist))) ;; Then we insert the list of servers that have been opened in ;; this session. - (while opened - (when (and (not (member (caar opened) done)) + (dolist (open gnus-opened-servers) + (when (and (not (member (car open) done)) ;; Just ignore ephemeral servers. - (not (member (caar opened) gnus-ephemeral-servers))) - (push (caar opened) done) + (not (member (car open) gnus-ephemeral-servers))) + (push (car open) done) (gnus-server-insert-server-line - (setq op-ser (format "%s:%s" (caaar opened) (nth 1 (caar opened)))) - (caar opened)) - (push (list op-ser (caar opened)) gnus-inserted-opened-servers)) - (setq opened (cdr opened)))) + (setq op-ser (format "%s:%s" (caar open) (nth 1 (car open)))) + (car open)) + (push (list op-ser (car open)) gnus-inserted-opened-servers)))) (goto-char (point-min)) (gnus-server-position-point)) @@ -395,10 +399,10 @@ The following commands are available: (progn ;; Remove the server from `gnus-opened-servers' since ;; it has never been opened with the new `info' yet. - (setq gnus-opened-servers - (delq (assoc (cdr entry) gnus-opened-servers) - gnus-opened-servers)) - (setcdr entry info)) + (gnus-opened-servers-remove (cdr entry)) + ;; Don't make a new Lisp object. + (setcar (cdr entry) (car info)) + (setcdr (cdr entry) (cdr info))) (setq gnus-server-alist (nconc gnus-server-alist (list (cons server info)))))))) @@ -499,9 +503,8 @@ The following commands are available: (defun gnus-server-open-all-servers () "Open all servers." (interactive) - (let ((servers gnus-inserted-opened-servers)) - (while servers - (gnus-server-open-server (car (pop servers)))))) + (dolist (server gnus-inserted-opened-servers) + (gnus-server-open-server (car server)))) (defun gnus-server-close-server (server) "Close SERVER."