Function: nndiary-active-number
nndiary-active-number is a byte-compiled function defined in
nndiary.el.gz.
Signature
(nndiary-active-number GROUP)
Documentation
Compute the next article number in GROUP.
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/nndiary.el.gz
(defun nndiary-active-number (group)
"Compute the next article number in GROUP."
(let ((active (cadr (assoc group nndiary-group-alist))))
;; The group wasn't known to nndiary, so we just create an active
;; entry for it.
(unless active
;; Perhaps the active file was corrupt? See whether
;; there are any articles in this group.
(nndiary-possibly-create-directory group)
(nndiary-possibly-change-directory group)
(unless nndiary-article-file-alist
(setq nndiary-article-file-alist
(sort
(nnheader-article-to-file-alist nndiary-current-directory)
#'car-less-than-car)))
(setq active
(if nndiary-article-file-alist
(cons (caar nndiary-article-file-alist)
(caar (last nndiary-article-file-alist)))
(cons 1 0)))
(push (list group active) nndiary-group-alist))
(setcdr active (1+ (cdr active)))
(while (file-exists-p
(expand-file-name (int-to-string (cdr active))
(nnmail-group-pathname group nndiary-directory)))
(setcdr active (1+ (cdr active))))
(cdr active)))