(defvar gnus-agent-group-mode-map (make-sparse-keymap))
(gnus-define-keys gnus-agent-group-mode-map
- "Ju" gnus-agent-fetch-group
+ "Ju" gnus-agent-fetch-groups
"Jc" gnus-enter-category-buffer
"Jj" gnus-agent-toggle-plugged
"Js" gnus-agent-fetch-session
;;; Group mode commands
;;;
+(defun gnus-agent-fetch-groups (n)
+ "Put all new articles in the current groups into the agent."
+ (interactive "P")
+ (gnus-group-iterate n 'gnus-agent-fetch-group))
+
(defun gnus-agent-fetch-group (group)
"Put all new articles in GROUP into the agent."
(interactive (list (gnus-group-group-name)))
the mark instead. The difference between N and the actual number of
articles marked is returned."
(interactive "p")
- (gnus-set-global-variables)
(let ((backward (< n 0))
(n (abs n)))
(while (and
If N is negative, unmark backward instead. The difference between N and
the actual number of articles unmarked is returned."
(interactive "p")
- (gnus-set-global-variables)
(gnus-agent-mark-article n t))
(defun gnus-agent-toggle-mark (n)
If N is negative, toggle backward instead. The difference between N and
the actual number of articles toggled is returned."
(interactive "p")
- (gnus-set-global-variables)
(gnus-agent-mark-article n 'toggle))
(defun gnus-summary-set-agent-mark (article &optional unmark)
(let ((unmark (if (and (not (null unmark)) (not (eq t unmark)))
(memq article gnus-newsgroup-downloadable)
unmark)))
- (setq gnus-newsgroup-downloadable
- (delq article gnus-newsgroup-downloadable))
- (unless unmark
+ (if unmark
+ (progn
+ (setq gnus-newsgroup-downloadable
+ (delq article gnus-newsgroup-downloadable))
+ (push article gnus-newsgroup-undownloaded))
+ (setq gnus-newsgroup-undownloaded
+ (delq article gnus-newsgroup-undownloaded))
(push article gnus-newsgroup-downloadable))
(gnus-summary-update-mark
(if unmark gnus-undownloaded-mark gnus-downloadable-mark)
(if (not (re-search-forward "^Message-ID: *<\\([^>\n]+\\)>" nil t))
(setq id "No-Message-ID-in-article")
(setq id (buffer-substring (match-beginning 1) (match-end 1))))
- (write-region (point-min) (point-max)
- (concat dir (number-to-string (caar pos)))
- nil 'silent)
+ (let ((coding-system-for-write gnus-agent-article-file-coding-system))
+ (write-region (point-min) (point-max)
+ (concat dir (number-to-string (caar pos)))
+ nil 'silent))
(when (setq elem (assq (caar pos) gnus-agent-article-alist))
(setcdr elem t))
(gnus-agent-enter-history
(when (file-exists-p
(setq file (gnus-agent-article-name ".overview" group)))
(gnus-agent-braid-nov group articles file))
- (gnus-make-directory (file-name-directory file))
+ (gnus-make-directory (nnheader-translate-file-chars
+ (file-name-directory file)))
(write-region (point-min) (point-max) file nil 'silent)
(gnus-agent-save-alist group articles nil))
t))))