Function: gnus-category-write
gnus-category-write is a byte-compiled function defined in
gnus-agent.el.gz.
Signature
(gnus-category-write)
Documentation
Write the category alist.
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/gnus-agent.el.gz
(defun gnus-category-write ()
"Write the category alist."
(setq gnus-category-predicate-cache nil
gnus-category-group-cache nil)
;; Temporarily encode non-ascii group names when saving to file,
;; pending an upgrade of Gnus' file formats.
(let ((gnus-category-alist
(mapcar (lambda (cat)
(setf (alist-get 'agent-groups cat)
(mapcar (lambda (g)
(if (multibyte-string-p g)
(encode-coding-string g 'utf-8-emacs)
g))
(alist-get 'agent-groups cat)))
cat)
(copy-tree gnus-category-alist))))
(gnus-make-directory (nnheader-concat gnus-agent-directory "lib"))
(with-temp-file (nnheader-concat gnus-agent-directory "lib/categories")
;; This prin1 is temporary. It exists so that people can revert
;; to an earlier version of gnus-agent.
(prin1 (mapcar (lambda (c)
(list (car c)
(cdr (assoc 'agent-predicate c))
(cdr (assoc 'agent-score-file c))
(cdr (assoc 'agent-groups c))))
gnus-category-alist)
(current-buffer))
(newline)
(prin1 gnus-category-alist (current-buffer)))))