Function: gnus-registry-remove-extra-data
gnus-registry-remove-extra-data is an interactive and byte-compiled
function defined in gnus-registry.el.gz.
Signature
(gnus-registry-remove-extra-data EXTRA)
Documentation
Remove tracked EXTRA data from the gnus registry.
EXTRA is a list of symbols. Valid symbols are those contained in
the docs of gnus-registry-track-extra. This command is useful
when you stop tracking some extra data and now want to purge it
from your existing entries.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/gnus-registry.el.gz
(defun gnus-registry-remove-extra-data (extra)
"Remove tracked EXTRA data from the gnus registry.
EXTRA is a list of symbols. Valid symbols are those contained in
the docs of `gnus-registry-track-extra'. This command is useful
when you stop tracking some extra data and now want to purge it
from your existing entries."
(interactive (list (mapcar #'intern
(completing-read-multiple
"Extra data: "
'("subject" "sender" "recipient")))))
(when extra
(let ((db gnus-registry-db))
(registry-reindex db)
(cl-loop for k being the hash-keys of (oref db data)
using (hash-value v)
do (let ((newv (delq nil (mapcar (lambda (entry)
(unless (member (car entry) extra)
entry))
v))))
(registry-delete db (list k) nil)
(gnus-registry-insert db k newv)))
(registry-reindex db))))