Import Oort Gnus v0.09.
[elisp/gnus.git-] / lisp / gnus-srvr.el
index 7b56e8e..351eb86 100644 (file)
@@ -58,7 +58,7 @@ The following specs are understood:
 %a agent covered
 
 General format specifiers can also be used.
-See (gnus)Formatting Variables."
+See Info node `(gnus)Formatting Variables'."
   :link '(custom-manual "(gnus)Formatting Variables")
   :group 'gnus-server-visual
   :type 'string)
@@ -105,7 +105,7 @@ If nil, a faster, but more primitive, buffer is used instead."
     (easy-menu-define
      gnus-server-server-menu gnus-server-mode-map ""
      '("Server"
-       ["Add" gnus-server-add-server t]
+       ["Add..." gnus-server-add-server t]
        ["Browse" gnus-server-read-server t]
        ["Scan" gnus-server-scan-server t]
        ["List" gnus-server-list-servers t]
@@ -321,7 +321,7 @@ The following commands are available:
     (while alist
       (unless (member (cdar alist) done)
        (push (cdar alist) done)
-       (cdr (setq server (pop alist)))
+       (setq server (pop alist))
        (when (and server (car server) (cdr server))
          (gnus-server-insert-server-line (car server) (cdr server))))
       (when (member (cdar alist) done)
@@ -662,6 +662,7 @@ The following commands are available:
     "L" gnus-browse-exit
     "q" gnus-browse-exit
     "Q" gnus-browse-exit
+    "d" gnus-browse-describe-group
     "\C-c\C-c" gnus-browse-exit
     "?" gnus-browse-describe-briefly
 
@@ -677,6 +678,7 @@ The following commands are available:
        ["Subscribe" gnus-browse-unsubscribe-current-group t]
        ["Read" gnus-browse-read-group t]
        ["Select" gnus-browse-select-group t]
+       ["Describe" gnus-browse-describe-groups t]
        ["Next" gnus-browse-next-group t]
        ["Prev" gnus-browse-prev-group t]
        ["Exit" gnus-browse-exit t]))
@@ -764,18 +766,19 @@ The following commands are available:
              (list
               (format
                "Gnus: %%b {%s:%s}" (car method) (cadr method))))
-       (let ((buffer-read-only nil) charset
+       (let ((buffer-read-only nil)
+             charset
              (prefix (let ((gnus-select-method orig-select-method))
                        (gnus-group-prefixed-name "" method))))
-         (while groups
-           (setq group (car groups))
+         (dolist (group groups)
            (setq charset (gnus-group-name-charset method (car group)))
            (gnus-add-text-properties
             (point)
             (prog1 (1+ (point))
               (insert
                (format "%c%7d: %s\n"
-                       (let ((level (gnus-group-level (concat prefix (car group)))))
+                       (let ((level (gnus-group-level
+                                     (concat prefix (car group)))))
                              (cond
                               ((<= level gnus-level-subscribed) ? )
                               ((<= level gnus-level-unsubscribed) ?U)
@@ -878,6 +881,11 @@ buffer.
             (match-string-no-properties 1))
         gnus-browse-current-method)))))
 
+(defun gnus-browse-describe-group (group)
+  "Describe the current group."
+  (interactive (list (gnus-browse-group-name)))
+  (gnus-group-describe-group nil group))
+
 (defun gnus-browse-unsubscribe-group ()
   "Toggle subscription of the current group in the browse buffer."
   (let ((sub nil)
@@ -889,10 +897,6 @@ buffer.
       (unless (eq (char-after) ? )
        (setq sub t))
       (setq group (gnus-browse-group-name))
-      ;;;;
-      ;;(when (and sub
-      ;;                (cadr (gnus-gethash group gnus-newsrc-hashtb)))
-      ;;(error "Group already subscribed"))
       (if sub
          (progn
            ;; Make sure the group has been properly removed before we