Revision: miles@gnu.org--gnu-2004/gnus--devo--0--patch-21
[gnus] / todo
1 ;; Also know as the "wish list".  Some are done. For the others, no
2 ;; promise when to be implemented.
3
4 * gnus-topic-kill-region
5   From Colin Marquardt <colin.marquardt@usa.alcatel.com>
6   
7   I noticed that when re-arranging topics, C-k yanks a topic just fine
8   (runs gnus-topic-kill-group).
9
10   However, my habit is to do marking and the yanking the region, so I
11   would run C-w on the marked topic. But C-w runs
12   gnus-group-kill-region and doesn't yank the topic (for groups it
13   works fine).
14
15   So could we have a gnus-topic-kill-region, or a
16   gnus-group-kill-region which handles topics as well?
17
18 * Speed up sorting in summary buffer if there is a limit.
19   
20   Suggested by Daniel Ortmann <ortmann@isl.net>.
21
22 * Investigate the memory usage of Gnus. 
23
24   But it does seem strange that Gnus would use some 15meg for this.  I
25   think that is worth investigating.  I suspect that bugs or bad
26   design are causing waste; they could be in Gnus, or in Emacs. -- RMS
27
28 * Google group digest
29   
30   The result of Google group search return a thread. Is it a digest
31   format?
32
33 * NOV caching.
34   
35   Implement NOV caching with Gnus Agent.
36
37 * Multiple charsets for topic names.
38   
39   [Done]
40
41 * Allow specification of server in Newsgroups header
42   
43   [Kai wrote]
44
45   WIBNI I could put `Newsgroups: nntp+quimby:bla' into a message and
46   Gnus would know to post this message on my server `nntp:quimby' into
47   the group bla?  I think this would be way cool.
48
49   But Gnus would have to rewrite the Newsgroups header before actually
50   sending the posting.
51
52   Thanks for Micha Wiedenmann for this suggestion.
53
54 * Understand mail-user-agent. Maybe gnus-mail-user-agent.
55   
56   [Done]
57
58 * Emphasis delimiters show when `W W c'.
59
60   [Fixed]
61
62 * Parsing of the common list confirmation requests so that Gnus can
63    prepare the response with a single command.  Including LISTSERV
64    periodic ping messages and the like.
65
66 * Parsing of the various List-* headers to enable automatic commands
67    like "send help message," "send unsubscribe message," and the like.
68
69    [done, see gnus-ml.el]
70
71 * Parsing of the subscription notice to stash away details like what
72    address you're subscribed to the list under (and automatically send
73    mail to the list using that address, when you send mail inside the list
74    group), what address to mail to unsubscribe, and the list info message
75    if available.  Hitting the "get FAQ" command inside a mailing list
76    group should display that stashed copy of the info message.
77
78 * Some help in coming up with good split rules for mailing lists, as
79    automated as possible.  Splitting on To and Cc is almost always not
80    what I want, since it can misfile messages and since if I'm cc'd on
81    list mail I want to get both copies, one in my personal mailbox and one
82    in the list mailbox.  I know other people handle it other ways, but I
83    prefer it that way.  Accordingly, some way to semi-automatically
84    generate split rules based on Sender, Mailing-List, Return-Path,
85    X-Loop, and all of the other random headers that often work would be
86    very cool.
87
88 * Support for zipped folders for all backends this makes sense for.
89   Most likely using jka-compr. (It has been suggested that this do
90   work but I think it should be verified for all backends.)
91
92 * Support for RFC2015, PGP-MIME. Probably has to involve the people in
93   the Mailcrypt project.
94
95   [done]
96
97 * Agent (Can someone write some subtopics here? I don't use it myself
98   so I don't know what is lacking.)
99
100 * Support for encrypted folders. Even if the mail arrives unencrypted
101   Gnus should be able to encrypt the *folder* for added safety. This
102   should go for both Gnus' own folders and the folders Gnus reads from
103   (e.g. /var/spool/mail/${USER}). All backends this makes sense for.
104
105   [John Wiegley's article <200011030445.VAA08277@localhost.dynodns.net>,
106    posted on gnu.emacs.gnus does this.
107    Also, gnus-article-encrypt `K E' encrypts the article body.]
108
109 * The stuff on "Newest Features" in the manual should be implemented
110   and the node updated (it maybe is?).
111
112 * Splitting .newsrc.eld so the history is in one file and the
113   configuration is in another. To help those that reads at two
114   locations (e.g. work and home) and want to have the same
115   configuration.
116
117 * gnus-uu-decode should complain if one or more parts of a series post
118   (ie, "part N of X") is missing, and optionally tick what parts are
119   there for decoding in a later session.
120
121 * Additional article marking, and an ability to affect marks placed
122   during e.g. mail acquisition.  I want to be able to notice the
123   subject "fast money" or "web traffic", automatically mark it with a
124   `$', and score it into oblivion.  (But I fear that wanting to change
125   marks with mail-source-* and nnmail-* functions will represent a
126   philosophical conflict with the rest of Gnus' management of article
127   marks.  mail-source-* and nnmail-* currently hack around with files
128   under ~/Mail and leave traces in ~/Mail/active, but don't affect
129   things stored in .newsrc.eld.)
130
131 * A much better interface to nnmail-split-methods.  I don't know how
132   I'd like this done, but I know that the current method of manually
133   hacking regexps is pretty untenable for new users.  My boss, who is
134   tenured faculty at CMU and CEO & CTO at JPRC, and whose research
135   work has involved Lisp for the last 25 years, is trying to implant
136   himself in a Gnus mail environment, and this is a big sticking point
137   even for him.
138
139 * PGP-supported encryption of entire nnml & nnmh groups.  There are
140   people with whom I exchange mail routinely who don't send w/PGP, but
141   I'd really rather that the content not be left lying around
142   unencrypted.  Hook into article acquisition the way jka-compr
143   supposedly does, to auto-decrypt every message read.
144
145   [See Support for encrypted folders.]
146
147 * Baby's First Mail In Gnus.  Some set of functions that the
148   new-to-mail-in-Gnus user can invoke which will query the user
149   appropriately for the basic information required to establish mail
150   handling, leaving the appropriate traces in .gnus.  Perhaps a
151   customize buffer would be appropriate.
152   - Where does your mail come from?
153   - If some server, what is your POP/IMAP protocol identity?
154   - What is your identity when sending mail, as opposed to posting to
155     Usenet?
156   - Here are some basic concepts of mail groups (list a few:
157     personal mail, company-wide mail, mailing lists, garbage dumps,
158     receptacles for outbound copies of what one sends; which ones do
159     you want to instantiate, and what mail should land in each?
160     [/viz./ problem of nnmail-split-methods interface.]
161
162 * Full integration of nnir into Gnus.  Generic hooks for adding new
163   external nnir sources.  I use a couple experimental, in-house tools
164   (JPRC is a research lab, occupied with document analysis and machine
165   learning) and adding new search engines to nnir by hacking the main
166   nnir.el module is rather clunky.
167
168 * Manual ordering of articles in an nnml folder.
169
170   That is, keystrokes to move articles (or whole threads) up or down
171   in the *Summary* buffer relative to the other articles.  The order
172   would be persistent (e.g., across gnus sessions).
173
174   With this ability, an nnml folder would make for a good to-do list.
175
176 * Since many uses Gnus to store to do lists I think it is time for an
177   nntodo. (I know Kai already written one, maybe use that for a start?)
178
179 * nnsql backend, which would allow messages or folders to be imported
180   in a local (My|Postgre|?)SQL RDBMS.
181
182 * "posting profiles" ideally accessible from a popup menu; allowing
183   choice between predefined profiles of
184   from,name,organization,etc. Example: I'm at home, but need to reply
185   to a work mail; i can hit 'R', then use this command to switch to my
186   'work' profile for purposes of this one reply. (This might already
187   be possible with current Gnus, but I don't think so.)
188
189 * Better handling of the mail retrieving / splitting feature:
190   - the variables <backend>-get-new-mail should not exist anymore. Mail
191     retrieving should be a separate matter.
192   - we should be able to split mails to groups AND backends at the same time.
193   - meanwhile, we should still be able to associate certain mail sources with
194     certain backends.
195
196 * A better interface to the agent download scoring rules, like the one
197   for the other scoring rules.
198
199 * Editing of messages in the agents cache.
200
201 * More article marks (like '!' or '?').
202   Maybe user defined marks that can be displayed as any choosen charakter,
203   so one could do things like limiting on, to do whatever one likes with
204   these articles.
205
206 * A possibility to add notes to messages. If thouse could include links
207   to other (stored) messages this would be very practical.
208
209 * A nnfolder like backend with .overview files.
210   This would not only speed up things, but also allow nnir to work on it.
211
212   [done]
213
214 * Allow article editing in groups which do not support it, but
215   emulating it via deleting the old article and entering the new one
216   into the group.  This would be very useful to support `T ^' (say) in
217   nnimap groups.
218
219 * Allow user to specify which kinds of groups should be displayed.
220   For example, I want to display all the groups that are displayed
221   now, plus those which have cached messages in them.  (Gnus does
222   display those with ticked messages but not those with
223   cached-but-unticked ones.)  This would become even more important
224   when we allow labels.
225
226 * Go through the todo list and remove items already done.
227
228 * Create new data type `article identifier' and use that instead of
229   article numbers.  A first implementation could offer something like
230   (num . 4711) but this could be extended.  This would be useful for
231   using servers with *really* large numbers -- there we could have a
232   bignum type.  It might also be useful for the nnweb and nnultimate
233   thingies where article identifiers are not really numbers.
234
235 * Allow use of digests to keep related articles.  Normally, you use
236   groups to group together articles which are thematically related.
237   But sometimes, you have so many themes that this becomes
238   impractical.  WIBNI I could have digests in a group, and there was a
239   way to add a new article to one of the digests in that group?
240
241   Or maybe what I really want is a way to tell Gnus that a specific
242   thread should always be hidden (as in `T h') by default, while most
243   other threads are not hidden by default.  Hm.
244
245 * New backend between nnfolder and nnml: have more than one article
246   per file, but more than one file per group.  With .overview files.
247
248   [done. nnfolder has .overview.  Backward- and forward-compatible
249    between 1.0 and 2.0. (setq nnfolder-nov-is-evil t) disables the
250    feature]
251
252 * .overview files for nnfolder?
253   
254   [done]
255
256 * New backend nnbabylfolder.  There is also nnbabyl which is like
257   nnmbox but uses babyl format, but there is no babyl format
258   equivalent of nnfolder.
259
260 * Make movement commands in summary buffer independent of `move after
261   mark' behavior when marking articles.  Currently, if you don't want
262   `E' to move to the next unread article, you have to set
263   gnus-summary-goto-unread to nil, and then there is no way to move to
264   the next or previous unread article.
265
266   This one has two sub-tasks.  Providing the commands is one thing,
267   finding out useful key bindings for them is another.  I think we
268   could provide the commands first while not changing the behavior of
269   the key bindings; then different people can experiment with
270   different key binding schemes until we find something which suits
271   many people.
272
273 * `Move to next/previous/first article' is a misnomer, since ticked
274   articles are also unread but not moved to by these commands.  Should
275   the terminology be fixed or the documentation, or what?
276
277 * Allow sorting of threads by newest article rather than by root of
278   thread.  Consider the following thread structure:
279
280     root1       Jan 1
281       leaf1     Jan 4
282     root2       Jan 2
283       leaf2     Jan 3
284
285   These two threads are sorted this way because root1 is older than
286   root2.  I want an option to sort them the other way round because
287   leaf1 is newer than leaf2.
288
289 * Improve editing of MIME messages.  I would like to use html-mode to
290   edit the body of a text/html message, and enriched-mode for
291   text/enriched messages, and so on.  This should go for multipart
292   messages as well.  This is probably a hard one since Emacs currently
293   does not allow several major modes per buffer.  But maybe it would
294   be nice to hack Emacs to provide this infrastructure so that Gnus
295   can make use of it?  This would also make it possible to provide
296   nifty commands for editing the headers, for example, rather than
297   relying on commands which do the same thing everywhere.
298   message-x.el is really just a half-assed attempt at doing it, and
299   while it is useful, that's not the way it should be done.
300
301   I think Francisco Potort\e,Al\e(B already did something like this?
302
303 * Provide commands for editing MML tags.  For example, there could be
304   a command mml-add-tag-attribute which prompts me for an attribute
305   name (with completion, from the set filename, type, ...), and then
306   for a value.  (This is like `C-c +' in psgml.)  Or there could be a
307   command which showed me all the attributes in an MML tag and allows
308   me to use TAB to move between them, and then to edit each attribute
309   value.  (This is like `C-c C-a' in psgml.)
310
311 * Have Gnus automagically set group parameters for mailing list
312   groups.  For example, if I have a splitting rule that automatically
313   sorts ding@gnus.org into mail.ding, then Gnus should clue in, set
314   the to-list parameter to 'ding@gnus.org', and set total-expire.
315   (This is probably Hard (TM).  And of course the user should be able
316   to configure what parameters exactly get set.)
317
318 * Along the same lines, automagically detect broken reply-to's.  (But
319   don't auto-detect users legitimately setting a reply-to header that
320   points back to the list.)
321
322 * Make it easier to change parameters on a set of groups,
323   e.g. set/clear gcc-self on process-marked groups.
324
325 * Make it easier/possible to migrate between primary select-methods,
326   if that concept is going to be kept.  Right now I have only one
327   group on my primary server, and I'd kind of like to change from nntp
328   to nnml, but apparently this doesn't work well.
329
330 * Make it possible to refer to uniquely-named groups without
331   select-method prefix (e.g. mail.misc instead of nnml:mail.misc).
332
333 * Allow a user-defined picons directory for personal groups.
334
335 * Annotations as discussed last autumn. Be able to make comments to
336   articles for all bakends. The comments amybe should go into a
337   seperate "backend", like nndraft.
338
339 * Catchup on a topic and all its subtopics. I.e. do "c y" when on a
340   topic line in *Group*.
341
342 * Better/more advanced subject washing in *Summary*, see my
343   js-gnus-simplify-subject-function I posted earlier this winter.
344
345 ;; From Newest Features node. Some are not done.
346
347 * I would like the zombie-page to contain an URL to the source of the
348 latest version of gnus or some explanation on where to find it.
349
350 *  A way to continue editing the latest Message composition.
351
352 *  http://www.sonicnet.com/feature/ari3/
353
354    [N/A]
355
356 *  facep is not declared.
357
358 * Include a section in the manual on why the number of articles isn't
359 the same in the group buffer and on the SPC prompt.
360
361 *  Interacting with rmail fcc isn't easy.
362
363 *       Hypermail:
364       [N/A]<URL:http://www.falch.no/people/pepper/DSSSL-Lite/archives/>
365       [N/A]<URL:http://www.eit.com/software/hypermail/hypermail.html>
366       [N/A]<URL:http://homer.ncm.com/>
367       [N/A]<URL:http://www.yahoo.com/Computers_and_Internet/Internet/World_Wide_Web/HTML_Converters/>
368       http://www.uwsg.indiana.edu/hypermail/linux/kernel/9610/index.html
369       [N/A]<URL:http://union.ncsa.uiuc.edu/HyperNews/get/www/html/converters.html>
370       [N/A]http://www.miranova.com/gnus-list/
371
372    [w3 or nnwarchive?]
373
374 * `^-- ' is made into - in LaTeX.
375
376 *  gnus-kill is much slower than it was in GNUS 4.1.3.
377
378 *  when expunging articles on low score, the sparse nodes keep
379  hanging on?
380
381 *  starting the first time seems to hang Gnus on some systems.  Does
382  NEWGROUPS answer too fast?
383
384 *  nndir doesn't read gzipped files.
385
386 *  FAQ doesn't have an up node?
387
388 *  when moving mail from a procmail spool to the crash-box, the
389  crash-box is only appropriate to one specific group.
390
391 *  `t' `t' makes X-Faces disappear.
392
393 *  nnmh-be-safe means that crossposted articles will be marked as
394  unread.
395
396 *  Orphan score entries don't show on "V t" score trace
397
398 *  when clearing out data, the cache data should also be reset.
399
400 * rewrite gnus-summary-limit-children to be non-recursive to avoid
401 exceeding lisp nesting on huge groups.
402
403 *  expunged articles are counted when computing scores.
404
405 *  implement gnus-batch-brew-soup
406
407 *  ticked articles aren't easy to read in pick mode - `n' and stuff
408  just skips past them.  Read articles are the same.
409
410 *  topics that contain just groups with ticked articles aren't
411  displayed.
412
413 *  nndoc should always allocate unique Message-IDs.
414
415 *  If there are mail groups the first time you use Gnus, Gnus'll
416  make the mail groups killed.
417
418 *  no "no news is good news" when using topics.
419
420 *  when doing crosspost marking, the cache has to be consulted and
421  articles have to be removed.
422
423 *  nnweb should fetch complete articles when they are split into
424  several parts.
425
426 *  scoring on head immediate doesn't work.
427
428 *  finding short score file names takes forever.
429
430 *  canceling articles in foreign groups.
431
432 *  nntp-open-rlogin no longer works.
433
434 *  C-u C-x C-s (Summary) switches to the group buffer.
435
436 *  move nnmail-split-history out to the backends.
437
438 *  nnweb doesn't work properly.
439
440 *  using a virtual server name as `gnus-select-method' doesn't work?
441
442 *  when killing/yanking a group from one topic to another in a
443  slave, the master will yank it first to one topic and then add it
444  to another.  Perhaps.
445
446 *  warn user about `=' redirection of a group in the active file?
447
448 *  take over the XEmacs menubar and offer a toggle between the XEmacs
449  bar and the Gnus bar.
450
451 *       push active file and NOV file parsing down into C code.
452       `(canonize-message-id id)'
453       `(mail-parent-message-id references n)'
454       `(parse-news-nov-line &optional dependency-hashtb)'
455       `(parse-news-nov-region beg end &optional dependency-hashtb fullp)'
456       `(parse-news-active-region beg end hashtb)'
457
458 *  nnml .overview directory with splits.
459
460 *  asynchronous cache
461
462 *  postponed commands.
463
464 *  the selected article show have its Subject displayed in its
465  summary line.
466
467 *  when entering groups, get the real number of unread articles from
468  the server?
469
470 *  sort after gathering threads - make false roots have the headers
471  of the oldest orphan with a 0 article number?
472
473 *  nndoc groups should inherit the score files of their parents?
474  Also inherit copy prompts and save files.
475
476 *  command to start up Gnus (if not running) and enter a mail mode
477  buffer.
478
479 *  allow editing the group description from the group buffer for
480  backends that support that.
481
482 * gnus-hide,show-all-topics
483
484 *  groups and sub-topics should be allowed to mingle inside each
485  topic, and not just list all subtopics at the end.
486
487 *  a command to remove all read articles that are not needed to
488  connect threads - `gnus-summary-limit-to-sparse-unread'?
489
490 *  a variable to turn off limiting/cutting of threads in the tree
491  buffer.
492
493 *  a variable to limit how many files are uudecoded.
494
495 *  add zombie groups to a special "New Groups" topic.
496
497 *  server mode command: close/open all connections
498
499 *  put a file date in gnus-score-alist and check whether the file
500  has been changed before using it.
501
502 *  on exit from a digest group, go to the next article in the parent
503  group.
504
505 *  hide (sub)threads with low score.
506
507 *  when expiring, remove all marks from expired articles.
508
509 *  gnus-summary-limit-to-body
510
511 *  a regexp alist that says what level groups are to be subscribed
512  on.  Eg. - `(("nnml:" . 1))'.
513
514 *  easier interface to nnkiboze to create ephemeral groups that
515  contain groups that match a regexp.
516
517 *  allow newlines in <URL:> urls, but remove them before using the
518  URL.
519
520 *  If there is no From line, the mail backends should fudge one from
521  the "From " line.
522
523 *  fuzzy simplifying should strip all non-alpha-numerical info from
524  subject lines.
525
526 *  gnus-soup-brew-soup-with-high-scores.
527
528 *  nntp-ping-before-connect
529
530 *  command to check whether NOV is evil.  "list overview.fmt".
531
532 *  when entering a group, Gnus should look through the score files
533  very early for `local' atoms and set those local variables.
534
535 *  message annotations.
536
537 *  topics are always yanked before groups, and that's not good.
538
539 *  (set-extent-property extent 'help-echo "String to display in
540  minibuf") to display help in the minibuffer on buttons under
541  XEmacs.
542
543 *  allow group line format spec to say how many articles there are
544  in the cache.
545
546 *  AUTHINFO GENERIC
547
548 *  `run-with-idle-timer' in gnus-demon.
549
550 *  stop using invisible text properties and start using overlays
551  instead
552
553 *  C-c C-f C-e to add an Expires header.
554
555 *  go from one group to the next; everything is expunged; go to the
556  next group instead of going to the group buffer.
557
558 *  gnus-renumber-cache - to renumber the cache using "low" numbers.
559
560 *  record topic changes in the dribble buffer.
561
562 *  `nnfolder-generate-active-file' should look at the folders it
563  finds and generate proper active ranges.
564
565 *  nneething-look-in-files-for-article-heads variable to control
566  whether nneething should sniff all files in the directories.
567
568 *  gnus-fetch-article - start Gnus, enter group, display article
569
570 *  gnus-dont-move-articles-to-same-group variable when respooling.
571
572 *  when messages are crossposted between several auto-expirable
573  groups, articles aren't properly marked as expirable.
574
575 *  nneething should allow deletion/moving.
576
577 *  TAB on the last button should go to the first button.
578
579 *  if the car of an element in `mail-split-methods' is a function,
580  and the function returns non-nil, use that as the name of the
581  group(s) to save mail in.
582
583 *  command for listing all score files that have been applied.
584
585 *  a command in the article buffer to return to `summary' config.
586
587 *  `gnus-always-post-using-current-server' - variable to override
588  `C-c C-c' when posting.
589
590 *  nnmail-group-spool-alist - says where each group should use as a
591  spool file.
592
593 *  when an article is crossposted to an auto-expirable group, the
594  article should be marker as expirable.
595
596 *  article mode command/menu for "send region as URL to browser".
597
598 *  on errors, jump to info nodes that explain the error.  For
599  instance, on invalid From headers, or on error messages from the
600  nntp server.
601
602 *  when gathering threads, make the article that has no "Re: " the
603  parent.  Also consult Date headers.
604
605 *  a token in splits to call shrink-window-if-larger-than-buffer
606
607 *  `1 0 A M' to do matches on the active hashtb.
608
609 *  duplicates - command to remove Gnus-Warning header, use the read
610  Message-ID, delete the "original".
611
612 *  when replying to several messages at once, put the "other"
613  message-ids into a See-Also header.
614
615 *  support setext: URL:http://www.bsdi.com/setext/
616
617 *  support ProleText:
618  <URL:http://proletext.clari.net/prole/proletext.html>
619
620 *  when browsing a foreign server, the groups that are already
621  subscribed should be listed as such and not as "K".
622
623  [done]
624
625 *  generate font names dynamically.
626
627 *  score file mode auto-alist.
628
629 *  allow nndoc to change/add/delete things from documents.  Implement
630  methods for each format for adding an article to the document.
631
632 *  `gnus-fetch-old-headers' `all' value to incorporate absolutely
633  all headers there is.
634
635 *  function like `|', but concatenate all marked articles and pipe
636  them to the process.
637
638 *  cache the list of killed (or active) groups in a separate file.
639  Update the file whenever we read the active file or the list of
640  killed groups in the .eld file reaches a certain length.
641
642 *  function for starting to edit a file to put into the current mail
643  group.
644
645 *  score-find-trace should display the total score of the article.
646
647 *  "ghettozie" - score on Xref header and nix it out after using it
648  to avoid marking as read in other groups it has been crossposted
649  to.
650
651 *  look at procmail splitting.  The backends should create the
652  groups automatically if a spool file exists for that group.
653
654 *  function for backends to register themselves with Gnus.
655
656 *  when replying to several process-marked articles, have all the
657  From end up in Cc headers?  Variable to toggle.
658
659 *  command to delete a crossposted mail article from all groups it
660  has been mailed to.
661
662 *  `B c' and `B m' should be crosspost aware.
663
664 *  hide-pgp should also hide PGP public key blocks.
665
666 *  Command in the group buffer to respool process-marked groups.
667
668 *  `gnus-summary-find-matching' should accept pseudo-"headers" like
669  "body", "head" and "all"
670
671 *  When buttifying <URL: > things, all white space (including
672  newlines) should be ignored.
673
674 *  Process-marking all groups in a topic should process-mark groups
675  in subtopics as well.
676
677 *  Add non-native groups to the list of killed groups when killing
678  them.
679
680 *  nntp-suggest-kewl-config to probe the nntp server and suggest
681  variable settings.
682
683 *  add edit and forward secondary marks.
684
685 *  nnml shouldn't visit its .overview files.
686
687 *  allow customizing sorting within gathered threads.
688
689 *  `B q' shouldn't select the current article.
690
691 *  nnmbox should support a newsgroups file for descriptions.
692
693 *  allow fetching mail from several pop servers.
694
695   [done]
696
697 *  Be able to specify whether the saving commands save the original
698  or the formatted article.
699
700 *  a command to reparent with the child process-marked (cf. `T ^'.).
701
702 *  I think the possibility to send a password with nntp-open-rlogin
703  should be a feature in Red Gnus.
704
705 *  The `Z n' command should be possible to execute from a mouse
706  click.
707
708 *  more limiting functions - date, etc.
709
710 *  be able to limit on a random header; on body; using reverse
711  matches.
712
713 *  a group parameter (`absofucking-total-expiry') that will make
714  Gnus expire even unread articles.
715
716 *  a command to print the article buffer as postscript.
717
718 *  variable to disable password fetching when opening by
719  nntp-open-telnet.
720
721 *  manual: more example servers - nntp with rlogin, telnet
722
723 *  checking for bogus groups should clean topic alists as well.
724
725 *  canceling articles in foreign groups.
726
727 *  article number in folded topics isn't properly updated by Xref
728  handling.
729
730 *  Movement in the group buffer to the next unread group should go
731  to the next closed topic with unread messages if no group can be
732  found.
733
734 *  Extensive info pages generated on the fly with help everywhere -
735  in the "*Gnus edit*" buffers, for instance.
736
737 *  Topic movement commands - like thread movement.  Up, down,
738  forward, next.
739
740 *  a way to tick/mark as read Gcc'd articles.
741
742    [done, (setq gnus-inews-mark-gcc-as-read t)]
743
744 *  a way to say that all groups within a specific topic comes from a
745  particular server?  Hm.
746
747 *  `gnus-article-fill-if-long-lines' - a function to fill the
748  article buffer if there are any looong lines there.
749
750 *  `T h' should jump to the parent topic and fold it.
751
752 *  a command to create an ephemeral nndoc group out of a file, and
753  then splitting it/moving it to some other group/backend.
754
755 *  a group parameter for nnkiboze groups that says that all kibozed
756  articles should be entered into the cache.
757
758 *  It should also probably be possible to delimit what
759  `gnus-jog-cache' does - for instance, work on just some groups, or
760  on some levels, and entering just articles that have a score
761  higher than a certain number.
762
763 *  nnfolder should append to the folder instead of re-writing the
764  entire folder to disk when accepting new messages.
765
766 *  allow all backends to do the proper thing with .gz files.
767
768 *  a backend for reading collections of babyl files nnbabylfolder?
769
770 *  a command for making the native groups into foreign groups.
771
772 *  server mode command for clearing read marks from all groups from
773  a server.
774
775 *  when following up multiple articles, include all To, Cc, etc
776  headers from all articles.
777
778 *  a command for deciding what the total score of the current thread
779  is.  Also a way to highlight based on this.
780
781 *  command to show and edit group scores
782
783 *  a gnus-tree-minimize-horizontal to minimize tree buffers
784  horizontally.
785
786 *  command to generate nnml overview file for one group.
787
788 *  `C-u C-u a' - prompt for many crossposted groups.
789
790 *  keep track of which mail groups have received new articles (in
791  this session).  Be able to generate a report and perhaps do some
792  marking in the group buffer.
793
794 *  gnus-build-sparse-threads to a number - build only sparse threads
795  that are of that length.
796
797 *  have nnmh respect mh's unseen sequence in .mh_profile.
798
799 *  cache the newsgroups descriptions locally.
800
801 *  asynchronous posting under nntp.
802
803 *  be able to control word adaptive scoring from the score files.
804
805 *  a variable to make `C-c C-c' post using the "current" select
806  method.
807
808 *  `limit-exclude-low-scored-articles'.
809
810 *  if `gnus-summary-show-thread' is a number, hide threads that have
811  a score lower than this number.
812
813 *  split newsgroup subscription variable up into "order" and
814  "method".
815
816 *  buttonize ange-ftp file names.
817
818 *  a command to make a duplicate copy of the current article so that
819  each copy can be edited separately.
820
821 *  nnweb should allow fetching from the local nntp server.
822
823 *  record the sorting done in the summary buffer so that it can be
824  repeated when limiting/regenerating the buffer.
825
826 *  nnml-generate-nov-databses should generate for all nnml servers.
827
828 *  when the user does commands in the group buffer, check the
829  modification time of the .newsrc.eld file and use
830  ask-user-about-supersession-threat.  Also warn when trying to save
831  .newsrc.eld and it has changed.
832
833 *  M-g on a topic will display all groups with 0 articles in the
834  topic.
835
836 *  command to remove all topic stuff.
837
838 *  allow exploding incoming digests when reading incoming mail and
839  splitting the resulting digests.
840
841 *  nnsoup shouldn't set the `message-' variables.
842
843 *  command to nix out all nnoo state information.
844
845 *  nnmail-process-alist that calls functions if group names matches
846  an alist - before saving.
847
848 *  use buffer-invisibility-spec everywhere for hiding text.
849
850 *  variable to activate each group before entering them to get the
851  (new) number of articles.  `gnus-activate-before-entering'.
852
853 *  command to fetch a Message-ID from any buffer, even starting Gnus
854  first if necessary.
855
856 *  when posting and checking whether a group exists or not, just ask
857  the nntp server instead of relying on the active hashtb.
858
859 *  buttonize the output of `C-c C-a' in an apropos-like way.
860
861 *  `G p' should understand process/prefix, and allow editing of
862  several groups at once.
863
864 *  command to create an ephemeral nnvirtual group that matches some
865  regexp(s).
866
867 *  nndoc should understand "Content-Type: message/rfc822" forwarded
868  messages.
869
870  [done]
871
872 *  it should be possible to score "thread" on the From header.
873
874 *  hitting RET on a "gnus-uu-archive" pseudo article should unpack
875  it.
876
877 *  `B i' should display the article at once in the summary buffer.
878
879 *  remove the "*" mark at once when unticking an article.
880
881 *  `M-s' should highlight the matching text.
882
883 *  when checking for duplicated mails, use Resent-Message-ID if
884  present.
885
886 *  killing and yanking groups in topics should be better.  If
887  killing one copy of a group that exists in multiple topics, only
888  that copy should be removed.  Yanking should insert the copy, and
889  yanking topics should be possible to be interspersed with the
890  other yankings.
891
892 *  command for enter a group just to read the cached articles.  A
893  way to say "ignore the nntp connection; just read from the cache."
894
895 *  `X u' should decode base64 articles.
896
897    [`X m' does so.]
898
899 *  a way to hide all "inner" cited text, leaving just the most
900  recently cited text.
901
902 *  nnvirtual should be asynchronous.
903
904 *  after editing an article, gnus-original-article-buffer should be
905  invalidated.
906
907 *  there should probably be a way to make Gnus not connect to the
908  server and just read the articles in the server
909
910 *  allow a `set-default' (or something) to change the default value
911  of nnoo variables.
912
913 *  a command to import group infos from a .newsrc.eld file.
914
915 *  groups from secondary servers have the entire select method
916  listed in each group info.
917
918 *  a command for just switching from the summary buffer to the group
919  buffer.
920
921 *  a way to specify that some incoming mail washing functions should
922  only be applied to some groups.
923
924 *  Message `C-f C-t' should ask the user whether to heed
925  mail-copies-to: never.
926
927 *  new group parameter - `post-to-server' that says to post using
928  the current server.  Also a variable to do the same.
929
930 *  the slave dribble files should auto-save to the slave file names.
931
932 *  a group parameter that says what articles to display on group
933  entry, based on article marks.
934
935 *  a way to visually distinguish slave Gnusae from masters.  (Whip
936  instead of normal logo?)
937
938 *  Use DJ Bernstein "From " quoting/dequoting, where applicable.
939
940 *  Why is hide-citation-maybe and hide-citation different?  Also
941  clear up info.
942
943 *  group user-defined meta-parameters.
944
945  From: John Griffith <griffith@sfs.nphil.uni-tuebingen.de>
946
947 *  I like the option for trying to retrieve the FAQ for a group and
948  I was thinking it would be great if for those newsgroups that had
949  archives you could also try to read the archive for that group.
950  Part of the problem is that archives are spread all over the net,
951  unlike FAQs.  What would be best I suppose is to find the one
952  closest to your site.
953
954  In any case, there is a list of general news group archives at
955  ftp://ftp.neosoft.com/pub/users/claird/news.lists/newsgroup_archives.html
956
957 *      From: Jason L Tibbitts III <tibbs@hpc.uh.edu>
958       (add-hook 'gnus-select-group-hook
959         (lambda ()
960           (gnus-group-add-parameter group
961              (cons 'gnus-group-date-last-entered (list (current-time-string))))))
962
963       (defun gnus-user-format-function-d (headers)
964         "Return the date the group was last read."
965         (cond ((car (gnus-group-get-parameter gnus-tmp-group 'gnus-group-date-last-entered)))
966             (t "")))
967
968 *  tanken var at n\e,Ae\e(Br du bruker `gnus-startup-file' som prefix (FOO)
969  til \e,Ae\e(B lete opp en fil FOO-SERVER, FOO-SERVER.el, FOO-SERVER.eld,
970  kan du la den v\e,Af\e(Bre en liste hvor du bruker hvert element i listen
971  som FOO, istedet.  da kunne man hatt forskjellige serveres
972  startup-filer forskjellige steder.
973
974 * LMI> Well, nnbabyl could alter the group info to heed labels like
975  LMI> answered and read, I guess.
976
977  It could also keep them updated (the same for the Status: header of
978  unix mbox files).
979
980  They could be used like this:
981
982       `M l <name> RET' add label <name> to current message.
983       `M u <name> RET' remove label <name> from current message.
984       `/ l <expr> RET' limit summary buffer according to <expr>.
985
986       <expr> would be a boolean expression on the labels, e.g.
987
988       `/ l bug & !fixed RET'
989
990  would show all the messages which are labeled `bug' but not labeled
991  `fixed'.
992
993  One could also imagine the labels being used for highlighting, or
994  affect the summary line format.
995
996 * Sender: abraham@dina.kvl.dk
997
998  I'd like a gnus-find-file which work like find file, except that it
999  would recognize things that looks like messages or folders:
1000
1001  - If it is a directory containing numbered files, create an nndir
1002  summary buffer.
1003
1004  - For other directories, create a nneething summary buffer.
1005
1006  - For files matching "\\`From ", create a nndoc/mbox summary.
1007
1008  - For files matching "\\`BABYL OPTIONS:", create a nndoc/baby
1009  summary.
1010
1011  - For files matching "\\`[^ \t\n]+:", create an *Article* buffer.
1012
1013  - For other files, just find them normally.
1014
1015  I'd like `nneething' to use this function, so it would work on a
1016  directory potentially containing mboxes or babyl files.
1017
1018 * Please send a mail to bwarsaw@cnri.reston.va.us (Barry A. Warsaw)
1019  and tell him what you are doing.
1020
1021 * Currently, I get prompted:
1022
1023  decend into sci?  - type y decend into sci.something ?  - type n
1024  decend into ucd?
1025
1026  The problem above is that since there is really only one
1027  subsection of science, shouldn't it prompt you for only descending
1028  sci.something?  If there was a sci.somethingelse group or section,
1029  then it should prompt for sci? first the sci.something? then
1030  sci.somethingelse?...
1031
1032 * Ja, det burde v\e,Af\e(Bre en m\e,Ae\e(Bte \e,Ae\e(B si slikt.  Kanskje en ny variabel?
1033  `gnus-use-few-score-files'?  S\e,Ae\e(B kunne score-regler legges til den
1034  "mest" lokale score-fila.  F. eks. ville no-gruppene betjenes av
1035  "no.all.SCORE", osv.
1036
1037 * What i want is for Gnus to treat any sequence or combination of
1038  the following as a single spoiler warning and hide it all,
1039  replacing it with a "Next Page" button:
1040
1041  ^L's
1042
1043  more than n blank lines
1044
1045  more than m identical lines (which should be replaced with button
1046  to show them)
1047
1048  any whitespace surrounding any of the above
1049
1050 * Well, we could allow a new value to `gnus-thread-ignore-subject' -
1051  `spaces', or something.  (We could even default to that.)  And then
1052  subjects that differ in white space only could be considered the
1053  "same" subject for threading purposes.
1054
1055 * Modes to preprocess the contents (e.g. jka-compr) use the second
1056  form "(REGEXP FUNCTION NON-NIL)" while ordinary modes (e.g. tex)
1057  use the first form "(REGEXP . FUNCTION)", so you could use it to
1058  distinguish between those two types of modes. (auto-modes-alist,
1059  insert-file-contents-literally.)
1060
1061 *  Under XEmacs - do funny article marks: tick - thumb tack killed -
1062  skull soup - bowl of soup score below - dim light bulb score over
1063  - bright light bulb
1064
1065 * Yes. I think the algorithm is as follows:
1066
1067       Group-mode
1068
1069          show-list-of-articles-in-group
1070               if (key-pressed == SPACE)
1071                       if (no-more-articles-in-group-to-select)
1072                               if (articles-selected)
1073                                       start-reading-selected-articles;
1074                               junk-unread-articles;
1075                               next-group;
1076                        else
1077                               show-next-page;
1078
1079                else if (key-pressed = '.')
1080                       if (consolidated-menus)         # same as hide-thread in Gnus
1081                               select-thread-under-cursor;
1082                       else
1083                               select-article-under-cursor;
1084
1085
1086       Article-mode
1087               if (key-pressed == SPACE)
1088                       if (more-pages-in-article)
1089                               next-page;
1090                       else if (more-selected-articles-to-read)
1091                               next-article;
1092                       else
1093                               next-group;
1094
1095 * My precise need here would have been to limit files to Incoming*.
1096  One could think of some `nneething-only-files' variable, but I
1097  guess it would have been unacceptable if one was using many
1098  unrelated such nneething groups.
1099
1100  A more useful approach would be to, in response to the `G D'
1101  prompt, be allowed to say something like: `~/.mail/Incoming*',
1102  somewhat limiting the top-level directory only (in case
1103  directories would be matched by the wildcard expression).
1104
1105 * It would be nice if it also handled
1106
1107  <URL:news://sunsite.auc.dk/>
1108
1109  which should correspond to `B nntp RET sunsite.auc.dk' in *Group*.
1110
1111  [done]
1112
1113 *    Take a look at w3-menu.el in the Emacs-W3 distribution - this
1114  works out really well.  Each menu is 'named' by a symbol that
1115  would be on a gnus-*-menus (where * would be whatever, but at
1116  least group, summary, and article versions) variable.
1117
1118  So for gnus-summary-menus, I would set to '(sort mark dispose ...)
1119
1120  A value of '1' would just put _all_ the menus in a single 'GNUS'
1121  menu in the main menubar.  This approach works really well for
1122  Emacs-W3 and VM.
1123
1124 *  nndoc should take care to create unique Message-IDs for all its
1125  articles.
1126
1127 *  gnus-score-followup-article only works when you have a summary
1128  buffer active.  Make it work when posting from the group buffer as
1129  well.  (message-sent-hook).
1130
1131 *  rewrite gnus-demon to use run-with-idle-timers.
1132
1133 *  * Enhancements to Gnus:
1134
1135  Add two commands:
1136
1137  * gnus-servers (gnus-start-server-buffer?)-enters Gnus and goes
1138  straight to the server buffer, without opening any connections to
1139     servers first.
1140
1141  * gnus-server-read-server-newsrc-produces a buffer very similar to
1142     the group buffer, but with only groups from that server listed;
1143     quitting this buffer returns to the server buffer.
1144
1145 *  add a command to check the integrity of an nnfolder folder - go
1146  through the article numbers and see that there are no duplicates,
1147  and stuff.
1148
1149 *  `unsmileyfy-buffer' to undo smileification.
1150
1151 *  a command to give all relevant info on an article, including all
1152  secondary marks.
1153
1154 *  when doing `-request-accept-article', the backends should do the
1155  nnmail duplicate checking.
1156
1157 *  allow `message-signature-file' to be a function to return the
1158  value of the signature file.
1159
1160 *  In addition, I would love it if I could configure message-tab so
1161  that it could call `bbdb-complete-name' in other headers.  So,
1162  some sort of interface like
1163
1164  (setq message-tab-alist       '((message-header-regexp
1165  message-expand-group)         ("^\\(To\\|[cC]c\\|[bB]cc\\)"
1166  bbdb-complete-name)))
1167
1168  then you could run the relevant function to complete the
1169  information in the header
1170
1171 *  cache the newsgroups file locally to avoid reloading it all the
1172  time.
1173
1174 *  a command to import a buffer into a group.
1175
1176 *  nnweb should allow fetching by Message-ID from servers.
1177
1178 *  point in the article buffer doesn't always go to the beginning of
1179  the buffer when selecting new articles.
1180
1181 *  a command to process mark all unread articles.
1182
1183 *  `gnus-gather-threads-by-references-and-subject' - first do
1184  gathering by references, and then go through the dummy roots and
1185  do more gathering by subject.
1186
1187 *  gnus-uu-mark-in-numerical-order - process mark articles in
1188  article numerical order.
1189
1190 *  (gnus-thread-total-score  (gnus-id-to-thread (mail-header-id
1191  (gnus-summary-article-header)))) bind to a key.
1192
1193 *  sorting by score is wrong when using sparse threads.
1194
1195 *  a command to fetch an arbitrary article - without having to be in
1196  the summary buffer.
1197
1198 *  a new nncvs backend.  Each group would show an article, using
1199  version branches as threading, checkin date as the date, etc.
1200
1201 *  http://www.dejanews.com/forms/dnsetfilter_exp.html ?  This filter
1202  allows one to construct advance queries on the Dejanews database
1203  such as specifying start and end dates, subject, author, and/or
1204  newsgroup name.
1205
1206 *  new Date header scoring type - older, newer
1207
1208 *  use the summary toolbar in the article buffer.
1209
1210 *  a command to fetch all articles that are less than X days old.
1211
1212 *  in pick mode, `q' should save the list of selected articles in the
1213  group info.  The next time the group is selected, these articles
1214  will automatically get the process mark.
1215
1216 *  Isn't it possible to (also?) allow M-^ to automatically try the
1217  default server if it fails on the current server?  (controlled by a
1218  user variable, (nil, t, 'ask)).
1219
1220 *  make it possible to cancel articles using the select method for
1221  the current group.
1222
1223 *  `gnus-summary-select-article-on-entry' or something.  It'll
1224  default to t and will select whatever article decided by
1225  `gnus-auto-select-first'.
1226
1227 *  a new variable to control which selection commands should be
1228  unselecting.  `first', `best', `next', `prev', `next-unread',
1229  `prev-unread' are candidates.
1230
1231 *  be able to select groups that have no articles in them to be able
1232  to post in them (using the current select method).
1233
1234 *  be able to post via DejaNews.
1235
1236 *  `x' should retain any sortings that have been performed.
1237
1238 *  allow the user to specify the precedence of the secondary marks.
1239  Also allow them to be displayed separately.
1240
1241 *  gnus-summary-save-in-pipe should concatenate the results from the
1242  processes when doing a process marked pipe.
1243
1244 *  a new match type, like Followup, but which adds Thread matches on
1245  all articles that match a certain From header.
1246
1247 *  a function that can be read from kill-emacs-query-functions to
1248  offer saving living summary buffers.
1249
1250 *  a function for selecting a particular group which will contain
1251  the articles listed in a list of article numbers/id's.
1252
1253 *  a battery of character translation functions to translate common
1254  Mac, MS (etc) characters into ISO 8859-1.
1255
1256       (defun article-fix-m$word ()
1257         "Fix M$Word smartquotes in an article."
1258         (interactive)
1259         (save-excursion
1260           (let ((buffer-read-only nil))
1261             (goto-char (point-min))
1262             (while (search-forward "\221" nil t)
1263               (replace-match "`" t t))
1264             (goto-char (point-min))
1265             (while (search-forward "\222" nil t)
1266               (replace-match "'" t t))
1267             (goto-char (point-min))
1268             (while (search-forward "\223" nil t)
1269               (replace-match "\"" t t))
1270             (goto-char (point-min))
1271             (while (search-forward "\224" nil t)
1272               (replace-match "\"" t t)))))
1273
1274   [done]
1275
1276 *       (add-hook 'gnus-exit-query-functions
1277       '(lambda ()
1278          (if (and (file-exists-p nnmail-spool-file)
1279                   (> (nnheader-file-size nnmail-spool-file) 0))
1280              (yes-or-no-p "New mail has arrived.  Quit Gnus anyways? ")
1281              (y-or-n-p "Are you sure you want to quit Gnus? "))))
1282
1283 *  allow message-default-headers to be a function.
1284
1285 *  new Date score match types - < > = (etc) that take floating point
1286  numbers and match on the age of the article.
1287
1288 *      >  > > If so, I've got one gripe: It seems that when I fire up gnus 5.2.25
1289       >  > > under xemacs-19.14, it's creating a new frame, but is erasing the
1290       >  > > buffer in the frame that it was called from =:-O
1291       >
1292       >  > Hm.  How do you start up Gnus?  From the toolbar or with
1293       >  > `M-x gnus-other-frame'?
1294       >
1295       >    I normally start it up from the toolbar; at
1296       > least that's the way I've caught it doing the
1297       > deed before.
1298
1299 *  all commands that react to the process mark should push the
1300  current process mark set onto the stack.
1301
1302 *  gnus-article-hide-pgp Selv ville jeg nok ha valgt \e,Ae\e(B slette den
1303  dersom teksten matcher
1304       "\\(This\s+\\)?[^ ]+ has been automatically signed by"
1305  og det er maks hundre tegn mellom match-end og ---linja.  Men -det-
1306  er min type heuristikk og langt fra alles.
1307
1308 *  `gnus-subscribe-sorted' - insert new groups where they would have
1309  been sorted to if `gnus-group-sort-function' were run.
1310
1311 *  gnus-(group,summary)-highlight should respect any `face' text
1312  props set on the lines.
1313
1314 *  use run-with-idle-timer for gnus-demon instead of the home-brewed
1315  stuff for better reliability.
1316
1317 *  add a way to select which NoCeM type to apply - spam, troll, etc.
1318
1319 *  nndraft-request-group should tally auto-save files.
1320
1321 *  implement nntp-retry-on-break and nntp-command-timeout.
1322
1323 *  gnus-article-highlight-limit that says when not to highlight
1324  (long) articles.
1325
1326 *  (nnoo-set SERVER VARIABLE VALUE)
1327
1328    [done]
1329
1330 *  nn*-spool-methods
1331
1332 *  interrupitng agent fetching of articles should save articles.
1333
1334 *  command to open a digest group, and copy all the articles there
1335  to the current group.
1336
1337 *  a variable to disable article body highlights if there's more than
1338  X characters in the body.
1339
1340 *  handle 480/381 authinfo requests separately.
1341
1342 *  include the texi/dir file in the distribution.
1343
1344 *  format spec to "tab" to a position.
1345
1346 *  Move all prompting to the new `M-n' default style.
1347
1348 *  command to display all dormant articles.
1349
1350 *  gnus-auto-select-next makeover - list of things it should do.
1351
1352 *  a score match type that adds scores matching on From if From has
1353  replied to something someone else has said.
1354
1355 *  Read Netscape discussion groups:
1356  snews://secnews.netscape.com/netscape.communicator.unix
1357
1358 * One command to edit the original version if an article, and one to
1359  edit the displayed version.
1360
1361 * `T v' - make all process-marked articles the children of the
1362  current article.
1363
1364 * Switch from initial text to the new default text mechanism.
1365
1366 * How about making it possible to expire local articles?  Will it be
1367  possible to make various constraints on when an article can be
1368  expired, e.g. (read), (age > 14 days), or the more interesting
1369  (read & age > 14 days)?
1370
1371 * New limit command--limit to articles that have a certain string in
1372  the head or body.
1373
1374 * Allow breaking lengthy NNTP commands.
1375
1376 * gnus-article-highlight-limit, to disable highlighting in big
1377  articles.
1378
1379 * Editing an article should put the article to be edited in a
1380  special, unique buffer.
1381
1382 * A command to send a mail to the admin-address group param.
1383
1384 * A Date scoring type that will match if the article is less than a
1385  certain number of days old.
1386
1387 * New spec: %~(tab 56) to put point on column 56
1388
1389 * Allow Gnus Agent scoring to use normal score files.
1390
1391 * Rething the Agent active file thing.  `M-g' doesn't update the
1392  active file, for instance.
1393
1394 * With dummy roots, `^' and then selecing the first article in any
1395  other dummy thread will make Gnus highlight the dummy root instead
1396  of the first article.
1397
1398 * Propagate all group properties (marks, article numbers, etc) up to
1399  the topics for displaying.
1400
1401 * `n' in the group buffer with topics should go to the next group
1402  with unread articles, even if that group is hidden in a topic.
1403
1404 * gnus-posting-styles doesn't work in drafts.
1405
1406 * gnus-summary-limit-include-cached is slow when there are many
1407  articles in the cache, since it regenerates big parts of the
1408  summary buffer for each article.
1409
1410 * Implement gnus-batch-brew-soup.
1411
1412 * Group parameters and summary commands for un/subscribing to mailing
1413  lists.
1414
1415 * Introduce nnmail-home-directory.
1416
1417 * gnus-fetch-group and friends should exit Gnus when the user exits
1418  the group.
1419
1420 * The jingle is only played on the second invocation of Gnus.
1421
1422 * Bouncing articles should do MIME.
1423
1424   [done]
1425
1426 * Crossposted articles should "inherit" the % or  mark from the other
1427  groups it has been crossposted to, or something.  (Agent.)
1428
1429 * If point is on a group that appears multiple times in topics, and
1430  you press `l', point will move to the first instance of the group.
1431
1432 * A spec for the group line format to display the number of
1433  agent-downloaded articles in the group.
1434
1435 * Some nntp servers never respond when posting, so there should be a
1436  timeout for all commands.
1437
1438 * When stading on a topic line and `t'-ing, point goes to the last
1439  line.  It should go somewhere else.
1440
1441 * I'm having trouble accessing a newsgroup with a "+" in its name
1442  with Gnus.  There is a new newsgroup on msnews.microsoft.com named
1443  "microsoft.public.multimedia.directx.html+time" that I'm trying to
1444  access as
1445  "nntp+msnews.microsoft.com:microsoft.public.multimedia.directx.html+time"
1446  but it gives an error that it cant access the group.
1447
1448  Is the "+" character illegal in newsgroup names?  Is there any way
1449  in Gnus to work around this?  (gnus 5.6.45 - XEmacs 20.4)
1450
1451  [It works in 5.8.8.]
1452
1453 *  When `#F', do:
1454
1455       Subject: Answer to your mails 01.01.1999-01.05.1999
1456        --text follows this line--
1457       Sorry I killfiled you...
1458
1459       Under the subject "foo", you wrote on 01.01.1999:
1460       > bar
1461       Under the subject "foo1", you wrote on 01.01.1999:
1462       > bar 1
1463
1464 * Allow "orphan" scores in the Agent scoring.
1465
1466   [done?]
1467
1468 *          - Edit article's summary line.
1469           - End edit
1470           - Sort lines in buffer by subject
1471
1472           --> the old subject line appears in Summary buffer, not the one that was
1473           just changed to.
1474
1475 * Remove list identifiers from the subject in the summary when doing
1476  `^' and the like.
1477
1478 * Have the Agent write out articles, one by one, as it retrieves
1479  them, to avoid having to re-fetch them all if Emacs should crash
1480  while fetching.
1481
1482 * Be able to forward groups of messages as MIME digests.
1483
1484  [done]
1485
1486 * nnweb should include the "get whole article" article when getting
1487  articles.
1488
1489 * When I type W W c (gnus-article-hide-citation) in the summary
1490  buffer, the citations are revealed, but the [+] buttons don't turn
1491  into [-] buttons.  (If I click on one of the [+] buttons, it does
1492  turn into a [-] button.)
1493
1494  [fixed]
1495
1496 * Perhaps there should be a command to "attach" a buffer of comments
1497  to a message?  That is, `B WHATEVER', you're popped into a buffer,
1498  write something, end with `C-c C-c', and then the thing you've
1499  written gets to be the child of the message you're commenting.
1500
1501 * Handle external-body parts.
1502
1503   [done for some access types]
1504
1505 * When renaming a group name, nnmail-split-history does not get the
1506  group name renamed.
1507
1508 * Allow mail splitting on bodies when using advanced mail splitting.
1509
1510         (body "whatever.text")
1511
1512 * Be able to run `J u' from summary buffers.
1513
1514   [Done]
1515
1516 * Solve the halting problem.
1517
1518 \f
1519 ;; Local Variables:
1520 ;; mode: outline
1521 ;; coding: iso-2022-7bit
1522 ;; paragraph-separate: "[       \f]*$"
1523 ;; End: