@vindex mm-verify-option
Option of verifying signed parts. @code{never}, not verify;
@code{always}, always verify; @code{known}, only verify known
-protocols. Otherwise, ask user.
+protocols. Otherwise, ask user.
@item mm-decrypt-option
@vindex mm-decrypt-option
Option of decrypting encrypted parts. @code{never}, no decryption;
@code{always}, always decrypt; @code{known}, only decrypt known
-protocols. Otherwise, ask user.
+protocols. Otherwise, ask user.
@item mml1991-use
@vindex mml1991-use
\e$B:G=i$NMWAG$,J8;zNs$G$J$$%j%9%H$G$9\e(B:
\e$B%j%9%H$O:F5"E*$KI>2A$5$l$^$9!#%j%9%H$N:G=i$NMWAG$O=R8l$G$9!#0J2<$N=R8l$,\e(B
-\e$BG'<1$5$l$^$9\e(B: @code{or}, @code{and}, @code{not}, @code{typep}. \e$B$3$l$,Nc\e(B
+\e$BG'<1$5$l$^$9\e(B: @code{or}, @code{and}, @code{not}, @code{typep}\e$B!#$3$l$,Nc\e(B
\e$B$G$9\e(B:
@lisp
\e$B$H$$$&;v$K$J$j$^$9!#$4Mw$NDL$j!"IaDL$N\e(B @code{1.0} \e$B:G>e0L;XDj$NBe$o$j$K!"\e(B
\e$B$=$l$>$l$NDI2C$NJ,3d$,%U%l!<%`%Q%i%a!<%?O"A[%j%9%H$rBg$-$5;XDj$H$7$F;}$?\e(B
\e$B$J$1$l$P$J$j$^$;$s!#\e(B@xref{Frame Parameters, , Frame Parameters, elisp,
-The GNU Emacs Lisp Reference Manual}. XEmacs \e$B$G$O!"%U%l!<%`%W%m%Q%F%#%j\e(B
+The GNU Emacs Lisp Reference Manual}\e$B!#\e(BXEmacs \e$B$G$O!"%U%l!<%`%W%m%Q%F%#%j\e(B
\e$B%9%H$b;H$($^$9\e(B---\e$BNc$($P!"\e(B@code{(height 5 width 15 left -1 top 1)} \e$B$O$=$N\e(B
\e$B$h$&$J%Q%i%a!<%?%j%9%H$G$9!#\e(B
@code{gnus-buffer-configuration} \e$B$K;HMQ2DG=$JA4$F$N%-!<$N0lMw$O$=$N=i4|\e(B
@cindex SpamOracle
@cindex spam
-An easy way to filter out spam is to use SpamOracle. SpamOracle is an
+An easy way to filter out spam is to use SpamOracle. SpamOracle is an
statistical mail filtering tool written by Xavier Leroy and needs to be
installed separately.
-There are several ways to use SpamOracle with Gnus. In all cases, your
-mail is piped through SpamOracle in its @emph{mark} mode. SpamOracle will
+There are several ways to use SpamOracle with Gnus. In all cases, your
+mail is piped through SpamOracle in its @emph{mark} mode. SpamOracle will
then enter an @samp{X-Spam} header indicating whether it regards the
mail as a spam mail or not.
One possibility is to run SpamOracle as a @code{:prescript} from the
-@xref{Mail Source Specifiers}, (@pxref{SpamAssassin}). This method has
+@xref{Mail Source Specifiers}, (@pxref{SpamAssassin}). This method has
the advantage that the user can see the @emph{X-Spam} headers.
The easiest method is to make @code{spam.el} (@pxref{Filtering Spam
-Using The Spam ELisp Package}) call SpamOracle.
+Using The Spam ELisp Package}) call SpamOracle.
-@vindex spam-use-spamoracle
+@vindex spam-use-spamoracle
To enable SpamOracle usage by @code{spam.el}, set the variable
@code{spam-use-spamoracle} to @code{t} and configure the
@code{nnmail-split-fancy} or @code{nnimap-split-fancy} as described in
-the section @xref{Filtering Spam Using The Spam ELisp Package}. In
+the section @xref{Filtering Spam Using The Spam ELisp Package}. In
this example the @samp{INBOX} of an nnimap server is filtered using
-SpamOracle. Mails recognized as spam mails will be moved to
-@code{spam-split-group}, @samp{Junk} in this case. Ham messages stay
+SpamOracle. Mails recognized as spam mails will be moved to
+@code{spam-split-group}, @samp{Junk} in this case. Ham messages stay
in @samp{INBOX}:
@example
@defvar spam-spamoracle-binary
Gnus uses the SpamOracle binary called @file{spamoracle} found in the
-user's PATH. Using the variable @code{spam-spamoracle-binary}, this
+user's PATH. Using the variable @code{spam-spamoracle-binary}, this
can be customized.
@end defvar
@defvar spam-spamoracle-database
By default, SpamOracle uses the file @file{~/.spamoracle.db} as a database to
-store its analyses. This is controlled by the variable
-@code{spam-spamoracle-database} which defaults to @code{nil}. That means
-the default SpamOracle database will be used. In case you want your
+store its analyses. This is controlled by the variable
+@code{spam-spamoracle-database} which defaults to @code{nil}. That means
+the default SpamOracle database will be used. In case you want your
database to live somewhere special, set
@code{spam-spamoracle-database} to this path.
@end defvar
SpamOracle employs a statistical algorithm to determine whether a
-message is spam or ham. In order to get good results, meaning few
-false hits or misses, SpamOracle needs training. SpamOracle learns the
-characteristics of your spam mails. Using the @emph{add} mode
+message is spam or ham. In order to get good results, meaning few
+false hits or misses, SpamOracle needs training. SpamOracle learns the
+characteristics of your spam mails. Using the @emph{add} mode
(training mode) one has to feed good (ham) and spam mails to
-SpamOracle. This can be done by pressing @kbd{|} in the Summary buffer
+SpamOracle. This can be done by pressing @kbd{|} in the Summary buffer
and pipe the mail to a SpamOracle process or using @code{spam.el}'s
-spam- and ham-processors, which is much more convenient. For a
+spam- and ham-processors, which is much more convenient. For a
detailed description of spam- and ham-processors, see @xref{Filtering Spam Using The Spam ELisp Package}.
@defvar gnus-group-spam-exit-processor-spamoracle
Add this symbol to a group's @code{spam-process} parameter by
customizing the group parameter or the
-@code{gnus-spam-process-newsgroups} variable. When this symbol is added
+@code{gnus-spam-process-newsgroups} variable. When this symbol is added
to a group's @code{spam-process} parameter, spam-marked articles will be
sent to SpamOracle as spam samples.
@end defvar
@defvar gnus-group-ham-exit-processor-spamoracle
Add this symbol to a group's @code{spam-process} parameter by
customizing the group parameter or the
-@code{gnus-spam-process-newsgroups} variable. When this symbol is added
+@code{gnus-spam-process-newsgroups} variable. When this symbol is added
to a grup's @code{spam-process} parameter, the ham-marked articles in
@emph{ham} groups will be sent to the SpamOracle as samples of ham
-messages. Note that this ham processor has no effect in @emph{spam} or
+messages. Note that this ham processor has no effect in @emph{spam} or
@emph{unclassified} groups.
@end defvar
(gnus-group-spam-exit-processor-spamoracle)))
@end example
For this group the `gnus-group-spam-exit-processor-spamoracle' is
-installed. If the group contains spam message (e.g. because SpamOracle
+installed. If the group contains spam message (e.g. because SpamOracle
has not had enough sample messages yet) and the user marks some
messages as spam messages, these messages will be processed by
-@code{gnus-group-spam-exit-processor-spamoracle}. This processor sends
+@code{gnus-group-spam-exit-processor-spamoracle}. This processor sends
the messages to SpamOracle as new samples for spam.
@node Extending the spam elisp package
There should always be a colon on the line; the cursor always moves to
the colon after performing an operation. @xref{Positioning
-Point}. Nothing else is required---not even the group name. All
+Point}. Nothing else is required---not even the group name. All
displayed text is just window dressing, and is never examined by Gnus.
Gnus stores all real information it needs using text properties.
@item banner
@cindex banner
An item like @code{(banner . @var{regexp})} causes any part of an article
-that matches the regular expression @var{regexp} to be stripped. Instead of
+that matches the regular expression @var{regexp} to be stripped. Instead of
@var{regexp}, you can also use the symbol @code{signature} which strips the
last signature or any of the elements of the alist
@code{gnus-article-banner-alist}.
@}
@end example
-The Sieve language is described in RFC 3028. @xref{Top, , Top, sieve,
+The Sieve language is described in RFC 3028. @xref{Top, , Top, sieve,
Emacs Sieve}.
@item (@var{variable} @var{form})
@vindex gnus-list-identifiers
A use for this feature is to remove a mailing list identifier tag in
-the subject fields of articles. E.g. if the news group
+the subject fields of articles. E.g. if the news group
@example
nntp+news.gnus.org:gmane.text.docbook.apps
@end example
@findex gnus-topic-expire-articles
Run all expirable articles in the current group or topic through the
expiry process (if any)
-(@code{gnus-topic-expire-articles}). (@pxref{Expiring Mail}).
+(@code{gnus-topic-expire-articles}). (@pxref{Expiring Mail}).
@item T r
@kindex T r (Topic)
@item gnus-group-name-charset-method-alist
@vindex gnus-group-name-charset-method-alist
-An alist of method and the charset for group names. It is used to show
+An alist of method and the charset for group names. It is used to show
non-@acronym{ASCII} group names.
For example:
@vindex gnus-group-fetch-control-use-browse-url
@cindex control message
Fetch the control messages for the group from the archive at
-@code{ftp.isc.org} (@code{gnus-group-fetch-control}). Query for a
+@code{ftp.isc.org} (@code{gnus-group-fetch-control}). Query for a
group if given a prefix argument.
If @code{gnus-group-fetch-control-use-browse-url} is non-@code{nil},
is only placed in the group with the first matching rule. For
example, the group parameter @samp{(sieve address "sender"
"owner-ding@@hpc.uh.edu")} will generate the following piece of Sieve
-code if @code{gnus-sieve-crosspost} is @code{nil}. (When
+code if @code{gnus-sieve-crosspost} is @code{nil}. (When
@code{gnus-sieve-crosspost} is non-@code{nil}, it looks the same
except that the line containing the call to @code{stop} is removed.)
@item L
Number of lines in the article.
@item c
-Number of characters in the article. This specifier is not supported
+Number of characters in the article. This specifier is not supported
in some methods (like nnfolder).
@item k
Pretty-printed version of the number of characters in the article;
@item gnus-sum-thread-tree-indent
@vindex gnus-sum-thread-tree-indent
-Used for indenting. The default is @samp{ }.
+Used for indenting. The default is @samp{ }.
@item gnus-sum-thread-tree-leaf-with-other
@vindex gnus-sum-thread-tree-leaf-with-other
@item <
Twenty minus thread level spaces.
@item U
-Unread. @xref{Read Articles}.
+Unread. @xref{Read Articles}.
@item R
This misleadingly named specifier is the @dfn{secondary mark}. This
@c @icon{gnus-summary-followup-with-original}
@findex gnus-summary-followup-with-original
Post a followup to the current article and include the original message
-(@code{gnus-summary-followup-with-original}). This command uses the
+(@code{gnus-summary-followup-with-original}). This command uses the
process/prefix convention.
@item S n
Articles that according to the server haven't been shown to the user
before are marked with a @samp{N} in the second column
(@code{gnus-recent-mark}). Note that not all servers support this
-mark, in which case it simply never appears. Compare with
+mark, in which case it simply never appears. Compare with
@code{gnus-unseen-mark}.
@item
@kindex / / (Summary)
@findex gnus-summary-limit-to-subject
Limit the summary buffer to articles that match some subject
-(@code{gnus-summary-limit-to-subject}). If given a prefix, exclude
+(@code{gnus-summary-limit-to-subject}). If given a prefix, exclude
matching articles.
@item / a
@kindex / a (Summary)
@findex gnus-summary-limit-to-author
Limit the summary buffer to articles that match some author
-(@code{gnus-summary-limit-to-author}). If given a prefix, exclude
+(@code{gnus-summary-limit-to-author}). If given a prefix, exclude
matching articles.
@item / x
@findex gnus-summary-limit-to-extra
Limit the summary buffer to articles that match one of the ``extra''
headers (@pxref{To From Newsgroups})
-(@code{gnus-summary-limit-to-extra}). If given a prefix, exclude
+(@code{gnus-summary-limit-to-extra}). If given a prefix, exclude
matching articles.
@item / u
@kindex / C (Summary)
@findex gnus-summary-limit-mark-excluded-as-read
Mark all excluded unread articles as read
-(@code{gnus-summary-limit-mark-excluded-as-read}). If given a prefix,
+(@code{gnus-summary-limit-mark-excluded-as-read}). If given a prefix,
also mark excluded ticked and dormant articles as read.
@item / N
@kindex / N (Summary)
@findex gnus-summary-insert-new-articles
-Insert all new articles in the summary buffer. It scans for new emails
+Insert all new articles in the summary buffer. It scans for new emails
if @var{back-end}@code{-get-new-mail} is non-@code{nil}.
@item / o
@kindex / o (Summary)
@findex gnus-summary-insert-old-articles
-Insert all old articles in the summary buffer. If given a numbered
+Insert all old articles in the summary buffer. If given a numbered
prefix, fetch this number of articles.
@end table
@findex gnus-cache-move-cache
@code{gnus-cache-move-cache} will move your whole
-@code{gnus-cache-directory} to some other location. You get asked to
+@code{gnus-cache-directory} to some other location. You get asked to
where, isn't that cool?
@node Persistent Articles
@kindex O P (Summary)
@findex gnus-summary-muttprint
@vindex gnus-summary-muttprint-program
-Save the current article into muttprint. That is, print it using the
+Save the current article into muttprint. That is, print it using the
external program @uref{http://muttprint.sourceforge.net/,
-Muttprint}. The program name and options to use is controlled by the
+Muttprint}. The program name and options to use is controlled by the
variable @code{gnus-summary-muttprint-program}.
(@code{gnus-summary-muttprint}).
Strip list identifiers specified in @code{gnus-list-identifiers}. These
are strings some mailing list servers add to the beginning of all
@code{Subject} headers---for example, @samp{[zebra 4711]}. Any leading
-@samp{Re: } is skipped before stripping. @code{gnus-list-identifiers}
+@samp{Re: } is skipped before stripping. @code{gnus-list-identifiers}
may not contain @code{\\(..\\)}.
@table @code
@item gnus-cited-lines-visible
@vindex gnus-cited-lines-visible
The number of lines at the beginning of the cited text to leave
-shown. This can also be a cons cell with the number of lines at the top
+shown. This can also be a cons cell with the number of lines at the top
and bottom of the text, respectively, to remain visible.
@end table
@code{nil}), that should be made global while the summary buffer is
active. These variables can be used to set variables in the group
parameters while still allowing them to affect operations done in
-other buffers. For example:
+other buffers. For example:
@lisp
(setq gnus-newsgroup-variables
@vindex mm-verify-option
Option of verifying signed parts. @code{never}, not verify;
@code{always}, always verify; @code{known}, only verify known
-protocols. Otherwise, ask user.
+protocols. Otherwise, ask user.
@item mm-decrypt-option
@vindex mm-decrypt-option
Option of decrypting encrypted parts. @code{never}, no decryption;
@code{always}, always decrypt; @code{known}, only decrypt known
-protocols. Otherwise, ask user.
+protocols. Otherwise, ask user.
@item mml1991-use
@vindex mml1991-use
@vindex nntp-via-envuser
If non-@code{nil}, the intermediate @code{telnet} session (client and
server both) will support the @code{ENVIRON} option and not prompt for
-login name. This works for Solaris @code{telnet}, for instance.
+login name. This works for Solaris @code{telnet}, for instance.
@item nntp-via-shell-prompt
@vindex nntp-via-shell-prompt
@subsubsection Common Variables
The following variables affect the behavior of all, or several of the
-pre-made connection functions. When not specified, all functions are
+pre-made connection functions. When not specified, all functions are
affected.
@table @code
@uref{webmail.netscape.com}, @uref{www.netaddress.com},
@uref{mail.yahoo.com}.
-NOTE: Webmail largely depends cookies. A "one-line-cookie" patch is
+NOTE: Webmail largely depends cookies. A "one-line-cookie" patch is
required for url "4.0pre.46".
WARNING: Mails may be lost. NO WARRANTY.
With this setup, any mail that has @code{IMPORTANT} in its Subject
header and was sent in the year @code{YYYY} and month @code{MMM}, will
-get expired to the group @code{nnfolder:IMPORTANT.YYYY.MMM}. If its
+get expired to the group @code{nnfolder:IMPORTANT.YYYY.MMM}. If its
From or To header contains the string @code{boss}, it will get expired
-to @code{nnfolder:Work}. All other mail will get expired to
+to @code{nnfolder:Work}. All other mail will get expired to
@code{nnfolder:Archive-YYYY}.
@vindex nnmail-keep-last-article
server, take a recursive copy of the server directory. There is no need
to shut down Gnus, so archiving may be invoked by @code{cron} or
similar. You restore the data by restoring the directory tree, and
-adding a server definition pointing to that directory in Gnus. The
+adding a server definition pointing to that directory in Gnus. The
@ref{Article Backlog}, @ref{Asynchronous Fetching} and other things
might interfere with overwriting data, so you may want to shut down Gnus
before you restore the data.
For @code{nnml} or @code{nnmaildir}, you copy all files in the group's
directory. For @code{nnfolder} you need to copy both the base folder
file itself (@file{FOO}, say), and the marks file (@file{FOO.mrk} in
-this example). Restoring the group is done with @kbd{G m} from the Group
+this example). Restoring the group is done with @kbd{G m} from the Group
buffer. The last step makes Gnus notice the new directory.
@code{nnmaildir} notices the new directory automatically, so @kbd{G m}
is unnecessary in that case.
@item nnweb-type
@vindex nnweb-type
What search engine type is being used. The currently supported types
-are @code{google}, @code{dejanews}, and @code{gmane}. Note that
+are @code{google}, @code{dejanews}, and @code{gmane}. Note that
@code{dejanews} is an alias to @code{google}.
@item nnweb-search
manipulate mails stored on the @acronym{IMAP} server. This is the kind of
usage explained in this section.
-A server configuration in @file{~/.gnus.el} with a few @acronym{IMAP} servers
-might look something like the following. (Note that for @acronym{TLS}/@acronym{SSL}, you
-need external programs and libraries, see below.)
+A server configuration in @file{~/.gnus.el} with a few @acronym{IMAP}
+servers might look something like the following. (Note that for
+@acronym{TLS}/@acronym{SSL}, you need external programs and libraries,
+see below.)
@lisp
(setq gnus-secondary-select-methods
@vindex nnimap-stream
The type of stream used to connect to your server. By default, nnimap
will detect and automatically use all of the below, with the exception
-of @acronym{TLS}/@acronym{SSL}. (@acronym{IMAP} over @acronym{TLS}/@acronym{SSL} is being replaced by STARTTLS, which
-can be automatically detected, but it's not widely deployed yet.)
+of @acronym{TLS}/@acronym{SSL}. (@acronym{IMAP} over
+@acronym{TLS}/@acronym{SSL} is being replaced by STARTTLS, which can
+be automatically detected, but it's not widely deployed yet.)
Example server specification:
@itemize @bullet
@item
-@dfn{gssapi:} Connect with GSSAPI (usually Kerberos 5). Requires the
+@dfn{gssapi:} Connect with GSSAPI (usually Kerberos 5). Requires the
@samp{gsasl} or @samp{imtest} program.
@item
-@dfn{kerberos4:} Connect with Kerberos 4. Requires the @samp{imtest} program.
+@dfn{kerberos4:} Connect with Kerberos 4. Requires the @samp{imtest} program.
@item
@dfn{starttls:} Connect via the STARTTLS extension (similar to
@acronym{TLS}/@acronym{SSL}). Requires the external library @samp{starttls.el} and program
@vindex imap-ssl-program
For @acronym{SSL} connections, the OpenSSL program is available from
-@uref{http://www.openssl.org/}. OpenSSL was formerly known as SSLeay,
+@uref{http://www.openssl.org/}. OpenSSL was formerly known as SSLeay,
and nnimap support it too---although the most recent versions of
SSLeay, 0.9.x, are known to have serious bugs making it
-useless. Earlier versions, especially 0.8.x, of SSLeay are known to
-work. The variable @code{imap-ssl-program} contain parameters to pass
+useless. Earlier versions, especially 0.8.x, of SSLeay are known to
+work. The variable @code{imap-ssl-program} contain parameters to pass
to OpenSSL/SSLeay.
@vindex imap-shell-program
@itemize @bullet
@item
-@dfn{gssapi:} GSSAPI (usually kerberos 5) authentication. Requires
+@dfn{gssapi:} GSSAPI (usually kerberos 5) authentication. Requires
external program @code{gsasl} or @code{imtest}.
@item
-@dfn{kerberos4:} Kerberos 4 authentication. Requires external program
+@dfn{kerberos4:} Kerberos 4 authentication. Requires external program
@code{imtest}.
@item
-@dfn{digest-md5:} Encrypted username/password via DIGEST-MD5. Requires
+@dfn{digest-md5:} Encrypted username/password via DIGEST-MD5. Requires
external library @code{digest-md5.el}.
@item
@dfn{cram-md5:} Encrypted username/password via CRAM-MD5.
@vindex nnimap-importantize-dormant
If non-@code{nil} (the default), marks dormant articles as ticked (as
-well), for other @acronym{IMAP} clients. Within Gnus, dormant articles will
+well), for other @acronym{IMAP} clients. Within Gnus, dormant articles will
naturally still (only) be marked as dormant. This is to make dormant
articles stand out, just like ticked articles, in other @acronym{IMAP}
-clients. (In other words, Gnus has two ``Tick'' marks and @acronym{IMAP}
+clients. (In other words, Gnus has two ``Tick'' marks and @acronym{IMAP}
has only one.)
Probably the only reason for frobing this would be if you're trying
Probably the only useful value to change this to is
@code{"UID %s NOT SENTSINCE %s"}, which makes nnimap use the Date: in
-messages instead of the internal article date. See section 6.4.4 of
+messages instead of the internal article date. See section 6.4.4 of
RFC 2060 for more information on valid strings.
@item nnimap-authinfo-file
This might be useful if you use another @acronym{IMAP} client to read mail in
your inbox but would like Gnus to split all articles in the inbox
-regardless of readedness. Then you might change this to
+regardless of readedness. Then you might change this to
@samp{UNDELETED}.
@item nnimap-split-fancy
It's possible to set @code{nnimap-split-rule} to
@code{nnmail-split-fancy} if you want to use fancy
-splitting. @xref{Fancy Mail Splitting}.
+splitting. @xref{Fancy Mail Splitting}.
However, to be able to have different fancy split rules for nnmail and
nnimap back ends you can set @code{nnimap-split-rule} to
component groups. So if you tick an article in a virtual group, the
article will also be ticked in the component group from whence it
came. (And vice versa---marks from the component groups will also be
-shown in the virtual group.). To create an empty virtual group, run
+shown in the virtual group.). To create an empty virtual group, run
@kbd{G V} (@code{gnus-group-make-empty-virtual}) in the group buffer
and edit the method regexp with @kbd{M-e}
(@code{gnus-group-edit-group-method})
a rule to decide which source to believe. This rule specifies that
the parameter sources are checked in the following order: group
parameters, topic parameters, agent category, and finally customizable
-variables. So you can mix all of these sources to produce a wide range
+variables. So you can mix all of these sources to produce a wide range
of behavior, just don't blame me if you don't remember where you put
your settings.
@findex gnus-agent-toggle-mark
Toggle whether to download the article
(@code{gnus-agent-toggle-mark}). The download mark is @samp{%} by
-default.
+default.
@item J c
@kindex J c (Agent Summary)
@cindex Gnus agent expiry
@cindex expiry
-The Agent back end, @code{nnagent}, doesn't handle expiry. Well, at
+The Agent back end, @code{nnagent}, doesn't handle expiry. Well, at
least it doesn't handle it like other back ends. Instead, there are
special @code{gnus-agent-expire} and @code{gnus-agent-expire-group}
commands that will expire all read articles that are older than
@vindex gnus-agent-consider-all-articles
If @code{gnus-agent-consider-all-articles} is non-@code{nil}, the
agent will fetch all missing headers. When @code{nil}, the agent will
-fetch only new headers. The default is @code{nil}.
+fetch only new headers. The default is @code{nil}.
@item gnus-agent-max-fetch-size
@vindex gnus-agent-max-fetch-size
The ``something costly'' is to burn CPU time, more specifically to
compute a hash collision up to a certain number of bits. The
resulting hashcash cookie is inserted in a @samp{X-Hashcash:}
-header. For more details, and for the external application
+header. For more details, and for the external application
@code{hashcash} you need to install to use this feature, see
@uref{http://www.cypherspace.org/~adam/hashcash/}. Even more
information can be found at @uref{http://www.camram.org/}.
@end lisp
The @code{hashcash.el} library can be found in the Gnus development
-contrib directory. or at
+contrib directory or at
@uref{http://users.actrix.gen.nz/mycroft/hashcash.el}.
You will need to set up some additional variables as well:
@cindex SpamOracle
@cindex spam
-An easy way to filter out spam is to use SpamOracle. SpamOracle is an
+An easy way to filter out spam is to use SpamOracle. SpamOracle is an
statistical mail filtering tool written by Xavier Leroy and needs to be
installed separately.
-There are several ways to use SpamOracle with Gnus. In all cases, your
-mail is piped through SpamOracle in its @emph{mark} mode. SpamOracle will
+There are several ways to use SpamOracle with Gnus. In all cases, your
+mail is piped through SpamOracle in its @emph{mark} mode. SpamOracle will
then enter an @samp{X-Spam} header indicating whether it regards the
mail as a spam mail or not.
One possibility is to run SpamOracle as a @code{:prescript} from the
-@xref{Mail Source Specifiers}, (@pxref{SpamAssassin}). This method has
+@xref{Mail Source Specifiers}, (@pxref{SpamAssassin}). This method has
the advantage that the user can see the @emph{X-Spam} headers.
The easiest method is to make @code{spam.el} (@pxref{Filtering Spam
-Using The Spam ELisp Package}) call SpamOracle.
+Using The Spam ELisp Package}) call SpamOracle.
@vindex spam-use-spamoracle
To enable SpamOracle usage by @code{spam.el}, set the variable
@code{spam-use-spamoracle} to @code{t} and configure the
@code{nnmail-split-fancy} or @code{nnimap-split-fancy} as described in
-the section @xref{Filtering Spam Using The Spam ELisp Package}. In
+the section @xref{Filtering Spam Using The Spam ELisp Package}. In
this example the @samp{INBOX} of an nnimap server is filtered using
-SpamOracle. Mails recognized as spam mails will be moved to
-@code{spam-split-group}, @samp{Junk} in this case. Ham messages stay
+SpamOracle. Mails recognized as spam mails will be moved to
+@code{spam-split-group}, @samp{Junk} in this case. Ham messages stay
in @samp{INBOX}:
@example
@defvar spam-spamoracle-binary
Gnus uses the SpamOracle binary called @file{spamoracle} found in the
-user's PATH. Using the variable @code{spam-spamoracle-binary}, this
+user's PATH. Using the variable @code{spam-spamoracle-binary}, this
can be customized.
@end defvar
@defvar spam-spamoracle-database
By default, SpamOracle uses the file @file{~/.spamoracle.db} as a database to
-store its analyses. This is controlled by the variable
-@code{spam-spamoracle-database} which defaults to @code{nil}. That means
-the default SpamOracle database will be used. In case you want your
+store its analyses. This is controlled by the variable
+@code{spam-spamoracle-database} which defaults to @code{nil}. That means
+the default SpamOracle database will be used. In case you want your
database to live somewhere special, set
@code{spam-spamoracle-database} to this path.
@end defvar
SpamOracle employs a statistical algorithm to determine whether a
-message is spam or ham. In order to get good results, meaning few
-false hits or misses, SpamOracle needs training. SpamOracle learns the
-characteristics of your spam mails. Using the @emph{add} mode
+message is spam or ham. In order to get good results, meaning few
+false hits or misses, SpamOracle needs training. SpamOracle learns the
+characteristics of your spam mails. Using the @emph{add} mode
(training mode) one has to feed good (ham) and spam mails to
-SpamOracle. This can be done by pressing @kbd{|} in the Summary buffer
+SpamOracle. This can be done by pressing @kbd{|} in the Summary buffer
and pipe the mail to a SpamOracle process or using @code{spam.el}'s
-spam- and ham-processors, which is much more convenient. For a
+spam- and ham-processors, which is much more convenient. For a
detailed description of spam- and ham-processors, see @xref{Filtering Spam Using The Spam ELisp Package}.
@defvar gnus-group-spam-exit-processor-spamoracle
Add this symbol to a group's @code{spam-process} parameter by
customizing the group parameter or the
-@code{gnus-spam-process-newsgroups} variable. When this symbol is added
+@code{gnus-spam-process-newsgroups} variable. When this symbol is added
to a group's @code{spam-process} parameter, spam-marked articles will be
sent to SpamOracle as spam samples.
@end defvar
@defvar gnus-group-ham-exit-processor-spamoracle
Add this symbol to a group's @code{spam-process} parameter by
customizing the group parameter or the
-@code{gnus-spam-process-newsgroups} variable. When this symbol is added
+@code{gnus-spam-process-newsgroups} variable. When this symbol is added
to a grup's @code{spam-process} parameter, the ham-marked articles in
@emph{ham} groups will be sent to the SpamOracle as samples of ham
-messages. Note that this ham processor has no effect in @emph{spam} or
+messages. Note that this ham processor has no effect in @emph{spam} or
@emph{unclassified} groups.
@end defvar
(gnus-group-spam-exit-processor-spamoracle)))
@end example
For this group the `gnus-group-spam-exit-processor-spamoracle' is
-installed. If the group contains spam message (e.g. because SpamOracle
+installed. If the group contains spam message (e.g. because SpamOracle
has not had enough sample messages yet) and the user marks some
messages as spam messages, these messages will be processed by
-@code{gnus-group-spam-exit-processor-spamoracle}. This processor sends
+@code{gnus-group-spam-exit-processor-spamoracle}. This processor sends
the messages to SpamOracle as new samples for spam.
@node Extending the spam elisp package
@item IMAP - RFC 1730/2060, RFC 2195, RFC 2086, RFC 2359, RFC 2595, RFC 1731
RFC 1730 is @acronym{IMAP} version 4, updated somewhat by RFC 2060
(@acronym{IMAP} 4 revision 1). RFC 2195 describes CRAM-MD5
-authentication for @acronym{IMAP}. RFC 2086 describes access control
-lists (ACLs) for @acronym{IMAP}. RFC 2359 describes a @acronym{IMAP}
+authentication for @acronym{IMAP}. RFC 2086 describes access control
+lists (ACLs) for @acronym{IMAP}. RFC 2359 describes a @acronym{IMAP}
protocol enhancement. RFC 2595 describes the proper @acronym{TLS}
integration (STARTTLS) with @acronym{IMAP}. RFC 1731 describes the
GSSAPI/Kerberos4 mechanisms for @acronym{IMAP}.
automatic recognition of XEmacs and GNU Emacs, generates
@file{gnus-load.el}, checks if errors occur while compilation and
generation of info files and reports them at the end of the build
-process. It now uses @code{makeinfo} if it is available and falls
+process. It now uses @code{makeinfo} if it is available and falls
back to @file{infohack.el} otherwise. @file{make.bat} should now
install all files which are necessary to run Gnus and be generally a
complete replacement for the @code{configure; make; make install}
Improved anti-spam features.
Gnus is now able to take out spam from your mail and news streams
-using a wide variety of programs and filter rules. Among the supported
+using a wide variety of programs and filter rules. Among the supported
methods are RBL blocklists, bogofilter and white/blacklists. Hooks
for easy use of external packages such as SpamAssassin and Hashcash
are also new. @xref{Thwarting Email Spam}.
The Gnus Agent has seen a major updated and is now enabled by default,
and all nntp and nnimap servers from @code{gnus-select-method} and
-@code{gnus-secondary-select-method} are agentized by default. Earlier
+@code{gnus-secondary-select-method} are agentized by default. Earlier
only the server in @code{gnus-select-method} was agentized by the
default, and the agent was disabled by default. When the agent is
enabled, headers are now also retrieved from the Agent cache instead
-of the back ends when possible. Earlier this only happened in the
+of the back ends when possible. Earlier this only happened in the
unplugged state. You can enroll or remove servers with @kbd{J a} and
@kbd{J r} in the server buffer. Gnus will not download articles into
the Agent cache, unless you instruct it to do so, though, by using
The command @code{gnus-mime-save-part-and-strip} (bound to @kbd{C-o}
on @acronym{MIME} buttons) saves a part and replaces the part with an
external one. @code{gnus-mime-delete-part} (bound to @kbd{d} on
-@acronym{MIME} buttons) removes a part. It works only on back ends
+@acronym{MIME} buttons) removes a part. It works only on back ends
that support editing.
@item
@code{message-ignored-news-headers} and @code{message-ignored-mail-headers}
@samp{X-Draft-From} and @samp{X-Gnus-Agent-Meta-Information} have been
-added into these two variables. If you customized those, perhaps you
+added into these two variables. If you customized those, perhaps you
need add those two headers too.
@item
@kbd{/ *} (@code{gnus-summary-limit-include-cached}) is rewritten.
It was aliased to @kbd{Y c}
-(@code{gnus-summary-insert-cached-articles}). The new function filters
+(@code{gnus-summary-insert-cached-articles}). The new function filters
out other articles.
@item Some limiting commands accept a @kbd{C-u} prefix to negate the match.
The regexps in these variables are compared with full group names
instead of real group names in 5.8. Users who customize these
-variables should change those regexps accordingly. For example:
+variables should change those regexps accordingly. For example:
@lisp
("^han\\>" euc-kr) -> ("\\(^\\|:\\)han\\>" euc-kr)
@end lisp
@subsection Score File Syntax
Score files are meant to be easily parseable, but yet extremely
-mallable. It was decided that something that had the same read syntax
+mallable. It was decided that something that had the same read syntax
as an Emacs Lisp list would fit that spec.
Here's a typical score file: