X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=texi%2Fgnus.texi;h=6776cb91d46315d7eb8e6fe232e68cb9dfb02755;hb=c6167d4b5ca828a634c7c2961fbb67dd4b964424;hp=884fb3e00c9a6c5b238aa63cafdcdddf0dcb36a2;hpb=bbab52a72709756b6cfc6a045db77803deeef917;p=elisp%2Fgnus.git- diff --git a/texi/gnus.texi b/texi/gnus.texi index 884fb3e..6776cb9 100644 --- a/texi/gnus.texi +++ b/texi/gnus.texi @@ -10,7 +10,7 @@ @copying Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, - 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document @@ -757,6 +757,7 @@ Gnus Unplugged * Agent as Cache:: The Agent is a big cache too. * Agent Expiry:: How to make old articles go away. * Agent Regeneration:: How to recover from lost connections and other accidents. +* Agent and flags:: How the Agent maintains flags. * Agent and IMAP:: How to use the Agent with @acronym{IMAP}. * Outgoing Messages:: What happens when you post/mail something? * Agent Variables:: Customizing is fun. @@ -3110,6 +3111,46 @@ example: String value of parameters 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 +specified in @code{gnus-parameters} is done in a case-sensitive manner +or a case-insensitive manner depends on the value of +@code{case-fold-search} at the time when the comparison is done. The +value of @code{case-fold-search} is typically @code{t}; it means, for +example, the element @code{("INBOX\\.FOO" (total-expire . t))} might be +applied to both the @samp{INBOX.FOO} group and the @samp{INBOX.foo} +group. If you want to make those regexps always case-sensitive, set the +value of the @code{gnus-parameters-case-fold-search} variable to +@code{nil}. Otherwise, set it to @code{t} if you want to compare them +always in a case-insensitive manner. + +You can define different sorting to different groups via +@code{gnus-parameters}. Here is an example to sort an @acronym{NNTP} +group by reverse date to see the latest news at the top and an +@acronym{RSS} group by subject. In this example, the first group is the +Debian daily news group @code{gmane.linux.debian.user.news} from +news.gmane.org. The @acronym{RSS} group corresponds to the Debian +weekly news RSS feed +@url{http://packages.debian.org/unstable/newpkg_main.en.rdf}, +@xref{RSS}. + +@lisp +(setq + gnus-parameters + '(("nntp.*gmane\\.debian\\.user\\.news" + (gnus-show-threads nil) + (gnus-article-sort-functions '((not gnus-article-sort-by-date))) + (gnus-use-adaptive-scoring nil) + (gnus-use-scoring nil)) + ("nnrss.*debian" + (gnus-show-threads nil) + (gnus-article-sort-functions 'gnus-article-sort-by-subject) + (gnus-use-adaptive-scoring nil) + (gnus-use-scoring t) + (gnus-score-find-score-files-function 'gnus-score-find-single) + (gnus-summary-line-format "%U%R%z%d %I%(%[ %s %]%)\n")))) +@end lisp + @node Listing Groups @section Listing Groups @@ -7005,6 +7046,7 @@ Matching}). @findex gnus-thread-sort-by-total-score @findex gnus-thread-sort-by-date +@findex gnus-thread-sort-by-date-reverse @findex gnus-thread-sort-by-score @findex gnus-thread-sort-by-subject @findex gnus-thread-sort-by-author @@ -7022,7 +7064,8 @@ function, a list of functions, or a list containing functions and By default, sorting is done on article numbers. Ready-made sorting predicate functions include @code{gnus-thread-sort-by-number}, @code{gnus-thread-sort-by-author}, @code{gnus-thread-sort-by-recipient}, -@code{gnus-thread-sort-by-subject}, @code{gnus-thread-sort-by-date}, +@code{gnus-thread-sort-by-subject}, +@code{gnus-thread-sort-by-date}, @code{gnus-thread-sort-by-date-reverse}, @code{gnus-thread-sort-by-score}, @code{gnus-thread-sort-by-most-recent-number}, @code{gnus-thread-sort-by-most-recent-date}, @@ -7061,8 +7104,7 @@ say something like: @lisp (setq gnus-thread-sort-functions - '((lambda (t1 t2) - (not (gnus-thread-sort-by-number t1 t2))) + '((not gnus-thread-sort-by-number) gnus-thread-sort-by-score)) @end lisp @@ -7099,6 +7141,8 @@ say something like: gnus-article-sort-by-subject)) @end lisp +You can define group specific sorting via @code{gnus-parameters}, +@xref{Group Parameters}. @node Asynchronous Fetching @@ -8644,7 +8688,9 @@ Treat @acronym{HTML} (@code{gnus-article-wash-html}). Note that this is usually done automatically by Gnus if the message in question has a @code{Content-Type} header that says that the message is @acronym{HTML}. -If a prefix is given, a charset will be asked for. +If a prefix is given, a charset will be asked for. If it is a number, +the charset defined in @code{gnus-summary-show-article-charset-alist} +(@pxref{Paging the Article}) will be used. @vindex gnus-article-wash-function The default is to use the function specified by @@ -8655,12 +8701,15 @@ Customization, emacs-mime, The Emacs MIME Manual}) to convert the can use include: @table @code -@item W3 +@item w3 Use Emacs/W3. @item w3m Use @uref{http://emacs-w3m.namazu.org/, emacs-w3m}. +@item w3m-standalone +Use @uref{http://w3m.sourceforge.net/, w3m}. + @item links Use @uref{http://links.sf.net/, Links}. @@ -9407,6 +9456,12 @@ To see e.g. security buttons but no other buttons, you could set this variable to @code{("multipart/signed")} and leave @code{gnus-unbuttonized-mime-types} at the default value. +You could also add @code{"multipart/alternative"} to this list to +display radio buttons that allow you to choose one of two media types +those mails include. See also @code{mm-discouraged-alternatives} +(@pxref{Display Customization, ,Display Customization, emacs-mime, The +Emacs MIME Manual}). + @item gnus-inhibit-mime-unbuttonizing @vindex gnus-inhibit-mime-unbuttonizing If this is non-@code{nil}, then all @acronym{MIME} parts get buttons. The @@ -10514,6 +10569,12 @@ Mark all articles, even the ticked ones, as read and then exit Mark all articles as read and go to the next group (@code{gnus-summary-catchup-and-goto-next-group}). +@item Z p +@kindex Z p (Summary) +@findex gnus-summary-catchup-and-goto-prev-group +Mark all articles as read and go to the previous group +(@code{gnus-summary-catchup-and-goto-prev-group}). + @item Z R @itemx C-x C-s @kindex Z R (Summary) @@ -11059,7 +11120,10 @@ for sensible values. @code{head}: Do the treatment on the headers. @item -@code{last}: Do this treatment on the last part. +@code{first}: Do this treatment on the first body part. + +@item +@code{last}: Do this treatment on the last body part. @item An integer: Do this treatment on all body parts that have a length less @@ -11116,7 +11180,7 @@ possible but those listed are probably sufficient for most people. @item gnus-treat-overstrike (t, integer) @item gnus-treat-strip-cr (t, integer) @item gnus-treat-strip-headers-in-body (t, integer) -@item gnus-treat-strip-leading-blank-lines (t, integer) +@item gnus-treat-strip-leading-blank-lines (t, first, integer) @item gnus-treat-strip-multiple-blank-lines (t, integer) @item gnus-treat-strip-pem (t, last, integer) @item gnus-treat-strip-trailing-blank-lines (t, last, integer) @@ -12406,7 +12470,19 @@ configuration to the example above: (nntp-via-rlogin-command "ssh") @end lisp -See also @code{nntp-via-rlogin-command-switches}. +See also @code{nntp-via-rlogin-command-switches}. Here's an example for +an indirect connection: +@lisp +(setq gnus-select-method + '(nntp "indirect" + (nntp-address "news.server.example") + (nntp-via-user-name "intermediate_user_name") + (nntp-via-address "intermediate.host.example") + (nntp-via-rlogin-command "ssh") + (nntp-end-of-line "\n") + (nntp-via-rlogin-command-switches ("-C" "-t" "-e" "none")) + (nntp-open-connection-function nntp-open-via-rlogin-and-telnet))) +@end lisp If you're behind a firewall, but have direct access to the outside world through a wrapper command like "runsocks", you could open a socksified @@ -12980,7 +13056,7 @@ List of strings to be used as the switches to @item nntp-open-via-telnet-and-telnet @findex nntp-open-via-telnet-and-telnet -Does essentially also the same, but uses @samp{telnet} instead of +Does essentially the same, but uses @samp{telnet} instead of @samp{rlogin} to connect to the intermediate host. @code{nntp-open-via-telnet-and-telnet}-specific variables: @@ -16065,6 +16141,10 @@ the value of @code{default-file-name-coding-system}. If you are using XEmacs and want to use non-@acronym{ASCII} group names, you should set the value for the @code{nnmail-pathname-coding-system} variable properly. +The @code{nnrss} back end generates @samp{multipart/alternative} +@acronym{MIME} articles in which each contains a @samp{text/plain} part +and a @samp{text/html} part. + @cindex OPML You can also use the following commands to import and export your subscriptions from a file in @acronym{OPML} format (Outline Processor @@ -16102,6 +16182,15 @@ If you set @code{nnrss-use-local} to @code{t}, @code{nnrss} will read the feeds from local files in @code{nnrss-directory}. You can use the command @code{nnrss-generate-download-script} to generate a download script using @command{wget}. + +@item nnrss-wash-html-in-text-plain-parts +Non-@code{nil} means that @code{nnrss} renders text in @samp{text/plain} +parts as @acronym{HTML}. The function specified by the +@code{mm-text-html-renderer} variable (@pxref{Display Customization, +,Display Customization, emacs-mime, The Emacs MIME Manual}) will be used +to render text. If it is @code{nil}, which is the default, text will +simply be folded. Leave it @code{nil} if you prefer to see +@samp{text/html} parts. @end table The following code may be helpful, if you want to show the description in @@ -16119,6 +16208,7 @@ the summary buffer. The following code may be useful to open an nnrss url directly from the summary buffer. + @lisp (require 'browse-url) @@ -16141,6 +16231,31 @@ summary buffer. (add-to-list 'nnmail-extra-headers nnrss-url-field) @end lisp +Even if you have added @code{"text/html"} to the +@code{mm-discouraged-alternatives} variable (@pxref{Display +Customization, ,Display Customization, emacs-mime, The Emacs MIME +Manual}) since you don't want to see @acronym{HTML} parts, it might be +more useful especially in @code{nnrss} groups to display +@samp{text/html} parts. Here's an example of setting +@code{mm-discouraged-alternatives} as a group parameter (@pxref{Group +Parameters}) in order to display @samp{text/html} parts only in +@code{nnrss} groups: + +@lisp +;; @r{Set the default value of @code{mm-discouraged-alternatives}.} +(eval-after-load "gnus-sum" + '(add-to-list + 'gnus-newsgroup-variables + '(mm-discouraged-alternatives + . '("text/html" "image/.*")))) + +;; @r{Display @samp{text/html} parts in @code{nnrss} groups.} +(add-to-list + 'gnus-parameters + '("\\`nnrss:" (mm-discouraged-alternatives nil))) +@end lisp + + @node Customizing W3 @subsection Customizing W3 @cindex W3 @@ -16761,7 +16876,7 @@ delete them. @cindex namespaces The @acronym{IMAP} protocol has a concept called namespaces, described -by the following text in the RFC: +by the following text in the RFC2060: @display 5.1.2. Mailbox Namespace Naming Convention @@ -16951,12 +17066,11 @@ as a newsgroup. Several files types are supported: @table @code @cindex Babyl @cindex Rmail mbox - @item babyl The Babyl (Rmail) mail box. + @cindex mbox @cindex Unix mbox - @item mbox The standard Unix mbox file. @@ -16967,13 +17081,9 @@ The MMDF mail box format. @item news Several news articles appended into a file. -@item rnews @cindex rnews batch files +@item rnews The rnews batch transport format. -@cindex forwarded messages - -@item forward -Forwarded articles. @item nsmail Netscape mail boxes. @@ -16990,6 +17100,7 @@ A @acronym{MIME} digest of messages. @item lanl-gov-announce Announcement messages from LANL Gov Announce. +@cindex forwarded messages @item rfc822-forward A message forwarded according to RFC822. @@ -17093,34 +17204,48 @@ totally ignored. @item article-begin This setting has to be present in all document type definitions. It -says what the beginning of each article looks like. +says what the beginning of each article looks like. To do more +complicated things that cannot be dealt with a simple regexp, you can +use @code{article-begin-function} instead of this. -@item head-begin-function -If present, this should be a function that moves point to the head of -the article. +@item article-begin-function +If present, this should be a function that moves point to the beginning +of each article. This setting overrides @code{article-begin}. -@item nndoc-head-begin +@item head-begin If present, this should be a regexp that matches the head of the -article. +article. To do more complicated things that cannot be dealt with a +simple regexp, you can use @code{head-begin-function} instead of this. -@item nndoc-head-end +@item head-begin-function +If present, this should be a function that moves point to the head of +the article. This setting overrides @code{head-begin}. + +@item head-end This should match the end of the head of the article. It defaults to @samp{^$}---the empty line. +@item body-begin +This should match the beginning of the body of the article. It defaults +to @samp{^\n}. To do more complicated things that cannot be dealt with +a simple regexp, you can use @code{body-begin-function} instead of this. + @item body-begin-function If present, this function should move point to the beginning of the body -of the article. +of the article. This setting overrides @code{body-begin}. -@item body-begin -This should match the beginning of the body of the article. It defaults -to @samp{^\n}. +@item body-end +If present, this should match the end of the body of the article. To do +more complicated things that cannot be dealt with a simple regexp, you +can use @code{body-end-function} instead of this. @item body-end-function If present, this function should move point to the end of the body of -the article. +the article. This setting overrides @code{body-end}. -@item body-end -If present, this should match the end of the body of the article. +@item file-begin +If present, this should match the beginning of the file. All text +before this regexp will be totally ignored. @item file-end If present, this should match the end of the file. All text after this @@ -17151,6 +17276,19 @@ understand. It is called with the article number as a parameter, and is expected to generate a nice head for the article in question. It is called when requesting the headers of all articles. +@item generate-article-function +If present, this function is called to generate an entire article that +Gnus can understand. It is called with the article number as a +parameter when requesting all articles. + +@item dissection-function +If present, this function is called to dissect a document by itself, +overriding @code{first-article}, @code{article-begin}, +@code{article-begin-function}, @code{head-begin}, +@code{head-begin-function}, @code{head-end}, @code{body-begin}, +@code{body-begin-function}, @code{body-end}, @code{body-end-function}, +@code{file-begin}, and @code{file-end}. + @end table Let's look at the most complicated example I can come up with---standard @@ -18113,6 +18251,7 @@ Of course, to use it as such, you have to learn a few new commands. * Agent as Cache:: The Agent is a big cache too. * Agent Expiry:: How to make old articles go away. * Agent Regeneration:: How to recover from lost connections and other accidents. +* Agent and flags:: How the Agent maintains flags. * Agent and IMAP:: How to use the Agent with @acronym{IMAP}. * Outgoing Messages:: What happens when you post/mail something? * Agent Variables:: Customizing is fun. @@ -18277,9 +18416,6 @@ listed below. @cindex Agent Parameters @table @code -@item agent-cat-name -The name of the category. - @item agent-groups The list of groups that are in this category. @@ -18287,7 +18423,7 @@ The list of groups that are in this category. A predicate which (generally) gives a rough outline of which articles are eligible for downloading; and -@item agent-score-file +@item agent-score a score rule which (generally) gives you a finer granularity when deciding what articles to download. (Note that this @dfn{download score} is not necessarily related to normal scores.) @@ -18308,11 +18444,11 @@ an integer that overrides the value of @code{gnus-agent-low-score}. @item agent-high-score an integer that overrides the value of @code{gnus-agent-high-score}. -@item agent-length-when-short +@item agent-short-article an integer that overrides the value of @code{gnus-agent-short-article}. -@item agent-length-when-long +@item agent-long-article an integer that overrides the value of @code{gnus-agent-long-article}. @item agent-enable-undownloaded-faces @@ -18824,9 +18960,9 @@ Download all eligible (@pxref{Agent Categories}) articles in this group. @item J s @kindex J s (Agent Summary) -@findex gnus-agent-fetch-series +@findex gnus-agent-summary-fetch-series Download all processable articles in this group. -(@code{gnus-agent-fetch-series}). +(@code{gnus-agent-summary-fetch-series}). @item J u @kindex J u (Agent Summary) @@ -19019,23 +19155,19 @@ then updates the internal data structures that document which articles are stored locally. An optional argument will mark articles in the agent as unread. -@node Agent and IMAP -@subsection Agent and IMAP - -The Agent works with any Gnus back end, including nnimap. However, -since there are some conceptual differences between @acronym{NNTP} and -@acronym{IMAP}, this section (should) provide you with some information to -make Gnus Agent work smoother as a @acronym{IMAP} Disconnected Mode client. +@node Agent and flags +@subsection Agent and flags -The first thing to keep in mind is that all flags (read, ticked, etc) -are kept on the @acronym{IMAP} server, rather than in @file{.newsrc} as is the -case for nntp. Thus Gnus need to remember flag changes when -disconnected, and synchronize these flags when you plug back in. +The Agent works with any Gnus back end including those, such as +nnimap, that store flags (read, ticked, etc) on the server. Sadly, +the Agent does not actually know which backends keep their flags in +the backend server rather than in @file{.newsrc}. This means that the +Agent, while unplugged or disconnected, will always record all changes +to the flags in its own files. -Gnus keeps track of flag changes when reading nnimap groups under the -Agent. When you plug back in, Gnus will check if you have any changed -any flags and ask if you wish to synchronize these with the server. -The behavior is customizable by @code{gnus-agent-synchronize-flags}. +When you plug back in, Gnus will then check to see if you have any +changed any flags and ask if you wish to synchronize these with the +server. This behavior is customizable by @code{gnus-agent-synchronize-flags}. @vindex gnus-agent-synchronize-flags If @code{gnus-agent-synchronize-flags} is @code{nil}, the Agent will @@ -19049,6 +19181,23 @@ re-connect, you can do it manually with the @code{gnus-agent-synchronize-flags} command that is bound to @kbd{J Y} in the group buffer. +Technical note: the synchronization algorithm does not work by ``pushing'' +all local flags to the server, but rather by incrementally updated the +server view of flags by changing only those flags that were changed by +the user. Thus, if you set one flag on an article, quit the group then +re-select the group and remove the flag; the flag will be set and +removed from the server when you ``synchronize''. The queued flag +operations can be found in the per-server @code{flags} file in the Agent +directory. It's emptied when you synchronize flags. + +@node Agent and IMAP +@subsection Agent and IMAP + +The Agent works with any Gnus back end, including nnimap. However, +since there are some conceptual differences between @acronym{NNTP} and +@acronym{IMAP}, this section (should) provide you with some information to +make Gnus Agent work smoother as a @acronym{IMAP} Disconnected Mode client. + Some things are currently not implemented in the Agent that you'd might expect from a disconnected @acronym{IMAP} client, including: @@ -19062,16 +19211,6 @@ Creating/deleting nnimap groups when unplugged. @end itemize -Technical note: the synchronization algorithm does not work by ``pushing'' -all local flags to the server, but rather incrementally update the -server view of flags by changing only those flags that were changed by -the user. Thus, if you set one flag on an article, quit the group and -re-select the group and remove the flag; the flag will be set and -removed from the server when you ``synchronize''. The queued flag -operations can be found in the per-server @code{flags} file in the Agent -directory. It's emptied when you synchronize flags. - - @node Outgoing Messages @subsection Outgoing Messages @@ -19155,6 +19294,14 @@ mark articles as unread after downloading. This is usually a safe thing to do as the newly downloaded article has obviously not been read. The default is @code{t}. +@item gnus-agent-synchronize-flags +@vindex gnus-agent-synchronize-flags +If @code{gnus-agent-synchronize-flags} is @code{nil}, the Agent will +never automatically synchronize flags. If it is @code{ask}, which is +the default, the Agent will check if you made any changes and if so +ask if you wish to synchronize these when you re-connect. If it has +any other value, all flags will be synchronized automatically. + @item gnus-agent-consider-all-articles @vindex gnus-agent-consider-all-articles If @code{gnus-agent-consider-all-articles} is non-@code{nil}, the @@ -20349,7 +20496,8 @@ group name, the @var{file-name} will be used as the home score file. @item A function. If the function returns non-@code{nil}, the result will -be used as the home score file. +be used as the home score file. The function will be called with the +name of the group as the parameter. @item A string. Use the string as the home score file. @@ -22385,11 +22533,11 @@ function, this function will be called with the face as the argument. If the @code{gnus-article-x-face-too-ugly} (which is a regexp) matches the @code{From} header, the face will not be shown. -The default action under Emacs 20 is to fork off the @code{display} -program@footnote{@code{display} is from the ImageMagick package. For -the @code{uncompface} and @code{icontopbm} programs look for a package -like @code{compface} or @code{faces-xface} on a GNU/Linux system.} to -view the face. +The default action under Emacs without image support is to fork off the +@code{display} program@footnote{@code{display} is from the ImageMagick +package. For the @code{uncompface} and @code{icontopbm} programs look +for a package like @code{compface} or @code{faces-xface} on a GNU/Linux +system.} to view the face. Under XEmacs or Emacs 21+ with suitable image support, the default action is to display the face before the @code{From} header. (It's @@ -22669,18 +22817,6 @@ This is where Gnus will look for pictures. Gnus will normally auto-detect this directory, but you may set it manually if you have an unusual directory structure. -@item gnus-xmas-logo-color-alist -@vindex gnus-xmas-logo-color-alist -This is an alist where the key is a type symbol and the values are the -foreground and background color of the splash page glyph. - -@item gnus-xmas-logo-color-style -@vindex gnus-xmas-logo-color-style -This is the key used to look up the color in the alist described above. -Valid values include @code{flame}, @code{pine}, @code{moss}, -@code{irish}, @code{sky}, @code{tin}, @code{velvet}, @code{grape}, -@code{labia}, @code{berry}, @code{neutral}, and @code{september}. - @item gnus-xmas-modeline-glyph @vindex gnus-xmas-modeline-glyph A glyph displayed in all Gnus mode lines. It is a tiny gnu head by @@ -22694,9 +22830,19 @@ default. @item gnus-use-toolbar @vindex gnus-use-toolbar -If @code{nil}, don't display toolbars. If non-@code{nil}, it should be -one of @code{default-toolbar}, @code{top-toolbar}, @code{bottom-toolbar}, -@code{right-toolbar}, or @code{left-toolbar}. +This variable specifies the position to display the toolbar. If +@code{nil}, don't display toolbars. If it is non-nil, it should be one +of the symbols @code{default}, @code{top}, @code{bottom}, @code{right}, +and @code{left}. @code{default} means to use the default toolbar, the +rest mean to display the toolbar on the place which those names show. +The default is @code{default}. + +@item gnus-toolbar-thickness +@vindex gnus-toolbar-thickness +Cons of the height and the width specifying the thickness of a toolbar. +The height is used for the toolbar displayed on the top or the bottom, +the width is used for the toolbar displayed on the right or the left. +The default is that of the default toolbar. @item gnus-group-toolbar @vindex gnus-group-toolbar @@ -23944,8 +24090,15 @@ This variable is @code{t} by default. Set it to @code{nil} if you are running your own news server, for instance, and the local article numbers don't correspond to the Gmane article numbers. When @code{spam-report-gmane-use-article-number} is @code{nil}, -@code{spam-report.el} will use the @code{X-Report-Spam} header that -Gmane provides. +@code{spam-report.el} will fetch the number from the article headers. + +@end defvar + +@defvar spam-report-user-mail-address + +Mail address exposed in the User-Agent spam reports to Gmane. It allows +the Gmane administrators to contact you in case of misreports. The +default is @code{user-mail-address}. @end defvar @@ -24893,7 +25046,7 @@ to the Gnus back ends instead of Gnus proper. @item nnheader-max-head-length @vindex nnheader-max-head-length When the back ends read straight heads of articles, they all try to read -as little as possible. This variable (default 4096) specifies +as little as possible. This variable (default 8192) specifies the absolute max length the back ends will try to read before giving up on finding a separator line between the head and the body. If this variable is @code{nil}, there is no upper read bound. If it is @@ -25074,7 +25227,7 @@ On July 28th 1996 work on Red Gnus was begun, and it was released on January 25th 1997 (after 84 releases) as ``Gnus 5.4'' (67 releases). On September 13th 1997, Quassia Gnus was started and lasted 37 releases. -If was released as ``Gnus 5.6'' on March 8th 1998 (46 releases). +It was released as ``Gnus 5.6'' on March 8th 1998 (46 releases). Gnus 5.6 begat Pterodactyl Gnus on August 29th 1998 and was released as ``Gnus 5.8'' (after 99 releases and a CVS repository) on December 3rd @@ -25265,7 +25418,7 @@ decryption). @item PGP/MIME - RFC 2015/3156 RFC 2015 (superseded by 3156 which references RFC 2440 instead of RFC -1991) describes the @acronym{MIME}-wrapping around the RF 1991/2440 format. +1991) describes the @acronym{MIME}-wrapping around the RFC 1991/2440 format. Gnus supports both encoding and decoding. @item S/MIME - RFC 2633 @@ -26617,7 +26770,7 @@ The new variable @code{gnus-parameters} can be used to set group parameters. Earlier this was done only via @kbd{G p} (or @kbd{G c}), which stored the parameters in @file{~/.newsrc.eld}, but via this variable you can enjoy the powers of customize, and simplified backups since you set the -variable in @file{~/.emacs} instead of @file{~/.newsrc.eld}. The +variable in @file{~/.gnus.el} instead of @file{~/.newsrc.eld}. The variable maps regular expressions matching group names to group parameters, a'la: @lisp @@ -26632,7 +26785,7 @@ parameters, a'la: @item Smileys (@samp{:-)}, @samp{;-)} etc) are now iconized for Emacs too. -Put @code{(setq gnus-treat-display-smileys nil)} in @file{~/.emacs} to +Put @code{(setq gnus-treat-display-smileys nil)} in @file{~/.gnus.el} to disable it. @item @@ -26659,8 +26812,8 @@ appropriate headers and a note in the body for cross-postings and followups (see the variables @code{message-cross-post-@var{*}}). @item -References and X-Draft-Headers are no longer generated when you start -composing messages and @code{message-generate-headers-first} is +References and X-Draft-From headers are no longer generated when you +start composing messages and @code{message-generate-headers-first} is @code{nil}. @item @@ -26901,7 +27054,8 @@ It was aliased to @kbd{Y c} (@code{gnus-summary-insert-cached-articles}). The new function filters out other articles. -@item Some limiting commands accept a @kbd{C-u} prefix to negate the match. +@item +Some limiting commands accept a @kbd{C-u} prefix to negate the match. If @kbd{C-u} is used on subject, author or extra headers, i.e., @kbd{/ s}, @kbd{/ a}, and @kbd{/ x} @@ -27361,7 +27515,7 @@ minimum. You can, in fact, make do without them altogether---most of the useful data is in the summary buffer, anyway. Set this variable to @samp{^NEVVVVER} or @samp{From:}, or whatever you feel you need. -Set this hook to all the available hiding commands: +Use the following to enable all the available hiding features: @lisp (setq gnus-treat-hide-headers 'head gnus-treat-hide-signature t @@ -29092,8 +29246,10 @@ interpreted.) If you decide that you don't like the way Gnus does certain things, it's trivial to have it do something a different way. (Well, at least if you know how to write Lisp code.) However, that's beyond the scope of this manual, so we are simply going to talk about -some common constructs that you normally use in your @file{.emacs} file -to customize Gnus. +some common constructs that you normally use in your @file{~/.gnus.el} +file to customize Gnus. (You can also use the @file{~/.emacs} file, but +in order to set things of Gnus up, it is much better to use the +@file{~/.gnus.el} file, @xref{Startup Files}.) If you want to set the variable @code{gnus-florgbnize} to four (4), you write the following: @@ -29104,12 +29260,12 @@ write the following: This function (really ``special form'') @code{setq} is the one that can set a variable to some value. This is really all you need to know. Now -you can go and fill your @file{.emacs} file with lots of these to change -how Gnus works. +you can go and fill your @file{~/.gnus.el} file with lots of these to +change how Gnus works. -If you have put that thing in your @file{.emacs} file, it will be read -and @code{eval}ed (which is lisp-ese for ``run'') the next time you -start Emacs. If you want to change the variable right away, simply say +If you have put that thing in your @file{~/.gnus.el} file, it will be +read and @code{eval}ed (which is Lisp-ese for ``run'') the next time you +start Gnus. If you want to change the variable right away, simply say @kbd{C-x C-e} after the closing parenthesis. That will @code{eval} the previous ``form'', which is a simple @code{setq} statement here.