aboutsummaryrefslogtreecommitdiffstats
path: root/doc/misc/gnus.texi
diff options
context:
space:
mode:
Diffstat (limited to 'doc/misc/gnus.texi')
-rw-r--r--doc/misc/gnus.texi235
1 files changed, 110 insertions, 125 deletions
diff --git a/doc/misc/gnus.texi b/doc/misc/gnus.texi
index 439ff7fbc55..9e440be6585 100644
--- a/doc/misc/gnus.texi
+++ b/doc/misc/gnus.texi
@@ -11,7 +11,7 @@
11@documentencoding ISO-8859-1 11@documentencoding ISO-8859-1
12 12
13@copying 13@copying
14Copyright @copyright{} 1995-2011 Free Software Foundation, Inc. 14Copyright @copyright{} 1995-2012 Free Software Foundation, Inc.
15 15
16@quotation 16@quotation
17Permission is granted to copy, distribute and/or modify this document 17Permission is granted to copy, distribute and/or modify this document
@@ -891,7 +891,6 @@ Appendices
891History 891History
892 892
893* Gnus Versions:: What Gnus versions have been released. 893* Gnus Versions:: What Gnus versions have been released.
894* Other Gnus Versions:: Other Gnus versions that also have been released.
895* Why?:: What's the point of Gnus? 894* Why?:: What's the point of Gnus?
896* Compatibility:: Just how compatible is Gnus with @sc{gnus}? 895* Compatibility:: Just how compatible is Gnus with @sc{gnus}?
897* Conformity:: Gnus tries to conform to all standards. 896* Conformity:: Gnus tries to conform to all standards.
@@ -1002,7 +1001,7 @@ press @kbd{^} from the Group buffer to see it. In the Server buffer,
1002you can press @kbd{RET} on a defined server to see all the groups it 1001you can press @kbd{RET} on a defined server to see all the groups it
1003serves (subscribed or not!). You can also add or delete servers, edit 1002serves (subscribed or not!). You can also add or delete servers, edit
1004a foreign server's definition, agentize or de-agentize a server, and 1003a foreign server's definition, agentize or de-agentize a server, and
1005do many other neat things. @xref{Server Buffer}. 1004do many other neat things. @xref{Server Buffer}.
1006@xref{Foreign Groups}. @xref{Agent Basics}. 1005@xref{Foreign Groups}. @xref{Agent Basics}.
1007 1006
1008@vindex gnus-select-method 1007@vindex gnus-select-method
@@ -1011,7 +1010,7 @@ The @code{gnus-select-method} variable says where Gnus should look for
1011news. This variable should be a list where the first element says 1010news. This variable should be a list where the first element says
1012@dfn{how} and the second element says @dfn{where}. This method is your 1011@dfn{how} and the second element says @dfn{where}. This method is your
1013native method. All groups not fetched with this method are 1012native method. All groups not fetched with this method are
1014foreign groups. 1013secondary or foreign groups.
1015 1014
1016For instance, if the @samp{news.somewhere.edu} @acronym{NNTP} server is where 1015For instance, if the @samp{news.somewhere.edu} @acronym{NNTP} server is where
1017you want to get your daily dosage of news from, you'd say: 1016you want to get your daily dosage of news from, you'd say:
@@ -1329,7 +1328,7 @@ variable to @code{nil}.
1329 1328
1330@vindex gnus-auto-subscribed-categories 1329@vindex gnus-auto-subscribed-categories
1331As if that wasn't enough, @code{gnus-auto-subscribed-categories} also 1330As if that wasn't enough, @code{gnus-auto-subscribed-categories} also
1332allows you to specify that new groups should be subcribed based on the 1331allows you to specify that new groups should be subscribed based on the
1333category their select methods belong to. The default is @samp{(mail 1332category their select methods belong to. The default is @samp{(mail
1334post-mail)}, meaning that all new groups from mail-like backends 1333post-mail)}, meaning that all new groups from mail-like backends
1335should be subscribed automatically. 1334should be subscribed automatically.
@@ -2983,7 +2982,7 @@ The available operators are @code{not}, @code{and} and @code{or}.
2983Predicates include @code{tick}, @code{unsend}, @code{undownload}, 2982Predicates include @code{tick}, @code{unsend}, @code{undownload},
2984@code{unread}, @code{dormant}, @code{expire}, @code{reply}, 2983@code{unread}, @code{dormant}, @code{expire}, @code{reply},
2985@code{killed}, @code{bookmark}, @code{score}, @code{save}, 2984@code{killed}, @code{bookmark}, @code{score}, @code{save},
2986@code{cache}, @code{forward}, @code{unseen} and @code{recent}. 2985@code{cache}, @code{forward}, and @code{unseen}.
2987 2986
2988@end table 2987@end table
2989 2988
@@ -3181,15 +3180,20 @@ For example:
3181 (to-group . "\\1")) 3180 (to-group . "\\1"))
3182 3181
3183 ("mail\\.me" 3182 ("mail\\.me"
3184 (gnus-use-scoring t)) 3183 (gnus-use-scoring t))
3185 3184
3186 ("list\\..*" 3185 ("list\\..*"
3187 (total-expire . t) 3186 (total-expire . t)
3188 (broken-reply-to . t)))) 3187 (broken-reply-to . t))))
3189@end lisp 3188@end lisp
3190 3189
3191String value of parameters will be subjected to regexp substitution, as 3190All clauses that matches the group name will be used, but the last
3192the @code{to-group} example shows. 3191setting ``wins''. So if you have two clauses that both match the
3192group name, and both set, say @code{display}, the last setting will
3193override the first.
3194
3195Parameters that are strings will be subjected to regexp substitution,
3196as the @code{to-group} example shows.
3193 3197
3194@vindex gnus-parameters-case-fold-search 3198@vindex gnus-parameters-case-fold-search
3195By default, whether comparing the group name and one of those regexps 3199By default, whether comparing the group name and one of those regexps
@@ -3335,8 +3339,12 @@ List all groups with ticked articles (@code{gnus-group-list-ticked}).
3335@item A / 3339@item A /
3336@kindex A / (Group) 3340@kindex A / (Group)
3337@findex gnus-group-list-limit 3341@findex gnus-group-list-limit
3338List groups limited within the current selection 3342Further limit groups within the current selection
3339(@code{gnus-group-list-limit}). 3343(@code{gnus-group-list-limit}). If you've first limited to groups
3344with dormant articles with @kbd{A ?}, you can then further limit with
3345@kbd{A / c}, which will then limit to groups with cached articles,
3346giving you the groups that have both dormant articles and cached
3347articles.
3340 3348
3341@item A f 3349@item A f
3342@kindex A f (Group) 3350@kindex A f (Group)
@@ -4488,23 +4496,6 @@ news.
4488@table @kbd 4496@table @kbd
4489 4497
4490 4498
4491@item H f
4492@kindex H f (Group)
4493@findex gnus-group-fetch-faq
4494@vindex gnus-group-faq-directory
4495@cindex FAQ
4496@cindex ange-ftp
4497Try to fetch the @acronym{FAQ} for the current group
4498(@code{gnus-group-fetch-faq}). Gnus will try to get the @acronym{FAQ}
4499from @code{gnus-group-faq-directory}, which is usually a directory on
4500a remote machine. This variable can also be a list of directories.
4501In that case, giving a prefix to this command will allow you to choose
4502between the various sites. @code{ange-ftp} (or @code{efs}) will be
4503used for fetching the file.
4504
4505If fetching from the first site is unsuccessful, Gnus will attempt to go
4506through @code{gnus-group-faq-directory} and try to open them one by one.
4507
4508@item H d 4499@item H d
4509@itemx C-c C-d 4500@itemx C-c C-d
4510@c @icon{gnus-group-describe-group} 4501@c @icon{gnus-group-describe-group}
@@ -4636,7 +4627,7 @@ Sieve is a server-side mail filtering language. In Gnus you can use
4636the @code{sieve} group parameter (@pxref{Group Parameters}) to specify 4627the @code{sieve} group parameter (@pxref{Group Parameters}) to specify
4637sieve rules that should apply to each group. Gnus provides two 4628sieve rules that should apply to each group. Gnus provides two
4638commands to translate all these group parameters into a proper Sieve 4629commands to translate all these group parameters into a proper Sieve
4639script that can be transfered to the server somehow. 4630script that can be transferred to the server somehow.
4640 4631
4641@vindex gnus-sieve-file 4632@vindex gnus-sieve-file
4642@vindex gnus-sieve-region-start 4633@vindex gnus-sieve-region-start
@@ -6165,18 +6156,9 @@ religiously) are marked with an @samp{S} in the second column
6165(@code{gnus-saved-mark}). 6156(@code{gnus-saved-mark}).
6166 6157
6167@item 6158@item
6168@vindex gnus-recent-mark
6169Articles that according to the server haven't been shown to the user
6170before are marked with a @samp{N} in the second column
6171(@code{gnus-recent-mark}). Note that not all servers support this
6172mark, in which case it simply never appears. Compare with
6173@code{gnus-unseen-mark}.
6174
6175@item
6176@vindex gnus-unseen-mark 6159@vindex gnus-unseen-mark
6177Articles that haven't been seen before in Gnus by the user are marked 6160Articles that haven't been seen before in Gnus by the user are marked
6178with a @samp{.} in the second column (@code{gnus-unseen-mark}). 6161with a @samp{.} in the second column (@code{gnus-unseen-mark}).
6179Compare with @code{gnus-recent-mark}.
6180 6162
6181@item 6163@item
6182@vindex gnus-downloaded-mark 6164@vindex gnus-downloaded-mark
@@ -7671,7 +7653,7 @@ has its own article buffer.
7671This implies that it's not possible to have more than one article buffer 7653This implies that it's not possible to have more than one article buffer
7672in a group at a time. But sometimes you might want to display all the 7654in a group at a time. But sometimes you might want to display all the
7673latest emails from your mother, your father, your aunt, your uncle and 7655latest emails from your mother, your father, your aunt, your uncle and
7674your 17 cousins to coordinate the next christmas party. 7656your 17 cousins to coordinate the next Christmas party.
7675 7657
7676That's where sticky articles come in handy. A sticky article buffer 7658That's where sticky articles come in handy. A sticky article buffer
7677basically is a normal article buffer, but it won't be reused when you 7659basically is a normal article buffer, but it won't be reused when you
@@ -8355,7 +8337,7 @@ Files with name matching this regular expression won't be viewed.
8355Files with a @acronym{MIME} type matching this variable won't be viewed. 8337Files with a @acronym{MIME} type matching this variable won't be viewed.
8356Note that Gnus tries to guess what type the file is based on the name. 8338Note that Gnus tries to guess what type the file is based on the name.
8357@code{gnus-uu} is not a @acronym{MIME} package (yet), so this is slightly 8339@code{gnus-uu} is not a @acronym{MIME} package (yet), so this is slightly
8358kludgey. 8340kludgy.
8359 8341
8360@item gnus-uu-tmp-dir 8342@item gnus-uu-tmp-dir
8361@vindex gnus-uu-tmp-dir 8343@vindex gnus-uu-tmp-dir
@@ -8998,8 +8980,8 @@ apostrophe or quotation mark, then try this wash.
8998Translate many non-@acronym{ASCII} characters into their 8980Translate many non-@acronym{ASCII} characters into their
8999@acronym{ASCII} equivalents (@code{gnus-article-treat-non-ascii}). 8981@acronym{ASCII} equivalents (@code{gnus-article-treat-non-ascii}).
9000This is mostly useful if you're on a terminal that has a limited font 8982This is mostly useful if you're on a terminal that has a limited font
9001and does't show accented characters, ``advanced'' punctuation, and the 8983and doesn't show accented characters, ``advanced'' punctuation, and the
9002like. For instance, @samp{»} is tranlated into @samp{>>}, and so on. 8984like. For instance, @samp{»} is translated into @samp{>>}, and so on.
9003 8985
9004@item W Y f 8986@item W Y f
9005@kindex W Y f (Summary) 8987@kindex W Y f (Summary)
@@ -11657,7 +11639,7 @@ message/external-body @acronym{MIME} type.
11657@item r (Article) 11639@item r (Article)
11658@kindex r (Article) 11640@kindex r (Article)
11659Prompt for a file name, replace the @acronym{MIME} object with an 11641Prompt for a file name, replace the @acronym{MIME} object with an
11660external body refering to the file via the message/external-body 11642external body referring to the file via the message/external-body
11661@acronym{MIME} type. (@code{gnus-mime-replace-part}). 11643@acronym{MIME} type. (@code{gnus-mime-replace-part}).
11662 11644
11663@findex gnus-mime-delete-part 11645@findex gnus-mime-delete-part
@@ -11811,7 +11793,7 @@ fit these criteria.
11811 11793
11812To use this, make sure that you have @code{w3m} and @code{curl} 11794To use this, make sure that you have @code{w3m} and @code{curl}
11813installed. If you have, then Gnus should display @acronym{HTML} 11795installed. If you have, then Gnus should display @acronym{HTML}
11814automatically. 11796automatically.
11815 11797
11816 11798
11817 11799
@@ -12544,8 +12526,8 @@ mode buffers.
12544Gnus provides a few different methods for storing the mail and news you 12526Gnus provides a few different methods for storing the mail and news you
12545send. The default method is to use the @dfn{archive virtual server} to 12527send. The default method is to use the @dfn{archive virtual server} to
12546store the messages. If you want to disable this completely, the 12528store the messages. If you want to disable this completely, the
12547@code{gnus-message-archive-group} variable should be @code{nil}, which 12529@code{gnus-message-archive-group} variable should be @code{nil}. The
12548is the default. 12530default is "sent.%Y-%m", which gives you one archive group per month.
12549 12531
12550For archiving interesting messages in a group you read, see the 12532For archiving interesting messages in a group you read, see the
12551@kbd{B c} (@code{gnus-summary-copy-article}) command (@pxref{Mail 12533@kbd{B c} (@code{gnus-summary-copy-article}) command (@pxref{Mail
@@ -12622,7 +12604,7 @@ Messages will be saved in all those groups.
12622When a key ``matches'', the result is used. 12604When a key ``matches'', the result is used.
12623 12605
12624@item @code{nil} 12606@item @code{nil}
12625No message archiving will take place. This is the default. 12607No message archiving will take place.
12626@end table 12608@end table
12627 12609
12628Let's illustrate: 12610Let's illustrate:
@@ -12781,8 +12763,8 @@ from date id references chars lines xref extra.
12781In the case of a string value, if the @code{match} is a regular 12763In the case of a string value, if the @code{match} is a regular
12782expression, a @samp{gnus-match-substitute-replacement} is proceed on 12764expression, a @samp{gnus-match-substitute-replacement} is proceed on
12783the value to replace the positional parameters @samp{\@var{n}} by the 12765the value to replace the positional parameters @samp{\@var{n}} by the
12784corresponding parenthetical matches (see @xref{Replacing the Text that 12766corresponding parenthetical matches (see @xref{Replacing Match,,
12785Matched, , Text Replacement, elisp, The Emacs Lisp Reference Manual}.) 12767Replacing the Text that Matched, elisp, The Emacs Lisp Reference Manual}.)
12786 12768
12787@vindex message-reply-headers 12769@vindex message-reply-headers
12788 12770
@@ -13784,7 +13766,7 @@ The same as the above, but don't do automatic @acronym{STARTTLS} upgrades.
13784@findex nntp-open-tls-stream 13766@findex nntp-open-tls-stream
13785@item nntp-open-tls-stream 13767@item nntp-open-tls-stream
13786Opens a connection to a server over a @dfn{secure} channel. To use 13768Opens a connection to a server over a @dfn{secure} channel. To use
13787this you must have @uref{http://www.gnu.org/software/gnutls/, GNUTLS} 13769this you must have @uref{http://www.gnu.org/software/gnutls/, GnuTLS}
13788installed. You then define a server as follows: 13770installed. You then define a server as follows:
13789 13771
13790@lisp 13772@lisp
@@ -14245,8 +14227,9 @@ if the server supports UID EXPUNGE, but it's not done by default on
14245servers that doesn't support that command. 14227servers that doesn't support that command.
14246 14228
14247@item nnimap-streaming 14229@item nnimap-streaming
14248Virtually all @code{IMAP} server support fast streaming of data. If 14230Virtually all @acronym{IMAP} server support fast streaming of data.
14249you have problems connecting to the server, try setting this to @code{nil}. 14231If you have problems connecting to the server, try setting this to
14232@code{nil}.
14250 14233
14251@item nnimap-fetch-partial-articles 14234@item nnimap-fetch-partial-articles
14252If non-@code{nil}, fetch partial articles from the server. If set to 14235If non-@code{nil}, fetch partial articles from the server. If set to
@@ -14254,6 +14237,10 @@ a string, then it's interpreted as a regexp, and parts that have
14254matching types will be fetched. For instance, @samp{"text/"} will 14237matching types will be fetched. For instance, @samp{"text/"} will
14255fetch all textual parts, while leaving the rest on the server. 14238fetch all textual parts, while leaving the rest on the server.
14256 14239
14240@item nnimap-record-commands
14241If non-@code{nil}, record all @acronym{IMAP} commands in the
14242@samp{"*imap log*"} buffer.
14243
14257@end table 14244@end table
14258 14245
14259 14246
@@ -14769,6 +14756,18 @@ corresponding keywords.
14769A script to be run before fetching the mail. The syntax is the same as 14756A script to be run before fetching the mail. The syntax is the same as
14770the @code{:program} keyword. This can also be a function to be run. 14757the @code{:program} keyword. This can also be a function to be run.
14771 14758
14759One popular way to use this is to set up an SSH tunnel to access the
14760@acronym{POP} server. Here's an example:
14761
14762@lisp
14763(pop :server "127.0.0.1"
14764 :port 1234
14765 :user "foo"
14766 :password "secret"
14767 :prescript
14768 "nohup ssh -f -L 1234:pop.server:110 remote.host sleep 3600 &")
14769@end lisp
14770
14772@item :postscript 14771@item :postscript
14773A script to be run after fetching the mail. The syntax is the same as 14772A script to be run after fetching the mail. The syntax is the same as
14774the @code{:program} keyword. This can also be a function to be run. 14773the @code{:program} keyword. This can also be a function to be run.
@@ -15056,7 +15055,7 @@ number.
15056 15055
15057@item mail-source-default-file-modes 15056@item mail-source-default-file-modes
15058@vindex mail-source-default-file-modes 15057@vindex mail-source-default-file-modes
15059All new mail files will get this file mode. The default is 384. 15058All new mail files will get this file mode. The default is @code{#o600}.
15060 15059
15061@item mail-source-movemail-program 15060@item mail-source-movemail-program
15062@vindex mail-source-movemail-program 15061@vindex mail-source-movemail-program
@@ -15146,10 +15145,10 @@ default file modes the new mail files get:
15146 15145
15147@lisp 15146@lisp
15148(add-hook 'nnmail-pre-get-new-mail-hook 15147(add-hook 'nnmail-pre-get-new-mail-hook
15149 (lambda () (set-default-file-modes 511))) 15148 (lambda () (set-default-file-modes #o700)))
15150 15149
15151(add-hook 'nnmail-post-get-new-mail-hook 15150(add-hook 'nnmail-post-get-new-mail-hook
15152 (lambda () (set-default-file-modes 551))) 15151 (lambda () (set-default-file-modes #o775)))
15153@end lisp 15152@end lisp
15154 15153
15155@item nnmail-use-long-file-names 15154@item nnmail-use-long-file-names
@@ -16697,7 +16696,7 @@ was used for mail landing on the system, but Babyl had its own internal
16697format to which mail was converted, primarily involving creating a 16696format to which mail was converted, primarily involving creating a
16698spool-file-like entity with a scheme for inserting Babyl-specific 16697spool-file-like entity with a scheme for inserting Babyl-specific
16699headers and status bits above the top of each message in the file. 16698headers and status bits above the top of each message in the file.
16700Rmail was Emacs' first mail reader, it was written by Richard Stallman, 16699Rmail was Emacs's first mail reader, it was written by Richard Stallman,
16701and Stallman came out of that TOPS/Babyl environment, so he wrote Rmail 16700and Stallman came out of that TOPS/Babyl environment, so he wrote Rmail
16702to understand the mail files folks already had in existence. Gnus (and 16701to understand the mail files folks already had in existence. Gnus (and
16703VM, for that matter) continue to support this format because it's 16702VM, for that matter) continue to support this format because it's
@@ -18007,7 +18006,7 @@ see the event's date.
18007 @code{gnus-diary} provides two supplemental user formats to be used in 18006 @code{gnus-diary} provides two supplemental user formats to be used in
18008summary line formats. @code{D} corresponds to a formatted time string 18007summary line formats. @code{D} corresponds to a formatted time string
18009for the next occurrence of the event (e.g. ``Sat, Sep 22 01, 12:00''), 18008for the next occurrence of the event (e.g. ``Sat, Sep 22 01, 12:00''),
18010while @code{d} corresponds to an approximative remaining time until the 18009while @code{d} corresponds to an approximate remaining time until the
18011next occurrence of the event (e.g. ``in 6 months, 1 week''). 18010next occurrence of the event (e.g. ``in 6 months, 1 week'').
18012 18011
18013 For example, here's how Joe's birthday is displayed in my 18012 For example, here's how Joe's birthday is displayed in my
@@ -18111,7 +18110,7 @@ mail sending with @code{nndiary}:
18111@itemize @bullet 18110@itemize @bullet
18112@item 18111@item
18113@code{nndiary} is a @emph{real} mail back end. You really send real diary 18112@code{nndiary} is a @emph{real} mail back end. You really send real diary
18114messsages for real. This means for instance that you can give 18113messages for real. This means for instance that you can give
18115appointments to anybody (provided they use Gnus and @code{nndiary}) by 18114appointments to anybody (provided they use Gnus and @code{nndiary}) by
18116sending the diary message to them as well. 18115sending the diary message to them as well.
18117@item 18116@item
@@ -18254,8 +18253,7 @@ Agent. Go to the server buffer (@kbd{^} in the group buffer) and press
18254@kbd{J a} on the server (or servers) that you wish to have covered by the 18253@kbd{J a} on the server (or servers) that you wish to have covered by the
18255Agent (@pxref{Server Agent Commands}), or @kbd{J r} on automatically 18254Agent (@pxref{Server Agent Commands}), or @kbd{J r} on automatically
18256added servers you do not wish to have covered by the Agent. By default, 18255added servers you do not wish to have covered by the Agent. By default,
18257all @code{nntp} and @code{nnimap} servers in @code{gnus-select-method} and 18256no servers are agentized.
18258@code{gnus-secondary-select-methods} are agentized.
18259 18257
18260@item 18258@item
18261Decide on download policy. It's fairly simple once you decide whether 18259Decide on download policy. It's fairly simple once you decide whether
@@ -19281,7 +19279,7 @@ to agentize remote back ends. The auto-agentizing has the same effect
19281as running @kbd{J a} on the servers (@pxref{Server Agent Commands}). 19279as running @kbd{J a} on the servers (@pxref{Server Agent Commands}).
19282If the file exist, you must manage the servers manually by adding or 19280If the file exist, you must manage the servers manually by adding or
19283removing them, this variable is only applicable the first time you 19281removing them, this variable is only applicable the first time you
19284start Gnus. The default is @samp{(nntp nnimap)}. 19282start Gnus. The default is @samp{nil}.
19285 19283
19286@end table 19284@end table
19287 19285
@@ -20066,7 +20064,7 @@ matches will use the @code{Message-ID}s of these matching articles.)
20066This will ensure that you can raise/lower the score of an entire thread, 20064This will ensure that you can raise/lower the score of an entire thread,
20067even though some articles in the thread may not have complete 20065even though some articles in the thread may not have complete
20068@code{References} headers. Note that using this may lead to 20066@code{References} headers. Note that using this may lead to
20069undeterministic scores of the articles in the thread. (Using this match 20067nondeterministic scores of the articles in the thread. (Using this match
20070key will lead to creation of @file{ADAPT} files.) 20068key will lead to creation of @file{ADAPT} files.)
20071@end table 20069@end table
20072@end enumerate 20070@end enumerate
@@ -21042,7 +21040,7 @@ and `gnus-score-decay-scale'."
21042 (* (abs score) 21040 (* (abs score)
21043 gnus-score-decay-scale))))))) 21041 gnus-score-decay-scale)))))))
21044 (if (and (featurep 'xemacs) 21042 (if (and (featurep 'xemacs)
21045 ;; XEmacs' floor can handle only the floating point 21043 ;; XEmacs's floor can handle only the floating point
21046 ;; number below the half of the maximum integer. 21044 ;; number below the half of the maximum integer.
21047 (> (abs n) (lsh -1 -2))) 21045 (> (abs n) (lsh -1 -2)))
21048 (string-to-number 21046 (string-to-number
@@ -21084,8 +21082,8 @@ as well.
21084 21082
21085This chapter describes tools for searching groups and servers for 21083This chapter describes tools for searching groups and servers for
21086articles matching a query and then retrieving those articles. Gnus 21084articles matching a query and then retrieving those articles. Gnus
21087provides a simpler mechanism for searching through articles in a summary buffer 21085provides a simpler mechanism for searching through articles in a summary buffer
21088to find those matching a pattern. @xref{Searching for Articles}. 21086to find those matching a pattern. @xref{Searching for Articles}.
21089 21087
21090@menu 21088@menu
21091* nnir:: Searching with various engines. 21089* nnir:: Searching with various engines.
@@ -21116,7 +21114,7 @@ interface.
21116 21114
21117The @code{nnimap} and @code{gmane} search engines should work with no 21115The @code{nnimap} and @code{gmane} search engines should work with no
21118configuration. Other engines require a local index that needs to be 21116configuration. Other engines require a local index that needs to be
21119created and maintained outside of Gnus. 21117created and maintained outside of Gnus.
21120 21118
21121 21119
21122@node Basic Usage 21120@node Basic Usage
@@ -21156,7 +21154,7 @@ One more thing: individual search engines may have special search
21156features. You can access these special features by giving a prefix-arg 21154features. You can access these special features by giving a prefix-arg
21157to @code{gnus-group-make-nnir-group}. If you are searching multiple 21155to @code{gnus-group-make-nnir-group}. If you are searching multiple
21158groups with different search engines you will be prompted for the 21156groups with different search engines you will be prompted for the
21159special search features for each engine separately. 21157special search features for each engine separately.
21160 21158
21161 21159
21162@node Setting up nnir 21160@node Setting up nnir
@@ -21197,7 +21195,7 @@ named @code{home} you can use
21197 21195
21198@lisp 21196@lisp
21199(setq gnus-secondary-select-methods 21197(setq gnus-secondary-select-methods
21200 '((nnml "home" 21198 '((nnml "home"
21201 (nnimap-address "localhost") 21199 (nnimap-address "localhost")
21202 (nnir-search-engine namazu)))) 21200 (nnir-search-engine namazu))))
21203@end lisp 21201@end lisp
@@ -21222,9 +21220,9 @@ could change this to
21222@node The imap Engine 21220@node The imap Engine
21223@subsubsection The imap Engine 21221@subsubsection The imap Engine
21224 21222
21225The @code{imap} engine requires no configuration. 21223The @code{imap} engine requires no configuration.
21226 21224
21227Queries using the @code{imap} engine follow a simple query language. 21225Queries using the @code{imap} engine follow a simple query language.
21228The search is always case-insensitive and supports the following 21226The search is always case-insensitive and supports the following
21229features (inspired by the Google search input language): 21227features (inspired by the Google search input language):
21230 21228
@@ -21234,10 +21232,10 @@ features (inspired by the Google search input language):
21234AND, OR, and NOT are supported, and parentheses can be used to control 21232AND, OR, and NOT are supported, and parentheses can be used to control
21235operator precedence, e.g. (emacs OR xemacs) AND linux. Note that 21233operator precedence, e.g. (emacs OR xemacs) AND linux. Note that
21236operators must be written with all capital letters to be 21234operators must be written with all capital letters to be
21237recognised. Also preceding a term with a - sign is equivalent to NOT 21235recognized. Also preceding a term with a - sign is equivalent to NOT
21238term. 21236term.
21239 21237
21240@item Automatic AND queries 21238@item Automatic AND queries
21241If you specify multiple words then they will be treated as an AND 21239If you specify multiple words then they will be treated as an AND
21242expression intended to match all components. 21240expression intended to match all components.
21243 21241
@@ -21270,7 +21268,7 @@ customize @code{nnir-imap-default-search-key}. For example to use
21270@node The gmane Engine 21268@node The gmane Engine
21271@subsubsection The gmane Engine 21269@subsubsection The gmane Engine
21272 21270
21273The @code{gmane} engine requires no configuration. 21271The @code{gmane} engine requires no configuration.
21274 21272
21275Gmane queries follow a simple query language: 21273Gmane queries follow a simple query language:
21276 21274
@@ -21279,16 +21277,16 @@ Gmane queries follow a simple query language:
21279AND, OR, NOT (or AND NOT), and XOR are supported, and brackets can be 21277AND, OR, NOT (or AND NOT), and XOR are supported, and brackets can be
21280used to control operator precedence, e.g. (emacs OR xemacs) AND linux. 21278used to control operator precedence, e.g. (emacs OR xemacs) AND linux.
21281Note that operators must be written with all capital letters to be 21279Note that operators must be written with all capital letters to be
21282recognised. 21280recognized.
21283 21281
21284@item Required and excluded terms 21282@item Required and excluded terms
21285+ and - can be used to require or exclude terms, e.g. football -american 21283+ and - can be used to require or exclude terms, e.g. football -american
21286 21284
21287@item Unicode handling 21285@item Unicode handling
21288The search engine converts all text to utf-8, so searching should work 21286The search engine converts all text to utf-8, so searching should work
21289in any language. 21287in any language.
21290 21288
21291@item Stopwords 21289@item Stopwords
21292Common English words (like 'the' and 'a') are ignored by default. You 21290Common English words (like 'the' and 'a') are ignored by default. You
21293can override this by prefixing such words with a + (e.g. +the) or 21291can override this by prefixing such words with a + (e.g. +the) or
21294enclosing the word in quotes (e.g. "the"). 21292enclosing the word in quotes (e.g. "the").
@@ -21302,7 +21300,7 @@ name (or part of a name) to match.
21302@node The swish++ Engine 21300@node The swish++ Engine
21303@subsubsection The swish++ Engine 21301@subsubsection The swish++ Engine
21304 21302
21305FIXEM: Say something more here. 21303FIXME: Say something more here.
21306 21304
21307Documentation for swish++ may be found at the swish++ sourceforge page: 21305Documentation for swish++ may be found at the swish++ sourceforge page:
21308@uref{http://swishplusplus.sourceforge.net} 21306@uref{http://swishplusplus.sourceforge.net}
@@ -21325,7 +21323,7 @@ to get a group name. By default this is @code{$HOME/Mail}.
21325@node The swish-e Engine 21323@node The swish-e Engine
21326@subsubsection The swish-e Engine 21324@subsubsection The swish-e Engine
21327 21325
21328FIXEM: Say something more here. 21326FIXME: Say something more here.
21329 21327
21330Documentation for swish-e may be found at the swish-e homepage 21328Documentation for swish-e may be found at the swish-e homepage
21331@uref{http://swish-e.org} 21329@uref{http://swish-e.org}
@@ -21351,7 +21349,7 @@ to get a group name. By default this is @code{$HOME/Mail}.
21351Using the namazu engine requires creating and maintaining index files. 21349Using the namazu engine requires creating and maintaining index files.
21352One directory should contain all the index files, and nnir must be told 21350One directory should contain all the index files, and nnir must be told
21353where to find them by setting the @code{nnir-namazu-index-directory} 21351where to find them by setting the @code{nnir-namazu-index-directory}
21354variable. 21352variable.
21355 21353
21356To work correctly the @code{nnir-namazu-remove-prefix} variable must 21354To work correctly the @code{nnir-namazu-remove-prefix} variable must
21357also be correct. This is the prefix to remove from each file name 21355also be correct. This is the prefix to remove from each file name
@@ -21414,7 +21412,7 @@ this command periodically, say every four hours.
21414This engine is obsolete. 21412This engine is obsolete.
21415 21413
21416@node Customizations 21414@node Customizations
21417@subsubsection Custimozations 21415@subsubsection Customizations
21418 21416
21419@table @code 21417@table @code
21420 21418
@@ -21918,7 +21916,7 @@ Clearly, the easiest way would be if marks could somehow be
21918automatically set for the original article. This is exactly what 21916automatically set for the original article. This is exactly what
21919@emph{marks propagation} is about. 21917@emph{marks propagation} is about.
21920 21918
21921Marks propagation is deactivated by default. You can activate it for a 21919Marks propagation is inactive by default. You can activate it for a
21922certain @code{nnmairix} group with 21920certain @code{nnmairix} group with
21923@code{nnmairix-group-toggle-propmarks-this-group} (bound to @kbd{G b 21921@code{nnmairix-group-toggle-propmarks-this-group} (bound to @kbd{G b
21924p}). This function will warn you if you try to use it with your default 21922p}). This function will warn you if you try to use it with your default
@@ -22070,7 +22068,7 @@ an example server definition:
22070(nnml "mairix" (nnml-directory "mairix") (nnml-get-new-mail nil)) 22068(nnml "mairix" (nnml-directory "mairix") (nnml-get-new-mail nil))
22071@end lisp 22069@end lisp
22072 22070
22073(The @code{nnmaildir} back end also has a server variabe 22071(The @code{nnmaildir} back end also has a server variable
22074@code{get-new-mail}, but its default value is @code{nil}, so you don't 22072@code{get-new-mail}, but its default value is @code{nil}, so you don't
22075have to explicitly set it if you use a @code{nnmaildir} server just for 22073have to explicitly set it if you use a @code{nnmaildir} server just for
22076mairix.) 22074mairix.)
@@ -22265,8 +22263,9 @@ is @code{t} by default.
22265 22263
22266@item gnus-interactive-exit 22264@item gnus-interactive-exit
22267@vindex gnus-interactive-exit 22265@vindex gnus-interactive-exit
22268Require confirmation before exiting Gnus. This variable is @code{t} by 22266If non-@code{nil}, require a confirmation when exiting Gnus. If
22269default. 22267@code{quiet}, update any active summary buffers automatically without
22268querying. The default value is @code{t}.
22270@end table 22269@end table
22271 22270
22272 22271
@@ -25476,7 +25475,7 @@ Write @code{spam-check-blackbox} if Blackbox can check incoming mail.
25476 25475
25477Write @code{spam-blackbox-register-routine} and 25476Write @code{spam-blackbox-register-routine} and
25478@code{spam-blackbox-unregister-routine} using the bogofilter 25477@code{spam-blackbox-unregister-routine} using the bogofilter
25479register/unregister routines as a start, or other restister/unregister 25478register/unregister routines as a start, or other register/unregister
25480routines more appropriate to Blackbox, if Blackbox can 25479routines more appropriate to Blackbox, if Blackbox can
25481register/unregister spam and ham. 25480register/unregister spam and ham.
25482 25481
@@ -26386,7 +26385,6 @@ renamed it back again to ``Gnus''. But in mixed case. ``Gnus'' vs.
26386 26385
26387@menu 26386@menu
26388* Gnus Versions:: What Gnus versions have been released. 26387* Gnus Versions:: What Gnus versions have been released.
26389* Other Gnus Versions:: Other Gnus versions that also have been released.
26390* Why?:: What's the point of Gnus? 26388* Why?:: What's the point of Gnus?
26391* Compatibility:: Just how compatible is Gnus with @sc{gnus}? 26389* Compatibility:: Just how compatible is Gnus with @sc{gnus}?
26392* Conformity:: Gnus tries to conform to all standards. 26390* Conformity:: Gnus tries to conform to all standards.
@@ -26442,22 +26440,6 @@ you do, don't run. Walk away, calmly, until you're out of its reach.
26442Find a proper released version of Gnus and snuggle up to that instead. 26440Find a proper released version of Gnus and snuggle up to that instead.
26443 26441
26444 26442
26445@node Other Gnus Versions
26446@subsection Other Gnus Versions
26447@cindex Semi-gnus
26448
26449In addition to the versions of Gnus which have had their releases
26450coordinated by Lars, one major development has been Semi-gnus from
26451Japan. It's based on a library called @acronym{SEMI}, which provides
26452@acronym{MIME} capabilities.
26453
26454These Gnusae are based mainly on Gnus 5.6 and Pterodactyl Gnus.
26455Collectively, they are called ``Semi-gnus'', and different strains are
26456called T-gnus, ET-gnus, Nana-gnus and Chaos. These provide powerful
26457@acronym{MIME} and multilingualization things, especially important for
26458Japanese users.
26459
26460
26461@node Why? 26443@node Why?
26462@subsection Why? 26444@subsection Why?
26463 26445
@@ -26778,7 +26760,7 @@ Sudish Joseph---innumerable bug fixes.
26778Ilja Weis---@file{gnus-topic.el}. 26760Ilja Weis---@file{gnus-topic.el}.
26779 26761
26780@item 26762@item
26781Steven L. Baur---lots and lots and lots of bugs detections and fixes. 26763Steven L. Baur---lots and lots and lots of bug detection and fixes.
26782 26764
26783@item 26765@item
26784Vladimir Alexiev---the refcard and reference booklets. 26766Vladimir Alexiev---the refcard and reference booklets.
@@ -27447,7 +27429,7 @@ considered home score and adapt files (@pxref{Home Score File}) have
27447been added. 27429been added.
27448 27430
27449@item 27431@item
27450@code{nndoc} was rewritten to be easily extendable (@pxref{Document 27432@code{nndoc} was rewritten to be easily extensible (@pxref{Document
27451Server Internals}). 27433Server Internals}).
27452 27434
27453@item 27435@item
@@ -27840,7 +27822,7 @@ The revised Gnus @acronym{FAQ} is included in the manual,
27840@acronym{TLS} wrapper shipped with Gnus 27822@acronym{TLS} wrapper shipped with Gnus
27841 27823
27842@acronym{TLS}/@acronym{SSL} is now supported in @acronym{IMAP} and 27824@acronym{TLS}/@acronym{SSL} is now supported in @acronym{IMAP} and
27843@acronym{NNTP} via @file{tls.el} and GNUTLS. 27825@acronym{NNTP} via @file{tls.el} and GnuTLS.
27844 27826
27845@item 27827@item
27846Improved anti-spam features. 27828Improved anti-spam features.
@@ -27993,10 +27975,6 @@ non-@code{nil}, the summary buffer is shown and updated as it's being
27993built. 27975built.
27994 27976
27995@item 27977@item
27996The new @code{recent} mark @samp{.} indicates newly arrived messages (as
27997opposed to old but unread messages).
27998
27999@item
28000Gnus supports RFC 2369 mailing list headers, and adds a number of 27978Gnus supports RFC 2369 mailing list headers, and adds a number of
28001related commands in mailing list groups. @xref{Mailing List}. 27979related commands in mailing list groups. @xref{Mailing List}.
28002 27980
@@ -28584,18 +28562,21 @@ confusing.
28584@item native 28562@item native
28585@cindex native 28563@cindex native
28586Gnus will always use one method (and back end) as the @dfn{native}, or 28564Gnus will always use one method (and back end) as the @dfn{native}, or
28587default, way of getting news. 28565default, way of getting news. Groups from the native select method
28566have names like @samp{gnu.emacs.gnus}.
28588 28567
28589@item foreign 28568@item foreign
28590@cindex foreign 28569@cindex foreign
28591You can also have any number of foreign groups active at the same time. 28570You can also have any number of foreign groups active at the same
28592These are groups that use non-native non-secondary back ends for getting 28571time. These are groups that use non-native non-secondary back ends
28593news. 28572for getting news. Foreign groups have names like
28573@samp{nntp+news.gmane.org:gmane.emacs.gnus.devel}.
28594 28574
28595@item secondary 28575@item secondary
28596@cindex secondary 28576@cindex secondary
28597Secondary back ends are somewhere half-way between being native and being 28577Secondary back ends are somewhere half-way between being native and
28598foreign, but they mostly act like they are native. 28578being foreign, but they mostly act like they are native, but they, too
28579have names like @samp{nntp+news.gmane.org:gmane.emacs.gnus.devel}.
28599 28580
28600@item article 28581@item article
28601@cindex article 28582@cindex article
@@ -29098,7 +29079,7 @@ Takes an unprefixed group name and a select method, and returns the full
29098 29079
29099@item gnus-get-info 29080@item gnus-get-info
29100@findex gnus-get-info 29081@findex gnus-get-info
29101Returns the group info list for @var{group}. 29082Returns the group info list for @var{group} (@pxref{Group Info}).
29102 29083
29103@item gnus-group-unread 29084@item gnus-group-unread
29104@findex gnus-group-unread 29085@findex gnus-group-unread
@@ -29107,7 +29088,8 @@ unknown.
29107 29088
29108@item gnus-active 29089@item gnus-active
29109@findex gnus-active 29090@findex gnus-active
29110The active entry for @var{group}. 29091The active entry (i.e., a cons cell containing the lowest and highest
29092article numbers) for @var{group}.
29111 29093
29112@item gnus-set-active 29094@item gnus-set-active
29113@findex gnus-set-active 29095@findex gnus-set-active
@@ -29142,7 +29124,9 @@ Returns the select method corresponding to @var{server}.
29142 29124
29143@item gnus-server-equal 29125@item gnus-server-equal
29144@findex gnus-server-equal 29126@findex gnus-server-equal
29145Says whether two virtual servers are equal. 29127Says whether two virtual servers are essentially equal. For instance,
29128two virtual servers may have server parameters in different order, but
29129this function will consider them equal.
29146 29130
29147@item gnus-group-native-p 29131@item gnus-group-native-p
29148@findex gnus-group-native-p 29132@findex gnus-group-native-p
@@ -29158,8 +29142,9 @@ Says whether @var{group} is foreign or not.
29158 29142
29159@item gnus-group-find-parameter 29143@item gnus-group-find-parameter
29160@findex gnus-group-find-parameter 29144@findex gnus-group-find-parameter
29161Returns the parameter list of @var{group}. If given a second parameter, 29145Returns the parameter list of @var{group} (@pxref{Group Parameters}).
29162returns the value of that parameter for @var{group}. 29146If given a second parameter, returns the value of that parameter for
29147@var{group}.
29163 29148
29164@item gnus-group-set-parameter 29149@item gnus-group-set-parameter
29165@findex gnus-group-set-parameter 29150@findex gnus-group-set-parameter
@@ -29572,9 +29557,9 @@ propagate the mark information to the server.
29572marks (preserving all marks not mentioned). @var{mark} is a list of 29557marks (preserving all marks not mentioned). @var{mark} is a list of
29573marks; where each mark is a symbol. Currently used marks are 29558marks; where each mark is a symbol. Currently used marks are
29574@code{read}, @code{tick}, @code{reply}, @code{expire}, @code{killed}, 29559@code{read}, @code{tick}, @code{reply}, @code{expire}, @code{killed},
29575@code{dormant}, @code{save}, @code{download}, @code{unsend}, 29560@code{dormant}, @code{save}, @code{download}, @code{unsend}, and
29576@code{forward} and @code{recent}, but your back end should, if 29561@code{forward}, but your back end should, if possible, not limit
29577possible, not limit itself to these. 29562itself to these.
29578 29563
29579Given contradictory actions, the last action in the list should be the 29564Given contradictory actions, the last action in the list should be the
29580effective one. That is, if your action contains a request to add the 29565effective one. That is, if your action contains a request to add the
@@ -30048,8 +30033,8 @@ this:
30048@node Score File Syntax 30033@node Score File Syntax
30049@subsection Score File Syntax 30034@subsection Score File Syntax
30050 30035
30051Score files are meant to be easily parseable, but yet extremely 30036Score files are meant to be easily parsable, but yet extremely
30052mallable. It was decided that something that had the same read syntax 30037malleable. It was decided that something that had the same read syntax
30053as an Emacs Lisp list would fit that spec. 30038as an Emacs Lisp list would fit that spec.
30054 30039
30055Here's a typical score file: 30040Here's a typical score file: