From 502cf106ccdc79b315bdb6357344cf6da5d13b0e Mon Sep 17 00:00:00 2001 From: yamaoka Date: Thu, 16 Jan 2003 13:12:27 +0000 Subject: [PATCH] Synch with Oort Gnus. --- texi/ChangeLog | 8 +++++ texi/gnus-ja.texi | 76 +++++++++++++++++++++++++++++++++++++----------- texi/gnus.texi | 84 +++++++++++++++++++++++++++++++++++++++-------------- 3 files changed, 129 insertions(+), 39 deletions(-) diff --git a/texi/ChangeLog b/texi/ChangeLog index 9f914c9..1c43a17 100644 --- a/texi/ChangeLog +++ b/texi/ChangeLog @@ -1,3 +1,11 @@ +2003-01-16 Teodor Zlatanov + + * gnus.texi (Filtering Spam Using The Spam ELisp Package): + clarified syntax of gnus-spam-process-destinations and + gnus-ham-process-destinations variables + (Extending the spam elisp package): fixed typo in node name + (Bogofilter): new functionality and variables noted + 2003-01-15 ShengHuo ZHU * gnus.texi: Don't use `path' in some cases. diff --git a/texi/gnus-ja.texi b/texi/gnus-ja.texi index 045b075..aedfea4 100644 --- a/texi/gnus-ja.texi +++ b/texi/gnus-ja.texi @@ -20992,7 +20992,7 @@ Spam $B5-;v$r8+$?$H$-$O$$$D$G$b!"%0%k!<%W$rH4$1$kA0$KI,$:(B @kbd{M-d} $B$G$=$ @findex spam-bogofilter-score @code{spam-bogofilter-score}$B!#(B -$B$3$N%3%^%s%I$,$A$c$s$HF/$/$?$a$K$O(B bogofilter $B$N=hM}$rM-8z$K$7$J$1$l$P$J(B +$B$3$N%3%^%s%I$,$A$c$s$HF/$/$?$a$K$O(B Bogofilter $B$r%$%s%9%H!<%k$7$J$1$l$P$J(B $B$j$^$;$s!#(B @xref{Bogofilter}$B!#(B @@ -21070,8 +21070,10 @@ Spam $B%0%k!<%W$G$O!"%G%#%U%)%k%H$G$9$Y$F$N%a%C%;!<%8$,(B spam $B$G$"$k$H2rl(B -$B=j$K0\$5$l$^$9!#>l=j$H$$$&$N$O%0%k!<%WL>$N$3$H$G$9!#(B +$B$+(B @code{gnus-ham-process-destinations} $BJQ?t$N$I$A$i$+$K9gCW$9$k>l=j$K0\(B +$B$5$l$^$9!#$=$l$i$O%0%k!<%WL>$K9gCW$9$k@55,I=8=$N%j%9%H$G(B +$B$9(B (@code{customize-variable gnus-ham-process-destinations} $B$K$h$C$F$3$N(B +$BJQ?t$r%+%9%?%^%$%:$9$k$N$,:G$b4JC1$G$9(B)$B!#:G=*E*$J>l=j$O%0%k!<%WL>$G$9!#(B @code{ham-process-destination} $B%Q%i%a!<%?$,@_Dj$5$l$F$$$J$$$H!"(Bspam $B5-;v(B $B$OC1$K4|8B@Z$l>C5n$5$l$^$9!#(B @@ -21080,8 +21082,10 @@ Spam $B%0%k!<%W$G$O!"%G%#%U%)%k%H$G$9$Y$F$N%a%C%;!<%8$,(B spam $B$G$"$k$H2rl=j$K0\$5$l$^$9!#>l=j$H$$$&$N$O%0%k!<%WL>$N$3$H$G$9!#(B +$B%?$+(B @code{gnus-spam-process-destinations} $BJQ?t$N$I$A$i$+$K9gCW$9$k>l=j(B +$B$K0\$5$l$^$9!#$=$l$i$O%0%k!<%WL>$K9gCW$9$k@55,I=8=$N%j%9%H$G(B +$B$9(B (@code{customize-variable gnus-spam-process-destinations} $B$K$h$C$F$3(B +$B$NJQ?t$r%+%9%?%^%$%:$9$k$N$,:G$b4JC1$G$9(B)$B!#:G=*E*$J>l=j$O%0%k!<%WL>$G$9!#(B @code{spam-process-destination} $B%Q%i%a!<%?$,@_Dj$5$l$F$$$J$$$H!"(Bspam $B5-(B $B;v$OC1$K4|8B@Z$l>C5n$5$l$^$9!#(B @@ -21259,22 +21263,37 @@ Spam $B%0%k!<%W$G$O!"%G%#%U%)%k%H$G$9$Y$F$N%a%C%;!<%8$,(B spam $B$G$"$k$H2rl9g$O!"(B -$B$3$NJQ?t$r%;%C%H$7$F$/$@$5$$!#$3$l$O!"%P!<%8%g%s(B 0.4 $B$N%m!<%+%k$K%Q%C%A(B -$B$,Ev$?$C$?%3%T!<$G%F%9%H$5$l$^$7$?!#(B@code{spam.el} $B$K$"$k%$%s%9%H!<%k$K(B -$B4X$9$k%3%a%s%H$rFI$s$G3N$+$a$F2<$5$$!#(B +$B$3$NJQ?t$r%;%C%H$7$F$/$@$5$$!#(B Spam $B5-;v$@$1$N(B @samp{H} $B0u$r4XO"IU$1$k:G>.$N@$OC$K$h$C$F!"(BBogofilter $B%H(B $B%l!<%K%s%0$O$9$Y$F$+$J$j<+F0E*$K$J$j$^$9!#3F%+%F%4%j!<$N(B spam $B$+$=$&$G$J(B $B$$?tI4(B (a few hundreds) $B$N5-;v$rF~J}$N5-;v$N7W?t(B -$B$rI=<($7$^$9!#35N,%b!<%I$K$*$1$k%G%P%C%0$N$?$a$N!"$"$k$$$O9%4q?4$N$?$a$N(B -$B%3%^%s%I(B @kbd{S t} $B$O!"(BBogofilter $B$,8=:_$N5-;v$N(B @emph{spamicity} ($BLuCm(B: -spam $BEY(B?) $B%9%3%"(B (0.0$B!A(B1.0) $B$r!"%9%3%"$K:G$bCx$7$/4sM?$9$k5-;v$N8l$H$$$C(B -$B$7$g$K!"B>$N%P%C%U%!$KI=<($9$k$3$H$rB%$7$^$9!#(B +$B$s!#35N,%b!<%I$K$*$1$k%G%P%C%0$N$?$a$N!"$"$k$$$O9%4q?4$N$?$a$N%3%^%s(B +$B%I(B @kbd{S t} $B$O!"8=:_$N5-;v$N(B @emph{spamicity} ($BLuCm(B: spam $BEY(B?) $B%9%3(B +$B%"(B (0.0$B!A(B1.0) $B$rI=<($7$^$9!#(B + +Bogofilter $B$O!"%3%s%Q%$%k;~$K@_Dj$5$l$kFbIt$NogCM$K4p$E$$$F!"%a%C%;!<%8(B +$B$,(B spam $B$+$I$&$+$r7hDj$7$^$9!#ogCM$O%+%9%?%^%$%:$G$-$^$;$s!#(B Path $B$K(B @code{bogofilter} $B$Nl9g!"(BBogofilter $B$N=hM}$O(B $BC$5$l$^$9!#(B +@code{spam-use-bogofilter-headers} $B$r;H$&>l9g$O!"$3$l$rM-8z$K$7$F$O$$$1(B +$B$^$;$s!#(B + +@end defvar + +@defvar spam-use-bogofilter-headers + +$B%a%C%;!<%8%X%C%@!<$@$1$rD4$Y$k$?$a$K(B Eric Raymond $B$N?WB.(B +$B$J(B Bogofilter $B$r(B @code{spam-split} $B$K;HMQ$7$?$$>l9g$O!"$3$NJQ?t$r%;%C%H(B +$B$7$F$/$@$5$$!#$3$l$O(B @code{spam-use-bogofilter} $B$HF1$8$h$&$KF0:n$7$^$9$,!"(B +$B$"$i$+$8$a(B @code{X-Bogosity} $B%X%C%@!<$,%a%C%;!<%8$KB8:_$7$J$1$l$P$J$j$^(B +$B$;$s!#DL>o$3$l$O(B procmail $B$N5;K!$+!"2?$+$=$l$K;w$?$b$N$G9T$J$&$3$H$K$J$k(B +$B$G$7$g$&!#(BBogofilter $B$N%$%s%9%H!<%k$K4X$9$kJ8=q$rD4$Y$F2<$5$$!#(B + +@code{spam-use-bogofilter} $B$r;H$&>l9g$O!"$3$l$rM-8z$K$7$F$O$$$1$^$;$s!#(B + @end defvar @defvar gnus-group-spam-exit-processor-bogofilter @@ -21282,12 +21301,35 @@ Path $B$K(B @code{bogofilter} $B$Nl9g!"(BBogofilter $B$N $B$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$($k$+!"$^$?(B $B$O(B @code{gnus-spam-process-newsgroups} $BJQ?t$K2C$($F2<$5$$!#$3$N%7%s%\%k(B $B$,%0%k!<%W$N(B @code{spam-process} $B%Q%i%a!<%?$K2C$($i$l$k$H!"(Bspam $B0u$,IU$$(B -$B$?5-;v$,(B bogofilter $B$N(B spam $B%G!<%?%Y!<%9$K2C$($i$l!"(Bham $B0u$,IU$$$?5-;v(B -$B$,(B bogofilter $B$N(B ham $B%G!<%?%Y!<%9$K2C$($i$l$^$9!#(B -@strong{Bogofilter $B$N(B spam $B%W%m%;%C%5!<$O!"$5$i$K(B ham $B=hM}$b9T$J$&$?$@0l(B -$B$D$N(B spam $B%W%m%;%C%5!<$G$"$k$3$H$KCm0U$7$F2<$5$$!#(B} +$B$?5-;v$,(B bogofilter $B$N(B spam $B%G!<%?%Y!<%9$K2C$($i$^$9!#(B @end defvar +@c TRANSLATEME! +@defvar gnus-group-ham-exit-processor-bogofilter +Add this symbol to a group's @code{spam-process} parameter by +customizing the group parameters or the +@code{gnus-spam-process-newsgroups} variable. When this symbol is +added to a group's @code{spam-process} parameter, the ham-marked +articles in @emph{ham} groups will be added to the Bogofilter database +of non-spam messages. Note that this ham processor has no effect in +@emph{spam} or @emph{unclassified} groups. +@end defvar + +@defvar spam-bogofilter-database-directory + +This is the directory where Bogofilter will store its databases. It +is not specified by default, so Bogofilter will use its own default +database directory. + +@end defvar + +The Bogofilter mail classifier is similar to ifile in intent and +purpose. A ham and a spam processor are provided, plus the +@code{spam-use-bogofilter} and @code{spam-use-bogofilter-headers} +variables to indicate to spam-split that Bogofilter should either be +used, or has already been used on the article. The 0.9.2.1 version of +Bogofilter was used to test this functionality. + @node ifile spam filtering @subsubsection ifile $B$K$h$k(B spam $B$N_I2a(B @cindex spam filtering diff --git a/texi/gnus.texi b/texi/gnus.texi index d2eaa17..c9be0b1 100644 --- a/texi/gnus.texi +++ b/texi/gnus.texi @@ -21479,8 +21479,7 @@ for unread articles in @emph{spam} groups. @findex spam-bogofilter-score @code{spam-bogofilter-score}. -You must have bogofilter processing enabled for that command to work -properly. +You must have Bogofilter installed for that command to work properly. @xref{Bogofilter}. @@ -21556,7 +21555,10 @@ marked as expired after processing with the spam processor. This is not done for @emph{unclassified} or @emph{ham} groups. Also, any @strong{ham} articles in a spam group will be moved to a location determined by either the @code{ham-process-destination} group -parameter or the @code{gnus-ham-process-destinations} variable. The +parameter or a match in the @code{gnus-ham-process-destinations} +variable, which is a list of regular expressions matched with group +names (it's easiest to customize this variable with +@code{customize-variable gnus-ham-process-destinations}). The ultimate location is a group name. If the @code{ham-process-destination} parameter is not set, spam articles are only expired. @@ -21565,10 +21567,13 @@ a ham processor, which will study these as non-spam samples. When you leave a @emph{ham} or @emph{unclassified} group, all @strong{spam} articles are moved to a location determined by either -the @code{spam-process-destination} group parameter or the -@code{gnus-spam-process-destinations} variable. The location is a -group name. If the @code{spam-process-destination} parameter is not -set, the spam articles are only expired. +the @code{spam-process-destination} group parameter or a match in the +@code{gnus-spam-process-destinations} variable, which is a list of +regular expressions matched with group names (it's easiest to +customize this variable with @code{customize-variable +gnus-spam-process-destinations}). The ultimate location is a group +name. If the @code{spam-process-destination} parameter is not set, +the spam articles are only expired. To use the @code{spam.el} facilities for incoming mail filtering, you must add the following to your fancy split list @@ -21605,7 +21610,7 @@ The following are the methods you can use to control the behavior of * Bogofilter:: * ifile spam filtering:: * spam-stat spam filtering:: -* Extending the spam elist package:: +* Extending the spam elisp package:: @end menu @node Blacklists and Whitelists @@ -21745,37 +21750,72 @@ ham processor for blackholes. @defvar spam-use-bogofilter Set this variable if you want @code{spam-split} to use Eric Raymond's -speedy Bogofilter. This has been tested with a locally patched copy -of version 0.4. Make sure to read the installation comments in -@code{spam.el}. +speedy Bogofilter. With a minimum of care for associating the @samp{H} mark for spam articles only, Bogofilter training all gets fairly automatic. You should do this until you get a few hundreds of articles in each -category, spam or not. The shell command @command{head -1 -~/.bogofilter/*} shows both article counts. The command @kbd{S t} in -summary mode, either for debugging or for curiosity, triggers -Bogofilter into displaying in another buffer the @emph{spamicity} -score of the current article (between 0.0 and 1.0), together with the -article words which most significantly contribute to the score. +category, spam or not. The command @kbd{S t} in summary mode, either +for debugging or for curiosity, shows the @emph{spamicity} score of +the current article (between 0.0 and 1.0). + +Bogofilter determines if a message is spam based on an internal +threshold, set at compilation time. That threshold can't be +customized. If the @code{bogofilter} executable is not in your path, Bogofilter processing will be turned off. +You should not enable this if you use @code{spam-use-bogofilter-headers}. + @end defvar +@defvar spam-use-bogofilter-headers + +Set this variable if you want @code{spam-split} to use Eric Raymond's +speedy Bogofilter, looking only at the message headers. It works +similarly to @code{spam-use-bogofilter}, but the @code{X-Bogosity} header +must be in the message already. Normally you would do this with a +procmail recipe or something similar; consult the Bogofilter +installation documents for details. + +You should not enable this if you use @code{spam-use-bogofilter}. + +@end defvar @defvar gnus-group-spam-exit-processor-bogofilter Add this symbol to a group's @code{spam-process} parameter by customizing the group parameters or the @code{gnus-spam-process-newsgroups} variable. When this symbol is added to a group's @code{spam-process} parameter, spam-marked articles -will be added to the bogofilter spam database, and ham-marked articles -will be added to the bogofilter ham database. @strong{Note that the -Bogofilter spam processor is the only spam processor to also do ham -processing.} +will be added to the Bogofilter spam database. @end defvar +@defvar gnus-group-ham-exit-processor-bogofilter +Add this symbol to a group's @code{spam-process} parameter by +customizing the group parameters or the +@code{gnus-spam-process-newsgroups} variable. When this symbol is +added to a group's @code{spam-process} parameter, the ham-marked +articles in @emph{ham} groups will be added to the Bogofilter database +of non-spam messages. Note that this ham processor has no effect in +@emph{spam} or @emph{unclassified} groups. +@end defvar + +@defvar spam-bogofilter-database-directory + +This is the directory where Bogofilter will store its databases. It +is not specified by default, so Bogofilter will use its own default +database directory. + +@end defvar + +The Bogofilter mail classifier is similar to ifile in intent and +purpose. A ham and a spam processor are provided, plus the +@code{spam-use-bogofilter} and @code{spam-use-bogofilter-headers} +variables to indicate to spam-split that Bogofilter should either be +used, or has already been used on the article. The 0.9.2.1 version of +Bogofilter was used to test this functionality. + @node ifile spam filtering @subsubsection ifile spam filtering @cindex spam filtering @@ -21857,7 +21897,7 @@ Bogofilter does not require external programs. A spam and a ham processor, and the @code{spam-use-stat} variable for @code{spam-split} are provided. -@node Extending the spam elist package +@node Extending the spam elisp package @subsubsection Extending the spam elisp package @cindex spam filtering @cindex spam elisp package, extending -- 1.7.10.4