* gnus.texi: Ditto.
* ChangeLog: Shrunk.
* widget.texi: Removed.
* custom.texi: Removed.
* gnus.texi (Mail Folders): Addition.
-1998-08-25 08:06:28 Lars Magne Ingebrigtsen <larsi@gnus.org>
-
- * gnus.texi (Posting Styles): Document this-is.
- (Virtual Groups): Addition.
-
-1998-08-18 00:30:05 Lars Magne Ingebrigtsen <larsi@gnus.org>
-
- * gnus.texi (Article Hiding): Addition.
-
-1998-08-16 14:53:45 Lars Magne Ingebrigtsen <larsi@gnus.org>
-
- * gnus.texi (NNTP): Reinstated.
- (Asynchronous Fetching): No header prefetch.
-
-1998-08-15 13:01:41 Lars Magne Ingebrigtsen <larsi@gnus.org>
-
- * gnus.texi (Summary Score Commands): Change.
-
-1998-08-14 01:31:36 Simon Josefsson <jas@pdc.kth.se>
-
- * gnus.texi (Posting Styles): New 'body style.
-
-1998-08-13 21:17:00 Lars Magne Ingebrigtsen <larsi@gnus.org>
-
- * gnus.texi (Paging the Article): Addition.
-
-1998-08-13 00:13:47 Simon Josefsson <jas@pdc.kth.se>
-
- * gnus.texi (Mail Group Commands): Typo.
-
-1998-08-12 21:28:09 Simon Josefsson <jas@pdc.kth.se>
-
- * gnus.texi (Article Caching): gnus-cacheable-groups.
- (Newest Features): remove gnus-cacheable-groups.
-
-1998-08-12 22:01:12 Lars Magne Ingebrigtsen <larsi@gnus.org>
-
- * message.texi (Forwarding): Addition.
-
-1998-08-11 20:33:53 Justin Zaglio <justin@caxton.com>
-
- * gnus.texi (Group Maintenance): Fix.
-
-1998-08-11 11:44:20 Lars Magne Ingebrigtsen <larsi@gnus.org>
-
- * gnus.texi (Group Maintenance): Fix.
-
-1998-08-10 08:59:25 Lars Magne Ingebrigtsen <larsi@gnus.org>
-
- * gnus.texi (Article Highlighting): Addition.
- (Article Fontisizing): Fix.
- (Article Hiding): Change.
- (Article Hiding): Fix.
-
-1998-08-09 15:32:24 Lars Magne Ingebrigtsen <larsi@gnus.org>
-
- * gnus.texi (Hiding Headers): Fix.
- (Article Hiding): Addition.
- (Document Groups): Addition.
-
-1998-08-08 06:06:37 Lars Magne Ingebrigtsen <larsi@gnus.org>
-
- * gnus.texi (Fancy Mail Splitting): Change.
-
-1998-08-06 02:12:04 Lars Magne Ingebrigtsen <larsi@gnus.org>
-
- * gnus.texi: De-legalize.
-
- * message.texi: De-legalize.
-
- * gnus.texi (Summary Maneuvering): Fix.
-
-1998-07-21 17:51 Simon Josefsson <jas@pdc.kth.se>
-
- * gnus.texi (Splitting Mail): junk is fancy splitting only
-
- * gnus.texi (Fancy Mail Splitting): warn about junk
-
-1998-07-27 02:28:33 Lars Magne Ingebrigtsen <larsi@gnus.org>
-
- * gnus.texi (Topic Commands): Fix.
-
-1998-07-27 02:23:17 Robert Bihlmeyer <robbe@orcus.priv.at>
-
- * gnus.texi (Score Decays): Fix.
-
-Sun Jul 12 04:03:27 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Home Score File): Addition.
-
-Fri Jul 10 04:26:23 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (NNTP): Addition.
-
-Sat Jul 4 14:24:29 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Gnus Utility Functions): Addition.
-
-Thu Jul 2 11:37:51 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Posting Styles): Ununcommented.
-
-Wed Jul 1 17:57:54 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Topic Commands): Addition.
-
-Tue Jun 30 16:11:27 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Topic Commands): Addition.
-
-Mon Jun 29 21:46:13 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Article Keymap): Typo.
-
-Sun Jun 28 17:41:10 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Formatting Fonts): Typo fix.
-
-Sat Jun 27 04:37:14 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Mail-To-News Gateways): Addition.
- (Mail-To-News Gateways): Typo.
-
-Fri Jun 26 13:33:00 1998 Yoshiki Hayashi <g740685@komaba.ecc.u-tokyo.ac.jp>
-
- * gnus.texi (Summary Buffer Lines): Typo fix.
-
-Fri Jun 26 05:53:22 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Score File Format): Addition.
- (Mode Line Formatting): New.
- (Summary Buffer Mode Line): Addition.
-
-Thu Jun 25 11:24:14 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Summary Score Commands): Deletia.
-
-Wed Jun 24 00:37:32 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Auto Save): Addition.
- (Mail-To-News Gateways): Addition.
- (NNTP): Addition.
-
-Wed Jun 3 03:30:47 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * message.texi (Message Headers): Addition.
-
- * gnus.texi (Compatibility): Addition.
-
-Tue May 19 02:44:31 1998 Mike Pullen <mpullen@midwest.net>
-
- * gnus.texi.orig: Typo fixes.
-
-Wed Apr 29 21:52:28 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Key Index): Untabified.
- (Group Parameters): Fix.
-
-Sun Apr 26 15:32:45 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Summary Post Commands): Ref to Message.
-
- * message.texi (Various Message Variables): Deletia.
-
-Fri Apr 24 16:00:40 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Unread Articles): Typo.
- (Summary Buffer Lines): Fix.
- (Foreign Groups): Addition.
- (Posting Server): Addition.
-
-Sat Mar 28 08:57:46 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Example Methods): Addition.
-
-Thu Mar 26 15:47:54 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Limiting): Mention `/ *'.
-
-Thu Mar 19 13:02:20 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (NNTP): Addition.
- Removed spurious white space.
-
-Fri Mar 13 21:05:47 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Quassia Gnus): Fix.
- (Agent Expiry): Addition.
-
-Sun Mar 8 13:56:37 1998 James Troup <J.J.Troup@scm.brad.ac.uk>
-
- * gnus.texi (Group Highlighting): Removed old example.
-
-Sun Mar 8 00:19:24 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Group Info): Fix ".".
-
-Sat Mar 7 17:09:49 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi: Took direntries out again, since makeinfo doesn't
- understand them.
- (Agent Expiry): New.
- (Quassia Gnus): New.
-
-Sat Mar 7 16:14:10 1998 Dan Christensen <jdc@chow.mat.jhu.edu>
-
- * gnus.texi (Group Parameters): Mention add-to-list.
-
-Sat Feb 28 14:21:12 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (NNTP): Addition.
-
-1998-03-01 Kim-Minh Kaplan <KimMinh.Kaplan@utopia.eunet.fr>
-
- * gnus.texi (Easy Picons): Removed references to
- `gnus-group-display-picons'.
- (Hard Picons): Ditto.
-
-1998-03-01 Kim-Minh Kaplan <KimMinh.Kaplan@utopia.eunet.fr>
-
- * gnus.texi (Easy Picons): Removed references to
- `gnus-group-display-picons'.
- (Hard Picons): Ditto.
-
-Mon Feb 23 18:05:09 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi: Direntry not handled by Emacs 19.34.
-
-1998-02-21 SL Baur <steve@altair.xemacs.org>
-
- * gnus.texi: Add a direntry field.
- * message.texi: Ditto. (Data taken from Emacs 20.2 info/dir).
-
-Sun Feb 22 03:24:43 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Score File Format): Addition.
-
-1998-02-18 Jason R Mastaler <jason@4b.org>
-
- * gnus.texi: Corrected typo.
-
-Thu Feb 19 02:20:29 1998 Francois Felix Ingrand <felix@laas.fr>
-
- * gnus.texi (Sorting): Fix order of args.
-
-Sun Feb 15 23:04:02 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (NNTP): Change.
-
-Sat Feb 14 17:46:33 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Virtual Groups): Fix.
- (NNTP): Addition.
- (Really Various Summary Commands): Addition.
-
-Fri Feb 13 18:23:19 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Mail Group Commands): Typo.
- (NNTP): Addition.
- (Mail and Procmail): Addition.
-
-Mon Feb 9 16:30:30 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Article Date): Addition.
-
-Sun Feb 8 16:28:35 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Newest Features): Addition.
-
-Mon Feb 2 19:21:43 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Agent Variables): Addition.
-
-Sun Feb 1 18:08:45 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Using MIME): Addition.
-
-Tue Jan 6 07:22:41 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Batching Agents): New.
-
-1998-01-04 Christoph Wedler <wedler@fmi.uni-passau.de>
-
- * gnus.texi (Newest Features): Delete spaces after @end example.
- In XEmacs, `texinfo-format-buffer' would bug out.
-
-Sun Jan 4 12:04:45 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Conformity): Removed GNKSA.
-
-Sun Dec 14 11:06:23 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Adaptive Scoring): Addition.
-
-1997-11-26 SL Baur <steve@altair.xemacs.org>
-
- * message.texi (Insertion): Fix typo.
- (Responses): Ditto.
- (Reply): Ditto.
-
-Wed Nov 26 12:57:00 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * message.texi (Insertion): Addition.
-
-Wed Nov 26 12:55:15 1997 Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>
-
- * message.texi (Insertion): Addition.
-
-Wed Nov 26 12:36:08 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * message.texi (Responses): New.
- (Appendices): New.
-
- * gnus.texi (Group Info): Fix.
-
-Tue Nov 25 17:53:55 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Article Date): Addition.
-
-Mon Nov 24 16:01:20 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Faces & Fonts): New.
-
-Mon Oct 13 00:08:06 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Agent Commands): Addition.
-
-Sun Oct 12 16:50:23 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Article Washing): Addition.
- (Group Highlighting): New.
- (Canceling and Superseding): Addition.
-
-Wed Oct 1 18:37:55 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Startup Files): Addition.
-
-Sat Sep 27 09:37:17 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * message.texi (Sending Variables): Fix.
-
- * gnus.texi (Choosing Commands): Addition.
-
-Sat Sep 27 05:56:44 1997 Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>
-
- * gnus.texi: Various fixes.
-
-Sat Sep 27 04:24:41 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * message.texi (Various Commands): Addition.
-
-Wed Sep 24 02:38:21 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Example Setup): Wrong info.
- (SOUP Groups): Addition.
- (Contributors): Addition.
-
-1997-09-22 SL Baur <steve@altair.xemacs.org>
-
- * gnus.texi (Finding the Parent): Fix typo.
- (NoCeM): Fix typos.
-
-Tue Sep 23 07:05:48 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (NoCeM): Addition.
- (Finding the Parent): Addition.
-
-Mon Sep 22 06:13:00 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Filling In Threads): Addition.
- (Finding the Parent): Addition.
-
-Sun Sep 21 04:35:56 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (NNTP): Addition.
- (Hiding Headers): Addition.
- (Symbolic Prefixes): New.
- (Extended Interactive): New.
- (Summary Score Commands): Addition.
-
-Sat Sep 20 20:53:43 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Startup Variables): Addition.
-
-1997-09-16 SL Baur <steve@altair.xemacs.org>
-
- * gnus.texi: Correct typo.
-
-Wed Sep 17 02:32:56 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Customizing Threading): Broken up into five nodes.
- (Article Washing): Addition.
-
- * message.texi (Various Commands): Add.
-
-Tue Sep 16 04:04:03 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Example Setup): New.
-
-Mon Sep 15 23:10:05 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Customizing Threading): Addition.
-
-Sun Sep 14 21:59:07 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Outgoing Messages): New.
- (Score File Format): Note.
- (Subscription Methods): Fix.
- (Starting Up): Fix.
- (Threading): Add.
-
-Sat Jul 19 23:02:03 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Followups To Yourself): \\(_-_\\)?
-
-Sat Jul 12 16:29:35 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Picon Configuration): Moved Picons to under XEmacs.
- (Smileys): New section.
-
-Fri Jul 11 11:58:20 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (NNTP): Addition.
-
-Tue Jun 17 23:52:17 1997 Justin Sheehy <dworkin@ccs.neu.edu>
-
- * gnus.texi (Group Parameters): Addition.
-
-Sun May 25 14:40:17 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Expiring Mail): Addition.
-
-Sat May 24 05:26:17 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Score File Format): Update.
-
-Tue May 20 21:56:03 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Document Server Internals): Typo.
-
-Sun May 18 05:59:24 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Topic Commands): Addition.
-
-Sun May 11 20:09:24 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Article Hiding): Change.
-
-Thu May 8 23:48:36 1997 James Troup <J.J.Troup@comp.brad.ac.uk>
-
- * gnus.texi (Saving Articles): Typo.
-
-Wed May 7 19:00:48 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Saving Articles): Addition.
-
-Wed May 7 19:00:43 1997 Mark Boyns <boyns@sdsu.edu>
-
- * gnus.texi (Saving Articles): Addition.
-
-Thu May 1 14:06:57 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Score File Format): Fix.
-
-Sun Apr 27 11:11:43 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (NNTP): Addition.
-
-Sat Apr 12 16:51:32 1997 Robert Bihlmeyer <robbe@orcus.priv.at>
-
- * gnus.texi (Thwarting Email Spam): Addition.
-
-Tue Apr 15 16:11:38 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * message.texi (Various Message Variables): Addition.
-
- * gnus.texi (Thwarting Email Spam): Addition.
-
-Sat Apr 12 00:26:47 1997 Francois Felix Ingrand <felix@laas.fr>
-
- * gnus.texi (NoCeM): Addition.
-
-Thu Apr 10 21:25:14 1997 Hrvoje Niksic <hniksic@srce.hr>
-
- * gnus.texi (Emacs/XEmacs Code): Addition.
-
-Thu Apr 10 20:45:47 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Group Information): Fix.
-
-Wed Apr 2 11:48:44 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Sorting): Use total score.
-
-Tue Apr 1 11:44:57 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Subscription Methods): Addition.
- (Group Info): Addition.
- (Gnus Utility Functions): New.
- (Thwarting Email Spam): Addition.
-
-Mon Mar 31 16:15:54 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * message.texi (Various Message Variables): Addition.
-
-Sun Mar 23 02:16:19 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Thwarting Email Spam): New.
- (Unavailable Servers): Fix.
-
-Wed Mar 19 15:45:17 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Various Summary Stuff): Addition.
- (Mail Backend Variables): Addition.
-
-Tue Mar 18 14:43:32 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Article Washing): Not addition.
-
-Mon Mar 17 16:15:54 1997 Philippe Schnoebelen <Philippe.Schnoebelen@lsv.ens-cachan.fr>
-
- * Makefile (install): Install properly.
-
-Fri Mar 14 21:00:33 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Group Parameters): Addition.
- (Expiring Mail): Addition.
-
-Wed Mar 12 06:57:14 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Various Various): Addition.
-
-Sat Mar 8 03:41:47 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Group Parameters): Added example.
- (Duplicates): Fix.
-
-Fri Mar 7 10:49:43 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * Makefile: New "install" target.
-
-Thu Mar 6 08:01:37 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Mail and Procmail): Fix.
-
-Sun Mar 2 02:08:40 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Startup Files): Addition.
- (Score File Format): Fix.
-
-Fri Feb 28 23:23:31 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Archived Messages): Clarify.
- (Fuzzy Matching): New.
-
-Mon Feb 24 23:41:57 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * message.texi (Compatibility): New.
-
-Thu Feb 20 03:29:17 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Foreign Groups): Addition.
-
-Wed Feb 19 02:57:51 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Server Variables): New.
-
-Sun Feb 16 15:43:34 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Mail Backend Variables): Fix.
-
- * message.texi (Various Message Variables): Addition.
-
-Mon Feb 10 07:18:16 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Article Commands): Addition.
-
-Mon Feb 3 19:59:10 1997 Paul Franklin <paul@cs.washington.edu>
-
- * gnus-group.el (gnus-group-edit-group): Allow editing of bad
- groups.
-
-Wed Feb 5 02:00:46 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * message.texi (Mail Variables): Change.
-
-Tue Feb 4 02:33:31 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * message.texi (Mail Aliases): New.
-
- * gnus.texi (Splitting Mail): Addition.
-
-Mon Feb 3 07:31:47 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Mode Lines): Addition.
-
-Mon Jan 27 17:51:29 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Highlighting and Menus): Removed
- `gnus-display-type'.
-
-Sat Jan 25 08:09:30 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (The Active File): Addition.
-
-Fri Jan 24 05:07:28 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Summary Mail Commands): Addition.
- (Required Backend Functions): Deletia.
- (Article Washing): Addition.
- (Summary Mail Commands): Addition.
-
-Mon Jan 20 22:19:40 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Followups To Yourself): Fix.
-
-Fri Jan 17 00:55:51 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (NoCeM): Update.
-
-Wed Jan 15 02:23:03 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Mail Group Commands): Fix.
-
-Tue Jan 7 09:36:36 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Summary Buffer Lines): Correction.
-
-Mon Jan 6 22:49:12 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (NoCeM): Addition.
-
-Fri Jan 3 18:13:02 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * message.texi (Various Commands): Addition.
-
-Thu Jan 2 16:12:27 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Optional Backend Functions): Fix.
-
-Mon Dec 16 13:53:28 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Exiting the Summary Buffer): Update.
-
-Fri Dec 13 01:04:41 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Limiting): Addition.
-
-Sat Dec 7 21:10:23 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Example Methods): Addition.
-
-Fri Dec 6 12:38:14 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Group Parameters): Update.
-
-1996-11-30 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Terminology): Addition.
-
-Wed Nov 27 03:13:05 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Selecting a Group): Addition.
-
-Tue Nov 26 12:42:47 1996 Martin Buchholz <mrb@eng.sun.com>
-
- * message.texi: Typo fixes and stuff.
-
-Thu Nov 21 17:45:57 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Canceling and Superseding): Fix.
-
-Wed Nov 20 15:42:36 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (New Groups): Addition.
- (Summary Sorting): Addition.
-
-Tue Nov 19 20:54:16 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Scanning New Messages): Addition.
-
-Sat Nov 9 06:04:22 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Group Parameters): Addition.
-
-Fri Nov 8 04:01:06 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Article Fontisizing): New.
- (Fancy Mail Splitting): Addition.
- (Summary Post Commands): Addition.
- (Mail Spool): Addition.
- (Server Commands): Addition.
- (Fancy Mail Splitting): Addition.
-
-Wed Nov 6 06:39:44 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Misc Article): Addition.
- (Emacsen): Updated.
-
-Wed Nov 6 03:52:05 1996 C. R. Oldham <cro@nca.asu.edu>
-
- * Makefile (.texi.dvi): Fix rule.
-
-Tue Nov 5 10:45:39 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Other Decode Variables): Addition.
- (Mail-like Backends): New.
-
-Tue Nov 5 06:41:46 1996 Hrvoje Niksic <hniksic@srce.hr>
-
- * gnus.texi (Score File Format): Added warning.
-
-Mon Oct 28 15:50:08 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Startup Variables): Addition.
-
-Fri Oct 25 09:04:59 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Summary Mail Commands): Addition.
-
-Wed Oct 23 08:28:29 1996 Hrvoje Niksic <hniksic@srce.hr>
-
- * gnus.texi (Fancy Mail Splitting): Removed trailing garbage.
-
-Tue Oct 22 07:36:02 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Converting Kill Files): New.
-
-Sat Oct 19 07:17:28 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Saving Articles): Addition.
-
- * message.texi (Various Message Variables): Addition.
-
-Thu Oct 17 06:53:04 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Contributors): Added names.
-
-Fri Oct 11 12:38:59 1996 Lars Magne Ingebrigtsen <larsi@ylfing.ifi.uio.no>
-
- * gnus.texi (Adaptive Scoring): Addition.
-
-Tue Oct 8 13:16:41 1996 Lars Magne Ingebrigtsen <larsi@ylfing.ifi.uio.no>
-
- * Makefile (all): Make custom.
-
-Wed Oct 2 01:32:49 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Group Timestamps): New.
-
-Tue Oct 1 01:34:45 1996 Lars Magne Ingebrigtsen <larsi@hrym.ifi.uio.no>
-
- * gnus.texi (Expiring Mail): Addition.
- (Group Line Specification): Addition.
-
-Sat Sep 28 21:36:40 1996 Lars Magne Ingebrigtsen <larsi@ylfing.ifi.uio.no>
-
- * gnus.texi (Foreign Groups): Addition.
-
-Mon Sep 23 22:17:44 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (The Summary Buffer): Addition.
-
-Mon Sep 23 18:25:38 1996 Lars Magne Ingebrigtsen <larsi@ylfing.ifi.uio.no>
-
- * gnus.texi (Thread Commands): Correction.
- (Group Information): Correction.
-
-Sat Sep 21 08:11:43 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (New Groups): Split into three nodes.
- (Group Parameters): Shortened.
- (Browse Foreign Server): Corrected.
-
-Thu Sep 19 18:45:15 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Mail and Procmail): Addition.
-
-Wed Sep 18 07:33:11 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Other Marks): Edited.
- (The Manual): New.
- (Contributors): Updated.
- (Asynchronous Fetching): Addition.
- (New Features): Split.
- ((ding) Gnus): Renamed.
- (September Gnus): New.
- (Red Gnus): New,
- (Undo): New.
-
-Thu Sep 12 23:55:53 1996 Lars Magne Ingebrigtsen <larsi@hrym.ifi.uio.no>
-
- * gnus.texi (Archived Messages): Fix.
-
-Sat Sep 7 12:14:23 1996 Lars Magne Ingebrigtsen <larsi@hymir.ifi.uio.no>
-
- * gnus.texi (Various Various): Addition.
-
-Fri Sep 6 07:57:26 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Startup Files): Addition.
- (Splitting Mail): Addition.
- (Sorting Groups): Addition.
- (Topic Sorting): New.
- (Really Various Summary Commands): Deletia.
- (Summary Generation Commands): New.
- (Setting Process Marks): Addition.
-
-Thu Sep 5 07:34:27 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Terminology): Addition.
- (Web Searches): Fix.
- (Windows Configuration): Addition.
-
-Sun Sep 1 11:07:09 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (XEmacs Enhancements): New.
-
-Sat Aug 31 02:55:50 1996 Lars Magne Ingebrigtsen <larsi@ylfing.ifi.uio.no>
-
- * gnus.texi (Washing Mail): Addition.
-
-Fri Aug 30 09:10:17 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Washing Mail): New.
- (Fancy Mail Splitting): Change.
-
-Fri Aug 30 00:21:59 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Foreign Groups): Change.
-
-Thu Aug 29 23:51:45 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Daemons): Addition.
-
-Thu Aug 29 02:09:24 1996 Fran\e$BmP\e(Bis Pinard <pinard@progiciels-bpi.ca>
-
- * gnus.texi (Web Searches): Typo.
-
-Wed Aug 28 08:21:36 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Server Commands): Addition.
- (Really Various Summary Commands): Addition.
-
-Mon Aug 26 18:29:23 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Optional Backend Functions): Deletia.
- (Asynchronous Fetching): Deletia and addition.
-
-Sun Aug 25 23:39:03 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi: Include the version number.
-
-Sun Aug 25 21:31:33 1996 Lars Magne Ingebrigtsen <larsi@ylfing.ifi.uio.no>
-
- * gnus.texi (Really Various Summary Commands): Addition.
-
-Sat Aug 17 22:24:34 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Startup Files): Addition.
- (Anything Groups): Addition.
-
-Thu Aug 22 17:27:31 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Adaptive Scoring): Addition.
- (Adaptive Scoring): Addition.
-
-Mon Aug 19 00:30:07 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Fancy Mail Splitting): Addition.
- (Splitting Mail): Addition.
- (Group Parameters): Addition.
- (Topic Variables): Addition.
- (Mail Group Commands): Addition.
- (Group Information): Addition.
- (Article Washing): Addition.
-
-Sun Aug 18 18:06:49 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Web Searches): Change and addition.
-
-Sat Aug 17 22:24:34 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Startup Files): Addition.
- (Anything Groups): Addition.
-
-Thu Aug 15 17:59:12 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Followups To Yourself): Addition.
- (Setting Process Marks): Addition.
- (Process/Prefix): Addition.
- (Startup Files): Addition.
- (Mail-To-News Gateways): New.
-
-Wed Aug 14 15:02:14 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Home Score File): Fix.
- (Various Various): New.
-
-Tue Aug 13 10:38:47 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Error Messaging): New.
- (Mail Backend Variables): Fix.
- (Foreign Groups): Added references.
- (Sorting Groups): Addition.
-
-Sun Aug 11 02:52:37 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (User-Defined Specs): Correction.
- (Unavailable Servers): Addition.
- (Moderation): New.
- (Summary Mail Commands): Addition.
- (Crosspost Handling): Addition.
-
-Sat Aug 10 00:13:39 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Summary Buffer Lines): Correction.
- (Top): Name fix.
- (Compilation ): Addition.
- (Group Parameters): Addition.
- (Troubleshooting): Addition.
-
-Fri Aug 9 07:17:59 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Selecting a Group): Addition.
- (Score Decays): New.
- (Score File Format): Addition.
- (Changing Servers): Addition.
- (Selecting a Group): Addition.
- (Really Various Summary Commands): Addition.
-
-Thu Aug 8 05:39:31 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Read Articles): Addition.
- (Foreign Groups): Addition.
- (User-Defined Specs): Separated.
- (Formatting Fonts): Ditto.
- (Advanced Formatting): New.
- (Formatting Basics): Addition.
- (Formatting Variables): Split.
-
-Wed Aug 7 22:00:56 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
-
- * gnus.texi (Hooking New Backends Into Gnus): New node.
-
-Wed Aug 7 01:02:08 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Setting Marks): Addition.
- (Formatting Variables): Addition.
-
-Mon Aug 5 20:20:42 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Formatting Variables): Addition.
-
-Sun Aug 4 07:15:28 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Score File Format): Addition.
- (Adaptive Scoring): Addition.
-
-Sat Aug 3 17:35:36 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Group Parameters): Addition.
- (Home Score File): New.
- (Topic Parameters): New.
-
-Wed Jul 31 15:34:12 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (are): Fix.
-
-Wed Jul 31 15:32:57 1996 David S. Goldberg <dsg@linus.mitre.org>
-
- * gnus.texi (buffer-name): Addition.
-
-Fri Aug 2 00:32:39 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Pick and Read): Addition.
- (Article Hiding): Addition.
- (Article Signature): Made into own node.
-
-Thu Aug 1 00:25:41 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * message.texi (Wide Reply): Addition.
- (Bouncing): Addition.
-
- * gnus.texi (Crosspost Handling): Made into own node.
- (Duplicate Suppression): New.
- (Document Server Internals): New.
- (Changing Servers): New.
-
-Wed Jul 31 15:37:44 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi: Fix
-
-Mon Jul 29 10:12:24 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
-
- * gnus.texi (Misc Article): Addition.
- (Advanced Scoring Tips): New.
- (Advanced Scoring Example): New.
- (Advanced Scoring Syntax): New.
- (Advanced Scoring): New.
+++ /dev/null
-\input texinfo.tex
-
-@c %**start of header
-@setfilename custom
-@settitle The Customization Library
-@iftex
-@afourpaper
-@headings double
-@end iftex
-@c %**end of header
-
-@node Top, Introduction, (dir), (dir)
-@comment node-name, next, previous, up
-@top The Customization Library
-
-Version: 1.82
-
-@menu
-* Introduction::
-* User Commands::
-* The Customization Buffer::
-* Declarations::
-* Utilities::
-* The Init File::
-* Wishlist::
-@end menu
-
-@node Introduction, User Commands, Top, Top
-@comment node-name, next, previous, up
-@section Introduction
-
-This library allows customization of @dfn{user options}. Currently two
-types of user options are supported, namely @dfn{variables} and
-@dfn{faces}. Each user option can have four different values
-simultaneously:
-@table @dfn
-@item factory setting
-The value specified by the programmer.
-@item saved value
-The value saved by the user as the default for this variable. This
-overwrites the factory setting when starting a new emacs.
-@item current value
-The value used by Emacs. This will not be remembered next time you
-run Emacs.
-@item widget value
-The value entered by the user in a customization buffer, but not yet
-applied.
-@end table
-
-Variables also have a @dfn{type}, which specifies what kind of values
-the variable can hold, and how the value is presented in a customization
-buffer. By default a variable can hold any valid expression, but the
-programmer can specify a more limited type when declaring the variable.
-
-The user options are organized in a number of @dfn{groups}. Each group
-can contain a number user options, as well as other groups. The groups
-allows the user to concentrate on a specific part of emacs.
-
-@node User Commands, The Customization Buffer, Introduction, Top
-@comment node-name, next, previous, up
-@section User Commands
-
-The following commands will create a customization buffer:
-
-@table @code
-@item customize
-Create a customization buffer containing a specific group, by default
-the @code{emacs} group.
-
-@item customize-variable
-Create a customization buffer containing a single variable.
-
-@item customize-face
-Create a customization buffer containing a single face.
-
-@item customize-apropos
-Create a customization buffer containing all variables, faces, and
-groups that match a user specified regular expression.
-@end table
-
-@node The Customization Buffer, Declarations, User Commands, Top
-@comment node-name, next, previous, up
-@section The Customization Buffer.
-
-The customization buffer allows the user to make temporary or permanent
-changes to how specific aspects of emacs works, by setting and editing
-user options.
-
-The customization buffer contains three types of text:
-
-@table @dfn
-@item informative text
-where the normal editing commands are disabled.
-
-@item editable fields
-where you can edit with the usual emacs commands. Editable fields are
-usually displayed with a grey background if your terminal supports
-colors, or an italic font otherwise.
-
-@item buttons
-which can be activated by either pressing the @kbd{@key{ret}} while
-point is located on the text, or pushing @kbd{mouse-2} while the mouse
-pointer is above the tex. Buttons are usually displayed in a bold
-font.
-@end table
-
-You can move to the next the next editable field or button by pressing
-@kbd{@key{tab}} or the previous with @kbd{M-@key{tab}}. Some buttons
-have a small helpful message about their purpose, which will be
-displayed when you move to it with the @key{tab} key.
-
-The buffer is divided into three part, an introductory text, a list of
-customization options, and a line of customization buttons. Each part
-will be described in the following.
-
-@menu
-* The Introductory Text::
-* The Customization Options::
-* The Variable Options::
-* The Face Options::
-* The Group Options::
-* The State Button::
-* The Customization Buttons::
-@end menu
-
-@node The Introductory Text, The Customization Options, The Customization Buffer, The Customization Buffer
-@comment node-name, next, previous, up
-@subsection The Introductory Text
-
-The start of the buffer contains a short explanation of what it is, and
-how to get help. It will typically look like this:
-
-@example
-This is a customization buffer.
-Push RET or click mouse-2 on the word _help_ for more information.
-@end example
-
-Rather boring. It is mostly just informative text, but the word
-@samp{help} is a button that will bring up this document when
-activated.
-
-@node The Customization Options, The Variable Options, The Introductory Text, The Customization Buffer
-@comment node-name, next, previous, up
-@subsection The Customization Options
-
-Each customization option looks similar to the following text:
-
-@example
- *** custom-background-mode: default
- State: this item is unchanged from its factory setting.
- [ ] [?] The brightness of the background.
-@end example
-
-The option contains the parts described below.
-
-@table @samp
-@item ***
-The Level Button. The customization options in the buffer are organized
-in a hierarchy, which is indicated by the number of stars in the level
-button. The top level options will be shown as @samp{*}. When they are
-expanded, the suboptions will be shown as @samp{**}. The example option
-is thus a subsuboption.
-
-Activating the level buttons will toggle between hiding and exposing the
-content of that option. The content can either be the value of the
-option, as in this example, or a list of suboptions.
-
-@item custom-background-mode
-This is the tag of the the option. The tag is a name of a variable, a
-face, or customization group. Activating the tag has an effect that
-depends on the exact type of the option. In this particular case,
-activating the tag will bring up a menu that will allow you to choose
-from the three possible values of the `custom-background-mode'
-variable.
-
-@item default
-After the tag, the options value is shown. Depending on its type, you
-may be able to edit the value directly. If an option should contain a
-file name, it is displayed in an editable field, i.e. you can edit it
-using the standard emacs editing commands.
-
-@item State: this item is unchanged from its factory setting.
-The state line. This line will explain the state of the option,
-e.g. whether it is currently hidden, or whether it has been modified or
-not. Activating the button will allow you to change the state, e.g. set
-or reset the changes you have made. This is explained in detail in the
-following sections.
-
-@item [ ]
-The magic button. This is an abbreviated version of the state line.
-
-@item [?]
-The documentation button. If the documentation is more than one line,
-this button will be present. Activating the button will toggle whether
-the complete documentation is shown, or only the first line.
-
-@item The brightness of the background.
-This is a documentation string explaining the purpose of this particular
-customization option.
-
-@end table
-
-@node The Variable Options, The Face Options, The Customization Options, The Customization Buffer
-@comment node-name, next, previous, up
-@subsection The Variable Options
-
-The most common customization options are emacs lisp variables. The
-actual editing of these variables depend on what type values the
-variable is expected to contain. For example, a lisp variable whose
-value should be a string will typically be represented with an editable
-text field in the buffer, where you can change the string directly. If
-the value is a list, each item in the list will be presented in the
-buffer buffer on a separate line, with buttons to insert new items in
-the list, or delete existing items from the list. You may want to see
-@ref{User Interface,,, widget, The Widget Library}, where some examples
-of editing are discussed.
-
-You can either choose to edit the value directly, or edit the lisp
-value for that variable. The lisp value is a lisp expression that
-will be evaluated when you start emacs. The result of the evaluation
-will be used as the initial value for that variable. Editing the
-lisp value is for experts only, but if the current value of the
-variable is of a wrong type (i.e. a symbol where a string is expected),
-the `edit lisp' mode will always be selected.
-
-You can see what mode is currently selected by looking at the state
-button. If it uses parenthesises (like @samp{( )}) it is in edit lisp
-mode, with square brackets (like @samp{[ ]}) it is normal edit mode.
-You can switch mode by activating the state button, and select either
-@samp{Edit} or @samp{Edit lisp} from the menu.
-
-You can change the state of the variable with the other menu items:
-
-@table @samp
-@item Set
-When you have made your modifications in the buffer, you need to
-activate this item to make the modifications take effect. The
-modifications will be forgotten next time you run emacs.
-
-@item Save
-Unless you activate this item instead! This will mark the modification
-as permanent, i.e. the changes will be remembered in the next emacs
-session.
-
-@item Reset
-If you have made some modifications and not yet applied them, you can
-undo the modification by activating this item.
-
-@item Reset to Saved
-Activating this item will reset the value of the variable to the last
-value you marked as permanent with `Save'.
-
-@item Reset to Factory Settings
-Activating this item will undo all modifications you have made, and
-reset the value to the initial value specified by the program itself.
-@end table
-
-By default, the value of large or complicated variables are hidden. You
-can show the value by clicking on the level button.
-
-@node The Face Options, The Group Options, The Variable Options, The Customization Buffer
-@comment node-name, next, previous, up
-@subsection The Face Options
-
-A face is an object that controls the appearance of some buffer text.
-The face has a number of possible attributes, such as boldness,
-foreground color, and more. For each attribute you can specify whether
-this attribute is controlled by the face, and if so, what the value is.
-For example, if the attribute bold is not controlled by a face, using
-that face on some buffer text will not affect its boldness. If the bold
-attribute is controlled by the face, it can be turned either on or of.
-
-It is possible to specify that a face should have different attributes
-on different device types. For example, a face may make text red on a
-color device, and bold on a monochrome device. You do this by
-activating `Edit All' in the state menu.
-
-The way this is presented in the customization buffer is to have a list
-of display specifications, and for each display specification a list of
-face attributes. For each face attribute, there is a checkbox
-specifying whether this attribute has effect and what the value is.
-Here is an example:
-
-@example
- *** custom-invalid-face: (sample)
- State: this item is unchanged from its factory setting.
- [ ] Face used when the customize item is invalid.
- [INS] [DEL] Display: [ ] Type: [ ] X [ ] PM [ ] Win32 [ ] DOS [ ] TTY
- [X] Class: [X] Color [ ] Grayscale [ ] Monochrome
- [ ] Background: [ ] Light [ ] Dark
- Attributes: [ ] Bold: off
- [ ] Italic: off
- [ ] Underline: off
- [X] Foreground: yellow (sample)
- [X] Background: red (sample)
- [ ] Stipple:
- [INS] [DEL] Display: all
- Attributes: [X] Bold: on
- [X] Italic: on
- [X] Underline: on
- [ ] Foreground: default (sample)
- [ ] Background: default (sample)
- [ ] Stipple:
- [INS]
-@end example
-
-This has two display specifications. The first will match all color
-displays, independently on what window system the device belongs to, and
-whether background color is dark or light. For devices matching this
-specification, @samp{custom-invalid-face} will force text to be
-displayed in yellow on red, but leave all other attributes alone.
-
-The second display will simply match everything. Since the list is
-prioritised, this means that it will match all non-color displays. For
-these, the face will not affect the foreground or background color, but
-force the font to be both bold, italic, and underline.
-
-You can add or delete display specifications by activating the
-@samp{[INS]} and @samp{[DEL]} buttons, and modify them by clicking on
-the check boxes. The first checkbox in each line in the display
-specification is special. It specify whether this particular property
-will even be relevant. By not checking the box in the first display, we
-match all device types, also device types other than those listed.
-
-After modifying the face, you can activate the state button to make the
-changes take effect. The menu items in the state button menu is similar
-to the state menu items for variables described in the previous section.
-
-@node The Group Options, The State Button, The Face Options, The Customization Buffer
-@comment node-name, next, previous, up
-@subsection The Group Options
-
-Since Emacs has approximately a zillion configuration options, they have
-been organized in groups. Each group can contain other groups, thus
-creating a customization hierarchy. The nesting of the customization
-within the visible part of this hierarchy is indicated by the number of
-stars in the level button.
-
-Since there is really no customization needed for the group itself, the
-menu items in the groups state button will affect all modified group
-members recursively. Thus, if you activate the @samp{Set} menu item,
-all variables and faces that have been modified and belong to that group
-will be applied. For those members that themselves are groups, it will
-work as if you had activated the @samp{Set} menu item on them as well.
-
-@node The State Button, The Customization Buttons, The Group Options, The Customization Buffer
-@comment node-name, next, previous, up
-@subsection The State Line and The Magic Button
-
-The state line has two purposes. The first is to hold the state menu,
-as described in the previous sections. The second is to indicate the
-state of each customization item.
-
-For the magic button, this is done by the character inside the brackets.
-The following states have been defined, the first that applies to the
-current item will be used:
-
-@table @samp
-@item -
-The option is currently hidden. For group options that means the
-members are not shown, for variables and faces that the value is not
-shown. You cannot perform any of the state change operations on a
-hidden customization option.
-
-@item *
-The value if this option has been modified in the buffer, but not yet
-applied.
-
-@item +
-The item has has been set by the user.
-
-@item :
-The current value of this option is different from the saved value.
-
-@item !
-The saved value of this option is different from the factory setting.
-
-@item @@
-The factory setting of this option is not known. This occurs when you
-try to customize variables or faces that have not been explicitly
-declared as customizable.
-
-@item SPC
-The factory setting is still in effect.
-
-@end table
-
-For non-hidden group options, the state shown is the most severe state
-of its members, where more severe means that it appears earlier in the
-list above (except hidden members, which are ignored).
-
-@node The Customization Buttons, , The State Button, The Customization Buffer
-@comment node-name, next, previous, up
-@subsection The Customization Buttons
-
-The last part of the customization buffer looks like this:
-
-@example
-[Set] [Save] [Reset] [Done]
-@end example
-
-Activating the @samp{[Set]}, @samp{[Save]}, or @samp{[Reset]}
-button will affect all modified customization items that are visible in
-the buffer. @samp{[Done]} will bury the buffer.
-
-@node Declarations, Utilities, The Customization Buffer, Top
-@comment node-name, next, previous, up
-@section Declarations
-
-This section describes how to declare customization groups, variables,
-and faces. It doesn't contain any examples, but please look at the file
-@file{cus-edit.el} which contains many declarations you can learn from.
-
-@menu
-* Declaring Groups::
-* Declaring Variables::
-* Declaring Faces::
-* Usage for Package Authors::
-@end menu
-
-All the customization declarations can be changes by keyword arguments.
-Groups, variables, and faces all share these common keywords:
-
-@table @code
-@item :group
-@var{value} should be a customization group.
-Add @var{symbol} to that group.
-@item :link
-@var{value} should be a widget type.
-Add @var{value} to the extrenal links for this customization option.
-Useful widget types include @code{custom-manual}, @code{info-link}, and
-@code{url-link}.
-@item :load
-Add @var{value} to the files that should be loaded nefore displaying
-this customization option. The value should be iether a string, which
-should be a string which will be loaded with @code{load-library} unless
-present in @code{load-history}, or a symbol which will be loaded with
-@code{require}.
-@item :tag
-@var{Value} should be a short string used for identifying the option in
-customization menus and buffers. By default the tag will be
-automatically created from the options name.
-@end table
-
-@node Declaring Groups, Declaring Variables, Declarations, Declarations
-@comment node-name, next, previous, up
-@subsection Declaring Groups
-
-Use @code{defgroup} to declare new customization groups.
-
-@defun defgroup symbol members doc [keyword value]...
-Declare @var{symbol} as a customization group containing @var{members}.
-@var{symbol} does not need to be quoted.
-
-@var{doc} is the group documentation.
-
-@var{members} should be an alist of the form ((@var{name}
-@var{widget})...) where @var{name} is a symbol and @var{widget} is a
-widget for editing that symbol. Useful widgets are
-@code{custom-variable} for editing variables, @code{custom-face} for
-editing faces, and @code{custom-group} for editing groups.@refill
-
-Internally, custom uses the symbol property @code{custom-group} to keep
-track of the group members, and @code{group-documentation} for the
-documentation string.
-
-The following additional @var{keyword}'s are defined:
-
-@table @code
-@item :prefix
-@var{value} should be a string. If the string is a prefix for the name
-of a member of the group, that prefix will be ignored when creating a
-tag for that member.
-@end table
-@end defun
-
-@node Declaring Variables, Declaring Faces, Declaring Groups, Declarations
-@comment node-name, next, previous, up
-@subsection Declaring Variables
-
-Use @code{defcustom} to declare user editable variables.
-
-@defun defcustom symbol value doc [keyword value]...
-Declare @var{symbol} as a customizable variable that defaults to @var{value}.
-Neither @var{symbol} nor @var{value} needs to be quoted.
-If @var{symbol} is not already bound, initialize it to @var{value}.
-
-@var{doc} is the variable documentation.
-
-The following additional @var{keyword}'s are defined:
-
-@table @code
-@item :type
-@var{value} should be a widget type.
-@item :options
-@var{value} should be a list of possible members of the specified type.
-For hooks, this is a list of function names.
-@end table
-
-@xref{Sexp Types,,,widget,The Widget Library}, for information about
-widgets to use together with the @code{:type} keyword.
-@end defun
-
-Internally, custom uses the symbol property @code{custom-type} to keep
-track of the variables type, @code{factory-value} for the program
-specified default value, @code{saved-value} for a value saved by the
-user, and @code{variable-documentation} for the documentation string.
-
-Use @code{custom-add-option} to specify that a specific function is
-useful as an meber of a hook.
-
-@defun custom-add-option symbol option
-To the variable @var{symbol} add @var{option}.
-
-If @var{symbol} is a hook variable, @var{option} should be a hook
-member. For other types variables, the effect is undefined."
-@end defun
-
-@node Declaring Faces, Usage for Package Authors, Declaring Variables, Declarations
-@comment node-name, next, previous, up
-@subsection Declaring Faces
-
-Faces are declared with @code{defface}.
-
-@defun defface face spec doc [keyword value]...
-
-Declare @var{face} as a customizable face that defaults to @var{spec}.
-@var{face} does not need to be quoted.
-
-If @var{face} has been set with `custom-set-face', set the face attributes
-as specified by that function, otherwise set the face attributes
-according to @var{spec}.
-
-@var{doc} is the face documentation.
-
-@var{spec} should be an alist of the form @samp{((@var{display} @var{atts})...)}.
-
-@var{atts} is a list of face attributes and their values. The possible
-attributes are defined in the variable `custom-face-attributes'.
-Alternatively, @var{atts} can be a face in which case the attributes of
-that face is used.
-
-The @var{atts} of the first entry in @var{spec} where the @var{display}
-matches the frame should take effect in that frame. @var{display} can
-either be the symbol `t', which will match all frames, or an alist of
-the form @samp{((@var{req} @var{item}...)...)}@refill
-
-For the @var{display} to match a FRAME, the @var{req} property of the
-frame must match one of the @var{item}. The following @var{req} are
-defined:@refill
-
-@table @code
-@item type
-(the value of (window-system))@*
-Should be one of @code{x} or @code{tty}.
-
-@item class
-(the frame's color support)@*
-Should be one of @code{color}, @code{grayscale}, or @code{mono}.
-
-@item background
-(what color is used for the background text)@*
-Should be one of @code{light} or @code{dark}.
-@end table
-
-Internally, custom uses the symbol property @code{factory-face} for the
-program specified default face properties, @code{saved-face} for
-properties saved by the user, and @code{face-doc-string} for the
-documentation string.@refill
-
-@end defun
-
-@node Usage for Package Authors, , Declaring Faces, Declarations
-@comment node-name, next, previous, up
-@subsection Usage for Package Authors
-
-The recommended usage for the author of a typical emacs lisp package is
-to create one group identifying the package, and make all user options
-and faces members of that group. If the package has more than around 20
-such options, they should be divided into a number of subgroups, with
-each subgroup being member of the top level group.
-
-The top level group for the package should itself be member of one or
-more of the standard customization groups. There exists a group for
-each @emph{finder} keyword. Press @kbd{C-c p} to see a list of finder
-keywords, and add you group to each of them, using the @code{:group}
-keyword.
-
-@node Utilities, The Init File, Declarations, Top
-@comment node-name, next, previous, up
-@section Utilities
-
-These utilities can come in handy when adding customization support.
-
-@deffn Widget custom-manual
-Widget type for specifying the info manual entry for a customization
-option. It takes one argument, an info address.
-@end deffn
-
-@defun custom-add-to-group group member widget
-To existing @var{group} add a new @var{member} of type @var{widget},
-If there already is an entry for that member, overwrite it.
-@end defun
-
-@defun custom-add-link symbol widget
-To the custom option @var{symbol} add the link @var{widget}.
-@end defun
-
-@defun custom-add-load symbol load
-To the custom option @var{symbol} add the dependency @var{load}.
-@var{load} should be either a library file name, or a feature name.
-@end defun
-
-@defun custom-menu-create symbol &optional name
-Create menu for customization group @var{symbol}.
-If optional @var{name} is given, use that as the name of the menu.
-Otherwise make up a name from @var{symbol}.
-The menu is in a format applicable to @code{easy-menu-define}.
-@end defun
-
-@node The Init File, Wishlist, Utilities, Top
-@comment node-name, next, previous, up
-@section The Init File
-
-When you save the customizations, call to @code{custom-set-variables},
-@code{custom-set-faces} are inserted into the file specified by
-@code{custom-file}. By default @code{custom-file} is your @file{.emacs}
-file. If you use another file, you must explicitly load it yourself.
-The two functions will initialize variables and faces as you have
-specified.
-
-@node Wishlist, , The Init File, Top
-@comment node-name, next, previous, up
-@section Wishlist
-
-@itemize @bullet
-@item
-The menu items should be grayed out when the information is
-missing. I.e. if a variable doesn't have a factory setting, the user
-should not be allowed to select the @samp{Factory} menu item.
-
-@item
-Better support for keyboard operations in the customize buffer.
-
-@item
-Integrate with @file{w3} so you can customization buffers with much
-better formatting. I'm thinking about adding a <custom>name</custom>
-tag. The latest w3 have some support for this, so come up with a
-convincing example.
-
-@item
-Add an `examples' section, with explained examples of custom type
-definitions.
-
-@item
-Support selectable color themes. I.e., change many faces by setting one
-variable.
-
-@item
-Support undo using lmi's @file{gnus-undo.el}.
-
-@item
-Make it possible to append to `choice', `radio', and `set' options.
-
-@item
-Make it possible to customize code, for example to enable or disable a
-global minor mode.
-
-@item
-Ask whether set or modified variables should be saved in
-@code{kill-buffer-hook}.
-
-Ditto for @code{kill-emacs-query-functions}.
-
-@item
-Command to check if there are any customization options that
-does not belong to an existing group.
-
-@item
-Optionally disable the point-cursor and instead highlight the selected
-item in XEmacs. This is like the *Completions* buffer in XEmacs.
-Suggested by Jens Lautenbacher
-@samp{<jens@@lemming0.lem.uni-karlsruhe.de>}.@refill
-
-@item
-Empty customization groups should start open (harder than it looks).
-
-@item
-Make it possible to include a comment/remark/annotation when saving an
-option.
-
-@end itemize
-
-@contents
-@bye
@item !
@itemx not
-@itemx \254
+@itemx \e,A,\e(B
\e$B$3$NO@M}:nMQ;R$OC10l$N0z?t$N$_$r$H$j$^$9!#$=$l$O$=$N0z?t$NCM$NO@M}H]Dj$r\e(B
\e$BJV$7$^$9!#\e(B
The @code{gnus-select-method} variable says where gnus should look for
news. This variable should be a list where the first element says
@dfn{how} and the second element says @dfn{where}. This method is your
-native method. All groups not fetched with this method are foreign
-groups.
+native method. All groups not fetched with this method are
+foreign groups.
For instance, if the @samp{news.somewhere.edu} @sc{nntp} server is where
you want to get your daily dosage of news from, you'd say:
@code{NNTPSERVER} environment variable. If that variable isn't set,
gnus will see whether @code{gnus-nntpserver-file}
(@file{/etc/nntpserver} by default) has any opinions on the matter. If
-that fails as well, gnus will try to use the machine running Emacs as an
-@sc{nntp} server. That's a long shot, though.
+that fails as well, gnus will try to use the machine running Emacs as an @sc{nntp} server. That's a long shot, though.
@vindex gnus-nntp-server
If @code{gnus-nntp-server} is set, this variable will override
@cindex slave
You might want to run more than one Emacs with more than one gnus at the
-same time. If you are using different @file{.newsrc} files (e.g., if
-you are using the two different gnusae to read from two different
-servers), that is no problem whatsoever. You just do it.
+same time. If you are using different @file{.newsrc} files (e.g., if you
+are using the two different gnusae to read from two different servers),
+that is no problem whatsoever. You just do it.
The problem appears when you want to run two Gnusae that use the same
@code{.newsrc} file.
To work around that problem some, we here at the Think-Tank at the gnus
-Towers have come up with a new concept: @dfn{Masters} and @dfn{slaves}.
-(We have applied for a patent on this concept, and have taken out a
-copyright on those words. If you wish to use those words in conjunction
-with each other, you have to send $1 per usage instance to me. Usage of
-the patent (@dfn{Master/Slave Relationships In Computer Applications})
-will be much more expensive, of course.)
+Towers have come up with a new concept: @dfn{Masters} and
+@dfn{slaves}. (We have applied for a patent on this concept, and have
+taken out a copyright on those words. If you wish to use those words in
+conjunction with each other, you have to send $1 per usage instance to
+me. Usage of the patent (@dfn{Master/Slave Relationships In Computer
+Applications}) will be much more expensive, of course.)
Anyways, you start one gnus up the normal way with @kbd{M-x gnus} (or
however you do it). Each subsequent slave gnusae should be started with
server supports @code{ask-server}? No? Good, because I don't have a
fail-safe answer. I would suggest just setting this variable to
@code{ask-server} and see whether any new groups appear within the next
-few days. If any do, then it works. If none do, then it doesn't work.
-I could write a function to make gnus guess whether the server supports
-@code{ask-server}, but it would just be a guess. So I won't. You could
-@code{telnet} to the server and say @code{HELP} and see whether it lists
-@samp{NEWGROUPS} among the commands it understands. If it does, then it
-might work. (But there are servers that lists @samp{NEWGROUPS} without
-supporting the function properly.)
+few days. If any do, then it works. If none do, then it doesn't
+work. I could write a function to make gnus guess whether the server
+supports @code{ask-server}, but it would just be a guess. So I won't.
+You could @code{telnet} to the server and say @code{HELP} and see
+whether it lists @samp{NEWGROUPS} among the commands it understands. If
+it does, then it might work. (But there are servers that lists
+@samp{NEWGROUPS} without supporting the function properly.)
This variable can also be a list of select methods. If so, gnus will
issue an @code{ask-server} command to each of the select methods, and
@item gnus-subscribe-interactively
@vindex gnus-subscribe-interactively
-Subscribe new groups interactively. This means that gnus will ask you
-about @strong{all} new groups. The groups you choose to subscribe to
-will be subscribed hierarchically.
+Subscribe new groups interactively. This means that gnus will ask
+you about @strong{all} new groups. The groups you choose to subscribe
+to will be subscribed hierarchically.
@item gnus-subscribe-killed
@vindex gnus-subscribe-killed
never delete the @file{.newsrc.eld} file---it contains much information
not stored in the @file{.newsrc} file.
-In addition, gnus does not change anything. Hail comrade Lars!
-
@vindex gnus-save-newsrc-file
You can turn off writing the @file{.newsrc} file by setting
@code{gnus-save-newsrc-file} to @code{nil}, which means you can delete
this file.
If gnus detects this file at startup, it will ask the user whether to
-read it. The auto save file is deleted whenever the real startup file
-is saved.
+read it. The auto save file is deleted whenever the real startup file is
+saved.
@vindex gnus-use-dribble-file
If @code{gnus-use-dribble-file} is @code{nil}, gnus won't create and
@c @icon{gnus-group-catchup-current}
Mark all unticked articles in this group as read
(@code{gnus-group-catchup-current}).
-@code{gnus-group-catchup-group-hook} is called when catching up a group
-from the group buffer.
+@code{gnus-group-catchup-group-hook} is called when catching up a group from
+the group buffer.
@item C
@kindex C (Group)
(auto-expire . t))
@end example
-We see that each element consists of a ``dotted pair''---the thing
-before the dot is the key, while the thing after the dot is the value.
-All the parameters have this form @emph{except} local variable specs,
-which are not dotted pairs, but proper lists.
+We see that each element consists of a "dotted pair"---the thing before
+the dot is the key, while the thing after the dot is the value. All the
+parameters have this form @emph{except} local variable specs, which are
+not dotted pairs, but proper lists.
The following group parameters can be used:
@end table
@item comment
-Elements that look like @code{(comment . "This is a comment")} are
-arbitrary comments on the group. They are currently ignored by gnus,
-but provide a place for you to store information on particular groups.
+Elements that look like @code{(comment . "This is a comment")}
+are arbitrary comments on the group. They are currently ignored by
+gnus, but provide a place for you to store information on particular
+groups.
@item charset
Elements that look like @code{(charset . iso-8859-1)} will make
@item z
@kindex z (Group)
@findex gnus-group-suspend
-Suspend gnus (@code{gnus-group-suspend}). This doesn't really exit
-gnus, but it kills all buffers except the Group buffer. I'm not sure
-why this is a gain, but then who am I to judge?
+Suspend gnus (@code{gnus-group-suspend}). This doesn't really exit gnus,
+but it kills all buffers except the Group buffer. I'm not sure why this
+is a gain, but then who am I to judge?
@item q
@kindex q (Group)
@item Q
@kindex Q (Group)
@findex gnus-group-quit
-Quit gnus without saving the @file{.newsrc} files
-(@code{gnus-group-quit}). The dribble file will be saved, though
-(@pxref{Auto Save}).
+Quit gnus without saving the @file{.newsrc} files (@code{gnus-group-quit}).
+The dribble file will be saved, though (@pxref{Auto Save}).
@end table
@vindex gnus-exit-gnus-hook
nicely, but is slower. The default function will return the wrong
answer in 5% of the cases. If this is unacceptable to you, use the
other function instead:
-
+
@lisp
(setq gnus-extract-address-components
'mail-extract-address-components)
@end lisp
-
+
@vindex gnus-summary-same-subject
@code{gnus-summary-same-subject} is a string indicating that the current
article has the same subject as the previous. This string will be used
ship a mail to a different account of yours. (If you're both
@code{root} and @code{postmaster} and get a mail for @code{postmaster}
to the @code{root} account, you may want to resend it to
-@code{postmaster}. Ordnung mu\e,A_\e(B sein!
+@code{postmaster}. Ordnung muß sein!
This command understands the process/prefix convention
(@pxref{Process/Prefix}).
you would do normally. The previous article will be
canceled/superseded.
-Just remember, kids: There is no `c' in `supersede'.
+Just remember, kids: There is no 'c' in 'supersede'.
@node Marking Articles
Marking articles as @dfn{expirable} (or have them marked as such
automatically) doesn't make much sense in normal groups---a user doesn't
control expiring of news articles, but in mail groups, for instance,
-articles marked as @dfn{expirable} can be deleted by gnus at any time.
+articles marked as @dfn{expirable} can be deleted by gnus at
+any time.
@end table
long thesis on cats' urinary tracts, and have to go home for dinner
before you've finished reading the thesis. You can then set a bookmark
in the article, and gnus will jump to this bookmark the next time it
-encounters the article. @xref{Setting Marks}
+encounters the article. @xref{Setting Marks}.
@item
@vindex gnus-replied-mark
@item gnus-fetch-old-headers
@vindex gnus-fetch-old-headers
If non-@code{nil}, gnus will attempt to build old threads by fetching
-more old headers---headers to articles marked as read. If you would
-like to display as few summary lines as possible, but still connect as
-many loose threads as possible, you should set this variable to
-@code{some} or a number. If you set it to a number, no more than that
-number of extra old headers will be fetched. In either case, fetching
-old headers only works if the backend you are using carries overview
-files---this would normally be @code{nntp}, @code{nnspool} and
+more old headers---headers to articles marked as read. If you
+would like to display as few summary lines as possible, but still
+connect as many loose threads as possible, you should set this variable
+to @code{some} or a number. If you set it to a number, no more than
+that number of extra old headers will be fetched. In either case,
+fetching old headers only works if the backend you are using carries
+overview files---this would normally be @code{nntp}, @code{nnspool} and
@code{nnml}. Also remember that if the root of the thread has been
expired by the server, there's not much gnus can do about that.
@code{nil} on read articles. The function is called with an article
data structure as the only parameter.
-If, for instance, you wish to pre-fetch only unread articles shorter
-than 100 lines, you could say something like:
+If, for instance, you wish to pre-fetch only unread articles shorter than 100 lines, you could say something like:
@lisp
(defun my-async-short-unread-p (data)
@end lisp
These functions will be called many, many times, so they should
-preferably be short and sweet to avoid slowing down gnus too much. It's
-probably a good idea to byte-compile things like this.
+preferably be short and sweet to avoid slowing down gnus too much.
+It's probably a good idea to byte-compile things like this.
@vindex gnus-prefetched-article-deletion-strategy
Articles have to be removed from the asynch buffer sooner or later. The
@end table
@vindex gnus-split-methods
-You can have gnus suggest where to save articles by plonking a regexp
-into the @code{gnus-split-methods} alist. For instance, if you would
-like to save articles related to gnus in the file @file{gnus-stuff}, and
-articles related to VM in @code{vm-stuff}, you could set this variable
-to something like:
+You can have gnus suggest where to save articles by plonking a regexp into
+the @code{gnus-split-methods} alist. For instance, if you would like to
+save articles related to gnus in the file @file{gnus-stuff}, and articles
+related to VM in @code{vm-stuff}, you could set this variable to something
+like:
@lisp
(("^Subject:.*gnus\\|^Newsgroups:.*gnus" "gnus-stuff")
This variable is @code{((gnus-article-archive-name))} by default, which
means that gnus will look at the articles it saves for an
-@code{Archive-name} line and use that as a suggestion for the file name.
+@code{Archive-name} line and use that as a suggestion for the file
+name.
Here's an example function to clean up file names somewhat. If you have
lots of mail groups called things like
By default, gnus tries to make sure that you don't have to read the same
article more than once by utilizing the crossposting mechanism
(@pxref{Crosspost Handling}). However, that simple and efficient
-approach may not work satisfactory for some users for various reasons.
+approach may not work satisfactory for some users for various
+reasons.
@enumerate
@item
@end lisp
Any headers that are to remain visible, but are not listed in this
-variable, will be displayed in random order after all the headers listed
-in this variable.
+variable, will be displayed in random order after all the headers listed in this variable.
@findex gnus-article-hide-boring-headers
@vindex gnus-article-display-hook
If the search engine changes its output substantially, @code{nnweb}
won't be able to parse it and will fail. One could hardly fault the Web
-providers if they were to do this---their @emph{raison d'\e,Aj\e(Btre} is to
+providers if they were to do this---their @emph{raison d'être} is to
make money off of advertisements, not to provide services to the
community. Since @code{nnweb} washes the ads off all the articles, one
might think that the providers might be somewhat miffed. We'll see.
@item !
@itemx not
-@itemx \e,A,\e(B
+@itemx ¬
This logical operator only takes a single argument. It returns the
logical negation of the value of its argument.
Kevin Davidson---came up with the name @dfn{ding}, so blame him.
@item
-Fran\e,Ag\e(Bois Pinard---many, many interesting and thorough bug reports, as
+François Pinard---many, many interesting and thorough bug reports, as
well as autoconf support.
@end itemize
Christopher Davis,
Andrew Eskilsson,
Kai Grossjohann,
-David K\e,Ae\e(Bgedal,
+David KÃ¥gedal,
Richard Pieri,
Fabrice Popineau,
Daniel Quinlan,
Gunnar Horrigmo,
Richard Hoskins,
Brad Howes,
-Fran\e,Ag\e(Bois Felix Ingrand,
+François Felix Ingrand,
Ishikawa Ichiro, @c Ishikawa
Lee Iverson,
Iwamuro Motonori, @c Iwamuro
@end example
@item
- tanken var at n\e,Ae\e(Br du bruker `gnus-startup-file' som prefix (FOO) til ilete
-opp en fil FOO-SERVER, FOO-SERVER.el, FOO-SERVER.eld, kan du la den v\e,Af\e(Bre en
+ tanken var at når du bruker `gnus-startup-file' som prefix (FOO) til å lete
+opp en fil FOO-SERVER, FOO-SERVER.el, FOO-SERVER.eld, kan du la den være en
liste hvor du bruker hvert element i listen som FOO, istedet. da kunne man
hatt forskjellige serveres startup-filer forskjellige steder.
for sci? first the sci.something? then sci.somethingelse?...
@item
-Ja, det burde v\e,Af\e(Bre en m\e,Ae\e(Bte \e,Ae\e(B si slikt. Kanskje en ny variabel?
-`gnus-use-few-score-files'? S\e,Ae\e(B kunne score-regler legges til den
+Ja, det burde være en måte å si slikt. Kanskje en ny variabel?
+`gnus-use-few-score-files'? SÃ¥ kunne score-regler legges til den
"mest" lokale score-fila. F. eks. ville no-gruppene betjenes av
"no.all.SCORE", osv.
@item
gnus-article-hide-pgp
-Selv ville jeg nok ha valgt islette den dersom teksten matcher
+Selv ville jeg nok ha valgt å slette den dersom teksten matcher
@example
"\\(This\s+\\)?[^ ]+ has been automatically signed by"
@end example
+++ /dev/null
-\input texinfo.tex
-
-@c %**start of header
-@setfilename widget
-@settitle The Emacs Widget Library
-@iftex
-@afourpaper
-@headings double
-@end iftex
-@c %**end of header
-
-@node Top, Introduction, (dir), (dir)
-@comment node-name, next, previous, up
-@top The Emacs Widget Library
-
-Version: 1.82
-
-@menu
-* Introduction::
-* User Interface::
-* Programming Example::
-* Setting Up the Buffer::
-* Basic Types::
-* Sexp Types::
-* Widget Properties::
-* Defining New Widgets::
-* Widget Wishlist.::
-@end menu
-
-@node Introduction, User Interface, Top, Top
-@comment node-name, next, previous, up
-@section Introduction
-
-Most graphical user interface toolkits, such as Motif and XView, provide
-a number of standard user interface controls (sometimes known as
-`widgets' or `gadgets'). Emacs doesn't really support anything like
-this, except for an incredible powerful text ``widget''. On the other
-hand, Emacs does provide the necessary primitives to implement many
-other widgets within a text buffer. The @code{widget} package
-simplifies this task.
-
-The basic widgets are:
-
-@table @code
-@item link
-Areas of text with an associated action. Intended for hypertext links
-embedded in text.
-@item push-button
-Like link, but intended for stand-alone buttons.
-@item editable-field
-An editable text field. It can be either variable or fixed length.
-@item menu-choice
-Allows the user to choose one of multiple options from a menu, each
-option is itself a widget. Only the selected option will be visible in
-the buffer.
-@item radio-button-choice
-Allows the user to choose one of multiple options by pushing radio
-buttons. The options are implemented as widgets. All options will be
-visible in the buffer.
-@item item
-A simple constant widget intended to be used in the @code{menu-choice} and
-@code{radio-button-choice} widgets.
-@item choice-item
-An button item only intended for use in choices. When pushed, the user
-will be asked to select another option from the choice widget.
-@item toggle
-A simple @samp{on}/@samp{off} switch.
-@item checkbox
-A checkbox (@samp{[ ]}/@samp{[X]}).
-@item editable-list
-Create an editable list. The user can insert or delete items in the
-list. Each list item is itself a widget.
-@end table
-
-Now of what possible use can support for widgets be in a text editor?
-I'm glad you asked. The answer is that widgets are useful for
-implementing forms. A @dfn{form} in emacs is a buffer where the user is
-supposed to fill out a number of fields, each of which has a specific
-meaning. The user is not supposed to change or delete any of the text
-between the fields. Examples of forms in Emacs are the @file{forms}
-package (of course), the customize buffers, the mail and news compose
-modes, and the @sc{html} form support in the @file{w3} browser.
-
-The advantages for a programmer of using the @code{widget} package to
-implement forms are:
-
-@enumerate
-@item
-More complex field than just editable text are supported.
-@item
-You can give the user immediate feedback if he enters invalid data in a
-text field, and sometimes prevent entering invalid data.
-@item
-You can have fixed sized fields, thus allowing multiple field to be
-lined up in columns.
-@item
-It is simple to query or set the value of a field.
-@item
-Editing happens in buffer, not in the mini-buffer.
-@item
-Packages using the library get a uniform look, making them easier for
-the user to learn.
-@item
-As support for embedded graphics improve, the widget library will
-extended to support it. This means that your code using the widget
-library will also use the new graphic features by automatic.
-@end enumerate
-
-In order to minimize the code that is loaded by users who does not
-create any widgets, the code has been split in two files:
-
-@table @file
-@item widget.el
-This will declare the user variables, define the function
-@code{widget-define}, and autoload the function @code{widget-create}.
-@item wid-edit.el
-Everything else is here, there is no reason to load it explicitly, as
-it will be autoloaded when needed.
-@end table
-
-@node User Interface, Programming Example, Introduction, Top
-@comment node-name, next, previous, up
-@section User Interface
-
-A form consist of read only text for documentation and some fields,
-where each the fields contain two parts, as tag and a value. The tags
-are used to identify the fields, so the documentation can refer to the
-foo field, meaning the field tagged with @samp{Foo}. Here is an example
-form:
-
-@example
-Here is some documentation.
-
-Name: @i{My Name} @strong{Choose}: This option
-Address: @i{Some Place
-In some City
-Some country.}
-
-See also @b{_other work_} for more information.
-
-Numbers: count to three below
-@b{[INS]} @b{[DEL]} @i{One}
-@b{[INS]} @b{[DEL]} @i{Eh, two?}
-@b{[INS]} @b{[DEL]} @i{Five!}
-@b{[INS]}
-
-Select multiple:
-
-@b{[X]} This
-@b{[ ]} That
-@b{[X]} Thus
-
-Select one:
-
-@b{(*)} One
-@b{( )} Another One.
-@b{( )} A Final One.
-
-@b{[Apply Form]} @b{[Reset Form]}
-@end example
-
-The top level widgets in is example are tagged @samp{Name},
-@samp{Choose}, @samp{Address}, @samp{_other work_}, @samp{Numbers},
-@samp{Select multiple}, @samp{Select one}, @samp{[Apply Form]}, and
-@samp{[Reset Form]}. There are basically two thing the user can do within
-a form, namely editing the editable text fields and activating the
-buttons.
-
-@subsection Editable Text Fields
-
-In the example, the value for the @samp{Name} is most likely displayed
-in an editable text field, and so are values for each of the members of
-the @samp{Numbers} list. All the normal Emacs editing operations are
-available for editing these fields. The only restriction is that each
-change you make must be contained within a single editable text field.
-For example, capitalizing all text from the middle of one field to the
-middle of another field is prohibited.
-
-Editing text fields are created by the @code{editable-field} widget.
-
-The editing text fields are highlighted with the
-@code{widget-field-face} face, making them easy to find.
-
-@deffn Face widget-field-face
-Face used for other editing fields.
-@end deffn
-
-@subsection Buttons
-
-Some portions of the buffer have an associated @dfn{action}, which can
-be @dfn{activated} by a standard key or mouse command. These portions
-are called @dfn{buttons}. The default commands for activating a button
-are:
-
-@table @kbd
-@item @key{RET}
-@deffn Command widget-button-press @var{pos} &optional @var{event}
-Activate the button at @var{pos}, defaulting to point.
-If point is not located on a button, activate the binding in
-@code{widget-global-map} (by default the global map).
-@end deffn
-
-@item mouse-2
-@deffn Command widget-button-click @var{event}
-Activate the button at the location of the mouse pointer. If the mouse
-pointer is located in an editable text field, activate the binding in
-@code{widget-global-map} (by default the global map).
-@end deffn
-@end table
-
-There are several different kind of buttons, all of which are present in
-the example:
-
-@table @emph
-@item The Option Field Tags.
-When you activate one of these buttons, you will be asked to choose
-between a number of different options. This is how you edit an option
-field. Option fields are created by the @code{menu-choice} widget. In
-the example, @samp{@b{Choose}} is an option field tag.
-@item The @samp{@b{[INS]}} and @samp{@b{[DEL]}} buttons.
-Activating these will insert or delete elements from a editable list.
-The list is created by the @code{editable-list} widget.
-@item Embedded Buttons.
-The @samp{@b{_other work_}} is an example of an embedded
-button. Embedded buttons are not associated with a fields, but can serve
-any purpose, such as implementing hypertext references. They are
-usually created by the @code{link} widget.
-@item The @samp{@b{[ ]}} and @samp{@b{[X]}} buttons.
-Activating one of these will convert it to the other. This is useful
-for implementing multiple-choice fields. You can create it wit
-@item The @samp{@b{( )}} and @samp{@b{(*)}} buttons.
-Only one radio button in a @code{radio-button-choice} widget can be selected at any
-time. When you push one of the unselected radio buttons, it will be
-selected and the previous selected radio button will become unselected.
-@item The @samp{@b{[Apply Form]}} @samp{@b{[Reset Form]}} buttons.
-These are explicit buttons made with the @code{push-button} widget. The main
-difference from the @code{link} widget is that the buttons are will be
-displayed as GUI buttons when possible.
-enough.
-@end table
-
-To make them easier to locate, buttons are emphasized in the buffer.
-
-@deffn Face widget-button-face
-Face used for buttons.
-@end deffn
-
-@defopt widget-mouse-face
-Face used for buttons when the mouse pointer is above it.
-@end defopt
-
-@subsection Navigation
-
-You can use all the normal Emacs commands to move around in a form
-buffer, plus you will have these additional commands:
-
-@table @kbd
-@item @key{TAB}
-@deffn Command widget-forward &optional count
-Move point @var{count} buttons or editing fields forward.
-@end deffn
-@item @key{M-TAB}
-@deffn Command widget-backward &optional count
-Move point @var{count} buttons or editing fields backward.
-@end deffn
-@end table
-
-@node Programming Example, Setting Up the Buffer, User Interface, Top
-@comment node-name, next, previous, up
-@section Programming Example
-
-Here is the code to implement the user interface example (see @ref{User
-Interface}).
-
-@lisp
-(require 'widget)
-
-(eval-when-compile
- (require 'wid-edit))
-
-(defvar widget-example-repeat)
-
-(defun widget-example ()
- "Create the widgets from the Widget manual."
- (interactive)
- (switch-to-buffer "*Widget Example*")
- (kill-all-local-variables)
- (make-local-variable 'widget-example-repeat)
- (let ((inhibit-read-only t))
- (erase-buffer))
- (widget-insert "Here is some documentation.\n\nName: ")
- (widget-create 'editable-field
- :size 13
- "My Name")
- (widget-create 'menu-choice
- :tag "Choose"
- :value "This"
- :help-echo "Choose me, please!"
- :notify (lambda (widget &rest ignore)
- (message "%s is a good choice!"
- (widget-value widget)))
- '(item :tag "This option" :value "This")
- '(choice-item "That option")
- '(editable-field :menu-tag "No option" "Thus option"))
- (widget-insert "Address: ")
- (widget-create 'editable-field
- "Some Place\nIn some City\nSome country.")
- (widget-insert "\nSee also ")
- (widget-create 'link
- :notify (lambda (&rest ignore)
- (widget-value-set widget-example-repeat
- '("En" "To" "Tre"))
- (widget-setup))
- "other work")
- (widget-insert " for more information.\n\nNumbers: count to three below\n")
- (setq widget-example-repeat
- (widget-create 'editable-list
- :entry-format "%i %d %v"
- :notify (lambda (widget &rest ignore)
- (let ((old (widget-get widget
- ':example-length))
- (new (length (widget-value widget))))
- (unless (eq old new)
- (widget-put widget ':example-length new)
- (message "You can count to %d." new))))
- :value '("One" "Eh, two?" "Five!")
- '(editable-field :value "three")))
- (widget-insert "\n\nSelect multiple:\n\n")
- (widget-create 'checkbox t)
- (widget-insert " This\n")
- (widget-create 'checkbox nil)
- (widget-insert " That\n")
- (widget-create 'checkbox
- :notify (lambda (&rest ignore) (message "Tickle"))
- t)
- (widget-insert " Thus\n\nSelect one:\n\n")
- (widget-create 'radio-button-choice
- :value "One"
- :notify (lambda (widget &rest ignore)
- (message "You selected %s"
- (widget-value widget)))
- '(item "One") '(item "Anthor One.") '(item "A Final One."))
- (widget-insert "\n")
- (widget-create 'push-button
- :notify (lambda (&rest ignore)
- (if (= (length (widget-value widget-example-repeat))
- 3)
- (message "Congratulation!")
- (error "Three was the count!")))
- "Apply Form")
- (widget-insert " ")
- (widget-create 'push-button
- :notify (lambda (&rest ignore)
- (widget-example))
- "Reset Form")
- (widget-insert "\n")
- (use-local-map widget-keymap)
- (widget-setup))
-@end lisp
-
-@node Setting Up the Buffer, Basic Types, Programming Example, Top
-@comment node-name, next, previous, up
-@section Setting Up the Buffer
-
-Widgets are created with @code{widget-create}, which returns a
-@dfn{widget} object. This object can be queried and manipulated by
-other widget functions, until it is deleted with @code{widget-delete}.
-After the widgets have been created, @code{widget-setup} must be called
-to enable them.
-
-@defun widget-create type [ keyword argument ]@dots{}
-Create and return a widget of type @var{type}.
-The syntax for the @var{type} argument is described in @ref{Basic Types}.
-
-The keyword arguments can be used to overwrite the keyword arguments
-that are part of @var{type}.
-@end defun
-
-@defun widget-delete widget
-Delete @var{widget} and remove it from the buffer.
-@end defun
-
-@defun widget-setup
-Setup a buffer to support widgets.
-
-This should be called after creating all the widgets and before allowing
-the user to edit them.
-@refill
-@end defun
-
-If you want to insert text outside the widgets in the form, the
-recommended way to do that is with @code{widget-insert}.
-
-@defun widget-insert
-Insert the arguments, either strings or characters, at point.
-The inserted text will be read only.
-@end defun
-
-There is a standard widget keymap which you might find useful.
-
-@defvr Const widget-keymap
-A keymap with the global keymap as its parent.@*
-@key{TAB} and @kbd{C-@key{TAB}} are bound to @code{widget-forward} and
-@code{widget-backward}, respectively. @kbd{@key{RET}} and @kbd{mouse-2}
-are bound to @code{widget-button-press} and
-@code{widget-button-}.@refill
-@end defvr
-
-@defvar widget-global-map
-Keymap used by @code{widget-button-press} and @code{widget-button-click}
-when not on a button. By default this is @code{global-map}.
-@end defvar
-
-@node Basic Types, Sexp Types, Setting Up the Buffer, Top
-@comment node-name, next, previous, up
-@section Basic Types
-
-The syntax of a type specification is given below:
-
-@example
-NAME ::= (NAME [KEYWORD ARGUMENT]... ARGS)
- | NAME
-@end example
-
-Where, @var{name} is a widget name, @var{keyword} is the name of a
-property, @var{argument} is the value of the property, and @var{args}
-are interpreted in a widget specific way.
-
-There following keyword arguments that apply to all widgets:
-
-@table @code
-@item :value
-The initial value for widgets of this type.
-
-@item :format
-This string will be inserted in the buffer when you create a widget.
-The following @samp{%} escapes are available:
-
-@table @samp
-@item %[
-@itemx %]
-The text inside will be marked as a button.
-
-@item %@{
-@itemx %@}
-The text inside will be displayed with the face specified by
-@code{:sample-face}.
-
-@item %v
-This will be replaces with the buffer representation of the widgets
-value. What this is depends on the widget type.
-
-@item %d
-Insert the string specified by @code{:doc} here.
-
-@item %h
-Like @samp{%d}, with the following modifications: If the documentation
-string is more than one line, it will add a button which will toggle
-between showing only the first line, and showing the full text.
-Furthermore, if there is no @code{:doc} property in the widget, it will
-instead examine the @code{:documentation-property} property. If it is a
-lambda expression, it will be called with the widget's value as an
-argument, and the result will be used as the documentation text.
-
-@item %t
-Insert the string specified by @code{:tag} here, or the @code{princ}
-representation of the value if there is no tag.
-
-@item %%
-Insert a literal @samp{%}.
-@end table
-
-@item :button-face
-Face used to highlight text inside %[ %] in the format.
-
-@item :doc
-The string inserted by the @samp{%d} escape in the format
-string.
-
-@item :tag
-The string inserted by the @samp{%t} escape in the format
-string.
-
-@item :tag-glyph
-Name of image to use instead of the string specified by `:tag' on
-Emacsen that supports it.
-
-@item :help-echo
-Message displayed whenever you move to the widget with either
-@code{widget-forward} or @code{widget-backward}.
-
-@item :indent
-An integer indicating the absolute number of spaces to indent children
-of this widget.
-
-@item :offset
-An integer indicating how many extra spaces to add to the widget's
-grandchildren compared to this widget.
-
-@item :extra-offset
-An integer indicating how many extra spaces to add to the widget's
-children compared to this widget.
-
-@item :notify
-A function called each time the widget or a nested widget is changed.
-The function is called with two or three arguments. The first argument
-is the widget itself, the second argument is the widget that was
-changed, and the third argument is the event leading to the change, if
-any.
-
-@item :menu-tag
-Tag used in the menu when the widget is used as an option in a
-@code{menu-choice} widget.
-
-@item :menu-tag-get
-Function used for finding the tag when the widget is used as an option
-in a @code{menu-choice} widget. By default, the tag used will be either the
-@code{:menu-tag} or @code{:tag} property if present, or the @code{princ}
-representation of the @code{:value} property if not.
-
-@item :match
-Should be a function called with two arguments, the widget and a value,
-and returning non-nil if the widget can represent the specified value.
-
-@item :validate
-A function which takes a widget as an argument, and return nil if the
-widgets current value is valid for the widget. Otherwise, it should
-return the widget containing the invalid data, and set that widgets
-@code{:error} property to a string explaining the error.
-
-@item :tab-order
-Specify the order in which widgets are traversed with
-@code{widget-forward} or @code{widget-backward}. This is only partially
-implemented.
-
-@enumerate a
-@item
-Widgets with tabbing order @code{-1} are ignored.
-
-@item
-(Unimplemented) When on a widget with tabbing order @var{n}, go to the
-next widget in the buffer with tabbing order @var{n+1} or @code{nil},
-whichever comes first.
-
-@item
-When on a widget with no tabbing order specified, go to the next widget
-in the buffer with a positive tabbing order, or @code{nil}
-@end enumerate
-
-@item :parent
-The parent of a nested widget (e.g. a @code{menu-choice} item or an
-element of a @code{editable-list} widget).
-
-@item :sibling-args
-This keyword is only used for members of a @code{radio-button-choice} or
-@code{checklist}. The value should be a list of extra keyword
-arguments, which will be used when creating the @code{radio-button} or
-@code{checkbox} associated with this item.
-
-@end table
-
-@deffn {User Option} widget-glyph-directory
-Directory where glyphs are found.
-Widget will look here for a file with the same name as specified for the
-image, with either a @samp{.xpm} (if supported) or @samp{.xbm} extension.
-@end deffn
-
-@deffn{User Option} widget-glyph-enable
-If non-nil, allow glyphs to appear on displayes where they are supported.
-@end deffn
-
-
-@menu
-* link::
-* url-link::
-* info-link::
-* push-button::
-* editable-field::
-* text::
-* menu-choice::
-* radio-button-choice::
-* item::
-* choice-item::
-* toggle::
-* checkbox::
-* checklist::
-* editable-list::
-@end menu
-
-@node link, url-link, Basic Types, Basic Types
-@comment node-name, next, previous, up
-@subsection The @code{link} Widget
-
-Syntax:
-
-@example
-TYPE ::= (link [KEYWORD ARGUMENT]... [ VALUE ])
-@end example
-
-The @var{value}, if present, is used to initialize the @code{:value}
-property. The value should be a string, which will be inserted in the
-buffer.
-
-@node url-link, info-link, link, Basic Types
-@comment node-name, next, previous, up
-@subsection The @code{url-link} Widget
-
-Syntax:
-
-@example
-TYPE ::= (url-link [KEYWORD ARGUMENT]... URL)
-@end example
-
-When this link is activated, the @sc{www} browser specified by
-@code{browse-url-browser-function} will be called with @var{url}.
-
-@node info-link, push-button, url-link, Basic Types
-@comment node-name, next, previous, up
-@subsection The @code{info-link} Widget
-
-Syntax:
-
-@example
-TYPE ::= (info-link [KEYWORD ARGUMENT]... ADDRESS)
-@end example
-
-When this link is activated, the build-in info browser is started on
-@var{address}.
-
-@node push-button, editable-field, info-link, Basic Types
-@comment node-name, next, previous, up
-@subsection The @code{push-button} Widget
-
-Syntax:
-
-@example
-TYPE ::= (push-button [KEYWORD ARGUMENT]... [ VALUE ])
-@end example
-
-The @var{value}, if present, is used to initialize the @code{:value}
-property. The value should be a string, which will be inserted in the
-buffer.
-
-The following extra properties are recognized.
-
-@table @code
-@item :text-format
-The format string used when the push button cannot be displayed
-graphically. There are two escapes, @code{%s}, which must be present
-exactly once, will be substituted with the tag, and @code{%%} will be
-substituted with a singe @samp{%}.
-@end table
-
-By default the tag will be shown in brackets.
-
-@node editable-field, text, push-button, Basic Types
-@comment node-name, next, previous, up
-@subsection The @code{editable-field} Widget
-
-Syntax:
-
-@example
-TYPE ::= (editable-field [KEYWORD ARGUMENT]... [ VALUE ])
-@end example
-
-The @var{value}, if present, is used to initialize the @code{:value}
-property. The value should be a string, which will be inserted in
-field. This widget will match all string values.
-
-The following extra properties are recognized.
-
-@table @code
-@item :size
-The width of the editable field.@*
-By default the field will reach to the end of the line.
-
-@item :value-face
-Face used for highlighting the editable field. Default is
-@code{widget-field-face}.
-
-@item :secret
-Character used to display the value. You can set this to e.g. @code{?*}
-if the field contains a password or other secret information. By
-default, the value is not secret.
-
-@item :valid-regexp
-By default the @code{:validate} function will match the content of the
-field with the value of this attribute. The default value is @code{""}
-which matches everything.
-
-@item :keymap
-Keymap used in the editable field. The default value is
-@code{widget-field-keymap}, which allows you to use all the normal
-editing commands, even if the buffers major mode supress some of them.
-Pressing return activates the function specified by @code{:activate}.
-
-@item :hide-front-space
-@itemx :hide-rear-space
-In order to keep track of the editable field, emacs places an invisible
-space character in front of the field, and for fixed sized fields also
-in the rear end of the field. For fields that extent to the end of the
-line, the terminating linefeed serves that purpose instead.
-
-Emacs will try to make the spaces intangible when it is safe to do so.
-Intangible means that the cursor motion commands will skip over the
-character as if it didn't exist. This is safe to do when the text
-preceding or following the widget cannot possible change during the
-lifetime of the @code{editable-field} widget. The preferred way to tell
-Emacs this, is to add text to the @code{:format} property around the
-value. For example @code{:format "Tag: %v "}.
-
-You can overwrite the internal safety check by setting the
-@code{:hide-front-space} or @code{:hide-rear-space} properties to
-non-nil. This is not recommended. For example, @emph{all} text that
-belongs to a widget (i.e. is created from its @code{:format} string) will
-change whenever the widget changes its value.
-
-@end table
-
-@node text, menu-choice, editable-field, Basic Types
-@comment node-name, next, previous, up
-@subsection The @code{text} Widget
-
-This is just like @code{editable-field}, but intended for multiline text
-fields. The default @code{:keymap} is @code{widget-text-keymap}, which
-does not rebind the return key.
-
-@node menu-choice, radio-button-choice, text, Basic Types
-@comment node-name, next, previous, up
-@subsection The @code{menu-choice} Widget
-
-Syntax:
-
-@example
-TYPE ::= (menu-choice [KEYWORD ARGUMENT]... TYPE ... )
-@end example
-
-The @var{type} arguments represents each possible choice. The widgets
-value of will be the value of the chosen @var{type} argument. This
-widget will match any value that matches at least one of the specified
-@var{type} arguments.
-
-@table @code
-@item :void
-Widget type used as a fallback when the value does not match any of the
-specified @var{type} arguments.
-
-@item :case-fold
-Set this to nil if you don't want to ignore case when prompting for a
-choice through the minibuffer.
-
-@item :children
-A list whose car is the widget representing the currently chosen type in
-the buffer.
-
-@item :choice
-The current chosen type
-
-@item :args
-The list of types.
-@end table
-
-@node radio-button-choice, item, menu-choice, Basic Types
-@comment node-name, next, previous, up
-@subsection The @code{radio-button-choice} Widget
-
-Syntax:
-
-@example
-TYPE ::= (radio-button-choice [KEYWORD ARGUMENT]... TYPE ... )
-@end example
-
-The @var{type} arguments represents each possible choice. The widgets
-value of will be the value of the chosen @var{type} argument. This
-widget will match any value that matches at least one of the specified
-@var{type} arguments.
-
-The following extra properties are recognized.
-
-@table @code
-@item :entry-format
-This string will be inserted for each entry in the list.
-The following @samp{%} escapes are available:
-@table @samp
-@item %v
-Replaced with the buffer representation of the @var{type} widget.
-@item %b
-Replace with the radio button.
-@item %%
-Insert a literal @samp{%}.
-@end table
-
-@item button-args
-A list of keywords to pass to the radio buttons. Useful for setting
-e.g. the @samp{:help-echo} for each button.
-
-@item :buttons
-The widgets representing the radio buttons.
-
-@item :children
-The widgets representing each type.
-
-@item :choice
-The current chosen type
-
-@item :args
-The list of types.
-@end table
-
-You can add extra radio button items to a @code{radio-button-choice}
-widget after it has been created with the function
-@code{widget-radio-add-item}.
-
-@defun widget-radio-add-item widget type
-Add to @code{radio-button-choice} widget @var{widget} a new radio button item of type
-@var{type}.
-@end defun
-
-Please note that such items added after the @code{radio-button-choice}
-widget has been created will @strong{not} be properly destructed when
-you call @code{widget-delete}.
-
-@node item, choice-item, radio-button-choice, Basic Types
-@comment node-name, next, previous, up
-@subsection The @code{item} Widget
-
-Syntax:
-
-@example
-ITEM ::= (item [KEYWORD ARGUMENT]... VALUE)
-@end example
-
-The @var{value}, if present, is used to initialize the @code{:value}
-property. The value should be a string, which will be inserted in the
-buffer. This widget will only match the specified value.
-
-@node choice-item, toggle, item, Basic Types
-@comment node-name, next, previous, up
-@subsection The @code{choice-item} Widget
-
-Syntax:
-
-@example
-ITEM ::= (choice-item [KEYWORD ARGUMENT]... VALUE)
-@end example
-
-The @var{value}, if present, is used to initialize the @code{:value}
-property. The value should be a string, which will be inserted in the
-buffer as a button. Activating the button of a @code{choice-item} is
-equivalent to activating the parent widget. This widget will only match
-the specified value.
-
-@node toggle, checkbox, choice-item, Basic Types
-@comment node-name, next, previous, up
-@subsection The @code{toggle} Widget
-
-Syntax:
-
-@example
-TYPE ::= (toggle [KEYWORD ARGUMENT]...)
-@end example
-
-The widget has two possible states, `on' and `off', which corresponds to
-a @code{t} or @code{nil} value.
-
-The following extra properties are recognized.
-
-@table @code
-@item :on
-String representing the `on' state. By default the string @samp{on}.
-@item :off
-String representing the `off' state. By default the string @samp{off}.
-@item :on-glyph
-Name of a glyph to be used instead of the `:on' text string, on emacsen
-that supports it.
-@item :off-glyph
-Name of a glyph to be used instead of the `:off' text string, on emacsen
-that supports it.
-@end table
-
-@node checkbox, checklist, toggle, Basic Types
-@comment node-name, next, previous, up
-@subsection The @code{checkbox} Widget
-
-The widget has two possible states, `selected' and `unselected', which
-corresponds to a @code{t} or @code{nil} value.
-
-Syntax:
-
-@example
-TYPE ::= (checkbox [KEYWORD ARGUMENT]...)
-@end example
-
-@node checklist, editable-list, checkbox, Basic Types
-@comment node-name, next, previous, up
-@subsection The @code{checklist} Widget
-
-Syntax:
-
-@example
-TYPE ::= (checklist [KEYWORD ARGUMENT]... TYPE ... )
-@end example
-
-The @var{type} arguments represents each checklist item. The widgets
-value of will be a list containing the value of each ticked @var{type}
-argument. The checklist widget will match a list whose elements all
-matches at least one of the specified @var{type} arguments.
-
-The following extra properties are recognized.
-
-@table @code
-@item :entry-format
-This string will be inserted for each entry in the list.
-The following @samp{%} escapes are available:
-@table @samp
-@item %v
-Replaced with the buffer representation of the @var{type} widget.
-@item %b
-Replace with the checkbox.
-@item %%
-Insert a literal @samp{%}.
-@end table
-
-@item button-args
-A list of keywords to pass to the checkboxes. Useful for setting
-e.g. the @samp{:help-echo} for each checkbox.
-
-@item :buttons
-The widgets representing the checkboxes.
-
-@item :children
-The widgets representing each type.
-
-@item :args
-The list of types.
-@end table
-
-@node editable-list, , checklist, Basic Types
-@comment node-name, next, previous, up
-@subsection The @code{editable-list} Widget
-
-Syntax:
-
-@example
-TYPE ::= (editable-list [KEYWORD ARGUMENT]... TYPE)
-@end example
-
-The value is a list, where each member represent one widget of type
-@var{type}.
-
-The following extra properties are recognized.
-
-@table @code
-@item :entry-format
-This string will be inserted for each entry in the list.
-The following @samp{%} escapes are available:
-@table @samp
-@item %v
-This will be replaced with the buffer representation of the @var{type}
-widget.
-@item %i
-Insert the @b{[INS]} button.
-@item %d
-Insert the @b{[DEL]} button.
-@item %%
-Insert a literal @samp{%}.
-@end table
-
-@item :insert-button-args
-A list of keyword arguments to pass to the insert buttons.
-
-@item :delete-button-args
-A list of keyword arguments to pass to the delete buttons.
-
-@item :append-button-args
-A list of keyword arguments to pass to the trailing insert button.
-
-
-@item :buttons
-The widgets representing the insert and delete buttons.
-
-@item :children
-The widgets representing the elements of the list.
-
-@item :args
-List whose car is the type of the list elements.
-
-@end table
-
-@node Sexp Types, Widget Properties, Basic Types, Top
-@comment
-@section Sexp Types
-
-A number of widgets for editing s-expressions (lisp types) are also
-available. These basically fall in three categories: @dfn{atoms},
-@dfn{composite types}, and @dfn{generic}.
-
-@menu
-* generic::
-* atoms::
-* composite::
-@end menu
-
-@node generic, atoms, Sexp Types, Sexp Types
-@comment node-name, next, previous, up
-@subsection The Generic Widget.
-
-The @code{const} and @code{sexp} widgets can contain any lisp
-expression. In the case of the @code{const} widget the user is
-prohibited from editing edit it, which is mainly useful as a component
-of one of the composite widgets.
-
-The syntax for the generic widgets is
-
-@example
-TYPE ::= (const [KEYWORD ARGUMENT]... [ VALUE ])
-@end example
-
-The @var{value}, if present, is used to initialize the @code{:value}
-property and can be any s-expression.
-
-@deffn Widget const
-This will display any valid s-expression in an immutable part of the
-buffer.
-@end deffn
-
-@deffn Widget sexp
-This will allow you to edit any valid s-expression in an editable buffer
-field.
-
-The @code{sexp} widget takes the same keyword arguments as the
-@code{editable-field} widget.
-@end deffn
-
-@node atoms, composite, generic, Sexp Types
-@comment node-name, next, previous, up
-@subsection Atomic Sexp Widgets.
-
-The atoms are s-expressions that does not consist of other
-s-expressions. A string is an atom, while a list is a composite type.
-You can edit the value of an atom with the following widgets.
-
-The syntax for all the atoms are
-
-@example
-TYPE ::= (NAME [KEYWORD ARGUMENT]... [ VALUE ])
-@end example
-
-The @var{value}, if present, is used to initialize the @code{:value}
-property and must be an expression of the same type as the widget.
-I.e. the string widget can only be initialized with a string.
-
-All the atom widgets take the same keyword arguments as the @code{editable-field}
-widget.
-
-@deffn Widget string
-Allows you to edit a string in an editable field.
-@end deffn
-
-@deffn Widget file
-Allows you to edit a file name in an editable field. You you activate
-the tag button, you can edit the file name in the mini-buffer with
-completion.
-
-Keywords:
-@table @code
-@item :must-match
-If this is set to non-nil, only existing file names will be allowed in
-the minibuffer.
-@end table
-@end deffn
-
-@deffn Widget directory
-Allows you to edit a directory name in an editable field.
-Similar to the @code{file} widget.
-@end deffn
-
-@deffn Widget symbol
-Allows you to edit a lisp symbol in an editable field.
-@end deffn
-
-@deffn Widget integer
-Allows you to edit an integer in an editable field.
-@end deffn
-
-@deffn Widget number
-Allows you to edit a number in an editable field.
-@end deffn
-
-@deffn Widget boolean
-Allows you to edit a boolean. In lisp this means a variable which is
-either nil meaning false, or non-nil meaning true.
-@end deffn
-
-
-@node composite, , atoms, Sexp Types
-@comment node-name, next, previous, up
-@subsection Composite Sexp Widgets.
-
-The syntax for the composite are
-
-@example
-TYPE ::= (NAME [KEYWORD ARGUMENT]... COMPONENT...)
-@end example
-
-Where each @var{component} must be a widget type. Each component widget
-will be displayed in the buffer, and be editable to the user.
-
-@deffn Widget cons
-The value of a @code{cons} widget is a cons-cell where the car is the
-value of the first component and the cdr is the value of the second
-component. There must be exactly two components.
-@end deffn
-
-@deffn Widget lisp
-The value of a @code{lisp} widget is a list containing the value of
-each of its component.
-@end deffn
-
-@deffn Widget vector
-The value of a @code{vector} widget is a vector containing the value of
-each of its component.
-@end deffn
-
-The above suffice for specifying fixed size lists and vectors. To get
-variable length lists and vectors, you can use a @code{choice},
-@code{set} or @code{repeat} widgets together with the @code{:inline}
-keywords. If any component of a composite widget has the @code{:inline}
-keyword set, its value must be a list which will then be spliced into
-the composite. For example, to specify a list whose first element must
-be a file name, and whose remaining arguments should either by the
-symbol @code{t} or two files, you can use the following widget
-specification:
-
-@example
-(list file
- (choice (const t)
- (list :inline t
- :value ("foo" "bar")
- string string)))
-@end example
-
-The value of a widget of this type will either have the form
-@samp{(file t)} or @code{(file string string)}.
-
-This concept of inline is probably hard to understand. It was certainly
-hard to implement so instead of confuse you more by trying to explain it
-here, I'll just suggest you meditate over it for a while.
-
-@deffn Widget choice
-Allows you to edit a sexp which may have one of fixed set of types. It
-is currently implemented with the @code{choice-menu} basic widget, and
-has a similar syntax.
-@end deffn
-
-@deffn Widget set
-Allows you to specify a type which must be a list whose elements all
-belong to given set. The elements of the list is not significant. This
-is implemented on top of the @code{checklist} basic widget, and has a
-similar syntax.
-@end deffn
-
-@deffn Widget repeat
-Allows you to specify a variable length list whose members are all of
-the same type. Implemented on top of the `editable-list' basic widget,
-and has a similar syntax.
-@end deffn
-
-@node Widget Properties, Defining New Widgets, Sexp Types, Top
-@comment node-name, next, previous, up
-@section Properties
-
-You can examine or set the value of a widget by using the widget object
-that was returned by @code{widget-create}.
-
-@defun widget-value widget
-Return the current value contained in @var{widget}.
-It is an error to call this function on an uninitialized widget.
-@end defun
-
-@defun widget-value-set widget value
-Set the value contained in @var{widget} to @var{value}.
-It is an error to call this function with an invalid @var{value}.
-@end defun
-
-@strong{Important:} You @emph{must} call @code{widget-setup} after
-modifying the value of a widget before the user is allowed to edit the
-widget again. It is enough to call @code{widget-setup} once if you
-modify multiple widgets. This is currently only necessary if the widget
-contains an editing field, but may be necessary for other widgets in the
-future.
-
-If your application needs to associate some information with the widget
-objects, for example a reference to the item being edited, it can be
-done with @code{widget-put} and @code{widget-get}. The property names
-must begin with a @samp{:}.
-
-@defun widget-put widget property value
-In @var{widget} set @var{property} to @var{value}.
-@var{property} should be a symbol, while @var{value} can be anything.
-@end defun
-
-@defun widget-get widget property
-In @var{widget} return the value for @var{property}.
-@var{property} should be a symbol, the value is what was last set by
-@code{widget-put} for @var{property}.
-@end defun
-
-@defun widget-member widget property
-Non-nil if @var{widget} has a value (even nil) for property @var{property}.
-@end defun
-
-Occasionally it can be useful to know which kind of widget you have,
-i.e. the name of the widget type you gave when the widget was created.
-
-@defun widget-type widget
-Return the name of @var{widget}, a symbol.
-@end defun
-
-Widgets can be in two states: active, which means they are modifiable by
-the user, or inactive, which means they cannot be modified by the user.
-You can query or set the state with the following code:
-
-@lisp
-;; Examine if @var{widget} is active or not.
-(if (widget-apply @var{widget} :active)
- (message "Widget is active.")
- (message "Widget is inactive.")
-
-;; Make @var{widget} inactive.
-(widget-apply @var{widget} :deactivate)
-
-;; Make @var{widget} active.
-(widget-apply @var{widget} :activate)
-@end lisp
-
-A widget is inactive if itself, or any of its ancestors (found by
-following the @code{:parent} link) have been deactivated. To make sure
-a widget is really active, you must therefore activate both itself, and
-all its ancestors.
-
-@lisp
-(while widget
- (widget-apply widget :activate)
- (setq widget (widget-get widget :parent)))
-@end lisp
-
-You can check if a widget has been made inactive by examining the value
-of @code{:inactive} keyword. If this is non-nil, the widget itself has
-been deactivated. This is different from using the @code{:active}
-keyword, in that the later tell you if the widget @strong{or} any of its
-ancestors have been deactivated. Do not attempt to set the
-@code{:inactive} keyword directly. Use the @code{:activate}
-@code{:deactivated} keywords instead.
-
-
-@node Defining New Widgets, Widget Wishlist., Widget Properties, Top
-@comment node-name, next, previous, up
-@section Defining New Widgets
-
-You can define specialized widgets with @code{define-widget}. It allows
-you to create a shorthand for more complex widgets, including specifying
-component widgets and default new default values for the keyword
-arguments.
-
-@defun widget-define name class doc &rest args
-Define a new widget type named @var{name} from @code{class}.
-
-@var{name} and class should both be symbols, @code{class} should be one
-of the existing widget types.
-
-The third argument @var{DOC} is a documentation string for the widget.
-
-After the new widget has been defined, the following two calls will
-create identical widgets:
-
-@itemize @bullet
-@item
-@lisp
-(widget-create @var{name})
-@end lisp
-
-@item
-@lisp
-(apply widget-create @var{class} @var{args})
-@end lisp
-@end itemize
-
-@end defun
-
-Using @code{widget-define} does just store the definition of the widget
-type in the @code{widget-type} property of @var{name}, which is what
-@code{widget-create} uses.
-
-If you just want to specify defaults for keywords with no complex
-conversions, you can use @code{identity} as your conversion function.
-
-The following additional keyword arguments are useful when defining new
-widgets:
-@table @code
-@item :convert-widget
-Function to convert a widget type before creating a widget of that
-type. It takes a widget type as an argument, and returns the converted
-widget type. When a widget is created, this function is called for the
-widget type and all the widgets parent types, most derived first.
-
-@item :value-to-internal
-Function to convert the value to the internal format. The function
-takes two arguments, a widget and an external value, and returns the
-internal value. The function is called on the present @code{:value}
-when the widget is created, and on any value set later with
-@code{widget-value-set}.
-
-@item :value-to-external
-Function to convert the value to the external format. The function
-takes two arguments, a widget and an internal value, and returns the
-internal value. The function is called on the present @code{:value}
-when the widget is created, and on any value set later with
-@code{widget-value-set}.
-
-@item :create
-Function to create a widget from scratch. The function takes one
-argument, a widget type, and create a widget of that type, insert it in
-the buffer, and return a widget object.
-
-@item :delete
-Function to delete a widget. The function takes one argument, a widget,
-and should remove all traces of the widget from the buffer.
-
-@item :value-create
-Function to expand the @samp{%v} escape in the format string. It will
-be called with the widget as its argument. Should
-insert a representation of the widgets value in the buffer.
-
-@item :value-delete
-Should remove the representation of the widgets value from the buffer.
-It will be called with the widget as its argument. It doesn't have to
-remove the text, but it should release markers and delete nested widgets
-if such has been used.
-
-@item :format-handler
-Function to handle unknown @samp{%} escapes in the format string. It
-will be called with the widget and the escape character as arguments.
-You can set this to allow your widget to handle non-standard escapes.
-
-You should end up calling @code{widget-default-format-handler} to handle
-unknown escape sequences, which will handle the @samp{%h} and any future
-escape sequences, as well as give an error for unknown escapes.
-@end table
-
-If you want to define a new widget from scratch, use the @code{default}
-widget as its base.
-
-@deffn Widget default [ keyword argument ]
-Widget used as a base for other widgets.
-
-It provides most of the functionality that is referred to as ``by
-default'' in this text.
-@end deffn
-
-@node Widget Wishlist., , Defining New Widgets, Top
-@comment node-name, next, previous, up
-@section Wishlist.
-
-@itemize @bullet
-@item
-It should be possible to add or remove items from a list with @kbd{C-k}
-and @kbd{C-o} (suggested by @sc{rms}).
-
-@item
-The @samp{[INS]} and @samp{[DEL]} buttons should be replaced by a single
-dash (@samp{-}). The dash should be a button that, when activated, ask
-whether you want to add or delete an item (@sc{rms} wanted to git rid of
-the ugly buttons, the dash is my idea).
-
-@item
-Widgets such as @code{file} and @code{symbol} should prompt with completion.
-
-@item
-The @code{menu-choice} tag should be prettier, something like the abbreviated
-menus in Open Look.
-
-@item
-The functions used in many widgets, like
-@code{widget-item-convert-widget}, should not have names that are
-specific to the first widget where I happended to use them.
-
-@item
-Flag to make @code{widget-move} skip a specified button.
-
-@item
-Document `helper' functions for defining new widgets.
-
-@item
-Activate the item this is below the mouse when the button is
-released, not the item this is below the mouse when the button is
-pressed. Dired and grep gets this right. Give feedback if possible.
-
-@item
-Use @samp{@@deffn Widget} to document widgets.
-
-@item
-Document global keywords in one place.
-
-Document keywords particular to a specific widget in the widget
-definition.
-
-Document the `default' widget first.
-
-Split, when needed, keywords into those useful for normal
-customization, those primarily useful when deriving, and those who
-represent runtime information.
-
-@item
-Figure out terminology and @sc{api} for the class/type/object/super
-stuff.
-
-Perhaps the correct model is delegation?
-
-@item
-Document @code{widget-browse}.
-
-@item
-Make indentation work with glyphs and propertional fonts.
-
-@item
-Add object and class hierarchies to the browser.
-
-@end itemize
-
-@contents
-@bye