* gnus-agent.el (gnus-agent-restore-gcc): Use ^ and regexp-quote.
[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.