Synch with Oort Gnus.
[elisp/gnus.git-] / lisp / gnus-group.el
index 12eb031..fe44b7d 100644 (file)
@@ -38,7 +38,8 @@
 (require 'gnus-undo)
 (require 'time-date)
 (require 'gnus-ems)
-(require 'mm-url)
+
+(eval-when-compile (require 'mm-url))
 
 (defcustom gnus-group-archive-directory
   "*ftp@ftp.hpc.uh.edu:/pub/emacs/ding-list/"
@@ -648,7 +649,8 @@ simple manner.")
     "l" gnus-group-sort-groups-by-level
     "v" gnus-group-sort-groups-by-score
     "r" gnus-group-sort-groups-by-rank
-    "m" gnus-group-sort-groups-by-method)
+    "m" gnus-group-sort-groups-by-method
+    "n" gnus-group-sort-groups-by-real-name)
 
   (gnus-define-keys (gnus-group-sort-selected-map "P" gnus-group-group-map)
     "s" gnus-group-sort-selected-groups
@@ -657,7 +659,8 @@ simple manner.")
     "l" gnus-group-sort-selected-groups-by-level
     "v" gnus-group-sort-selected-groups-by-score
     "r" gnus-group-sort-selected-groups-by-rank
-    "m" gnus-group-sort-selected-groups-by-method)
+    "m" gnus-group-sort-selected-groups-by-method
+    "n" gnus-group-sort-selected-groups-by-real-name)
 
   (gnus-define-keys (gnus-group-list-map "A" gnus-group-mode-map)
     "k" gnus-group-list-killed
@@ -1901,14 +1904,14 @@ be permanent."
      (gnus-group-prefixed-name group method) method)))
 
 ;;;###autoload
-(defun gnus-fetch-group (group)
+(defun gnus-fetch-group (group &optional articles)
   "Start Gnus if necessary and enter GROUP.
 Returns whether the fetching was successful or not."
   (interactive (list (gnus-group-completing-read-group-name
                      "Group name: " gnus-active-hashtb)))
   (unless (get-buffer gnus-group-buffer)
     (gnus-no-server))
-  (gnus-group-read-group nil nil group))
+  (gnus-group-read-group articles nil group))
 
 ;;;###autoload
 (defun gnus-fetch-group-other-frame (group)
@@ -2246,7 +2249,8 @@ doing the deletion."
          (gnus-group-goto-group group)
          (gnus-group-kill-group 1 t)
          (gnus-sethash group nil gnus-active-hashtb)
-         (when gnus-cache-active-hashtb
+         (when (and (boundp 'gnus-cache-active-hashtb)
+                    gnus-cache-active-hashtb)
            (gnus-sethash group nil gnus-cache-active-hashtb)
            (setq gnus-cache-active-altered t))
          t))
@@ -3548,7 +3552,7 @@ to use."
     (gnus-group-group-name)
     (when current-prefix-arg
       (completing-read
-       "Faq dir: " (and (listp gnus-group-faq-directory)
+       "FAQ dir: " (and (listp gnus-group-faq-directory)
                        (mapcar #'list
                                gnus-group-faq-directory))))))
   (unless group
@@ -3577,6 +3581,7 @@ If given a prefix argument, prompt for a group."
             gnus-newsgroup-name)))
   (unless group
     (error "No group name given"))
+  (require 'mm-url)
   (let ((name (mm-url-form-encode-xwfu (gnus-group-real-name group)))
        url hierarchy)
     (when (string-match "\\(^[^\\.]+\\)\\..*" name)