Synch to No Gnus 200407171659.
[elisp/gnus.git-] / lisp / gnus-group.el
index b265d5e..7818828 100644 (file)
@@ -640,7 +640,7 @@ simple manner.")
   "a" gnus-group-make-archive-group
   "k" gnus-group-make-kiboze-group
   "l" gnus-group-nnimap-edit-acl
-  "m" gnus-group-make-group
+  "m" gnus-group-make-group-simple
   "n" gnus-group-make-shimbun-group
   "E" gnus-group-edit-group
   "e" gnus-group-edit-group-method
@@ -910,6 +910,7 @@ simple manner.")
        ["Kill all groups on level..." gnus-group-kill-level t])
        ("Foreign groups"
        ["Make a foreign group..." gnus-group-make-group t]
+       ["Make a foreign group..." gnus-group-make-group-simple t]
        ["Make a shimbun group..." gnus-group-make-shimbun-group t]
        ["Add a directory group..." gnus-group-make-directory-group t]
        ["Add the help group" gnus-group-make-help-group t]
@@ -2290,6 +2291,16 @@ If EXCLUDE-GROUP, do not go to that group."
   (interactive)
   (gnus-enter-server-buffer))
 
+(defun gnus-group-make-group-simple (&optional group)
+  "Add a new newsgroup.
+The user will be prompted for GROUP."
+  (interactive
+   (list (completing-read "Group: " gnus-active-hashtb
+                         nil nil nil 'gnus-group-history)))
+  (gnus-group-make-group
+   (gnus-group-real-name group)
+   (gnus-group-server group)))
+
 (defun gnus-group-make-group (name &optional method address args)
   "Add a new newsgroup.
 The user will be prompted for a NAME, for a select METHOD, and an
@@ -3688,7 +3699,8 @@ If DONT-SCAN is non-nil, scan non-activated groups as well."
       (if (gnus-activate-group group (if dont-scan nil 'scan) nil method)
          (let ((info (gnus-get-info group))
                (active (gnus-active group)))
-           (gnus-request-update-info info method)
+           (when info
+             (gnus-request-update-info info method))
            (gnus-get-unread-articles-in-group info active)
            (unless (gnus-virtual-group-p group)
              (gnus-close-group group))