/[emacs]/emacs/lisp/gnus/gnus-group.el
ViewVC logotype

Diff of /emacs/lisp/gnus/gnus-group.el

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.23.2.4 by miles, Thu Oct 14 08:50:05 2004 UTC revision 1.23.2.5 by miles, Fri Oct 22 10:13:30 2004 UTC
# Line 44  Line 44 
44  (eval-when-compile (require 'mm-url))  (eval-when-compile (require 'mm-url))
45    
46  (defcustom gnus-group-archive-directory  (defcustom gnus-group-archive-directory
47    "*ftp@ftp.hpc.uh.edu:/pub/emacs/ding-list/"    "/ftp@ftp.hpc.uh.edu:/pub/emacs/ding-list/"
48    "*The address of the (ding) archives."    "*The address of the (ding) archives."
49    :group 'gnus-group-foreign    :group 'gnus-group-foreign
50    :type 'directory)    :type 'directory)
51    
52  (defcustom gnus-group-recent-archive-directory  (defcustom gnus-group-recent-archive-directory
53    "*ftp@ftp.hpc.uh.edu:/pub/emacs/ding-list-recent/"    "/ftp@ftp.hpc.uh.edu:/pub/emacs/ding-list-recent/"
54    "*The address of the most recent (ding) articles."    "*The address of the most recent (ding) articles."
55    :group 'gnus-group-foreign    :group 'gnus-group-foreign
56    :type 'directory)    :type 'directory)
# Line 2283  ADDRESS." Line 2283  ADDRESS."
2283          (lambda (group)          (lambda (group)
2284            (gnus-group-delete-group group nil t))))))            (gnus-group-delete-group group nil t))))))
2285    
 (defvar gnus-cache-active-altered)  
   
2286  (defun gnus-group-delete-group (group &optional force no-prompt)  (defun gnus-group-delete-group (group &optional force no-prompt)
2287    "Delete the current group.  Only meaningful with editable groups.    "Delete the current group.  Only meaningful with editable groups.
2288  If FORCE (the prefix) is non-nil, all the articles in the group will  If FORCE (the prefix) is non-nil, all the articles in the group will
# Line 2314  be removed from the server, even when it Line 2312  be removed from the server, even when it
2312            (gnus-group-goto-group group)            (gnus-group-goto-group group)
2313            (gnus-group-kill-group 1 t)            (gnus-group-kill-group 1 t)
2314            (gnus-sethash group nil gnus-active-hashtb)            (gnus-sethash group nil gnus-active-hashtb)
           (if (boundp 'gnus-cache-active-hashtb)  
               (when gnus-cache-active-hashtb  
                 (gnus-sethash group nil gnus-cache-active-hashtb)  
                 (setq gnus-cache-active-altered t)))  
2315            t))            t))
2316      (gnus-group-position-point)))      (gnus-group-position-point)))
2317    
# Line 3133  or nil if no action could be taken." Line 3127  or nil if no action could be taken."
3127    (let* ((entry (gnus-gethash group gnus-newsrc-hashtb))    (let* ((entry (gnus-gethash group gnus-newsrc-hashtb))
3128           (num (car entry))           (num (car entry))
3129           (marks (nth 3 (nth 2 entry)))           (marks (nth 3 (nth 2 entry)))
3130           (unread (gnus-list-of-unread-articles group)))           (unread (gnus-sequence-of-unread-articles group)))
3131      ;; Remove entries for this group.      ;; Remove entries for this group.
3132      (nnmail-purge-split-history (gnus-group-real-name group))      (nnmail-purge-split-history (gnus-group-real-name group))
3133      ;; Do the updating only if the newsgroup isn't killed.      ;; Do the updating only if the newsgroup isn't killed.
# Line 3146  or nil if no action could be taken." Line 3140  or nil if no action could be taken."
3140                                                   'del '(tick))                                                   'del '(tick))
3141                                             (list (cdr (assq 'dormant marks))                                             (list (cdr (assq 'dormant marks))
3142                                                   'del '(dormant))))                                                   'del '(dormant))))
3143          (setq unread (gnus-uncompress-range          (setq unread (gnus-range-add (gnus-range-add
3144                        (gnus-range-add (gnus-range-add                                        unread (cdr (assq 'dormant marks)))
3145                                         unread (cdr (assq 'dormant marks)))                                       (cdr (assq 'tick marks))))
                                       (cdr (assq 'tick marks)))))  
3146          (gnus-add-marked-articles group 'tick nil nil 'force)          (gnus-add-marked-articles group 'tick nil nil 'force)
3147          (gnus-add-marked-articles group 'dormant nil nil 'force))          (gnus-add-marked-articles group 'dormant nil nil 'force))
3148        ;; Do auto-expirable marks if that's required.        ;; Do auto-expirable marks if that's required.
3149        (when (gnus-group-auto-expirable-p group)        (when (gnus-group-auto-expirable-p group)
3150          (gnus-add-marked-articles group 'expire unread)          (gnus-range-map (lambda (article)
3151          (gnus-request-set-mark group (list (list unread 'add '(expire)))))                            (gnus-add-marked-articles group 'expire (list article))
3152                              (gnus-request-set-mark group (list (list (list article) 'add '(expire)))))
3153                            unread))
3154        (let ((gnus-newsgroup-name group))        (let ((gnus-newsgroup-name group))
3155          (gnus-run-hooks 'gnus-group-catchup-group-hook))          (gnus-run-hooks 'gnus-group-catchup-group-hook))
3156        num)))        num)))
# Line 3517  entail asking the server for the groups. Line 3512  entail asking the server for the groups.
3512    ;; First we make sure that we have really read the active file.    ;; First we make sure that we have really read the active file.
3513    (unless (gnus-read-active-file-p)    (unless (gnus-read-active-file-p)
3514      (let ((gnus-read-active-file t)      (let ((gnus-read-active-file t)
3515            (gnus-agent nil))             ; Trick the agent into ignoring the active file.            (gnus-agent gnus-plugged)); If we're actually plugged, store the active file in the agent.
3516        (gnus-read-active-file)))        (gnus-read-active-file)))
3517    ;; Find all groups and sort them.    ;; Find all groups and sort them.
3518    (let ((groups    (let ((groups
# Line 3599  re-scanning.  If ARG is non-nil and not Line 3594  re-scanning.  If ARG is non-nil and not
3594  (defun gnus-group-get-new-news-this-group (&optional n dont-scan)  (defun gnus-group-get-new-news-this-group (&optional n dont-scan)
3595    "Check for newly arrived news in the current group (and the N-1 next groups).    "Check for newly arrived news in the current group (and the N-1 next groups).
3596  The difference between N and the number of newsgroup checked is returned.  The difference between N and the number of newsgroup checked is returned.
3597  If N is negative, this group and the N-1 previous groups will be checked."  If N is negative, this group and the N-1 previous groups will be checked.
3598    If DONT-SCAN is non-nil, scan non-activated groups as well."
3599    (interactive "P")    (interactive "P")
3600    (let* ((groups (gnus-group-process-prefix n))    (let* ((groups (gnus-group-process-prefix n))
3601           (ret (if (numberp n) (- n (length groups)) 0))           (ret (if (numberp n) (- n (length groups)) 0))

Legend:
Removed from v.1.23.2.4  
changed lines
  Added in v.1.23.2.5

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26