* gnus.texi (Key Index): Change encoding to utf-8.
[gnus] / texi / gnus.texi
index dac0952..6feab47 100644 (file)
@@ -1,15 +1,17 @@
 \input texinfo
 
+@include gnus-overrides.texi
+
 @setfilename gnus
 @settitle Gnus Manual
 @syncodeindex fn cp
 @syncodeindex vr cp
 @syncodeindex pg cp
 
-@documentencoding ISO-8859-1
+@documentencoding UTF-8
 
 @copying
-Copyright @copyright{} 1995-2011 Free Software Foundation, Inc.
+Copyright @copyright{} 1995-2012 Free Software Foundation, Inc.
 
 @quotation
 Permission is granted to copy, distribute and/or modify this document
@@ -45,7 +47,7 @@ developing GNU and promoting software freedom.''
 \begin{document}
 
 % Adjust ../Makefile.in if you change the following line:
-\newcommand{\gnusversionname}{No Gnus v0.11}
+\newcommand{\gnusversionname}{Ma Gnus v0.2}
 \newcommand{\gnuschaptername}{}
 \newcommand{\gnussectionname}{}
 
@@ -319,7 +321,7 @@ developing GNU and promoting software freedom.''
 @end iflatex
 @end iftex
 
-@dircategory Emacs
+@dircategory Emacs network features
 @direntry
 * Gnus: (gnus).                 The newsreader Gnus.
 @end direntry
@@ -329,7 +331,12 @@ developing GNU and promoting software freedom.''
 
 
 @titlepage
+@ifset WEBHACKDEVEL
+@title Gnus Manual (DEVELOPMENT VERSION)
+@end ifset
+@ifclear WEBHACKDEVEL
 @title Gnus Manual
+@end ifclear
 
 @author by Lars Magne Ingebrigtsen
 @page
@@ -351,7 +358,7 @@ spool or your mbox file.  All at the same time, if you want to push your
 luck.
 
 @c Adjust ../Makefile.in if you change the following line:
-This manual corresponds to No Gnus v0.11.
+This manual corresponds to Ma Gnus v0.2
 
 @ifnottex
 @insertcopying
@@ -385,7 +392,7 @@ people should be empowered to do what they want by using (or abusing)
 the program.
 
 @c Adjust ../Makefile.in if you change the following line:
-This manual corresponds to No Gnus v0.11.
+This manual corresponds to Ma Gnus v0.2
 
 @heading Other related manuals
 @itemize
@@ -884,7 +891,6 @@ Appendices
 History
 
 * Gnus Versions::               What Gnus versions have been released.
-* Other Gnus Versions::         Other Gnus versions that also have been released.
 * Why?::                        What's the point of Gnus?
 * Compatibility::               Just how compatible is Gnus with @sc{gnus}?
 * Conformity::                  Gnus tries to conform to all standards.
@@ -901,7 +907,8 @@ New Features
 * Quassia Gnus::                Two times two is four, or Gnus 5.6/5.7.
 * Pterodactyl Gnus::            Pentad also starts with P, AKA Gnus 5.8/5.9.
 * Oort Gnus::                   It's big.  It's far out.  Gnus 5.10/5.11.
-* No Gnus::                     Very punny.
+* No Gnus::                     Very punny.  Gnus 5.12/5.13
+* Ma Gnus::                     Celebrating 25 years of Gnus.
 
 Customization
 
@@ -995,7 +1002,7 @@ press @kbd{^} from the Group buffer to see it.  In the Server buffer,
 you can press @kbd{RET} on a defined server to see all the groups it
 serves (subscribed or not!).  You can also add or delete servers, edit
 a foreign server's definition, agentize or de-agentize a server, and
-do many other neat things.  @xref{Server Buffer}.  
+do many other neat things.  @xref{Server Buffer}.
 @xref{Foreign Groups}.  @xref{Agent Basics}.
 
 @vindex gnus-select-method
@@ -1004,7 +1011,7 @@ The @code{gnus-select-method} variable says where Gnus should look for
 news.  This variable should be a list where the first element says
 @dfn{how} and the second element says @dfn{where}.  This method is your
 native method.  All groups not fetched with this method are
-foreign groups.
+secondary or foreign groups.
 
 For instance, if the @samp{news.somewhere.edu} @acronym{NNTP} server is where
 you want to get your daily dosage of news from, you'd say:
@@ -1160,16 +1167,17 @@ when you do the @kbd{g} command (@pxref{Scanning New Messages}).
 @node Checking New Groups
 @subsection Checking New Groups
 
-Gnus normally determines whether a group is new or not by comparing the
-list of groups from the active file(s) with the lists of subscribed and
-dead groups.  This isn't a particularly fast method.  If
-@code{gnus-check-new-newsgroups} is @code{ask-server}, Gnus will ask the
-server for new groups since the last time.  This is both faster and
-cheaper.  This also means that you can get rid of the list of killed
-groups altogether, so you may set @code{gnus-save-killed-list} to
-@code{nil}, which will save time both at startup, at exit, and all over.
-Saves disk space, too.  Why isn't this the default, then?
-Unfortunately, not all servers support this command.
+Gnus normally determines whether a group is new or not by comparing
+the list of groups from the active file(s) with the lists of
+subscribed and dead groups.  This isn't a particularly fast method.
+If @code{gnus-check-new-newsgroups} is @code{ask-server}, Gnus will
+ask the server for new groups since the last time.  This is both
+faster and cheaper.  This also means that you can get rid of the list
+of killed groups (@pxref{Group Levels}) altogether, so you may set
+@code{gnus-save-killed-list} to @code{nil}, which will save time both
+at startup, at exit, and all over.  Saves disk space, too.  Why isn't
+this the default, then?  Unfortunately, not all servers support this
+command.
 
 I bet I know what you're thinking now: How do I find out whether my
 server supports @code{ask-server}?  No?  Good, because I don't have a
@@ -1207,9 +1215,10 @@ Some handy pre-fab functions are:
 
 @item gnus-subscribe-zombies
 @vindex gnus-subscribe-zombies
-Make all new groups zombies.  This is the default.  You can browse the
-zombies later (with @kbd{A z}) and either kill them all off properly
-(with @kbd{S z}), or subscribe to them (with @kbd{u}).
+Make all new groups zombies (@pxref{Group Levels}).  This is the
+default.  You can browse the zombies later (with @kbd{A z}) and either
+kill them all off properly (with @kbd{S z}), or subscribe to them
+(with @kbd{u}).
 
 @item gnus-subscribe-randomly
 @vindex gnus-subscribe-randomly
@@ -1293,6 +1302,10 @@ subscribing these groups.
 @code{gnus-subscribe-options-newsgroup-method} is used instead.  This
 variable defaults to @code{gnus-subscribe-alphabetically}.
 
+The ``options -n'' format is very simplistic.  The syntax above is all
+that is supports -- you can force-subscribe hierarchies, or you can
+deny hierarchies, and that's it.
+
 @vindex gnus-options-not-subscribe
 @vindex gnus-options-subscribe
 If you don't want to mess with your @file{.newsrc} file, you can just
@@ -1316,7 +1329,7 @@ variable to @code{nil}.
 
 @vindex gnus-auto-subscribed-categories
 As if that wasn't enough, @code{gnus-auto-subscribed-categories} also
-allows you to specify that new groups should be subcribed based on the
+allows you to specify that new groups should be subscribed based on the
 category their select methods belong to.  The default is @samp{(mail
 post-mail)}, meaning that all new groups from mail-like backends
 should be subscribed automatically.
@@ -1423,7 +1436,7 @@ several servers where not all servers support @code{ask-server}.
 The @code{gnus-startup-file} variable says where the startup files are.
 The default value is @file{~/.newsrc}, with the Gnus (El Dingo) startup
 file being whatever that one is, with a @samp{.eld} appended.
-If you want version control for this file, set
+If you want to keep multiple numbered backups of this file, set
 @code{gnus-backup-startup-file}.  It respects the same values as the
 @code{version-control} variable.
 
@@ -2353,6 +2366,7 @@ empty subscribed groups and unsubscribed groups, too.  Type @kbd{l} to
 go back to showing nonempty subscribed groups again.  Thus, unsubscribed
 groups are hidden, in a way.
 
+@cindex zombie groups
 Zombie and killed groups are similar to unsubscribed groups in that they
 are hidden by default.  But they are different from subscribed and
 unsubscribed groups in that Gnus doesn't ask the news server for
@@ -2969,7 +2983,7 @@ The available operators are @code{not}, @code{and} and @code{or}.
 Predicates include @code{tick}, @code{unsend}, @code{undownload},
 @code{unread}, @code{dormant}, @code{expire}, @code{reply},
 @code{killed}, @code{bookmark}, @code{score}, @code{save},
-@code{cache}, @code{forward}, @code{unseen} and @code{recent}.
+@code{cache}, @code{forward}, and @code{unseen}.
 
 @end table
 
@@ -3167,15 +3181,20 @@ For example:
          (to-group . "\\1"))
 
         ("mail\\.me"
-         (gnus-use-scoring  t))
+         (gnus-use-scoring t))
 
         ("list\\..*"
          (total-expire . t)
          (broken-reply-to . t))))
 @end lisp
 
-String value of parameters will be subjected to regexp substitution, as
-the @code{to-group} example shows.
+All clauses that matches the group name will be used, but the last
+setting ``wins''.  So if you have two clauses that both match the
+group name, and both set, say @code{display}, the last setting will
+override the first.
+
+Parameters that are strings will be subjected to regexp substitution,
+as the @code{to-group} example shows.
 
 @vindex gnus-parameters-case-fold-search
 By default, whether comparing the group name and one of those regexps
@@ -3313,11 +3332,20 @@ List all groups with cached articles (@code{gnus-group-list-cached}).
 @findex gnus-group-list-dormant
 List all groups with dormant articles (@code{gnus-group-list-dormant}).
 
+@item A !
+@kindex A ! (Group)
+@findex gnus-group-list-ticked
+List all groups with ticked articles (@code{gnus-group-list-ticked}).
+
 @item A /
 @kindex A / (Group)
 @findex gnus-group-list-limit
-List groups limited within the current selection
-(@code{gnus-group-list-limit}).
+Further limit groups within the current selection
+(@code{gnus-group-list-limit}).  If you've first limited to groups
+with dormant articles with @kbd{A ?}, you can then further limit with
+@kbd{A / c}, which will then limit to groups with cached articles,
+giving you the groups that have both dormant articles and cached
+articles.
 
 @item A f
 @kindex A f (Group)
@@ -4469,23 +4497,6 @@ news.
 @table @kbd
 
 
-@item H f
-@kindex H f (Group)
-@findex gnus-group-fetch-faq
-@vindex gnus-group-faq-directory
-@cindex FAQ
-@cindex ange-ftp
-Try to fetch the @acronym{FAQ} for the current group
-(@code{gnus-group-fetch-faq}).  Gnus will try to get the @acronym{FAQ}
-from @code{gnus-group-faq-directory}, which is usually a directory on
-a remote machine.  This variable can also be a list of directories.
-In that case, giving a prefix to this command will allow you to choose
-between the various sites.  @code{ange-ftp} (or @code{efs}) will be
-used for fetching the file.
-
-If fetching from the first site is unsuccessful, Gnus will attempt to go
-through @code{gnus-group-faq-directory} and try to open them one by one.
-
 @item H d
 @itemx C-c C-d
 @c @icon{gnus-group-describe-group}
@@ -4617,7 +4628,7 @@ Sieve is a server-side mail filtering language.  In Gnus you can use
 the @code{sieve} group parameter (@pxref{Group Parameters}) to specify
 sieve rules that should apply to each group.  Gnus provides two
 commands to translate all these group parameters into a proper Sieve
-script that can be transfered to the server somehow.
+script that can be transferred to the server somehow.
 
 @vindex gnus-sieve-file
 @vindex gnus-sieve-region-start
@@ -5556,6 +5567,13 @@ message (@code{gnus-summary-wide-reply-with-original}).  This command uses
 the process/prefix convention, but only uses the headers from the
 first article to determine the recipients.
 
+@item S L
+@kindex S L (Summary)
+@findex gnus-summary-reply-to-list-with-original
+When replying to a message from a mailing list, send a reply to that
+message to the mailing list, and include the original message
+(@code{gnus-summary-reply-to-list-with-original}).
+
 @item S v
 @kindex S v (Summary)
 @findex gnus-summary-very-wide-reply
@@ -6138,19 +6156,10 @@ Articles ``saved'' (in some manner or other; not necessarily
 religiously) are marked with an @samp{S} in the second column
 (@code{gnus-saved-mark}).
 
-@item
-@vindex gnus-recent-mark
-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
-@code{gnus-unseen-mark}.
-
 @item
 @vindex gnus-unseen-mark
 Articles that haven't been seen before in Gnus by the user are marked
 with a @samp{.} in the second column (@code{gnus-unseen-mark}).
-Compare with @code{gnus-recent-mark}.
 
 @item
 @vindex gnus-downloaded-mark
@@ -7328,7 +7337,9 @@ predicate functions include @code{gnus-thread-sort-by-number},
 
 Each function takes two threads and returns non-@code{nil} if the first
 thread should be sorted before the other.  Note that sorting really is
-normally done by looking only at the roots of each thread.
+normally done by looking only at the roots of each thread.  Exceptions
+to this rule are @code{gnus-thread-sort-by-most-recent-number} and
+@code{gnus-thread-sort-by-most-recent-date}.
 
 If you use more than one function, the primary sort key should be the
 last function in the list.  You should probably always include
@@ -7643,7 +7654,7 @@ has its own article buffer.
 This implies that it's not possible to have more than one article buffer
 in a group at a time.  But sometimes you might want to display all the
 latest emails from your mother, your father, your aunt, your uncle and
-your 17 cousins to coordinate the next christmas party.
+your 17 cousins to coordinate the next Christmas party.
 
 That's where sticky articles come in handy.  A sticky article buffer
 basically is a normal article buffer, but it won't be reused when you
@@ -8327,7 +8338,7 @@ Files with name matching this regular expression won't be viewed.
 Files with a @acronym{MIME} type matching this variable won't be viewed.
 Note that Gnus tries to guess what type the file is based on the name.
 @code{gnus-uu} is not a @acronym{MIME} package (yet), so this is slightly
-kludgey.
+kludgy.
 
 @item gnus-uu-tmp-dir
 @vindex gnus-uu-tmp-dir
@@ -8970,8 +8981,8 @@ apostrophe or quotation mark, then try this wash.
 Translate many non-@acronym{ASCII} characters into their
 @acronym{ASCII} equivalents (@code{gnus-article-treat-non-ascii}).
 This is mostly useful if you're on a terminal that has a limited font
-and does't show accented characters, ``advanced'' punctuation, and the
-like.  For instance, @samp{»} is tranlated into @samp{>>}, and so on.
+and doesn't show accented characters, ``advanced'' punctuation, and the
+like.  For instance, @samp{»} is translated into @samp{>>}, and so on.
 
 @item W Y f
 @kindex W Y f (Summary)
@@ -9495,8 +9506,11 @@ Say how much time has elapsed between the article was posted and now
 Date: 6 weeks, 4 days, 1 hour, 3 minutes, 8 seconds ago
 @end example
 
-This line is updated continually by default.  If you wish to switch
-that off, say:
+This line is updated continually by default.  The frequency (in
+seconds) is controlled by the @code{gnus-article-update-date-headers}
+variable.
+
+If you wish to switch updating off, say:
 
 @vindex gnus-article-update-date-headers
 @lisp
@@ -11626,7 +11640,7 @@ message/external-body @acronym{MIME} type.
 @item r (Article)
 @kindex r (Article)
 Prompt for a file name, replace the @acronym{MIME} object with an
-external body refering to the file via the message/external-body
+external body referring to the file via the message/external-body
 @acronym{MIME} type.  (@code{gnus-mime-replace-part}).
 
 @findex gnus-mime-delete-part
@@ -11780,7 +11794,7 @@ fit these criteria.
 
 To use this, make sure that you have @code{w3m} and @code{curl}
 installed.  If you have, then Gnus should display @acronym{HTML}
-automatically. 
+automatically.
 
 
 
@@ -12591,7 +12605,7 @@ Messages will be saved in all those groups.
 When a key ``matches'', the result is used.
 
 @item @code{nil}
-No message archiving will take place.  This is the default.
+No message archiving will take place.
 @end table
 
 Let's illustrate:
@@ -13753,7 +13767,7 @@ The same as the above, but don't do automatic @acronym{STARTTLS} upgrades.
 @findex nntp-open-tls-stream
 @item nntp-open-tls-stream
 Opens a connection to a server over a @dfn{secure} channel.  To use
-this you must have @uref{http://www.gnu.org/software/gnutls/, GNUTLS}
+this you must have @uref{http://www.gnu.org/software/gnutls/, GnuTLS}
 installed.  You then define a server as follows:
 
 @lisp
@@ -15025,7 +15039,7 @@ number.
 
 @item mail-source-default-file-modes
 @vindex mail-source-default-file-modes
-All new mail files will get this file mode.  The default is 384.
+All new mail files will get this file mode.  The default is @code{#o600}.
 
 @item mail-source-movemail-program
 @vindex mail-source-movemail-program
@@ -15115,10 +15129,10 @@ default file modes the new mail files get:
 
 @lisp
 (add-hook 'nnmail-pre-get-new-mail-hook
-          (lambda () (set-default-file-modes 511)))
+          (lambda () (set-default-file-modes #o700)))
 
 (add-hook 'nnmail-post-get-new-mail-hook
-          (lambda () (set-default-file-modes 551)))
+          (lambda () (set-default-file-modes #o775)))
 @end lisp
 
 @item nnmail-use-long-file-names
@@ -15621,14 +15635,16 @@ will remain on your system until hell freezes over.  This bears
 repeating one more time, with some spurious capitalizations: IF you do
 NOT mark articles as EXPIRABLE, Gnus will NEVER delete those ARTICLES.
 
+@vindex gnus-auto-expirable-marks
 You do not have to mark articles as expirable by hand.  Gnus provides
 two features, called ``auto-expire'' and ``total-expire'', that can help you
 with this.  In a nutshell, ``auto-expire'' means that Gnus hits @kbd{E}
 for you when you select an article.  And ``total-expire'' means that Gnus
 considers all articles as expirable that are read.  So, in addition to
 the articles marked @samp{E}, also the articles marked @samp{r},
-@samp{R}, @samp{O}, @samp{K}, @samp{Y} and so on are considered
-expirable.
+@samp{R}, @samp{O}, @samp{K}, @samp{Y} (and so on) are considered
+expirable.  @code{gnus-auto-expirable-marks} has the full list of
+these marks.
 
 When should either auto-expire or total-expire be used?  Most people
 who are subscribed to mailing lists split each list into its own group
@@ -17974,7 +17990,7 @@ see the event's date.
   @code{gnus-diary} provides two supplemental user formats to be used in
 summary line formats.  @code{D} corresponds to a formatted time string
 for the next occurrence of the event (e.g. ``Sat, Sep 22 01, 12:00''),
-while @code{d} corresponds to an approximative remaining time until the
+while @code{d} corresponds to an approximate remaining time until the
 next occurrence of the event (e.g. ``in 6 months, 1 week'').
 
   For example, here's how Joe's birthday is displayed in my
@@ -18078,7 +18094,7 @@ mail sending with @code{nndiary}:
 @itemize @bullet
 @item
 @code{nndiary} is a @emph{real} mail back end.  You really send real diary
-messsages for real.  This means for instance that you can give
+messages for real.  This means for instance that you can give
 appointments to anybody (provided they use Gnus and @code{nndiary}) by
 sending the diary message to them as well.
 @item
@@ -18221,8 +18237,7 @@ Agent.  Go to the server buffer (@kbd{^} in the group buffer) and press
 @kbd{J a} on the server (or servers) that you wish to have covered by the
 Agent (@pxref{Server Agent Commands}), or @kbd{J r} on automatically
 added servers you do not wish to have covered by the Agent.  By default,
-all @code{nntp} and @code{nnimap} servers in @code{gnus-select-method} and
-@code{gnus-secondary-select-methods} are agentized.
+no servers are agentized.
 
 @item
 Decide on download policy.  It's fairly simple once you decide whether
@@ -18977,9 +18992,8 @@ that you're running out of space.  Neither are particularly fast or
 efficient, and it's not a particularly good idea to interrupt them (with
 @kbd{C-g} or anything else) once you've started one of them.
 
-Note that other functions, e.g. @code{gnus-request-expire-articles},
-might run @code{gnus-agent-expire} for you to keep the agent
-synchronized with the group.
+Note that other functions might run @code{gnus-agent-expire} for you
+to keep the agent synchronized with the group.
 
 The agent parameter @code{agent-enable-expiration} may be used to
 prevent expiration in selected groups.
@@ -19249,7 +19263,7 @@ to agentize remote back ends.  The auto-agentizing has the same effect
 as running @kbd{J a} on the servers (@pxref{Server Agent Commands}).
 If the file exist, you must manage the servers manually by adding or
 removing them, this variable is only applicable the first time you
-start Gnus.  The default is @samp{(nntp nnimap)}.
+start Gnus.  The default is @samp{nil}.
 
 @end table
 
@@ -20034,7 +20048,7 @@ matches will use the @code{Message-ID}s of these matching articles.)
 This will ensure that you can raise/lower the score of an entire thread,
 even though some articles in the thread may not have complete
 @code{References} headers.  Note that using this may lead to
-undeterministic scores of the articles in the thread.  (Using this match
+nondeterministic scores of the articles in the thread.  (Using this match
 key will lead to creation of @file{ADAPT} files.)
 @end table
 @end enumerate
@@ -20840,7 +20854,7 @@ then this operator will return @code{false}.
 
 @item !
 @itemx not
-@itemx ¬
+@itemx Ã\82¬
 This logical operator only takes a single argument.  It returns the
 logical negation of the value of its argument.
 
@@ -21052,8 +21066,8 @@ as well.
 
 This chapter describes tools for searching groups and servers for
 articles matching a query and then retrieving those articles. Gnus
-provides a simpler mechanism for searching through articles in a summary buffer 
-to find those matching a pattern. @xref{Searching for Articles}. 
+provides a simpler mechanism for searching through articles in a summary buffer
+to find those matching a pattern. @xref{Searching for Articles}.
 
 @menu
 * nnir::                     Searching with various engines.
@@ -21084,7 +21098,7 @@ interface.
 
 The @code{nnimap} and @code{gmane} search engines should work with no
 configuration. Other engines require a local index that needs to be
-created and maintained outside of Gnus. 
+created and maintained outside of Gnus.
 
 
 @node Basic Usage
@@ -21124,7 +21138,7 @@ One more thing: individual search engines may have special search
 features. You can access these special features by giving a prefix-arg
 to @code{gnus-group-make-nnir-group}. If you are searching multiple
 groups with different search engines you will be prompted for the
-special search features for each engine separately. 
+special search features for each engine separately.
 
 
 @node Setting up nnir
@@ -21165,7 +21179,7 @@ named @code{home} you can use
 
 @lisp
 (setq gnus-secondary-select-methods
-      '((nnml "home" 
+      '((nnml "home"
          (nnimap-address "localhost")
          (nnir-search-engine namazu))))
 @end lisp
@@ -21190,9 +21204,9 @@ could change this to
 @node The imap Engine
 @subsubsection The imap Engine
 
-The @code{imap} engine requires no configuration. 
+The @code{imap} engine requires no configuration.
 
-Queries using the @code{imap} engine follow a simple query language. 
+Queries using the @code{imap} engine follow a simple query language.
 The search is always case-insensitive and supports the following
 features (inspired by the Google search input language):
 
@@ -21202,10 +21216,10 @@ features (inspired by the Google search input language):
 AND, OR, and NOT are supported, and parentheses can be used to control
 operator precedence, e.g. (emacs OR xemacs) AND linux. Note that
 operators must be written with all capital letters to be
-recognised. Also preceding a term with a - sign is equivalent to NOT
+recognized. Also preceding a term with a - sign is equivalent to NOT
 term.
 
-@item Automatic AND queries 
+@item Automatic AND queries
 If you specify multiple words then they will be treated as an AND
 expression intended to match all components.
 
@@ -21238,7 +21252,7 @@ customize @code{nnir-imap-default-search-key}. For example to use
 @node The gmane Engine
 @subsubsection The gmane Engine
 
-The @code{gmane} engine requires no configuration. 
+The @code{gmane} engine requires no configuration.
 
 Gmane queries follow a simple query language:
 
@@ -21247,16 +21261,16 @@ Gmane queries follow a simple query language:
 AND, OR, NOT (or AND NOT), and XOR are supported, and brackets can be
 used to control operator precedence, e.g. (emacs OR xemacs) AND linux.
 Note that operators must be written with all capital letters to be
-recognised.
+recognized.
 
 @item Required and excluded terms
 + and - can be used to require or exclude terms, e.g. football -american
 
-@item Unicode handling 
+@item Unicode handling
 The search engine converts all text to utf-8, so searching should work
 in any language.
 
-@item Stopwords 
+@item Stopwords
 Common English words (like 'the' and 'a') are ignored by default. You
 can override this by prefixing such words with a + (e.g. +the) or
 enclosing the word in quotes (e.g. "the").
@@ -21270,7 +21284,7 @@ name (or part of a name) to match.
 @node The swish++ Engine
 @subsubsection The swish++ Engine
 
-FIXEM: Say something more here.
+FIXME: Say something more here.
 
 Documentation for swish++ may be found at the swish++ sourceforge page:
 @uref{http://swishplusplus.sourceforge.net}
@@ -21293,7 +21307,7 @@ to get a group name. By default this is @code{$HOME/Mail}.
 @node The swish-e Engine
 @subsubsection The swish-e Engine
 
-FIXEM: Say something more here.
+FIXME: Say something more here.
 
 Documentation for swish-e may be found at the swish-e homepage
 @uref{http://swish-e.org}
@@ -21319,7 +21333,7 @@ to get a group name. By default this is @code{$HOME/Mail}.
 Using the namazu engine requires creating and maintaining index files.
 One directory should contain all the index files, and nnir must be told
 where to find them by setting the @code{nnir-namazu-index-directory}
-variable.  
+variable.
 
 To work correctly the @code{nnir-namazu-remove-prefix} variable must
 also be correct. This is the prefix to remove from each file name
@@ -21382,7 +21396,7 @@ this command periodically, say every four hours.
 This engine is obsolete.
 
 @node Customizations
-@subsubsection Custimozations
+@subsubsection Customizations
 
 @table @code
 
@@ -21886,7 +21900,7 @@ Clearly, the easiest way would be if marks could somehow be
 automatically set for the original article. This is exactly what
 @emph{marks propagation} is about.
 
-Marks propagation is deactivated by default. You can activate it for a
+Marks propagation is inactive by default. You can activate it for a
 certain @code{nnmairix} group with
 @code{nnmairix-group-toggle-propmarks-this-group} (bound to @kbd{G b
 p}). This function will warn you if you try to use it with your default
@@ -22038,7 +22052,7 @@ an example server definition:
 (nnml "mairix" (nnml-directory "mairix") (nnml-get-new-mail nil))
 @end lisp
 
-(The @code{nnmaildir} back end also has a server variabe
+(The @code{nnmaildir} back end also has a server variable
 @code{get-new-mail}, but its default value is @code{nil}, so you don't
 have to explicitly set it if you use a @code{nnmaildir} server just for
 mairix.)
@@ -22046,10 +22060,11 @@ mairix.)
 @item
 If you use the Gnus registry: don't use the registry with
 @code{nnmairix} groups (put them in
-@code{gnus-registry-unfollowed-groups}).  Be @emph{extra careful} if
-you use @code{gnus-registry-split-fancy-with-parent}; mails which are
-split into @code{nnmairix} groups are usually gone for good as soon as
-you check the group for new mail (yes, it has happened to me...).
+@code{gnus-registry-unfollowed-groups}; this is the default).  Be
+@emph{extra careful} if you use
+@code{gnus-registry-split-fancy-with-parent}; mails which are split
+into @code{nnmairix} groups are usually gone for good as soon as you
+check the group for new mail (yes, it has happened to me...).
 
 @item
 Therefore: @emph{Never ever} put ``real'' mails into @code{nnmairix}
@@ -22232,8 +22247,9 @@ is @code{t} by default.
 
 @item gnus-interactive-exit
 @vindex gnus-interactive-exit
-Require confirmation before exiting Gnus.  This variable is @code{t} by
-default.
+If non-@code{nil}, require a confirmation when exiting Gnus.  If
+@code{quiet}, update any active summary buffers automatically without
+querying.  The default value is @code{t}.
 @end table
 
 
@@ -22478,7 +22494,7 @@ and so on.  Create as many faces as you wish.  The same goes for the
 @samp{hello} mouse-highlighted with @code{gnus-mouse-face-3}.
 
 @cindex %<<, %>>, guillemets
-@c @cindex %<<, %>>, %«, %», guillemets
+@c @cindex %<<, %>>, %Ã\82«, %Ã\82», guillemets
 @vindex gnus-balloon-face-0
 Text inside the @samp{%<<} and @samp{%>>} specifiers will get the
 special @code{balloon-help} property set to
@@ -22488,7 +22504,7 @@ variables should be either strings or symbols naming functions that
 return a string.  When the mouse passes over text with this property
 set, a balloon window will appear and display the string.  Please
 refer to @ref{Tooltips, ,Tooltips, emacs, The Emacs Manual},
-(in GNU Emacs) or the doc string of @code{balloon-help-mode} (in
+(in Emacs) or the doc string of @code{balloon-help-mode} (in
 XEmacs) for more information on this.  (For technical reasons, the
 guillemets have been approximated as @samp{<<} and @samp{>>} in this
 paragraph.)
@@ -22816,6 +22832,81 @@ window is displayed vertically next to another window, you may also want
 to fiddle with @code{gnus-tree-minimize-window} to avoid having the
 windows resized.
 
+@subsection Window Configuration Names
+
+Here's a list of most of the currently known window configurations,
+and when they're used:
+
+@table @code
+@item group
+The group buffer.
+
+@item summary
+Entering a group and showing only the summary.
+
+@item article
+Selecting an article.
+
+@item server
+The server buffer.
+
+@item browse
+Browsing groups from the server buffer.
+
+@item message
+Composing a (new) message.
+
+@item only-article
+Showing only the article buffer.
+
+@item edit-article
+Editing an article.
+
+@item edit-form
+Editing group parameters and the like.
+
+@item edit-score
+Editing a server definition.
+
+@item post
+Composing a news message.
+
+@item reply
+Replying or following up an article without yanking the text.
+
+@item forward
+Forwarding a message.
+
+@item reply-yank
+Replying or following up an article with yanking the text.
+
+@item mail-bound
+Bouncing a message.
+
+@item pipe
+Sending an article to an external process.
+
+@item bug
+Sending a bug report.
+
+@item score-trace
+Displaying the score trace.
+
+@item score-words
+Displaying the score words.
+
+@item split-trace
+Displaying the split trace.
+
+@item compose-bounce
+Composing a bounce message.
+
+@item mml-preview
+Previewing a @acronym{MIME} part.
+
+@end table
+
+
 @subsection Example Window Configurations
 
 @itemize @bullet
@@ -23408,7 +23499,7 @@ specifications.
 The @code{gnus-face-properties-alist} variable affects the appearance of
 displayed Face images.  @xref{X-Face}.
 
-Viewing an @code{Face} header requires an Emacs that is able to display
+Viewing a @code{Face} header requires an Emacs that is able to display
 PNG images.
 @c Maybe add this:
 @c (if (featurep 'xemacs)
@@ -25368,7 +25459,7 @@ Write @code{spam-check-blackbox} if Blackbox can check incoming mail.
 
 Write @code{spam-blackbox-register-routine} and
 @code{spam-blackbox-unregister-routine} using the bogofilter
-register/unregister routines as a start, or other restister/unregister
+register/unregister routines as a start, or other register/unregister
 routines more appropriate to Blackbox, if Blackbox can
 register/unregister spam and ham.
 
@@ -25813,21 +25904,20 @@ of all messages matching a particular set of criteria.
 @end enumerate
 
 @menu
-* Setup::
+* Gnus Registry Setup::
 * Fancy splitting to parent::
 * Registry Article Refer Method::
 * Store custom flags and keywords::
 * Store arbitrary data::
 @end menu
 
-@node Setup
-@subsection Setup
+@node Gnus Registry Setup
+@subsection Gnus Registry Setup
 
 Fortunately, setting up the Gnus registry is pretty easy:
 
 @lisp
-(setq gnus-registry-max-entries 2500
-      gnus-registry-use-long-group-names t)
+(setq gnus-registry-max-entries 2500)
 
 (gnus-registry-initialize)
 @end lisp
@@ -25849,16 +25939,16 @@ what they do before you copy them blindly).
                                 ("spam" t)
                                 ("train" t))
  gnus-registry-max-entries 500000
gnus-registry-use-long-group-names t
;; this is the default
  gnus-registry-track-extra '(sender subject))
 @end lisp
 
-They say: keep a lot of messages around, use long group names, track
-messages by sender and subject (not just parent Message-ID), and when
-the registry splits incoming mail, use a majority rule to decide where
-messages should go if there's more than one possibility.  In addition,
-the registry should ignore messages in groups that match ``nntp'',
-``nnrss'', ``spam'', or ``train.''
+They say: keep a lot of messages around, track messages by sender and
+subject (not just parent Message-ID), and when the registry splits
+incoming mail, use a majority rule to decide where messages should go
+if there's more than one possibility.  In addition, the registry
+should ignore messages in groups that match ``nntp'', ``nnrss'',
+``spam'', or ``train.''
 
 You are doubtless impressed by all this, but you ask: ``I am a Gnus
 user, I customize to live.  Give me more.''  Here you go, these are
@@ -25868,19 +25958,9 @@ the general settings.
 The groups that will not be followed by
 @code{gnus-registry-split-fancy-with-parent}.  They will still be
 remembered by the registry.  This is a list of regular expressions.
-@end defvar
-
-@defvar gnus-registry-ignored-groups
-The groups that will not be remembered by the registry.  This is a
-list of regular expressions, also available through Group/Topic
-customization (so you can ignore or keep a specific group or a whole
-topic).
-@end defvar
-
-@defvar gnus-registry-use-long-group-names
-Whether the registry will use long group names.  It's recommended to
-set this to @code{t}, although everything works if you don't.  Future
-functionality will require it.
+By default any group name that ends with ``delayed'', ``drafts'',
+``queue'', or ``INBOX'', belongs to the nnmairix backend, or contains
+the word ``archive'' is not followed.
 @end defvar
 
 @defvar gnus-registry-max-entries
@@ -25888,8 +25968,15 @@ The number (an integer or @code{nil} for unlimited) of entries the
 registry will keep.
 @end defvar
 
+@defvar gnus-registry-max-pruned-entries
+The maximum number (an integer or @code{nil} for unlimited) of entries
+the registry will keep after pruning.
+@end defvar
+
 @defvar gnus-registry-cache-file
-The file where the registry will be stored between Gnus sessions.
+The file where the registry will be stored between Gnus sessions.  By
+default the file name is @code{.gnus.registry.eioio} in the same
+directory as your @code{.newsrc.eld}.
 @end defvar
 
 @node Registry Article Refer Method
@@ -25913,8 +26000,7 @@ lines:
 ;; Keep enough entries to have a good hit rate when referring to an
 ;; article using the registry.  Use long group names so that Gnus
 ;; knows where the article is.
-(setq gnus-registry-max-entries 2500
-      gnus-registry-use-long-group-names t)
+(setq gnus-registry-max-entries 2500)
 
 (gnus-registry-initialize)
 
@@ -25960,9 +26046,8 @@ following variables.
 
 @defvar gnus-registry-track-extra
 This is a list of symbols, so it's best to change it from the
-Customize interface.  By default it's @code{nil}, but you may want to
-track @code{subject} and @code{sender} as well when splitting by parent.
-It may work for you.  It can be annoying if your mail flow is large and
+Customize interface.  By default it's @code{(subject sender)}, which
+may work for you.  It can be annoying if your mail flow is large and
 people don't stick to the same groups.
 @end defvar
 
@@ -25970,7 +26055,8 @@ people don't stick to the same groups.
 This is a symbol, so it's best to change it from the Customize
 interface.  By default it's @code{nil}, but you may want to set it to
 @code{majority} or @code{first} to split by sender or subject based on
-the majority of matches or on the first found.
+the majority of matches or on the first found.  I find @code{majority}
+works best.
 @end defvar
 
 @node Store custom flags and keywords
@@ -25998,6 +26084,21 @@ Call this function to mark an article with a custom registry mark.  It
 will offer the available marks for completion.
 @end defun
 
+You can use @code{defalias} to install a summary line formatting
+function that will show the registry marks.  There are two flavors of
+this function, either showing the marks as single characters, using
+their @code{:char} property, or showing the marks as full strings.
+
+@lisp
+;; show the marks as single characters (see the :char property in
+;; `gnus-registry-marks'):
+;; (defalias 'gnus-user-format-function-M 'gnus-registry-article-marks-to-chars)
+
+;; show the marks by name (see `gnus-registry-marks'):
+;; (defalias 'gnus-user-format-function-M 'gnus-registry-article-marks-to-names)
+@end lisp
+
+
 @node Store arbitrary data
 @subsection Store arbitrary data
 
@@ -26005,17 +26106,12 @@ The registry has a simple API that uses a Message-ID as the key to
 store arbitrary data (as long as it can be converted to a list for
 storage).
 
-@defun gnus-registry-store-extra-entry (id key value)
-Store @code{value} in the extra data key @code{key} for message
-@code{id}.
-@end defun
-
-@defun gnus-registry-delete-extra-entry (id key)
-Delete the extra data key @code{key} for message @code{id}.
+@defun gnus-registry-set-id-key (id key value)
+Store @code{value} under @code{key} for message @code{id}.
 @end defun
 
-@defun gnus-registry-fetch-extra (id key)
-Get the extra data key @code{key} for message @code{id}.
+@defun gnus-registry-get-id-key (id key)
+Get the data under @code{key} for message @code{id}.
 @end defun
 
 @defvar gnus-registry-extra-entries-precious
@@ -26273,7 +26369,6 @@ renamed it back again to ``Gnus''.  But in mixed case.  ``Gnus'' vs.
 
 @menu
 * Gnus Versions::               What Gnus versions have been released.
-* Other Gnus Versions::         Other Gnus versions that also have been released.
 * Why?::                        What's the point of Gnus?
 * Compatibility::               Just how compatible is Gnus with @sc{gnus}?
 * Conformity::                  Gnus tries to conform to all standards.
@@ -26293,6 +26388,7 @@ renamed it back again to ``Gnus''.  But in mixed case.  ``Gnus'' vs.
 @cindex Pterodactyl Gnus
 @cindex Oort Gnus
 @cindex No Gnus
+@cindex Ma Gnus
 @cindex Gnus versions
 
 The first ``proper'' release of Gnus 5 was done in November 1995 when it
@@ -26321,28 +26417,15 @@ On April 19, 2010 Gnus development was moved to Git.  See
 http://git.gnus.org for details (http://www.gnus.org will be updated
 with the information when possible).
 
+On the January 31th 2012, Ma Gnus was begun.
+
 If you happen upon a version of Gnus that has a prefixed name --
 ``(ding) Gnus'', ``September Gnus'', ``Red Gnus'', ``Quassia Gnus'',
-``Pterodactyl Gnus'', ``Oort Gnus'', ``No Gnus'' -- don't panic.
-Don't let it know that you're frightened.  Back away.  Slowly.  Whatever
-you do, don't run.  Walk away, calmly, until you're out of its reach.
-Find a proper released version of Gnus and snuggle up to that instead.
-
-
-@node Other Gnus Versions
-@subsection Other Gnus Versions
-@cindex Semi-gnus
-
-In addition to the versions of Gnus which have had their releases
-coordinated by Lars, one major development has been Semi-gnus from
-Japan.  It's based on a library called @acronym{SEMI}, which provides
-@acronym{MIME} capabilities.
-
-These Gnusae are based mainly on Gnus 5.6 and Pterodactyl Gnus.
-Collectively, they are called ``Semi-gnus'', and different strains are
-called T-gnus, ET-gnus, Nana-gnus and Chaos.  These provide powerful
-@acronym{MIME} and multilingualization things, especially important for
-Japanese users.
+``Pterodactyl Gnus'', ``Oort Gnus'', ``No Gnus'', ``Ma Gnus'' -- don't
+panic.  Don't let it know that you're frightened.  Back away.  Slowly.
+Whatever you do, don't run.  Walk away, calmly, until you're out of
+its reach.  Find a proper released version of Gnus and snuggle up to
+that instead.
 
 
 @node Why?
@@ -26665,7 +26748,7 @@ Sudish Joseph---innumerable bug fixes.
 Ilja Weis---@file{gnus-topic.el}.
 
 @item
-Steven L. Baur---lots and lots and lots of bugs detections and fixes.
+Steven L. Baur---lots and lots and lots of bug detection and fixes.
 
 @item
 Vladimir Alexiev---the refcard and reference booklets.
@@ -26945,7 +27028,8 @@ actually are people who are using Gnus.  Who'd'a thunk it!
 * Quassia Gnus::                Two times two is four, or Gnus 5.6/5.7.
 * Pterodactyl Gnus::            Pentad also starts with P, AKA Gnus 5.8/5.9.
 * Oort Gnus::                   It's big.  It's far out.  Gnus 5.10/5.11.
-* No Gnus::                     Very punny.
+* No Gnus::                     Very punny.  Gnus 5.12/5.13.
+* Ma Gnus::                     Celebrating 25 years of Gnus.
 @end menu
 
 These lists are, of course, just @emph{short} overviews of the
@@ -27334,7 +27418,7 @@ considered home score and adapt files (@pxref{Home Score File}) have
 been added.
 
 @item
-@code{nndoc} was rewritten to be easily extendable (@pxref{Document
+@code{nndoc} was rewritten to be easily extensible (@pxref{Document
 Server Internals}).
 
 @item
@@ -27681,7 +27765,7 @@ to install Gnus after compiling it, give @file{make.bat} @code{/copy} as
 the second parameter.
 
 @file{make.bat} has been rewritten from scratch, it now features
-automatic recognition of XEmacs and GNU Emacs, generates
+automatic recognition of XEmacs and 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
@@ -27727,7 +27811,7 @@ The revised Gnus @acronym{FAQ} is included in the manual,
 @acronym{TLS} wrapper shipped with Gnus
 
 @acronym{TLS}/@acronym{SSL} is now supported in @acronym{IMAP} and
-@acronym{NNTP} via @file{tls.el} and GNUTLS.
+@acronym{NNTP} via @file{tls.el} and GnuTLS.
 
 @item
 Improved anti-spam features.
@@ -27879,10 +27963,6 @@ If the new option @code{gnus-summary-display-while-building} is
 non-@code{nil}, the summary buffer is shown and updated as it's being
 built.
 
-@item
-The new @code{recent} mark @samp{.} indicates newly arrived messages (as
-opposed to old but unread messages).
-
 @item
 Gnus supports RFC 2369 mailing list headers, and adds a number of
 related commands in mailing list groups.  @xref{Mailing List}.
@@ -28324,6 +28404,13 @@ New features in No Gnus:
 
 @include gnus-news.texi
 
+@node Ma Gnus
+@subsubsection Ma Gnus
+@cindex Ma Gnus
+
+I'm sure there will be lots of text here.  It's really spelled 真
+Gnus.
+
 @iftex
 
 @page
@@ -28471,18 +28558,21 @@ confusing.
 @item native
 @cindex native
 Gnus will always use one method (and back end) as the @dfn{native}, or
-default, way of getting news.
+default, way of getting news.  Groups from the native select method
+have names like @samp{gnu.emacs.gnus}.
 
 @item foreign
 @cindex foreign
-You can also have any number of foreign groups active at the same time.
-These are groups that use non-native non-secondary back ends for getting
-news.
+You can also have any number of foreign groups active at the same
+time.  These are groups that use non-native non-secondary back ends
+for getting news.  Foreign groups have names like
+@samp{nntp+news.gmane.org:gmane.emacs.gnus.devel}.
 
 @item secondary
 @cindex secondary
-Secondary back ends are somewhere half-way between being native and being
-foreign, but they mostly act like they are native.
+Secondary back ends are somewhere half-way between being native and
+being foreign, but they mostly act like they are native, but they, too
+have names like @samp{nntp+news.gmane.org:gmane.emacs.gnus.devel}.
 
 @item article
 @cindex article
@@ -28824,7 +28914,7 @@ Gnus will work.
 @item
 Try doing an @kbd{M-x gnus-version}.  If you get something that looks
 like @c
-@samp{No Gnus v0.10} @c Adjust ../Makefile.in if you change this line!
+@samp{Ma Gnus v0.2} @c Adjust ../Makefile.in if you change this line!
 @c
 you have the right files loaded.  Otherwise you have some old @file{.el}
 files lying around.  Delete these.
@@ -28985,7 +29075,7 @@ Takes an unprefixed group name and a select method, and returns the full
 
 @item gnus-get-info
 @findex gnus-get-info
-Returns the group info list for @var{group}.
+Returns the group info list for @var{group} (@pxref{Group Info}).
 
 @item gnus-group-unread
 @findex gnus-group-unread
@@ -28994,7 +29084,8 @@ unknown.
 
 @item gnus-active
 @findex gnus-active
-The active entry for @var{group}.
+The active entry (i.e., a cons cell containing the lowest and highest
+article numbers) for @var{group}.
 
 @item gnus-set-active
 @findex gnus-set-active
@@ -29029,7 +29120,9 @@ Returns the select method corresponding to @var{server}.
 
 @item gnus-server-equal
 @findex gnus-server-equal
-Says whether two virtual servers are equal.
+Says whether two virtual servers are essentially equal.  For instance,
+two virtual servers may have server parameters in different order, but
+this function will consider them equal.
 
 @item gnus-group-native-p
 @findex gnus-group-native-p
@@ -29045,8 +29138,9 @@ Says whether @var{group} is foreign or not.
 
 @item gnus-group-find-parameter
 @findex gnus-group-find-parameter
-Returns the parameter list of @var{group}.  If given a second parameter,
-returns the value of that parameter for @var{group}.
+Returns the parameter list of @var{group} (@pxref{Group Parameters}).
+If given a second parameter, returns the value of that parameter for
+@var{group}.
 
 @item gnus-group-set-parameter
 @findex gnus-group-set-parameter
@@ -29459,9 +29553,9 @@ propagate the mark information to the server.
 marks (preserving all marks not mentioned).  @var{mark} is a list of
 marks; where each mark is a symbol.  Currently used marks are
 @code{read}, @code{tick}, @code{reply}, @code{expire}, @code{killed},
-@code{dormant}, @code{save}, @code{download}, @code{unsend},
-@code{forward} and @code{recent}, but your back end should, if
-possible, not limit itself to these.
+@code{dormant}, @code{save}, @code{download}, @code{unsend}, and
+@code{forward}, but your back end should, if possible, not limit
+itself to these.
 
 Given contradictory actions, the last action in the list should be the
 effective one.  That is, if your action contains a request to add the
@@ -29935,8 +30029,8 @@ this:
 @node Score File Syntax
 @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
+Score files are meant to be easily parsable, but yet extremely
+malleable.  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:
@@ -30539,5 +30633,5 @@ former).  The manual is unambiguous, but it can be confusing.
 
 @c Local Variables:
 @c mode: texinfo
-@c coding: iso-8859-1
+@c coding: utf-8
 @c End: