*** empty log message ***
[gnus] / texi / gnus.texi
index ea9ce5c..f464893 100644 (file)
@@ -1,10 +1,13 @@
 \input texinfo                  @c -*-texinfo-*-
 
 @setfilename gnus
-@settitle Quassia Gnus 0.19 Manual
+@settitle Quassia Gnus 0.33 Manual
 @synindex fn cp
 @synindex vr cp
 @synindex pg cp
+@c @direntry
+@c * Gnus: (gnus).         The news reader Gnus.
+@c @end direntry
 @iftex
 @finalout
 @end iftex
@@ -313,7 +316,7 @@ into another language, under the above conditions for modified versions.
 @tex
 
 @titlepage
-@title Quassia Gnus 0.19 Manual
+@title Quassia Gnus 0.33 Manual
 
 @author by Lars Magne Ingebrigtsen
 @page
@@ -349,7 +352,7 @@ can be gotten by any nefarious means you can think of---@sc{nntp}, local
 spool or your mbox file.  All at the same time, if you want to push your
 luck.
 
-This manual corresponds to Quassia Gnus 0.19.
+This manual corresponds to Quassia Gnus 0.33.
 
 @end ifinfo
 
@@ -686,7 +689,7 @@ zombies later (with @kbd{A z}) and either kill them all off properly
 @item gnus-subscribe-randomly
 @vindex gnus-subscribe-randomly
 Subscribe all new groups in arbitrary order.  This really means that all
-new groups will be added at ``the top'' of the grop buffer.
+new groups will be added at ``the top'' of the group buffer.
 
 @item gnus-subscribe-alphabetically
 @vindex gnus-subscribe-alphabetically
@@ -2912,6 +2915,11 @@ is called after the group buffer is
 generated.  It may be used to modify the buffer in some strange,
 unnatural way.
 
+@item gnus-group-prepared-hook
+@vindex gnus-group-prepare-hook
+is called as the very last thing after the group buffer has been
+generated.  It may be used to move point around, for instance.
+
 @item gnus-permanently-visible-groups
 @vindex gnus-permanently-visible-groups
 Groups matching this regexp will always be listed in the group buffer,
@@ -5037,8 +5045,8 @@ say something like:
 
 @lisp
 (setq gnus-thread-sort-functions
-      '((lambda (t1 t2) 
-          (not (gnus-thread-sort-by-number t2 t1)))
+      '((lambda (t1 t2)
+          (not (gnus-thread-sort-by-number t1 t2)))
         gnus-thread-sort-by-score))
 @end lisp
 
@@ -6404,6 +6412,12 @@ Remove all blank lines at the end of the article
 Do all the three commands above
 (@code{gnus-article-strip-blank-lines}).
 
+@item W E A
+@kindex W E A (Summary)
+@findex gnus-article-strip-all-blank-lines
+Remove all blank lines
+(@code{gnus-article-strip-all-blank-lines}).
+
 @item W E s
 @kindex W E s (Summary)
 @findex gnus-article-strip-leading-space
@@ -6512,6 +6526,13 @@ when the article was sent.
 Display the date in UT (aka. GMT, aka ZULU)
 (@code{gnus-article-date-ut}). 
 
+@item W T i
+@kindex W T i (Summary)
+@findex gnus-article-date-iso8601
+@cindex ISO 8601
+Display the date in international format, aka. ISO 8601
+(@code{gnus-article-date-iso8601}).
+
 @item W T l
 @kindex W T l (Summary)
 @findex gnus-article-date-local
@@ -7105,8 +7126,8 @@ Move the article from one mail group to another
 Copy the article from one group (mail group or not) to a mail group
 (@code{gnus-summary-copy-article}).
 
-@item B C
-@kindex B C (Summary)
+@item B B
+@kindex B B (Summary)
 @cindex crosspost mail
 @findex gnus-summary-crosspost-article
 Crosspost the current article to some other group
@@ -7352,6 +7373,12 @@ to have truncation switched off while reading articles.
 Expand the summary buffer window (@code{gnus-summary-expand-window}).
 If given a prefix, force an @code{article} window configuration. 
 
+@item M-C-e
+@kindex M-C-e (Summary)
+@findex gnus-summary-edit-parameters
+Edit the group parameters (@pxref{Group Parameters}) of the current
+group (@code{gnus-summary-edit-parameters}).
+
 @end table
 
 
@@ -7763,7 +7790,19 @@ other naughty stuff in innocent-looking articles.
 @findex metamail-buffer
 Gnus handles @sc{mime} by pushing the articles through
 @code{gnus-show-mime-method}, which is @code{metamail-buffer} by
-default.  Set @code{gnus-show-mime} to @code{t} if you want to use
+default.  This function calls the external @code{metamail} program to
+actually do the work.  One common problem with this program is that is
+thinks that it can't display 8-bit things in the Emacs buffer.  To tell
+it the truth, put something like the following in your
+@file{.bash_profile} file.  (You do use @code{bash}, don't you?)
+
+@example
+export MM_CHARSET="iso-8859-1"
+@end example
+
+For more information on @code{metamail}, see its manual page.
+
+Set @code{gnus-show-mime} to @code{t} if you want to use
 @sc{mime} all the time.  However, if @code{gnus-strict-mime} is
 non-@code{nil}, the @sc{mime} method will only be used if there are
 @sc{mime} headers in the article.  If you have @code{gnus-show-mime}
@@ -8820,24 +8859,42 @@ present in this hook.
 
 @item nntp-authinfo-function 
 @vindex nntp-authinfo-function 
+@findex nntp-send-authinfo
+@vindex nntp-authinforc-file
 This function will be used to send @samp{AUTHINFO} to the @sc{nntp}
-server.  Available functions include:
+server.  The default function is @code{nntp-send-authinfo}, which looks
+through your @file{~/.authinforc} (or whatever you've set the
+@code{nntp-authinforc-file} variable to) for applicable entries.  If
+none are found, it will prompt you for a login name and a password.  The
+format of the @file{~/.authinforc} file is the same as the @code{ftp}
+@file{~/.netrc} file, which is defined in the @code{ftp} manual page,
+but here are the salient facts:
 
-@table @code
-@item nntp-send-authinfo
-@findex nntp-send-authinfo
-This function will use your current login name as the user name and will
-prompt you for the password.  This is the default.
+@enumerate
+@item
+The file contains one or more line, each of which define one server.
+
+@item
+Each line may contain an arbitrary number of token/value pairs.  The
+valid tokens include @samp{machine}, @samp{login}, and @samp{password}.
 
-@item nntp-send-nosy-authinfo
-@findex nntp-send-nosy-authinfo
-This function will prompt you for both user name and password.
+@end enumerate
 
-@item nntp-send-authinfo-from-file
-@findex nntp-send-authinfo-from-file
-This function will use your current login name as the user name and will
-read the @sc{nntp} password from @file{~/.nntp-authinfo}.
-@end table
+Here's an example file:
+
+@example
+machine news.uio.no login larsi password geheimnis
+machine nntp.ifi.uio.no login larsi
+@end example
+
+The token/value pairs may appear in any order; @samp{machine} doesn't
+have to be first, for instance.
+
+In this example, both login name and password have been supplied for the
+former server, while the latter has only the login name listed, and the
+user will be prompted for the password.
+
+Remember to not leave the @file{~/.authinforc} file world-readable.
 
 @item nntp-server-action-alist 
 @vindex nntp-server-action-alist 
@@ -8964,6 +9021,17 @@ Password to use when logging in.
 A list of strings executed as a command after logging in
 via @code{telnet}.
 
+@item nntp-telnet-shell-prompt
+@vindex nntp-telnet-shell-prompt
+Regexp matching the shell prompt on the remote machine.  The default is
+@samp{bash\\|\$ *\r?$\\|> *\r?}.
+
+@item nntp-open-telnet-envuser
+@vindex nntp-open-telnet-envuser
+If non-@code{nil}, the @code{telnet} session (client and server both)
+will support the @code{ENVIRON} option and not prompt for login name.
+This works for Solaris @code{telnet}, for instance.
+
 @end table
 
 @item nntp-end-of-line
@@ -9513,6 +9581,16 @@ incoming mail into groups.  If you do that, you should set
 @code{nnmail-spool-file} to @code{procmail} to ensure that the mail
 backends never ever try to fetch mail by themselves.
 
+If you have a combined @code{procmail}/POP/mailbox setup, you can do
+something like the following:
+
+@vindex nnmail-use-procmail
+@lisp
+(setq nnmail-use-procmail t)
+(setq nnmail-spool-file
+      '("/usr/spool/mail/my-name" "po:my-name"))
+@end lisp
+
 This also means that you probably don't want to set
 @code{nnmail-split-methods} either, which has some, perhaps, unexpected
 side effects.
@@ -10932,9 +11010,13 @@ If you would like to read @samp{soc.motss} both from a server in Japan
 and a server in Norway, you could use the following as the group regexp:
 
 @example
-"^nntp+some.server.jp:soc.motss$\\|^nntp+some.server.no:soc.motss$"
+"^nntp\\+some\\.server\\.jp:soc\\.motss$\\|^nntp\\+some\\.server\\.no:soc\\.motss$"
 @end example
 
+(Remember, though, that if you're creating the group with @kbd{G m}, you
+shouldn't double the backslashes, and you should leave off the quote
+characters at the beginning and the end of the string.)
+
 This should work kinda smoothly---all articles from both groups should
 end up in this one, and there should be no duplicates.  Threading (and
 the rest) will still work as usual, but there might be problems with the
@@ -11062,6 +11144,7 @@ Of course, to use it as such, you have to learn a few new commands.
 * Outgoing Messages::      What happens when you post/mail something?
 * Agent Variables::        Customizing is fun.
 * Example Setup::          An example @file{.gnus.el} file for offline people.
+* Batching Agents::        How to fetch news from a @code{cron} job.
 @end menu
 
 
@@ -11477,6 +11560,13 @@ messages in the draft group.
 Where the Gnus Agent will store its files.  The default is
 @file{~/News/agent/}.
 
+@item gnus-agent-handle-level
+@vindex gnus-agent-handle-level
+Groups on levels (@pxref{Group Levels}) higher than this variable will
+be ignored by the Agent.  The default is @code{gnus-level-subscribed},
+which means that only subscribed group will be considered by the Agent
+by default.
+
 @item gnus-agent-plugged-hook
 @vindex gnus-agent-plugged-hook
 Hook run when connecting to the network.
@@ -11534,6 +11624,20 @@ with the @kbd{J s} command.  And then read the rest of this manual to
 find out which of the other gazillion things you want to customize.
 
 
+@node Batching Agents
+@subsection Batching Agents
+
+Having the Gnus Agent fetch articles (and post whatever messages you've
+written) is quite easy once you've gotten things set up properly.  The
+following shell script will do everything that is necessary:
+
+@example
+#!/bin/sh
+emacs -batch -l ~/.emacs -f gnus-agent-batch >/dev/null
+@end example
+
+
+
 @node Scoring
 @chapter Scoring
 @cindex scoring
@@ -11985,6 +12089,15 @@ grim reaper.
 @vindex gnus-score-after-write-file-function
 Function called with the name of the score file just written.
 
+@item gnus-score-thread-simplify
+@vindex gnus-score-thread-simplify
+If this variable is non-@code{nil}, article subjects will be simplified
+for subject scoring purposes in the same manner as with
+threading---according to the current value of
+gnus-simplify-subject-functions.  If the scoring entry uses
+@code{substring} or @code{exact} matching, the match will also be
+simplified in this manner.
+
 @end table
 
 
@@ -12183,7 +12296,9 @@ ignored when handling global score files.
 
 @item read-only
 Read-only score files will not be updated or saved.  Global score files
-should feature this atom (@pxref{Global Score Files}).
+should feature this atom (@pxref{Global Score Files}).  (Note:
+@dfn{Global} here really means @dfn{global}; not your personal
+apply-to-all-groups score files.)
 
 @item orphan
 The value of this entry should be a number.  Articles that do not have
@@ -13334,7 +13449,7 @@ default.
 
 @item gnus-expert-user
 @vindex gnus-expert-user
-If this variable is non-@code{nil}, you will never ever be asked any
+If this variable is non-@code{nil}, you will seldom be asked any
 questions by Gnus.  It will simply assume you know what you're doing, no
 matter how strange.
 
@@ -14373,7 +14488,7 @@ over your shoulder as you read news.
 * Picon Requirements::     Don't go further if you aren't using XEmacs.
 * Easy Picons::            Displaying Picons---the easy way.
 * Hard Picons::            The way you should do it.  You'll learn something.
-* Picon Configuration::    Other variables you can trash/tweak/munge/play with.
+* Picon Useless Configuration:: Other variables you can trash/tweak/munge/play with.
 @end menu
 
 
@@ -14398,12 +14513,17 @@ in either monochrome @code{XBM} format or color @code{XPM} and
 @code{GIF} formats.
 @end quotation
 
-For instructions on obtaining and installing the picons databases, point
-your Web browser at
-@file{http://www.cs.indiana.edu/picons/ftp/index.html}.
+@vindex gnus-picons-piconsearch-url
+If you have a permanent connection to the Internet you can use Steve
+Kinzler's Picons Search engine by setting
+@code{gnus-picons-piconsearch-url} to the string
+@file{http://www.cs.indiana.edu/picons/search.html}.
 
 @vindex gnus-picons-database
-Gnus expects picons to be installed into a location pointed to by
+Otherwise you need a local copy of his database.  For instructions on
+obtaining and installing the picons databases, point your Web browser at
+@file{http://www.cs.indiana.edu/picons/ftp/index.html}.  Gnus expects
+picons to be installed into a location pointed to by
 @code{gnus-picons-database}.
 
 
@@ -14414,10 +14534,13 @@ To have Gnus display Picons for you, you must be running XEmacs
 19.13 or greater since all other versions of Emacs aren't yet able to
 display images.
 
-Additionally, you must have @code{xpm} support compiled into XEmacs.
+Additionally, you must have @code{x} support compiled into XEmacs.  To
+display color picons which are much nicer than the black & white one,
+you also need one of @code{xpm} or @code{gif} compiled into XEmacs.
 
 @vindex gnus-picons-convert-x-face
-If you want to display faces from @code{X-Face} headers, you must have
+If you want to display faces from @code{X-Face} headers, you should have
+the @code{xface} support compiled into XEmacs.  Otherwise you must have
 the @code{netpbm} utilities installed, or munge the
 @code{gnus-picons-convert-x-face} variable to use something else.
 
@@ -14435,6 +14558,15 @@ To enable displaying picons, simply put the following line in your
 (add-hook 'gnus-article-display-hook 'gnus-picons-article-display-x-face)
 @end lisp
 
+and make sure @code{gnus-picons-database} points to the directory
+containing the Picons databases.
+
+Alternatively if you want to use the web piconsearch engine add this:
+
+@lisp
+(setq gnus-picons-piconsearch-url "http://www.cs.indiana.edu:800/piconsearch")
+@end lisp
+
 
 @node Hard Picons
 @subsubsection Hard Picons 
@@ -14449,10 +14581,27 @@ Gnus can display picons for you as you enter and leave groups and
 articles.  It knows how to interact with three sections of the picons
 database.  Namely, it can display the picons newsgroup pictures,
 author's face picture(s), and the authors domain.  To enable this
-feature, you need to first decide where to display them.
+feature, you need to select where to get the picons from, and where to
+display them.
 
 @table @code 
 
+@item gnus-picons-database
+@vindex gnus-picons-database
+The location of the picons database.  Should point to a directory
+containing the @file{news}, @file{domains}, @file{users} (and so on)
+subdirectories.  This is only useful if
+@code{gnus-picons-piconsearch-url} is @code{nil}.  Defaults to
+@file{/usr/local/faces/}.
+
+@item gnus-picons-piconsearch-url
+@vindex gnus-picons-piconsearch-url
+The URL for the web picons search engine.  The only currently known
+engine is @file{http://www.cs.indiana.edu:800/piconsearch}.  To
+workaround network delays, icons will be fetched in the background.  If
+this is @code{nil} 'the default), then picons are fetched from local
+database indicated by @code{gnus-picons-database}.
+
 @item gnus-picons-display-where 
 @vindex gnus-picons-display-where 
 Where the picon images should be displayed.  It is @code{picons} by
@@ -14472,9 +14621,9 @@ displayed.
 Note: If you set @code{gnus-use-picons} to @code{t}, it will set up your
 window configuration for you to include the @code{picons} buffer.
 
-Now that you've made that decision, you need to add the following
-functions to the appropriate hooks so these pictures will get
-displayed at the right time.
+Now that you've made those decision, you need to add the following
+functions to the appropriate hooks so these pictures will get displayed
+at the right time.
 
 @vindex gnus-article-display-hook
 @vindex gnus-picons-display-where
@@ -14507,8 +14656,8 @@ for the append flag of @code{add-hook}:
 @end lisp
 
 
-@node Picon Configuration
-@subsubsection Picon Configuration
+@node Picon Useless Configuration
+@subsubsection Picon Useless Configuration
 
 @iftex
 @iflatex
@@ -14521,16 +14670,11 @@ done, where things are located, and other useless stuff you really
 don't need to worry about.
 
 @table @code
-@item gnus-picons-database
-@vindex gnus-picons-database
-The location of the picons database.  Should point to a directory
-containing the @file{news}, @file{domains}, @file{users} (and so on)
-subdirectories.  Defaults to @file{/usr/local/faces/}.
 
-@item gnus-picons-news-directory
-@vindex gnus-picons-news-directory
-Sub-directory of the faces database containing the icons for
-newsgroups.
+@item gnus-picons-news-directories
+@vindex gnus-picons-news-directories
+List of subdirectories to search in @code{gnus-picons-database} for
+newsgroups faces.  @code{("news")} is the default.
 
 @item gnus-picons-user-directories
 @vindex gnus-picons-user-directories
@@ -14541,11 +14685,12 @@ faces.  @code{("local" "users" "usenix" "misc")} is the default.
 @vindex gnus-picons-domain-directories
 List of subdirectories to search in @code{gnus-picons-database} for
 domain name faces.  Defaults to @code{("domains")}.  Some people may
-want to add @samp{unknown} to this list.
+want to add @samp{"unknown"} to this list.
 
 @item gnus-picons-convert-x-face
 @vindex gnus-picons-convert-x-face
-The command to use to convert the @code{X-Face} header to an X bitmap
+If you don't have @code{xface} support builtin XEmacs, this is the
+command to use to convert the @code{X-Face} header to an X bitmap
 (@code{xbm}).  Defaults to @code{(format "@{ echo '/* Width=48,
 Height=48 */'; uncompface; @} | icontopbm | pbmtoxbm > %s"
 gnus-picons-x-face-file-name)}
@@ -14555,17 +14700,49 @@ gnus-picons-x-face-file-name)}
 Names a temporary file to store the @code{X-Face} bitmap in.  Defaults
 to @code{(format "/tmp/picon-xface.%s.xbm" (user-login-name))}.
 
+@item gnus-picons-has-modeline-p
+@vindex gnus-picons-has-modeline-p
+If you have set @code{gnus-picons-display-where} to @code{picons}, your
+XEmacs frame will become really cluttered.  To alleviate this a bit you
+can set @code{gnus-picons-has-modeline-p} to @code{nil}; this will
+remove the mode line from the Picons buffer.  This is only useful if
+@code{gnus-picons-display-where} is @code{picons}.
+
+@item gnus-picons-refresh-before-display
+@vindex gnus-picons-refresh-before-display
+If non-nil, display the article buffer before computing the picons.
+Defaults to @code{nil}.
+
+@item gnus-picons-display-as-address
+@vindex gnus-picons-display-as-address
+If @code{t} display textual email addresses along with pictures.
+Defaults to @code{t}.
+
+@item gnus-picons-file-suffixes
+@vindex gnus-picons-file-suffixes
+Ordered list of suffixes on picon file names to try.  Defaults to
+@code{("xpm" "gif" "xbm")} minus those not builtin your XEmacs.
+
+@item gnus-picons-display-article-move-p
+@vindex gnus-picons-display-article-move-p
+Whether to move point to first empty line when displaying picons.  This
+has only an effect if `gnus-picons-display-where' has value `article'.
+
+@item gnus-picons-clear-cache-on-shutdown
+@vindex gnus-picons-clear-cache-on-shutdown
+Whether to clear the picons cache when exiting gnus.  Gnus caches every
+picons it finds while it is running.  This saves some time in the search
+process but eats some memory.  If this variable is set to @code{nil},
+Gnus will never clear the cache itself; you will have to manually call
+@code{gnus-picons-clear-cache} to clear it.  Otherwise the cache will be
+cleared every time you exit Gnus.  Defaults to @code{t}.
+
 @iftex
 @iflatex
 \margindex{}
 @end iflatex
 @end iftex
 
-@item gnus-picons-buffer
-@vindex gnus-picons-buffer
-The name of the buffer that @code{picons} points to.  Defaults to
-@samp{*Icon Buffer*}.
-
 @end table
 
 @node Smileys
@@ -15120,11 +15297,6 @@ There are no known breaches of this standard.
 @cindex RFC 1036
 There are no known breaches of this standard, either.
 
-@item Good Net-Keeping Seal of Approval
-@cindex Good Net-Keeping Seal of Approval
-Gnus has been through the Seal process and failed.  I think it'll pass
-the next inspection.
-
 @item Son-of-RFC 1036
 @cindex Son-of-RFC 1036
 We do have some breaches to this one.
@@ -15288,6 +15460,7 @@ Also thanks to the following for patches and stuff:
 
 Jari Aalto,
 Adrian Aichner,
+Russ Allbery,
 Peter Arius, 
 Matt Armstrong,
 Marc Auslander,
@@ -15313,6 +15486,7 @@ Ulrik Dickow,
 Dave Disser,
 Joev Dubach,
 Michael Welsh Duggan,
+Dave Edmondson,
 Paul Eggert,
 Enami Tsugutomo, @c Enami
 Michael Ernst,
@@ -15333,6 +15507,7 @@ Raja R. Harinath,
 Hisashige Kenji, @c Hisashige
 Marc Horowitz,
 Gunnar Horrigmo,
+Richard Hoskins,
 Brad Howes,
 François Felix Ingrand,
 Ishikawa Ichiro, @c Ishikawa
@@ -15342,6 +15517,7 @@ Rajappa Iyer,
 Andreas Jaeger,
 Randell Jesup,
 Fred Johansen, 
+Simon Josefsson,
 Greg Klanderman,
 Karl Kleinpaste,
 Peter Skov Knudsen,
@@ -15357,6 +15533,7 @@ Dave Love,
 Tonny Madsen,
 Shlomo Mahlab,
 Nat Makarevitch,
+Istvan Marko,
 David Martin,
 Gordon Matzigkeit,
 Timo Metzemakers,
@@ -15366,6 +15543,7 @@ Morioka Tomohiko, @c Morioka
 Erik Toubro Nielsen,
 Hrvoje Niksic,
 Andy Norman,
+Fred Oberhauser,
 C. R. Oldham,
 Alexandre Oliva,
 Ken Olstad,
@@ -15377,7 +15555,11 @@ Ulrich Pfeifer,
 John McClary Prevost,
 Colin Rafferty,
 Lars Balker Rasmussen,
+Joe Reiss,
+Renaud Rioboo,
+Roland B. Roberts,
 Bart Robinson,
+Christian von Roques,
 Jason Rumney,
 Jay Sachs,
 Dewey M. Sasser,
@@ -15404,9 +15586,11 @@ Chuck Thompson,
 Philippe Troin,
 James Troup,
 Aaron M. Ucko, 
+Aki Vehtari,
 Didier Verna,
 Jan Vroonhof,
 Stefan Waldherr,
+Pete Ware,
 Barry A. Warsaw,
 Christoph Wedler,
 Joe Wells,
@@ -16750,7 +16934,7 @@ Article-mode
                        next-article;
                else 
                        next-group;
-@end example   
+@end example
 
 @item
 My precise need here would have been to limit files to Incoming*.
@@ -17064,9 +17248,6 @@ X characters in the body.
 @item
  handle 480/381 authinfo requests separately.
 
-@item
- when sending authinfo automatically, things hang.
-
 @item
  include the texi/dir file in the distribution.
 
@@ -17076,9 +17257,6 @@ X characters in the body.
 @item
  Move all prompting to the new `M-n' default style.
 
-@item
- have nntp cache the authinfo passwords.
-
 @item
  command to display all dormant articles.
 
@@ -17094,15 +17272,42 @@ to something someone else has said.
 snews://secnews.netscape.com/netscape.communicator.unix 
 
 @item
-When the nntp server hangs up while the user is composing the message,
-when sending the message and the nntp server asks for AUTH, Gnus hangs. 
+One command to edit the original version if an article, and one to edit
+the displayed version.
+
+@item
+@kbd{T v} -- make all process-marked articles the children of the
+current article.
+
+@item
+Switch from initial text to the new default text mechanism.
+
+@item
+How about making it possible to expire local articles?  Will it be
+possible to make various constraints on when an article can be
+expired, e.g. (read), (age > 14 days), or the more interesting (read
+& age > 14 days)?
+
+@item
+New limit command---limit to articles that have a certain string
+in the head or body.
+
+@item
+Allow breaking lengthy NNTP commands.
+
+@item
+gnus-article-highlight-limit, to disable highlighting in big articles. 
+
+@item
+Editing an article should put the article to be edited
+in a special, unique buffer.
+
+@item
+Solve the halting problem.
 
 @c TODO
 @end itemize
 
-And much, much, much more.  There is more to come than has already been
-implemented.  (But that's always true, isn't it?)
-
 @iftex
 
 @page