Function: spam-spamoracle-learn

spam-spamoracle-learn is a byte-compiled function defined in spam.el.gz.

Signature

(spam-spamoracle-learn ARTICLES ARTICLE-IS-SPAM-P &optional UNREGISTER)

Documentation

Run spamoracle in training mode.

Source Code

;; Defined in /usr/src/emacs/lisp/gnus/spam.el.gz
(defun spam-spamoracle-learn (articles article-is-spam-p &optional unregister)
  "Run spamoracle in training mode."
  (with-temp-buffer
    (let ((temp-buffer-name (buffer-name)))
      (save-excursion
        (goto-char (point-min))
        (dolist (article articles)
          (insert (spam-get-article-as-string article)))
        (let* ((arg (if (xor unregister article-is-spam-p)
                        "-spam"
                      "-good"))
               (status
                (apply #'call-process-region
                       (point-min) (point-max)
                       spam-spamoracle-binary
                       nil temp-buffer-name nil
                       (if spam-spamoracle-database
                           `("-f" ,spam-spamoracle-database
                             "add" ,arg)
                         `("add" ,arg)))))
          (unless (eq 0 status)
            (error "Error running spamoracle: %s" status)))))))