"|IFS=' ' && p=/usr/local/bin/procmail && test -f $p && exec $p -Yf- || exit 75 #iuser
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbinと作成しました。
MAILDIR=$HOME/Maildir/
DEFAULT=$MAILDIR/
LOGFILE=$MAILDIR/procmail.log
SENDMAIL=/usr/local/sbin/sendmail # postfix
:0fw:
| /usr/local/bin/bsfilter --auto-update --pipe --insert-flag --insert-probabilit
y
# Work around procmail bug: any output on stderr will cause the "F" in "From"
# to be dropped.
:0
* ^^rom[ ]
{
LOG="*** Dropped F off From_ header! Fixing up. "
:0 fhw
| sed -e '1s/^/F/'
}
jtokenizer kakasiとだけ記述し、準備完了です。これで自動的に学習してくれるようですし、SPAM と判断したメールには、ヘッダーに
X-Spam-Flag: YESと追加してくれます。
imap-server imap サーバ名と作成しました。
imap-auth login
imap-user imap ユーザ名
imap-password imap パスワード*2
jtokenizer kakasi
(setq mew-spam: "X-Spam-Flag:")を追加し、~/.mew.el には
; put "D"を追加しました*3。これで、X-Spam-Flag: YES がヘッダーに追加されたメールには D マークがつきますし、サマリーモードで lh, ls を使って学習できます。学習結果は、~/.bsfilter/ の
(defun mew-spam-bsfilter (val)
(let ( (case-fold-search t) )
(if (string-match "yes" val) ?D)))
; put "o +sapm" at inc
;(defun mew-spam-bsfilter (val)
; (let ( (case-fold-search t) )
; (if (string-match "yes" val) "+spam")))
(setq mew-inbox-action-alist
'( ("X-Spam-Flag:" mew-spam-bsfilter) ) )
; for "ls" (learn-spam)
(setq mew-spam-prog "bsfilter")
(setq mew-spam-prog-args '("-C" "-s" "-u"))
; for "lh" (learn-ham)
(setq mew-ham-prog "bsfilter")
(setq mew-ham-prog-args '("-c" "-S" "-u"))
; for "bm" (mark-spam)
(define-key mew-summary-mode-map "bm" 'mew-summary-bsfilter-mark-region)
(defun mew-summary-bsfilter-mark-region (&optional arg)
"study/judge the region and put the '*' mark onto spams.
need to re-learn if judgment of bsfilter is wrong"
(interactive "P")
(mew-pickable
(let ( (func 'mew-summary-pick-with-cmd)
(mew-inherit-grep-cmd "bsfilter -a --list-spam") )
(mew-summary-pick-body func t nil 'nopattern))))
C.clean.sdbm.dir
C.clean.sdbm.pag
C.prob.sdbm.dir
C.prob.sdbm.pag
C.spam.sdbm.dir
C.spam.sdbm.pag
ja.clean.sdbm.dir
ja.clean.sdbm.pag
ja.prob.sdbm.dir
ja.prob.sdbm.pag
ja.spam.sdbm.dir
ja.spam.sdbm.pag
% bsfilter --export-spam > spam.txt
% bsfilter --export-clean > clean.txt
% bsfilter --import-spam < spam.txt
% bsfilter --import-clean < clean.txt
% bsfilter --update