diff options
| author | Stefan Monnier | 2010-09-30 01:28:20 +0200 |
|---|---|---|
| committer | Stefan Monnier | 2010-09-30 01:28:20 +0200 |
| commit | a01a7932080e8a6e7bc8472c58cefabcc2c37df3 (patch) | |
| tree | 94b28b19c8f1536e76ffe7d5826811b74a79e3a5 /doc/misc | |
| parent | cc390e46c7ba95b76ea133d98fd386214cd01709 (diff) | |
| parent | 6b0f7311f16646e0de2045b2410e20921901c616 (diff) | |
| download | emacs-a01a7932080e8a6e7bc8472c58cefabcc2c37df3.tar.gz emacs-a01a7932080e8a6e7bc8472c58cefabcc2c37df3.zip | |
Merge from trunk
Diffstat (limited to 'doc/misc')
| -rw-r--r-- | doc/misc/ChangeLog | 81 | ||||
| -rw-r--r-- | doc/misc/Makefile.in | 4 | ||||
| -rw-r--r-- | doc/misc/ediff.texi | 3 | ||||
| -rw-r--r-- | doc/misc/emacs-mime.texi | 18 | ||||
| -rw-r--r-- | doc/misc/epa.texi | 25 | ||||
| -rw-r--r-- | doc/misc/gnus-news.texi | 36 | ||||
| -rw-r--r-- | doc/misc/gnus.texi | 1242 | ||||
| -rw-r--r-- | doc/misc/message.texi | 8 | ||||
| -rw-r--r-- | doc/misc/tramp.texi | 21 | ||||
| -rw-r--r-- | doc/misc/url.texi | 24 | ||||
| -rw-r--r-- | doc/misc/woman.texi | 4 |
11 files changed, 415 insertions, 1051 deletions
diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog index 29cf98e3330..8584e4c26b5 100644 --- a/doc/misc/ChangeLog +++ b/doc/misc/ChangeLog | |||
| @@ -1,3 +1,84 @@ | |||
| 1 | 2010-09-29 Daiki Ueno <ueno@unixuser.org> | ||
| 2 | |||
| 3 | * epa.texi (Bug Reports): New section. | ||
| 4 | |||
| 5 | 2010-09-29 Glenn Morris <rgm@gnu.org> | ||
| 6 | |||
| 7 | * Makefile.in (top_srcdir): Remove unused variable. | ||
| 8 | |||
| 9 | 2010-09-26 Lars Magne Ingebrigtsen <larsi@gnus.org> | ||
| 10 | |||
| 11 | * gnus-news.texi: Mention nnimap-inbox. | ||
| 12 | |||
| 13 | * gnus.texi (Picons): Document gnus-picon-inhibit-top-level-domains. | ||
| 14 | |||
| 15 | 2010-09-26 Julien Danjou <julien@danjou.info> | ||
| 16 | |||
| 17 | * gnus.texi (Oort Gnus): Remove mention of ssl.el | ||
| 18 | |||
| 19 | 2010-09-26 Lars Magne Ingebrigtsen <larsi@gnus.org> | ||
| 20 | |||
| 21 | * gnus.texi (Security): Remove gpg.el mention. | ||
| 22 | |||
| 23 | 2010-09-26 Andreas Seltenreich <seltenreich@gmx.de> | ||
| 24 | |||
| 25 | * gnus.texi (Browse Foreign Server): New variable | ||
| 26 | gnus-browse-subscribe-newsgroup-method. | ||
| 27 | |||
| 28 | * gnus-news.texi: Mention it. | ||
| 29 | |||
| 30 | 2010-09-26 Lars Magne Ingebrigtsen <larsi@gnus.org> | ||
| 31 | |||
| 32 | * gnus.texi (NoCeM): Removed. | ||
| 33 | (Startup Variables): No jingle. | ||
| 34 | |||
| 35 | 2010-09-25 Ulrich Mueller <ulm@gentoo.org> | ||
| 36 | |||
| 37 | * woman.texi (Interface Options): xz compression is now supported. | ||
| 38 | |||
| 39 | 2010-09-25 Lars Magne Ingebrigtsen <larsi@gnus.org> | ||
| 40 | |||
| 41 | * gnus.texi (Article Commands): Document gnus-fetch-partial-articles. | ||
| 42 | (Unavailable Servers): Document gnus-server-copy-server. | ||
| 43 | (Using IMAP): Document the new nnimap. | ||
| 44 | |||
| 45 | 2010-09-25 Julien Danjou <julien@danjou.info> | ||
| 46 | |||
| 47 | * gnus.texi (Customizing Articles): Remove gnus-treat-translate | ||
| 48 | |||
| 49 | 2010-09-24 Glenn Morris <rgm@gnu.org> | ||
| 50 | |||
| 51 | * url.texi (Disk Caching): Tweak previous change. | ||
| 52 | |||
| 53 | 2010-09-24 Julien Danjou <julien@danjou.info> | ||
| 54 | |||
| 55 | * url.texi (Disk Caching): Mention url-cache-expire-time, | ||
| 56 | url-cache-expired, and url-fetch-from-cache. | ||
| 57 | |||
| 58 | 2010-09-24 Julien Danjou <julien@danjou.info> | ||
| 59 | |||
| 60 | * gnus.texi: Add Gravatars. | ||
| 61 | |||
| 62 | 2010-09-23 Lars Magne Ingebrigtsen <larsi@gnus.org> | ||
| 63 | |||
| 64 | * gnus.texi (Startup Variables): Mention gnus-use-backend-marks. | ||
| 65 | |||
| 66 | 2010-09-21 Lars Magne Ingebrigtsen <larsi@gnus.org> | ||
| 67 | |||
| 68 | * gnus.texi (Expunging mailboxes): Update name of the expunging | ||
| 69 | command. | ||
| 70 | |||
| 71 | 2010-09-20 Katsumi Yamaoka <yamaoka@jpl.org> | ||
| 72 | |||
| 73 | * emacs-mime.texi (rfc2047): Update description for | ||
| 74 | rfc2047-encode-parameter. | ||
| 75 | |||
| 76 | 2010-09-13 Michael Albinus <michael.albinus@gmx.de> | ||
| 77 | |||
| 78 | * tramp.texi (Inline methods): Remove "ssh1_old", "ssh2_old" and | ||
| 79 | "fish" methods. | ||
| 80 | (External methods): Remove "scp1_old" and "scp2_old" methods. | ||
| 81 | |||
| 1 | 2010-09-09 Michael Albinus <michael.albinus@gmx.de> | 82 | 2010-09-09 Michael Albinus <michael.albinus@gmx.de> |
| 2 | 83 | ||
| 3 | * tramp.texi: Remove Japanese manual. Fix typo. | 84 | * tramp.texi: Remove Japanese manual. Fix typo. |
diff --git a/doc/misc/Makefile.in b/doc/misc/Makefile.in index 18d9d9a6377..063b40975bf 100644 --- a/doc/misc/Makefile.in +++ b/doc/misc/Makefile.in | |||
| @@ -1,7 +1,8 @@ | |||
| 1 | #### Makefile for documentation other than the Emacs manual. | 1 | #### Makefile for documentation other than the Emacs manual. |
| 2 | 2 | ||
| 3 | # Copyright (C) 1994, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, | 3 | # Copyright (C) 1994, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, |
| 4 | # 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. | 4 | # 2004, 2005, 2006, 2007, 2008, 2009, 2010 |
| 5 | # Free Software Foundation, Inc. | ||
| 5 | 6 | ||
| 6 | # This file is part of GNU Emacs. | 7 | # This file is part of GNU Emacs. |
| 7 | 8 | ||
| @@ -23,7 +24,6 @@ | |||
| 23 | # subdirectory of the source tree. This is | 24 | # subdirectory of the source tree. This is |
| 24 | # set by the configure script's `--srcdir' option. | 25 | # set by the configure script's `--srcdir' option. |
| 25 | srcdir=@srcdir@ | 26 | srcdir=@srcdir@ |
| 26 | top_srcdir=@top_srcdir@ | ||
| 27 | 27 | ||
| 28 | # Tell make where to find source files; this is needed for the makefiles. | 28 | # Tell make where to find source files; this is needed for the makefiles. |
| 29 | VPATH=@srcdir@ | 29 | VPATH=@srcdir@ |
diff --git a/doc/misc/ediff.texi b/doc/misc/ediff.texi index 451d6d0a5ff..4259fccb390 100644 --- a/doc/misc/ediff.texi +++ b/doc/misc/ediff.texi | |||
| @@ -1986,7 +1986,8 @@ If it is @code{combined} then the region in buffer C will look like | |||
| 1986 | this: | 1986 | this: |
| 1987 | 1987 | ||
| 1988 | @comment Use @set to avoid triggering merge conflict detectors like CVS. | 1988 | @comment Use @set to avoid triggering merge conflict detectors like CVS. |
| 1989 | @set seven-left | 1989 | @set seven-left <<<<<<< |
| 1990 | @set seven-right >>>>>>> | ||
| 1990 | @example | 1991 | @example |
| 1991 | @value{seven-left} variant A | 1992 | @value{seven-left} variant A |
| 1992 | the difference region from buffer A | 1993 | the difference region from buffer A |
diff --git a/doc/misc/emacs-mime.texi b/doc/misc/emacs-mime.texi index 3e996e945fb..2a0e8569266 100644 --- a/doc/misc/emacs-mime.texi +++ b/doc/misc/emacs-mime.texi | |||
| @@ -1469,21 +1469,9 @@ Decode a string and return the results. | |||
| 1469 | 1469 | ||
| 1470 | @item rfc2047-encode-parameter | 1470 | @item rfc2047-encode-parameter |
| 1471 | @findex rfc2047-encode-parameter | 1471 | @findex rfc2047-encode-parameter |
| 1472 | Encode a parameter in the RFC2047-like style. This is a replacement for | 1472 | Encode a parameter in the RFC2047-like style. This is a substitution |
| 1473 | the @code{rfc2231-encode-string} function. @xref{rfc2231}. | 1473 | for the @code{rfc2231-encode-string} function, that is the standard but |
| 1474 | 1474 | many mailers don't support it. @xref{rfc2231}. | |
| 1475 | When attaching files as @acronym{MIME} parts, we should use the RFC2231 | ||
| 1476 | encoding to specify the file names containing non-@acronym{ASCII} | ||
| 1477 | characters. However, many mail softwares don't support it in practice | ||
| 1478 | and recipients won't be able to extract files with correct names. | ||
| 1479 | Instead, the RFC2047-like encoding is acceptable generally. This | ||
| 1480 | function provides the very RFC2047-like encoding, resigning to such a | ||
| 1481 | regrettable trend. To use it, put the following line in your | ||
| 1482 | @file{~/.gnus.el} file: | ||
| 1483 | |||
| 1484 | @lisp | ||
| 1485 | (defalias 'mail-header-encode-parameter 'rfc2047-encode-parameter) | ||
| 1486 | @end lisp | ||
| 1487 | 1475 | ||
| 1488 | @end table | 1476 | @end table |
| 1489 | 1477 | ||
diff --git a/doc/misc/epa.texi b/doc/misc/epa.texi index f9c48b1588a..36f74415974 100644 --- a/doc/misc/epa.texi +++ b/doc/misc/epa.texi | |||
| @@ -65,7 +65,8 @@ called EasyPG Library. | |||
| 65 | @menu | 65 | @menu |
| 66 | * Overview:: | 66 | * Overview:: |
| 67 | * Quick start:: | 67 | * Quick start:: |
| 68 | * Commands:: | 68 | * Commands:: |
| 69 | * Bug Reports:: | ||
| 69 | @end menu | 70 | @end menu |
| 70 | 71 | ||
| 71 | @node Overview | 72 | @node Overview |
| @@ -398,6 +399,28 @@ If non-@code{nil}, disable auto-saving when opening an encrypted file. | |||
| 398 | The default value is @code{t}. | 399 | The default value is @code{t}. |
| 399 | @end defvar | 400 | @end defvar |
| 400 | 401 | ||
| 402 | @node Bug Reports | ||
| 403 | @chapter Bug Reports | ||
| 404 | |||
| 405 | Bugs and problems with EasyPG Assistant are actively worked on by the | ||
| 406 | Emacs development team. Feature requests and suggestions are also | ||
| 407 | more than welcome. Use @kbd{M-x report-emacs-bug}, @pxref{Bugs, , | ||
| 408 | Bugs, emacs, Reporting Bugs}. | ||
| 409 | |||
| 410 | When submitting a bug report, please try to describe in excruciating | ||
| 411 | detail the steps required to reproduce the problem. Also try to | ||
| 412 | collect necessary information to fix the bug, such as: | ||
| 413 | |||
| 414 | @itemize @bullet | ||
| 415 | @item the GnuPG version. Send the output of @samp{gpg --version}. | ||
| 416 | @item the GnuPG configuration. Send the contents of @file{~/.gnupg/gpg.conf}. | ||
| 417 | @end itemize | ||
| 418 | |||
| 419 | Before reporting the bug, you should set @code{epg-debug} in the | ||
| 420 | @file{~/.emacs} file and repeat the bug. Then, include the contents | ||
| 421 | of the @samp{ *epg-debug*} buffer. Note that the first letter of the | ||
| 422 | buffer name is a whitespace. | ||
| 423 | |||
| 401 | @bye | 424 | @bye |
| 402 | 425 | ||
| 403 | @c End: | 426 | @c End: |
diff --git a/doc/misc/gnus-news.texi b/doc/misc/gnus-news.texi index e820ceae4a8..028539a7fb4 100644 --- a/doc/misc/gnus-news.texi +++ b/doc/misc/gnus-news.texi | |||
| @@ -18,6 +18,17 @@ | |||
| 18 | 18 | ||
| 19 | @itemize @bullet | 19 | @itemize @bullet |
| 20 | 20 | ||
| 21 | @item Supported Emacs versions | ||
| 22 | The following Emacs versions are supported by No Gnus: | ||
| 23 | @itemize @bullet | ||
| 24 | |||
| 25 | @item Emacs 22 and up | ||
| 26 | @item XEmacs 21.4 | ||
| 27 | @item XEmacs 21.5 | ||
| 28 | @item SXEmacs | ||
| 29 | |||
| 30 | @end itemize | ||
| 31 | |||
| 21 | @item Installation changes | 32 | @item Installation changes |
| 22 | 33 | ||
| 23 | @itemize @bullet | 34 | @itemize @bullet |
| @@ -55,6 +66,13 @@ remove-installed-shadows}. | |||
| 55 | 66 | ||
| 56 | @itemize @bullet | 67 | @itemize @bullet |
| 57 | 68 | ||
| 69 | @item New version of @code{nnimap} | ||
| 70 | |||
| 71 | @code{nnimap} has been reimplemented in a mostly-compatible way. See | ||
| 72 | the Gnus manual for a description of the new interface. In | ||
| 73 | particular, @code{nnimap-inbox} and the client side split method has | ||
| 74 | changed. | ||
| 75 | |||
| 58 | @item Gnus includes the Emacs Lisp @acronym{SASL} library. | 76 | @item Gnus includes the Emacs Lisp @acronym{SASL} library. |
| 59 | 77 | ||
| 60 | This provides a clean @acronym{API} to @acronym{SASL} mechanisms from | 78 | This provides a clean @acronym{API} to @acronym{SASL} mechanisms from |
| @@ -87,6 +105,12 @@ EasyPG is included in Emacs 23 and available separately as well. | |||
| 87 | @c ************************ | 105 | @c ************************ |
| 88 | 106 | ||
| 89 | @itemize @bullet | 107 | @itemize @bullet |
| 108 | |||
| 109 | @item | ||
| 110 | Symbols like @code{gcc-self} now has the same presedence rules in | ||
| 111 | @code{gnus-parameters} as other ``real'' variables: The last match | ||
| 112 | wins instead of the first match. | ||
| 113 | |||
| 90 | @item | 114 | @item |
| 91 | Old intermediate incoming mail files (@file{Incoming*}) are deleted | 115 | Old intermediate incoming mail files (@file{Incoming*}) are deleted |
| 92 | after a couple of days, not immediately. @xref{Mail Source | 116 | after a couple of days, not immediately. @xref{Mail Source |
| @@ -230,6 +254,16 @@ of the "Whomever writes:" line. You need to set | |||
| 230 | @code{message-insert-formatted-citation-line} as well. | 254 | @code{message-insert-formatted-citation-line} as well. |
| 231 | @end itemize | 255 | @end itemize |
| 232 | 256 | ||
| 257 | @item Changes in Browse Server mode | ||
| 258 | |||
| 259 | @itemize @bullet | ||
| 260 | @item Gnus' sophisticated subscription methods are now available in | ||
| 261 | Browse Server buffers as well using the variable | ||
| 262 | @code{gnus-browse-subscribe-newsgroup-method}. | ||
| 263 | |||
| 264 | @end itemize | ||
| 265 | |||
| 266 | |||
| 233 | @item Changes in back ends | 267 | @item Changes in back ends |
| 234 | 268 | ||
| 235 | @itemize @bullet | 269 | @itemize @bullet |
| @@ -320,6 +354,8 @@ be unchanged except that the marks will be removed when copying or | |||
| 320 | moving articles to a group that has not turned auto-expire on. | 354 | moving articles to a group that has not turned auto-expire on. |
| 321 | @xref{Expiring Mail}. | 355 | @xref{Expiring Mail}. |
| 322 | 356 | ||
| 357 | @item NoCeM support has been removed. | ||
| 358 | |||
| 323 | @end itemize | 359 | @end itemize |
| 324 | 360 | ||
| 325 | @end itemize | 361 | @end itemize |
diff --git a/doc/misc/gnus.texi b/doc/misc/gnus.texi index 7248897f05b..c1acf7e0d8a 100644 --- a/doc/misc/gnus.texi +++ b/doc/misc/gnus.texi | |||
| @@ -589,7 +589,7 @@ Article Treatment | |||
| 589 | * Article Buttons:: Click on URLs, Message-IDs, addresses and the like. | 589 | * Article Buttons:: Click on URLs, Message-IDs, addresses and the like. |
| 590 | * Article Button Levels:: Controlling appearance of buttons. | 590 | * Article Button Levels:: Controlling appearance of buttons. |
| 591 | * Article Date:: Grumble, UT! | 591 | * Article Date:: Grumble, UT! |
| 592 | * Article Display:: Display various stuff---X-Face, Picons, Smileys | 592 | * Article Display:: Display various stuff---X-Face, Picons, Smileys, Gravatars |
| 593 | * Article Signature:: What is a signature? | 593 | * Article Signature:: What is a signature? |
| 594 | * Article Miscellanea:: Various other stuff. | 594 | * Article Miscellanea:: Various other stuff. |
| 595 | 595 | ||
| @@ -629,9 +629,9 @@ Select Methods | |||
| 629 | 629 | ||
| 630 | * Server Buffer:: Making and editing virtual servers. | 630 | * Server Buffer:: Making and editing virtual servers. |
| 631 | * Getting News:: Reading USENET news with Gnus. | 631 | * Getting News:: Reading USENET news with Gnus. |
| 632 | * Using @acronym{IMAP}:: Reading mail from @acronym{IMAP}. | ||
| 632 | * Getting Mail:: Reading your personal mail with Gnus. | 633 | * Getting Mail:: Reading your personal mail with Gnus. |
| 633 | * Browsing the Web:: Getting messages from a plethora of Web sources. | 634 | * Browsing the Web:: Getting messages from a plethora of Web sources. |
| 634 | * IMAP:: Using Gnus as a @acronym{IMAP} client. | ||
| 635 | * Other Sources:: Reading directories, files. | 635 | * Other Sources:: Reading directories, files. |
| 636 | * Combined Groups:: Combining groups into one group. | 636 | * Combined Groups:: Combining groups into one group. |
| 637 | * Email Based Diary:: Using mails to manage diary events in Gnus. | 637 | * Email Based Diary:: Using mails to manage diary events in Gnus. |
| @@ -698,15 +698,6 @@ Browsing the Web | |||
| 698 | * RSS:: Reading RDF site summary. | 698 | * RSS:: Reading RDF site summary. |
| 699 | * Customizing W3:: Doing stuff to Emacs/W3 from Gnus. | 699 | * Customizing W3:: Doing stuff to Emacs/W3 from Gnus. |
| 700 | 700 | ||
| 701 | @acronym{IMAP} | ||
| 702 | |||
| 703 | * Splitting in IMAP:: Splitting mail with nnimap. | ||
| 704 | * Expiring in IMAP:: Expiring mail with nnimap. | ||
| 705 | * Editing IMAP ACLs:: Limiting/enabling other users access to a mailbox. | ||
| 706 | * Expunging mailboxes:: Equivalent of a ``compress mailbox'' button. | ||
| 707 | * A note on namespaces:: How to (not) use @acronym{IMAP} namespace in Gnus. | ||
| 708 | * Debugging IMAP:: What to do when things don't work. | ||
| 709 | |||
| 710 | Other Sources | 701 | Other Sources |
| 711 | 702 | ||
| 712 | * Directory Groups:: You can read a directory as if it was a newsgroup. | 703 | * Directory Groups:: You can read a directory as if it was a newsgroup. |
| @@ -808,7 +799,6 @@ Various | |||
| 808 | * Highlighting and Menus:: Making buffers look all nice and cozy. | 799 | * Highlighting and Menus:: Making buffers look all nice and cozy. |
| 809 | * Buttons:: Get tendinitis in ten easy steps! | 800 | * Buttons:: Get tendinitis in ten easy steps! |
| 810 | * Daemons:: Gnus can do things behind your back. | 801 | * Daemons:: Gnus can do things behind your back. |
| 811 | * NoCeM:: How to avoid spam and other fatty foods. | ||
| 812 | * Undo:: Some actions can be undone. | 802 | * Undo:: Some actions can be undone. |
| 813 | * Predicate Specifiers:: Specifying predicates. | 803 | * Predicate Specifiers:: Specifying predicates. |
| 814 | * Moderation:: What to do if you're a moderator. | 804 | * Moderation:: What to do if you're a moderator. |
| @@ -1637,14 +1627,11 @@ of doing your job. Note that this variable is used before | |||
| 1637 | @vindex gnus-no-groups-message | 1627 | @vindex gnus-no-groups-message |
| 1638 | Message displayed by Gnus when no groups are available. | 1628 | Message displayed by Gnus when no groups are available. |
| 1639 | 1629 | ||
| 1640 | @item gnus-play-startup-jingle | 1630 | @item gnus-use-backend-marks |
| 1641 | @vindex gnus-play-startup-jingle | 1631 | @vindex gnus-use-backend-marks |
| 1642 | If non-@code{nil}, play the Gnus jingle at startup. | 1632 | If non-@code{nil}, Gnus will store article marks both in the |
| 1643 | 1633 | @file{.newsrc.eld} file and in the backends. This will slow down | |
| 1644 | @item gnus-startup-jingle | 1634 | group operation some. |
| 1645 | @vindex gnus-startup-jingle | ||
| 1646 | Jingle to be played if the above variable is non-@code{nil}. The | ||
| 1647 | default is @samp{Tuxedomoon.Jingle4.au}. | ||
| 1648 | 1635 | ||
| 1649 | @end table | 1636 | @end table |
| 1650 | 1637 | ||
| @@ -1996,8 +1983,7 @@ functions for snarfing info on the group. | |||
| 1996 | @vindex gnus-group-update-hook | 1983 | @vindex gnus-group-update-hook |
| 1997 | @findex gnus-group-highlight-line | 1984 | @findex gnus-group-highlight-line |
| 1998 | @code{gnus-group-update-hook} is called when a group line is changed. | 1985 | @code{gnus-group-update-hook} is called when a group line is changed. |
| 1999 | It will not be called when @code{gnus-visual} is @code{nil}. This hook | 1986 | It will not be called when @code{gnus-visual} is @code{nil}. |
| 2000 | calls @code{gnus-group-highlight-line} by default. | ||
| 2001 | 1987 | ||
| 2002 | 1988 | ||
| 2003 | @node Group Maneuvering | 1989 | @node Group Maneuvering |
| @@ -2611,18 +2597,6 @@ for a directory name (@code{gnus-group-make-directory-group}). | |||
| 2611 | @findex gnus-group-make-help-group | 2597 | @findex gnus-group-make-help-group |
| 2612 | Make the Gnus help group (@code{gnus-group-make-help-group}). | 2598 | Make the Gnus help group (@code{gnus-group-make-help-group}). |
| 2613 | 2599 | ||
| 2614 | @item G a | ||
| 2615 | @kindex G a (Group) | ||
| 2616 | @cindex (ding) archive | ||
| 2617 | @cindex archive group | ||
| 2618 | @findex gnus-group-make-archive-group | ||
| 2619 | @vindex gnus-group-archive-directory | ||
| 2620 | @vindex gnus-group-recent-archive-directory | ||
| 2621 | Make a Gnus archive group (@code{gnus-group-make-archive-group}). By | ||
| 2622 | default a group pointing to the most recent articles will be created | ||
| 2623 | (@code{gnus-group-recent-archive-directory}), but given a prefix, a full | ||
| 2624 | group will be created from @code{gnus-group-archive-directory}. | ||
| 2625 | |||
| 2626 | @item G D | 2600 | @item G D |
| 2627 | @kindex G D (Group) | 2601 | @kindex G D (Group) |
| 2628 | @findex gnus-group-enter-directory | 2602 | @findex gnus-group-enter-directory |
| @@ -3624,8 +3598,12 @@ Enter the current group (@code{gnus-browse-select-group}). | |||
| 3624 | @item u | 3598 | @item u |
| 3625 | @kindex u (Browse) | 3599 | @kindex u (Browse) |
| 3626 | @findex gnus-browse-unsubscribe-current-group | 3600 | @findex gnus-browse-unsubscribe-current-group |
| 3601 | @vindex gnus-browse-subscribe-newsgroup-method | ||
| 3627 | Unsubscribe to the current group, or, as will be the case here, | 3602 | Unsubscribe to the current group, or, as will be the case here, |
| 3628 | subscribe to it (@code{gnus-browse-unsubscribe-current-group}). | 3603 | subscribe to it (@code{gnus-browse-unsubscribe-current-group}). You |
| 3604 | can affect the way the new group is entered into the Group buffer | ||
| 3605 | using the variable @code{gnus-browse-subscribe-newsgroup-method}. See | ||
| 3606 | @pxref{Subscription Methods} for available options. | ||
| 3629 | 3607 | ||
| 3630 | @item l | 3608 | @item l |
| 3631 | @itemx q | 3609 | @itemx q |
| @@ -5217,19 +5195,6 @@ used for fetching the file. | |||
| 5217 | If fetching from the first site is unsuccessful, Gnus will attempt to go | 5195 | If fetching from the first site is unsuccessful, Gnus will attempt to go |
| 5218 | through @code{gnus-group-faq-directory} and try to open them one by one. | 5196 | through @code{gnus-group-faq-directory} and try to open them one by one. |
| 5219 | 5197 | ||
| 5220 | @item H c | ||
| 5221 | @kindex H c (Group) | ||
| 5222 | @findex gnus-group-fetch-charter | ||
| 5223 | @vindex gnus-group-charter-alist | ||
| 5224 | @cindex charter | ||
| 5225 | Try to open the charter for the current group in a web browser | ||
| 5226 | (@code{gnus-group-fetch-charter}). Query for a group if given a | ||
| 5227 | prefix argument. | ||
| 5228 | |||
| 5229 | Gnus will use @code{gnus-group-charter-alist} to find the location of | ||
| 5230 | the charter. If no location is known, Gnus will fetch the control | ||
| 5231 | messages for the group, which in some cases includes the charter. | ||
| 5232 | |||
| 5233 | @item H C | 5198 | @item H C |
| 5234 | @kindex H C (Group) | 5199 | @kindex H C (Group) |
| 5235 | @findex gnus-group-fetch-control | 5200 | @findex gnus-group-fetch-control |
| @@ -9250,7 +9215,8 @@ these articles easier. | |||
| 9250 | * Article Buttons:: Click on URLs, Message-IDs, addresses and the like. | 9215 | * Article Buttons:: Click on URLs, Message-IDs, addresses and the like. |
| 9251 | * Article Button Levels:: Controlling appearance of buttons. | 9216 | * Article Button Levels:: Controlling appearance of buttons. |
| 9252 | * Article Date:: Grumble, UT! | 9217 | * Article Date:: Grumble, UT! |
| 9253 | * Article Display:: Display various stuff---X-Face, Picons, Smileys | 9218 | * Article Display:: Display various stuff: |
| 9219 | X-Face, Picons, Gravatars, Smileys. | ||
| 9254 | * Article Signature:: What is a signature? | 9220 | * Article Signature:: What is a signature? |
| 9255 | * Article Miscellanea:: Various other stuff. | 9221 | * Article Miscellanea:: Various other stuff. |
| 9256 | @end menu | 9222 | @end menu |
| @@ -9838,6 +9804,9 @@ Customization, emacs-mime, The Emacs MIME Manual}) to convert the | |||
| 9838 | can use include: | 9804 | can use include: |
| 9839 | 9805 | ||
| 9840 | @table @code | 9806 | @table @code |
| 9807 | @item gnus-article-html | ||
| 9808 | Use Gnus rendered based on w3m. | ||
| 9809 | |||
| 9841 | @item w3 | 9810 | @item w3 |
| 9842 | Use Emacs/W3. | 9811 | Use Emacs/W3. |
| 9843 | 9812 | ||
| @@ -10102,18 +10071,6 @@ string is invalid. | |||
| 10102 | An alist of @code{(RATE . REGEXP)} pairs used by the function | 10071 | An alist of @code{(RATE . REGEXP)} pairs used by the function |
| 10103 | @code{gnus-button-mid-or-mail-heuristic}. | 10072 | @code{gnus-button-mid-or-mail-heuristic}. |
| 10104 | 10073 | ||
| 10105 | @c Stuff related to gnus-button-tex-level | ||
| 10106 | |||
| 10107 | @item gnus-button-ctan-handler | ||
| 10108 | @findex gnus-button-ctan-handler | ||
| 10109 | The function to use for displaying CTAN links. It must take one | ||
| 10110 | argument, the string naming the URL. | ||
| 10111 | |||
| 10112 | @item gnus-ctan-url | ||
| 10113 | @vindex gnus-ctan-url | ||
| 10114 | Top directory of a CTAN (Comprehensive TeX Archive Network) archive used | ||
| 10115 | by @code{gnus-button-ctan-handler}. | ||
| 10116 | |||
| 10117 | @c Misc stuff | 10074 | @c Misc stuff |
| 10118 | 10075 | ||
| 10119 | @item gnus-article-button-face | 10076 | @item gnus-article-button-face |
| @@ -10186,14 +10143,6 @@ Related variables and functions include | |||
| 10186 | @code{gnus-button-mid-or-mail-heuristic}, and | 10143 | @code{gnus-button-mid-or-mail-heuristic}, and |
| 10187 | @code{gnus-button-mid-or-mail-heuristic-alist}. | 10144 | @code{gnus-button-mid-or-mail-heuristic-alist}. |
| 10188 | 10145 | ||
| 10189 | @item gnus-button-tex-level | ||
| 10190 | @vindex gnus-button-tex-level | ||
| 10191 | Controls the display of references to @TeX{} or LaTeX stuff, e.g. for CTAN | ||
| 10192 | URLs. See the variables @code{gnus-ctan-url}, | ||
| 10193 | @code{gnus-button-ctan-handler}, | ||
| 10194 | @code{gnus-button-ctan-directory-regexp}, and | ||
| 10195 | @code{gnus-button-handle-ctan-bogus-regexp}. | ||
| 10196 | |||
| 10197 | @end table | 10146 | @end table |
| 10198 | 10147 | ||
| 10199 | 10148 | ||
| @@ -10291,6 +10240,7 @@ preferred format automatically. | |||
| 10291 | @cindex picons | 10240 | @cindex picons |
| 10292 | @cindex x-face | 10241 | @cindex x-face |
| 10293 | @cindex smileys | 10242 | @cindex smileys |
| 10243 | @cindex gravatars | ||
| 10294 | 10244 | ||
| 10295 | These commands add various frivolous display gimmicks to the article | 10245 | These commands add various frivolous display gimmicks to the article |
| 10296 | buffer in Emacs versions that support them. | 10246 | buffer in Emacs versions that support them. |
| @@ -10307,6 +10257,9 @@ their messages with (@pxref{Smileys}). | |||
| 10307 | Picons, on the other hand, reside on your own system, and Gnus will | 10257 | Picons, on the other hand, reside on your own system, and Gnus will |
| 10308 | try to match the headers to what you have (@pxref{Picons}). | 10258 | try to match the headers to what you have (@pxref{Picons}). |
| 10309 | 10259 | ||
| 10260 | Gravatars reside on-line and are fetched from | ||
| 10261 | @uref{http://www.gravatar.com/} (@pxref{Gravatars}). | ||
| 10262 | |||
| 10310 | All these functions are toggles---if the elements already exist, | 10263 | All these functions are toggles---if the elements already exist, |
| 10311 | they'll be removed. | 10264 | they'll be removed. |
| 10312 | 10265 | ||
| @@ -10345,6 +10298,17 @@ Piconify all mail headers (i. e., @code{Cc}, @code{To}) | |||
| 10345 | Piconify all news headers (i. e., @code{Newsgroups} and | 10298 | Piconify all news headers (i. e., @code{Newsgroups} and |
| 10346 | @code{Followup-To}) (@code{gnus-treat-newsgroups-picon}). | 10299 | @code{Followup-To}) (@code{gnus-treat-newsgroups-picon}). |
| 10347 | 10300 | ||
| 10301 | @item W D g | ||
| 10302 | @kindex W D g (Summary) | ||
| 10303 | @findex gnus-treat-from-gravatar | ||
| 10304 | Gravatarify the @code{From} header (@code{gnus-treat-from-gravatar}). | ||
| 10305 | |||
| 10306 | @item W D h | ||
| 10307 | @kindex W D h (Summary) | ||
| 10308 | @findex gnus-treat-mail-gravatar | ||
| 10309 | Gravatarify all mail headers (i. e., @code{Cc}, @code{To}) | ||
| 10310 | (@code{gnus-treat-from-gravatar}). | ||
| 10311 | |||
| 10348 | @item W D D | 10312 | @item W D D |
| 10349 | @kindex W D D (Summary) | 10313 | @kindex W D D (Summary) |
| 10350 | @findex gnus-article-remove-images | 10314 | @findex gnus-article-remove-images |
| @@ -10830,6 +10794,16 @@ Generate and print a PostScript image of the article buffer | |||
| 10830 | be run just before printing the buffer. An alternative way to print | 10794 | be run just before printing the buffer. An alternative way to print |
| 10831 | article is to use Muttprint (@pxref{Saving Articles}). | 10795 | article is to use Muttprint (@pxref{Saving Articles}). |
| 10832 | 10796 | ||
| 10797 | @item A C | ||
| 10798 | @vindex gnus-fetch-partial-articles | ||
| 10799 | @findex gnus-summary-show-complete-article | ||
| 10800 | If @code{gnus-fetch-partial-articles} is non-@code{nil}, Gnus will | ||
| 10801 | fetch partial articles, if the backend it fetches them from supports | ||
| 10802 | it. Currently only @code{nnimap} does. If you're looking at a | ||
| 10803 | partial article, and want to see the complete article instead, then | ||
| 10804 | the @kbd{A C} command (@code{gnus-summary-show-complete-article}) will | ||
| 10805 | do so. | ||
| 10806 | |||
| 10833 | @end table | 10807 | @end table |
| 10834 | 10808 | ||
| 10835 | 10809 | ||
| @@ -11553,18 +11527,6 @@ sieve. | |||
| 11553 | 11527 | ||
| 11554 | @table @kbd | 11528 | @table @kbd |
| 11555 | 11529 | ||
| 11556 | @item H f | ||
| 11557 | @kindex H f (Summary) | ||
| 11558 | @findex gnus-summary-fetch-faq | ||
| 11559 | @vindex gnus-group-faq-directory | ||
| 11560 | Try to fetch the @acronym{FAQ} (list of frequently asked questions) | ||
| 11561 | for the current group (@code{gnus-summary-fetch-faq}). Gnus will try | ||
| 11562 | to get the @acronym{FAQ} from @code{gnus-group-faq-directory}, which | ||
| 11563 | is usually a directory on a remote machine. This variable can also be | ||
| 11564 | a list of directories. In that case, giving a prefix to this command | ||
| 11565 | will allow you to choose between the various sites. @code{ange-ftp} | ||
| 11566 | or @code{efs} will probably be used for fetching the file. | ||
| 11567 | |||
| 11568 | @item H d | 11530 | @item H d |
| 11569 | @kindex H d (Summary) | 11531 | @kindex H d (Summary) |
| 11570 | @findex gnus-summary-describe-group | 11532 | @findex gnus-summary-describe-group |
| @@ -11890,8 +11852,7 @@ read the same article more than once. Unless, of course, somebody has | |||
| 11890 | posted it to several groups separately. Posting the same article to | 11852 | posted it to several groups separately. Posting the same article to |
| 11891 | several groups (not cross-posting) is called @dfn{spamming}, and you are | 11853 | several groups (not cross-posting) is called @dfn{spamming}, and you are |
| 11892 | by law required to send nasty-grams to anyone who perpetrates such a | 11854 | by law required to send nasty-grams to anyone who perpetrates such a |
| 11893 | heinous crime. You may want to try NoCeM handling to filter out spam | 11855 | heinous crime. |
| 11894 | (@pxref{NoCeM}). | ||
| 11895 | 11856 | ||
| 11896 | Remember: Cross-posting is kinda ok, but posting the same article | 11857 | Remember: Cross-posting is kinda ok, but posting the same article |
| 11897 | separately to several groups is not. Massive cross-posting (aka. | 11858 | separately to several groups is not. Massive cross-posting (aka. |
| @@ -12022,7 +11983,7 @@ To handle @acronym{PGP} and @acronym{PGP/MIME} messages, you have to | |||
| 12022 | install an OpenPGP implementation such as GnuPG. The Lisp interface | 11983 | install an OpenPGP implementation such as GnuPG. The Lisp interface |
| 12023 | to GnuPG included with Emacs is called EasyPG (@pxref{Top, ,EasyPG, | 11984 | to GnuPG included with Emacs is called EasyPG (@pxref{Top, ,EasyPG, |
| 12024 | epa, EasyPG Assistant user's manual}), but PGG (@pxref{Top, ,PGG, pgg, | 11985 | epa, EasyPG Assistant user's manual}), but PGG (@pxref{Top, ,PGG, pgg, |
| 12025 | PGG Manual}), Mailcrypt, and gpg.el are also supported. | 11986 | PGG Manual}), and Mailcrypt are also supported. |
| 12026 | 11987 | ||
| 12027 | @item | 11988 | @item |
| 12028 | To handle @acronym{S/MIME} message, you need to install OpenSSL. OpenSSL 0.9.6 | 11989 | To handle @acronym{S/MIME} message, you need to install OpenSSL. OpenSSL 0.9.6 |
| @@ -12061,7 +12022,7 @@ public-key matching the @samp{From:} header as the recipient; | |||
| 12061 | @vindex mml1991-use | 12022 | @vindex mml1991-use |
| 12062 | Symbol indicating elisp interface to OpenPGP implementation for | 12023 | Symbol indicating elisp interface to OpenPGP implementation for |
| 12063 | @acronym{PGP} messages. The default is @code{epg}, but @code{pgg}, | 12024 | @acronym{PGP} messages. The default is @code{epg}, but @code{pgg}, |
| 12064 | @code{mailcrypt}, and @code{gpg} are also supported although | 12025 | and @code{mailcrypt} are also supported although |
| 12065 | deprecated. By default, Gnus uses the first available interface in | 12026 | deprecated. By default, Gnus uses the first available interface in |
| 12066 | this order. | 12027 | this order. |
| 12067 | 12028 | ||
| @@ -12069,7 +12030,7 @@ this order. | |||
| 12069 | @vindex mml2015-use | 12030 | @vindex mml2015-use |
| 12070 | Symbol indicating elisp interface to OpenPGP implementation for | 12031 | Symbol indicating elisp interface to OpenPGP implementation for |
| 12071 | @acronym{PGP/MIME} messages. The default is @code{epg}, but | 12032 | @acronym{PGP/MIME} messages. The default is @code{epg}, but |
| 12072 | @code{pgg}, @code{mailcrypt}, and @code{gpg} are also supported | 12033 | @code{pgg}, and @code{mailcrypt} are also supported |
| 12073 | although deprecated. By default, Gnus uses the first available | 12034 | although deprecated. By default, Gnus uses the first available |
| 12074 | interface in this order. | 12035 | interface in this order. |
| 12075 | 12036 | ||
| @@ -12623,6 +12584,8 @@ controlling variable is a predicate list, as described above. | |||
| 12623 | @vindex gnus-treat-from-picon | 12584 | @vindex gnus-treat-from-picon |
| 12624 | @vindex gnus-treat-mail-picon | 12585 | @vindex gnus-treat-mail-picon |
| 12625 | @vindex gnus-treat-newsgroups-picon | 12586 | @vindex gnus-treat-newsgroups-picon |
| 12587 | @vindex gnus-treat-from-gravatar | ||
| 12588 | @vindex gnus-treat-mail-gravatar | ||
| 12626 | @vindex gnus-treat-display-smileys | 12589 | @vindex gnus-treat-display-smileys |
| 12627 | @vindex gnus-treat-body-boundary | 12590 | @vindex gnus-treat-body-boundary |
| 12628 | @vindex gnus-treat-display-x-face | 12591 | @vindex gnus-treat-display-x-face |
| @@ -12641,7 +12604,6 @@ controlling variable is a predicate list, as described above. | |||
| 12641 | @vindex gnus-treat-highlight-headers | 12604 | @vindex gnus-treat-highlight-headers |
| 12642 | @vindex gnus-treat-highlight-signature | 12605 | @vindex gnus-treat-highlight-signature |
| 12643 | @vindex gnus-treat-play-sounds | 12606 | @vindex gnus-treat-play-sounds |
| 12644 | @vindex gnus-treat-translate | ||
| 12645 | @vindex gnus-treat-x-pgp-sig | 12607 | @vindex gnus-treat-x-pgp-sig |
| 12646 | @vindex gnus-treat-unfold-headers | 12608 | @vindex gnus-treat-unfold-headers |
| 12647 | @vindex gnus-treat-fold-headers | 12609 | @vindex gnus-treat-fold-headers |
| @@ -12689,6 +12651,11 @@ possible but those listed are probably sufficient for most people. | |||
| 12689 | 12651 | ||
| 12690 | @xref{Picons}. | 12652 | @xref{Picons}. |
| 12691 | 12653 | ||
| 12654 | @item gnus-treat-from-gravatar (head) | ||
| 12655 | @item gnus-treat-mail-gravatar (head) | ||
| 12656 | |||
| 12657 | @xref{Gravatars}. | ||
| 12658 | |||
| 12692 | @item gnus-treat-display-smileys (t, integer) | 12659 | @item gnus-treat-display-smileys (t, integer) |
| 12693 | 12660 | ||
| 12694 | @item gnus-treat-body-boundary (head) | 12661 | @item gnus-treat-body-boundary (head) |
| @@ -12743,8 +12710,6 @@ is controlled by @code{gnus-body-boundary-delimiter}. | |||
| 12743 | 12710 | ||
| 12744 | @vindex gnus-treat-play-sounds | 12711 | @vindex gnus-treat-play-sounds |
| 12745 | @item gnus-treat-play-sounds | 12712 | @item gnus-treat-play-sounds |
| 12746 | @vindex gnus-treat-translate | ||
| 12747 | @item gnus-treat-translate | ||
| 12748 | @item gnus-treat-ansi-sequences (t) | 12713 | @item gnus-treat-ansi-sequences (t) |
| 12749 | @vindex gnus-treat-x-pgp-sig | 12714 | @vindex gnus-treat-x-pgp-sig |
| 12750 | @item gnus-treat-x-pgp-sig (head) | 12715 | @item gnus-treat-x-pgp-sig (head) |
| @@ -13735,9 +13700,9 @@ The different methods all have their peculiarities, of course. | |||
| 13735 | @menu | 13700 | @menu |
| 13736 | * Server Buffer:: Making and editing virtual servers. | 13701 | * Server Buffer:: Making and editing virtual servers. |
| 13737 | * Getting News:: Reading USENET news with Gnus. | 13702 | * Getting News:: Reading USENET news with Gnus. |
| 13703 | * Using @acronym{IMAP}:: Reading mail from @acronym{IMAP}. | ||
| 13738 | * Getting Mail:: Reading your personal mail with Gnus. | 13704 | * Getting Mail:: Reading your personal mail with Gnus. |
| 13739 | * Browsing the Web:: Getting messages from a plethora of Web sources. | 13705 | * Browsing the Web:: Getting messages from a plethora of Web sources. |
| 13740 | * IMAP:: Using Gnus as a @acronym{IMAP} client. | ||
| 13741 | * Other Sources:: Reading directories, files. | 13706 | * Other Sources:: Reading directories, files. |
| 13742 | * Combined Groups:: Combining groups into one group. | 13707 | * Combined Groups:: Combining groups into one group. |
| 13743 | * Email Based Diary:: Using mails to manage diary events in Gnus. | 13708 | * Email Based Diary:: Using mails to manage diary events in Gnus. |
| @@ -14150,6 +14115,14 @@ Close the connections to all servers in the buffer | |||
| 14150 | Remove all marks to whether Gnus was denied connection from any servers | 14115 | Remove all marks to whether Gnus was denied connection from any servers |
| 14151 | (@code{gnus-server-remove-denials}). | 14116 | (@code{gnus-server-remove-denials}). |
| 14152 | 14117 | ||
| 14118 | @item c | ||
| 14119 | @kindex c (Server) | ||
| 14120 | @findex gnus-server-copy-server | ||
| 14121 | Copy a server and give it a new name | ||
| 14122 | (@code{gnus-server-copy-server}). This can be useful if you have a | ||
| 14123 | complex method definition, and want to use the same definition towards | ||
| 14124 | a different (physical) server. | ||
| 14125 | |||
| 14153 | @item L | 14126 | @item L |
| 14154 | @kindex L (Server) | 14127 | @kindex L (Server) |
| 14155 | @findex gnus-server-offline-server | 14128 | @findex gnus-server-offline-server |
| @@ -14814,6 +14787,121 @@ there. | |||
| 14814 | @end table | 14787 | @end table |
| 14815 | 14788 | ||
| 14816 | 14789 | ||
| 14790 | @node Using @acronym{IMAP} | ||
| 14791 | @section Using @acronym{IMAP} | ||
| 14792 | @cindex imap | ||
| 14793 | |||
| 14794 | The most popular mail backend is probably @code{nnimap}, which | ||
| 14795 | provides access to @acronym{IMAP} servers. @acronym{IMAP} servers | ||
| 14796 | store mail remotely, so the client doesn't store anything locally. | ||
| 14797 | This means that it's a convenient choice when you're reading your mail | ||
| 14798 | from different locations, or with different user agents. | ||
| 14799 | |||
| 14800 | @menu | ||
| 14801 | * Connecting to an @acronym{IMAP} Server:: Getting started with @acronym{IMAP}. | ||
| 14802 | * Customizing the @acronym{IMAP} Connection:: Variables for @acronym{IMAP} connection. | ||
| 14803 | * Client-Side @acronym{IMAP} Splitting:: Put mail in the correct mail box. | ||
| 14804 | @end menu | ||
| 14805 | |||
| 14806 | |||
| 14807 | @node Connecting to an @acronym{IMAP} Server | ||
| 14808 | @subsection Connecting to an @acronym{IMAP} Server | ||
| 14809 | |||
| 14810 | Connecting to an @acronym{IMAP} can be very easy. Type @kbd{B} in the | ||
| 14811 | group buffer, or (if your primary interest is reading email), say | ||
| 14812 | something like: | ||
| 14813 | |||
| 14814 | @example | ||
| 14815 | (setq gnus-select-method | ||
| 14816 | '(nnimap "imap.gmail.com")) | ||
| 14817 | @end example | ||
| 14818 | |||
| 14819 | You'll be prompted for a user name and password. If you grow tired of | ||
| 14820 | that, then add the following to your @file{~/.authinfo} file: | ||
| 14821 | |||
| 14822 | @example | ||
| 14823 | machine imap.gmail.com login <username> password <password> port imap | ||
| 14824 | @end example | ||
| 14825 | |||
| 14826 | That should basically be it for most users. | ||
| 14827 | |||
| 14828 | |||
| 14829 | @node Customizing the @acronym{IMAP} Connection | ||
| 14830 | @subsection Customizing the @acronym{IMAP} Connection | ||
| 14831 | |||
| 14832 | Here's an example method that's more complex: | ||
| 14833 | |||
| 14834 | @example | ||
| 14835 | (nnimap "imap.gmail.com" | ||
| 14836 | (nnimap-inbox "INBOX") | ||
| 14837 | (nnimap-split-methods ,nnmail-split-methods) | ||
| 14838 | (nnimap-expunge t) | ||
| 14839 | (nnimap-stream 'ssl) | ||
| 14840 | (nnir-search-engine imap) | ||
| 14841 | (nnimap-expunge-inbox t)) | ||
| 14842 | @end example | ||
| 14843 | |||
| 14844 | @table @code | ||
| 14845 | @item nnimap-address | ||
| 14846 | The address of the server, like @samp{imap.gmail.com}. | ||
| 14847 | |||
| 14848 | @item nnimap-server-port | ||
| 14849 | If the server uses a non-standard port, that can be specified here. A | ||
| 14850 | typical port would be @samp{imap} or @samp{imaps}. | ||
| 14851 | |||
| 14852 | @item nnimap-stream | ||
| 14853 | How @code{nnimap} should connect to the server. Possible values are: | ||
| 14854 | |||
| 14855 | @table @code | ||
| 14856 | @item ssl | ||
| 14857 | This is the default, and this uses standard | ||
| 14858 | @acronym{TLS}/@acronym{SSL} connection. | ||
| 14859 | |||
| 14860 | @item network | ||
| 14861 | Non-encrypted and unsafe straight socket connection. | ||
| 14862 | |||
| 14863 | @item starttls | ||
| 14864 | Encrypted @acronym{STARTTLS} over the normal @acronym{IMAP} port. | ||
| 14865 | |||
| 14866 | @item shell | ||
| 14867 | If you need to tunnel via other systems to connect to the server, you | ||
| 14868 | can use this option, and customize @code{nnimap-shell-program} to be | ||
| 14869 | what you need. | ||
| 14870 | |||
| 14871 | @end table | ||
| 14872 | |||
| 14873 | @item nnimap-authenticator | ||
| 14874 | Some @acronym{IMAP} servers allow anonymous logins. In that case, | ||
| 14875 | this should be set to @code{anonymous}. | ||
| 14876 | |||
| 14877 | @item nnimap-streaming | ||
| 14878 | Virtually all @code{IMAP} server support fast streaming of data. If | ||
| 14879 | you have problems connecting to the server, try setting this to @code{nil}. | ||
| 14880 | |||
| 14881 | @end table | ||
| 14882 | |||
| 14883 | |||
| 14884 | @node Client-Side @acronym{IMAP} Splitting | ||
| 14885 | @subsection Client-Side @acronym{IMAP} Splitting | ||
| 14886 | |||
| 14887 | Many people prefer to do the sorting/splitting of mail into their mail | ||
| 14888 | boxes on the @acronym{IMAP} server. That way they don't have to | ||
| 14889 | download the mail they're not all that interested in. | ||
| 14890 | |||
| 14891 | If you do want to do client-side mail splitting, then the following | ||
| 14892 | variables are relevant: | ||
| 14893 | |||
| 14894 | @table @code | ||
| 14895 | @item nnimap-inbox | ||
| 14896 | This is the @acronym{IMAP} mail box that will be scanned for new mail. | ||
| 14897 | |||
| 14898 | @item nnimap-split-methods | ||
| 14899 | Uses the same syntax as @code{nnmail-split-methods} (@pxref{Splitting | ||
| 14900 | Mail}). | ||
| 14901 | |||
| 14902 | @end table | ||
| 14903 | |||
| 14904 | |||
| 14817 | @node Getting Mail | 14905 | @node Getting Mail |
| 14818 | @section Getting Mail | 14906 | @section Getting Mail |
| 14819 | @cindex reading mail | 14907 | @cindex reading mail |
| @@ -15372,10 +15460,7 @@ Get mail from a @acronym{IMAP} server. If you don't want to use | |||
| 15372 | @acronym{IMAP} as intended, as a network mail reading protocol (ie | 15460 | @acronym{IMAP} as intended, as a network mail reading protocol (ie |
| 15373 | with nnimap), for some reason or other, Gnus let you treat it similar | 15461 | with nnimap), for some reason or other, Gnus let you treat it similar |
| 15374 | to a @acronym{POP} server and fetches articles from a given | 15462 | to a @acronym{POP} server and fetches articles from a given |
| 15375 | @acronym{IMAP} mailbox. @xref{IMAP}, for more information. | 15463 | @acronym{IMAP} mailbox. @xref{Using @acronym{IMAP}}, for more information. |
| 15376 | |||
| 15377 | Note that for the Kerberos, GSSAPI, @acronym{TLS}/@acronym{SSL} and STARTTLS support you | ||
| 15378 | may need external programs and libraries, @xref{IMAP}. | ||
| 15379 | 15464 | ||
| 15380 | Keywords: | 15465 | Keywords: |
| 15381 | 15466 | ||
| @@ -15844,7 +15929,7 @@ after @code{save-excursion} and @code{save-restriction} in the example | |||
| 15844 | above. Also note that with the nnimap backend, message bodies will | 15929 | above. Also note that with the nnimap backend, message bodies will |
| 15845 | not be downloaded by default. You need to set | 15930 | not be downloaded by default. You need to set |
| 15846 | @code{nnimap-split-download-body} to @code{t} to do that | 15931 | @code{nnimap-split-download-body} to @code{t} to do that |
| 15847 | (@pxref{Splitting in IMAP}). | 15932 | (@pxref{Client-Side @acronym{IMAP} Splitting}). |
| 15848 | 15933 | ||
| 15849 | @item (! @var{func} @var{split}) | 15934 | @item (! @var{func} @var{split}) |
| 15850 | If the split is a list, and the first element is @code{!}, then | 15935 | If the split is a list, and the first element is @code{!}, then |
| @@ -16608,6 +16693,7 @@ Spool}). | |||
| 16608 | @end menu | 16693 | @end menu |
| 16609 | 16694 | ||
| 16610 | 16695 | ||
| 16696 | |||
| 16611 | @node Unix Mail Box | 16697 | @node Unix Mail Box |
| 16612 | @subsubsection Unix Mail Box | 16698 | @subsubsection Unix Mail Box |
| 16613 | @cindex nnmbox | 16699 | @cindex nnmbox |
| @@ -17733,739 +17819,6 @@ Put that in your @file{.emacs} file, and hitting links in W3-rendered | |||
| 17733 | follow the link. | 17819 | follow the link. |
| 17734 | 17820 | ||
| 17735 | 17821 | ||
| 17736 | @node IMAP | ||
| 17737 | @section IMAP | ||
| 17738 | @cindex nnimap | ||
| 17739 | @cindex @acronym{IMAP} | ||
| 17740 | |||
| 17741 | @acronym{IMAP} is a network protocol for reading mail (or news, or @dots{}), | ||
| 17742 | think of it as a modernized @acronym{NNTP}. Connecting to a @acronym{IMAP} | ||
| 17743 | server is much similar to connecting to a news server, you just | ||
| 17744 | specify the network address of the server. | ||
| 17745 | |||
| 17746 | @acronym{IMAP} has two properties. First, @acronym{IMAP} can do | ||
| 17747 | everything that @acronym{POP} can, it can hence be viewed as a | ||
| 17748 | @acronym{POP++}. Secondly, @acronym{IMAP} is a mail storage protocol, | ||
| 17749 | similar to @acronym{NNTP} being a news storage protocol---however, | ||
| 17750 | @acronym{IMAP} offers more features than @acronym{NNTP} because news | ||
| 17751 | is more or less read-only whereas mail is read-write. | ||
| 17752 | |||
| 17753 | If you want to use @acronym{IMAP} as a @acronym{POP++}, use an imap | ||
| 17754 | entry in @code{mail-sources}. With this, Gnus will fetch mails from | ||
| 17755 | the @acronym{IMAP} server and store them on the local disk. This is | ||
| 17756 | not the usage described in this section---@xref{Mail Sources}. | ||
| 17757 | |||
| 17758 | If you want to use @acronym{IMAP} as a mail storage protocol, use an nnimap | ||
| 17759 | entry in @code{gnus-secondary-select-methods}. With this, Gnus will | ||
| 17760 | manipulate mails stored on the @acronym{IMAP} server. This is the kind of | ||
| 17761 | usage explained in this section. | ||
| 17762 | |||
| 17763 | A server configuration in @file{~/.gnus.el} with a few @acronym{IMAP} | ||
| 17764 | servers might look something like the following. (Note that for | ||
| 17765 | @acronym{TLS}/@acronym{SSL}, you need external programs and libraries, | ||
| 17766 | see below.) | ||
| 17767 | |||
| 17768 | @lisp | ||
| 17769 | (setq gnus-secondary-select-methods | ||
| 17770 | '((nnimap "simpleserver") ; @r{no special configuration} | ||
| 17771 | ; @r{perhaps a ssh port forwarded server:} | ||
| 17772 | (nnimap "dolk" | ||
| 17773 | (nnimap-address "localhost") | ||
| 17774 | (nnimap-server-port 1430)) | ||
| 17775 | ; @r{a UW server running on localhost} | ||
| 17776 | (nnimap "barbar" | ||
| 17777 | (nnimap-server-port 143) | ||
| 17778 | (nnimap-address "localhost") | ||
| 17779 | (nnimap-list-pattern ("INBOX" "mail/*"))) | ||
| 17780 | ; @r{anonymous public cyrus server:} | ||
| 17781 | (nnimap "cyrus.andrew.cmu.edu" | ||
| 17782 | (nnimap-authenticator anonymous) | ||
| 17783 | (nnimap-list-pattern "archive.*") | ||
| 17784 | (nnimap-stream network)) | ||
| 17785 | ; @r{a ssl server on a non-standard port:} | ||
| 17786 | (nnimap "vic20" | ||
| 17787 | (nnimap-address "vic20.somewhere.com") | ||
| 17788 | (nnimap-server-port 9930) | ||
| 17789 | (nnimap-stream ssl)))) | ||
| 17790 | @end lisp | ||
| 17791 | |||
| 17792 | After defining the new server, you can subscribe to groups on the | ||
| 17793 | server using normal Gnus commands such as @kbd{U} in the Group Buffer | ||
| 17794 | (@pxref{Subscription Commands}) or via the Server Buffer | ||
| 17795 | (@pxref{Server Buffer}). | ||
| 17796 | |||
| 17797 | The following variables can be used to create a virtual @code{nnimap} | ||
| 17798 | server: | ||
| 17799 | |||
| 17800 | @table @code | ||
| 17801 | |||
| 17802 | @item nnimap-address | ||
| 17803 | @vindex nnimap-address | ||
| 17804 | |||
| 17805 | The address of the remote @acronym{IMAP} server. Defaults to the virtual | ||
| 17806 | server name if not specified. | ||
| 17807 | |||
| 17808 | @item nnimap-server-port | ||
| 17809 | @vindex nnimap-server-port | ||
| 17810 | Port on server to contact. Defaults to port 143, or 993 for @acronym{TLS}/@acronym{SSL}. | ||
| 17811 | |||
| 17812 | Note that this should be an integer, example server specification: | ||
| 17813 | |||
| 17814 | @lisp | ||
| 17815 | (nnimap "mail.server.com" | ||
| 17816 | (nnimap-server-port 4711)) | ||
| 17817 | @end lisp | ||
| 17818 | |||
| 17819 | @item nnimap-list-pattern | ||
| 17820 | @vindex nnimap-list-pattern | ||
| 17821 | String or list of strings of mailboxes to limit available groups to. | ||
| 17822 | This is used when the server has very many mailboxes and you're only | ||
| 17823 | interested in a few---some servers export your home directory via | ||
| 17824 | @acronym{IMAP}, you'll probably want to limit the mailboxes to those in | ||
| 17825 | @file{~/Mail/*} then. | ||
| 17826 | |||
| 17827 | The string can also be a cons of REFERENCE and the string as above, what | ||
| 17828 | REFERENCE is used for is server specific, but on the University of | ||
| 17829 | Washington server it's a directory that will be concatenated with the | ||
| 17830 | mailbox. | ||
| 17831 | |||
| 17832 | Example server specification: | ||
| 17833 | |||
| 17834 | @lisp | ||
| 17835 | (nnimap "mail.server.com" | ||
| 17836 | (nnimap-list-pattern ("INBOX" "Mail/*" "alt.sex.*" | ||
| 17837 | ("~friend/Mail/" . "list/*")))) | ||
| 17838 | @end lisp | ||
| 17839 | |||
| 17840 | @item nnimap-stream | ||
| 17841 | @vindex nnimap-stream | ||
| 17842 | The type of stream used to connect to your server. By default, nnimap | ||
| 17843 | will detect and automatically use all of the below, with the exception | ||
| 17844 | of @acronym{TLS}/@acronym{SSL}. (@acronym{IMAP} over | ||
| 17845 | @acronym{TLS}/@acronym{SSL} is being replaced by STARTTLS, which can | ||
| 17846 | be automatically detected, but it's not widely deployed yet.) | ||
| 17847 | |||
| 17848 | Example server specification: | ||
| 17849 | |||
| 17850 | @lisp | ||
| 17851 | (nnimap "mail.server.com" | ||
| 17852 | (nnimap-stream ssl)) | ||
| 17853 | @end lisp | ||
| 17854 | |||
| 17855 | Please note that the value of @code{nnimap-stream} is a symbol! | ||
| 17856 | |||
| 17857 | @itemize @bullet | ||
| 17858 | @item | ||
| 17859 | @dfn{gssapi:} Connect with GSSAPI (usually Kerberos 5). Requires the | ||
| 17860 | @samp{gsasl} or @samp{imtest} program. | ||
| 17861 | @item | ||
| 17862 | @dfn{kerberos4:} Connect with Kerberos 4. Requires the @samp{imtest} program. | ||
| 17863 | @item | ||
| 17864 | @dfn{starttls:} Connect via the STARTTLS extension (similar to | ||
| 17865 | @acronym{TLS}/@acronym{SSL}). Requires the external library @samp{starttls.el} and program | ||
| 17866 | @samp{starttls}. | ||
| 17867 | @item | ||
| 17868 | @dfn{tls:} Connect through @acronym{TLS}. Requires GNUTLS (the program | ||
| 17869 | @samp{gnutls-cli}). | ||
| 17870 | @item | ||
| 17871 | @dfn{ssl:} Connect through @acronym{SSL}. Requires OpenSSL (the program | ||
| 17872 | @samp{openssl}) or SSLeay (@samp{s_client}). | ||
| 17873 | @item | ||
| 17874 | @dfn{shell:} Use a shell command to start @acronym{IMAP} connection. | ||
| 17875 | @item | ||
| 17876 | @dfn{network:} Plain, TCP/IP network connection. | ||
| 17877 | @end itemize | ||
| 17878 | |||
| 17879 | @vindex imap-kerberos4-program | ||
| 17880 | The @samp{imtest} program is shipped with Cyrus IMAPD. If you're | ||
| 17881 | using @samp{imtest} from Cyrus IMAPD < 2.0.14 (which includes version | ||
| 17882 | 1.5.x and 1.6.x) you need to frob @code{imap-process-connection-type} | ||
| 17883 | to make @code{imap.el} use a pty instead of a pipe when communicating | ||
| 17884 | with @samp{imtest}. You will then suffer from a line length | ||
| 17885 | restrictions on @acronym{IMAP} commands, which might make Gnus seem to hang | ||
| 17886 | indefinitely if you have many articles in a mailbox. The variable | ||
| 17887 | @code{imap-kerberos4-program} contain parameters to pass to the imtest | ||
| 17888 | program. | ||
| 17889 | |||
| 17890 | For @acronym{TLS} connection, the @code{gnutls-cli} program from GNUTLS is | ||
| 17891 | needed. It is available from | ||
| 17892 | @uref{http://www.gnu.org/software/gnutls/}. | ||
| 17893 | |||
| 17894 | @vindex imap-gssapi-program | ||
| 17895 | This parameter specifies a list of command lines that invoke a GSSAPI | ||
| 17896 | authenticated @acronym{IMAP} stream in a subshell. They are tried | ||
| 17897 | sequentially until a connection is made, or the list has been | ||
| 17898 | exhausted. By default, @samp{gsasl} from GNU SASL, available from | ||
| 17899 | @uref{http://www.gnu.org/software/gsasl/}, and the @samp{imtest} | ||
| 17900 | program from Cyrus IMAPD (see @code{imap-kerberos4-program}), are | ||
| 17901 | tried. | ||
| 17902 | |||
| 17903 | @vindex imap-ssl-program | ||
| 17904 | For @acronym{SSL} connections, the OpenSSL program is available from | ||
| 17905 | @uref{http://www.openssl.org/}. OpenSSL was formerly known as SSLeay, | ||
| 17906 | and nnimap support it too---although the most recent versions of | ||
| 17907 | SSLeay, 0.9.x, are known to have serious bugs making it | ||
| 17908 | useless. Earlier versions, especially 0.8.x, of SSLeay are known to | ||
| 17909 | work. The variable @code{imap-ssl-program} contain parameters to pass | ||
| 17910 | to OpenSSL/SSLeay. | ||
| 17911 | |||
| 17912 | @vindex imap-shell-program | ||
| 17913 | @vindex imap-shell-host | ||
| 17914 | For @acronym{IMAP} connections using the @code{shell} stream, the | ||
| 17915 | variable @code{imap-shell-program} specify what program to call. Make | ||
| 17916 | sure nothing is interfering with the output of the program, e.g., don't | ||
| 17917 | forget to redirect the error output to the void. | ||
| 17918 | |||
| 17919 | @item nnimap-authenticator | ||
| 17920 | @vindex nnimap-authenticator | ||
| 17921 | |||
| 17922 | The authenticator used to connect to the server. By default, nnimap | ||
| 17923 | will use the most secure authenticator your server is capable of. | ||
| 17924 | |||
| 17925 | Example server specification: | ||
| 17926 | |||
| 17927 | @lisp | ||
| 17928 | (nnimap "mail.server.com" | ||
| 17929 | (nnimap-authenticator anonymous)) | ||
| 17930 | @end lisp | ||
| 17931 | |||
| 17932 | Please note that the value of @code{nnimap-authenticator} is a symbol! | ||
| 17933 | |||
| 17934 | @itemize @bullet | ||
| 17935 | @item | ||
| 17936 | @dfn{gssapi:} GSSAPI (usually kerberos 5) authentication. Requires | ||
| 17937 | external program @code{gsasl} or @code{imtest}. | ||
| 17938 | @item | ||
| 17939 | @dfn{kerberos4:} Kerberos 4 authentication. Requires external program | ||
| 17940 | @code{imtest}. | ||
| 17941 | @item | ||
| 17942 | @dfn{digest-md5:} Encrypted username/password via DIGEST-MD5. Requires | ||
| 17943 | external library @code{digest-md5.el}. | ||
| 17944 | @item | ||
| 17945 | @dfn{cram-md5:} Encrypted username/password via CRAM-MD5. | ||
| 17946 | @item | ||
| 17947 | @dfn{login:} Plain-text username/password via LOGIN. | ||
| 17948 | @item | ||
| 17949 | @dfn{anonymous:} Login as ``anonymous'', supplying your email address as password. | ||
| 17950 | @end itemize | ||
| 17951 | |||
| 17952 | @item nnimap-expunge-on-close | ||
| 17953 | @cindex expunging | ||
| 17954 | @vindex nnimap-expunge-on-close | ||
| 17955 | Unlike Parmenides the @acronym{IMAP} designers have decided things that | ||
| 17956 | don't exist actually do exist. More specifically, @acronym{IMAP} has | ||
| 17957 | this concept of marking articles @code{Deleted} which doesn't actually | ||
| 17958 | delete them, and this (marking them @code{Deleted}, that is) is what | ||
| 17959 | nnimap does when you delete an article in Gnus (with @kbd{B DEL} or | ||
| 17960 | similar). | ||
| 17961 | |||
| 17962 | Since the articles aren't really removed when we mark them with the | ||
| 17963 | @code{Deleted} flag we'll need a way to actually delete them. Feel like | ||
| 17964 | running in circles yet? | ||
| 17965 | |||
| 17966 | Traditionally, nnimap has removed all articles marked as @code{Deleted} | ||
| 17967 | when closing a mailbox but this is now configurable by this server | ||
| 17968 | variable. | ||
| 17969 | |||
| 17970 | The possible options are: | ||
| 17971 | |||
| 17972 | @table @code | ||
| 17973 | |||
| 17974 | @item always | ||
| 17975 | The default behavior, delete all articles marked as ``Deleted'' when | ||
| 17976 | closing a mailbox. | ||
| 17977 | @item never | ||
| 17978 | Never actually delete articles. Currently there is no way of showing | ||
| 17979 | the articles marked for deletion in nnimap, but other @acronym{IMAP} clients | ||
| 17980 | may allow you to do this. If you ever want to run the EXPUNGE command | ||
| 17981 | manually, @xref{Expunging mailboxes}. | ||
| 17982 | @item ask | ||
| 17983 | When closing mailboxes, nnimap will ask if you wish to expunge deleted | ||
| 17984 | articles or not. | ||
| 17985 | |||
| 17986 | @end table | ||
| 17987 | |||
| 17988 | @item nnimap-importantize-dormant | ||
| 17989 | @vindex nnimap-importantize-dormant | ||
| 17990 | |||
| 17991 | If non-@code{nil} (the default), marks dormant articles as ticked (as | ||
| 17992 | well), for other @acronym{IMAP} clients. Within Gnus, dormant articles will | ||
| 17993 | naturally still (only) be marked as dormant. This is to make dormant | ||
| 17994 | articles stand out, just like ticked articles, in other @acronym{IMAP} | ||
| 17995 | clients. (In other words, Gnus has two ``Tick'' marks and @acronym{IMAP} | ||
| 17996 | has only one.) | ||
| 17997 | |||
| 17998 | Probably the only reason for frobbing this would be if you're trying | ||
| 17999 | enable per-user persistent dormant flags, using something like: | ||
| 18000 | |||
| 18001 | @lisp | ||
| 18002 | (setcdr (assq 'dormant nnimap-mark-to-flag-alist) | ||
| 18003 | (format "gnus-dormant-%s" (user-login-name))) | ||
| 18004 | (setcdr (assq 'dormant nnimap-mark-to-predicate-alist) | ||
| 18005 | (format "KEYWORD gnus-dormant-%s" (user-login-name))) | ||
| 18006 | @end lisp | ||
| 18007 | |||
| 18008 | In this case, you would not want the per-user dormant flag showing up | ||
| 18009 | as ticked for other users. | ||
| 18010 | |||
| 18011 | @item nnimap-expunge-search-string | ||
| 18012 | @cindex expunging | ||
| 18013 | @vindex nnimap-expunge-search-string | ||
| 18014 | @cindex expiring @acronym{IMAP} mail | ||
| 18015 | |||
| 18016 | This variable contain the @acronym{IMAP} search command sent to server when | ||
| 18017 | searching for articles eligible for expiring. The default is | ||
| 18018 | @code{"UID %s NOT SINCE %s"}, where the first @code{%s} is replaced by | ||
| 18019 | UID set and the second @code{%s} is replaced by a date. | ||
| 18020 | |||
| 18021 | Probably the only useful value to change this to is | ||
| 18022 | @code{"UID %s NOT SENTSINCE %s"}, which makes nnimap use the Date: in | ||
| 18023 | messages instead of the internal article date. See section 6.4.4 of | ||
| 18024 | RFC 2060 for more information on valid strings. | ||
| 18025 | |||
| 18026 | However, if @code{nnimap-search-uids-not-since-is-evil} | ||
| 18027 | is true, this variable has no effect since the search logic | ||
| 18028 | is reversed, as described below. | ||
| 18029 | |||
| 18030 | @item nnimap-authinfo-file | ||
| 18031 | @vindex nnimap-authinfo-file | ||
| 18032 | |||
| 18033 | A file containing credentials used to log in on servers. The format is | ||
| 18034 | (almost) the same as the @code{ftp} @file{~/.netrc} file. See the | ||
| 18035 | variable @code{nntp-authinfo-file} for exact syntax; also see | ||
| 18036 | @ref{NNTP}. An example of an .authinfo line for an IMAP server, is: | ||
| 18037 | |||
| 18038 | @example | ||
| 18039 | machine students.uio.no login larsi password geheimnis port imap | ||
| 18040 | @end example | ||
| 18041 | |||
| 18042 | Note that it should be @code{port imap}, or @code{port 143}, if you | ||
| 18043 | use a @code{nnimap-stream} of @code{tls} or @code{ssl}, even if the | ||
| 18044 | actual port number used is port 993 for secured IMAP. For | ||
| 18045 | convenience, Gnus will accept @code{port imaps} as a synonym of | ||
| 18046 | @code{port imap}. | ||
| 18047 | |||
| 18048 | @item nnimap-need-unselect-to-notice-new-mail | ||
| 18049 | @vindex nnimap-need-unselect-to-notice-new-mail | ||
| 18050 | |||
| 18051 | Unselect mailboxes before looking for new mail in them. Some servers | ||
| 18052 | seem to need this under some circumstances; it was reported that | ||
| 18053 | Courier 1.7.1 did. | ||
| 18054 | |||
| 18055 | @item nnimap-nov-is-evil | ||
| 18056 | @vindex nnimap-nov-is-evil | ||
| 18057 | @cindex Courier @acronym{IMAP} server | ||
| 18058 | @cindex @acronym{NOV} | ||
| 18059 | |||
| 18060 | Never generate or use a local @acronym{NOV} database. Defaults to the | ||
| 18061 | value of @code{gnus-agent}. | ||
| 18062 | |||
| 18063 | Using a @acronym{NOV} database usually makes header fetching much | ||
| 18064 | faster, but it uses the @code{UID SEARCH UID} command, which is very | ||
| 18065 | slow on some servers (notably some versions of Courier). Since the Gnus | ||
| 18066 | Agent caches the information in the @acronym{NOV} database without using | ||
| 18067 | the slow command, this variable defaults to true if the Agent is in use, | ||
| 18068 | and false otherwise. | ||
| 18069 | |||
| 18070 | @item nnimap-search-uids-not-since-is-evil | ||
| 18071 | @vindex nnimap-search-uids-not-since-is-evil | ||
| 18072 | @cindex Courier @acronym{IMAP} server | ||
| 18073 | @cindex expiring @acronym{IMAP} mail | ||
| 18074 | |||
| 18075 | Avoid the @code{UID SEARCH UID @var{message numbers} NOT SINCE | ||
| 18076 | @var{date}} command, which is slow on some @acronym{IMAP} servers | ||
| 18077 | (notably, some versions of Courier). Instead, use @code{UID SEARCH SINCE | ||
| 18078 | @var{date}} and prune the list of expirable articles within Gnus. | ||
| 18079 | |||
| 18080 | When Gnus expires your mail (@pxref{Expiring Mail}), it starts with a | ||
| 18081 | list of expirable articles and asks the IMAP server questions like ``Of | ||
| 18082 | these articles, which ones are older than a week?'' While this seems | ||
| 18083 | like a perfectly reasonable question, some IMAP servers take a long time | ||
| 18084 | to answer it, since they seemingly go looking into every old article to | ||
| 18085 | see if it is one of the expirable ones. Curiously, the question ``Of | ||
| 18086 | @emph{all} articles, which ones are newer than a week?'' seems to be | ||
| 18087 | much faster to answer, so setting this variable causes Gnus to ask this | ||
| 18088 | question and figure out the answer to the real question itself. | ||
| 18089 | |||
| 18090 | This problem can really sneak up on you: when you first configure Gnus, | ||
| 18091 | everything works fine, but once you accumulate a couple thousand | ||
| 18092 | messages, you start cursing Gnus for being so slow. On the other hand, | ||
| 18093 | if you get a lot of email within a week, setting this variable will | ||
| 18094 | cause a lot of network traffic between Gnus and the IMAP server. | ||
| 18095 | |||
| 18096 | @item nnimap-logout-timeout | ||
| 18097 | @vindex nnimap-logout-timeout | ||
| 18098 | |||
| 18099 | There is a case where a connection to a @acronym{IMAP} server is unable | ||
| 18100 | to close, when connecting to the server via a certain kind of network, | ||
| 18101 | e.g. @acronym{VPN}. In that case, it will be observed that a connection | ||
| 18102 | between Emacs and the local network looks alive even if the server has | ||
| 18103 | closed a connection for some reason (typically, a timeout). | ||
| 18104 | Consequently, Emacs continues waiting for a response from the server for | ||
| 18105 | the @code{LOGOUT} command that Emacs sent, or hangs in other words. If | ||
| 18106 | you are in such a network, setting this variable to a number of seconds | ||
| 18107 | will be helpful. If it is set, a hung connection will be closed | ||
| 18108 | forcibly, after this number of seconds from the time Emacs sends the | ||
| 18109 | @code{LOGOUT} command. It should not be too small value but too large | ||
| 18110 | value will be inconvenient too. Perhaps the value 1.0 will be a good | ||
| 18111 | candidate but it might be worth trying some other values. | ||
| 18112 | |||
| 18113 | Example server specification: | ||
| 18114 | |||
| 18115 | @lisp | ||
| 18116 | (nnimap "mail.server.com" | ||
| 18117 | (nnimap-logout-timeout 1.0)) | ||
| 18118 | @end lisp | ||
| 18119 | |||
| 18120 | @end table | ||
| 18121 | |||
| 18122 | @menu | ||
| 18123 | * Splitting in IMAP:: Splitting mail with nnimap. | ||
| 18124 | * Expiring in IMAP:: Expiring mail with nnimap. | ||
| 18125 | * Editing IMAP ACLs:: Limiting/enabling other users access to a mailbox. | ||
| 18126 | * Expunging mailboxes:: Equivalent of a ``compress mailbox'' button. | ||
| 18127 | * A note on namespaces:: How to (not) use @acronym{IMAP} namespace in Gnus. | ||
| 18128 | * Debugging IMAP:: What to do when things don't work. | ||
| 18129 | @end menu | ||
| 18130 | |||
| 18131 | |||
| 18132 | |||
| 18133 | @node Splitting in IMAP | ||
| 18134 | @subsection Splitting in IMAP | ||
| 18135 | @cindex splitting imap mail | ||
| 18136 | |||
| 18137 | Splitting is something Gnus users have loved and used for years, and now | ||
| 18138 | the rest of the world is catching up. Yeah, dream on, not many | ||
| 18139 | @acronym{IMAP} servers have server side splitting and those that have | ||
| 18140 | splitting seem to use some non-standard protocol. This means that | ||
| 18141 | @acronym{IMAP} support for Gnus has to do its own splitting. | ||
| 18142 | |||
| 18143 | And it does. | ||
| 18144 | |||
| 18145 | (Incidentally, people seem to have been dreaming on, and Sieve has | ||
| 18146 | gaining a market share and is supported by several IMAP servers. | ||
| 18147 | Fortunately, Gnus support it too, @xref{Sieve Commands}.) | ||
| 18148 | |||
| 18149 | Here are the variables of interest: | ||
| 18150 | |||
| 18151 | @table @code | ||
| 18152 | |||
| 18153 | @item nnimap-split-crosspost | ||
| 18154 | @cindex splitting, crosspost | ||
| 18155 | @cindex crosspost | ||
| 18156 | @vindex nnimap-split-crosspost | ||
| 18157 | |||
| 18158 | If non-@code{nil}, do crossposting if several split methods match the | ||
| 18159 | mail. If @code{nil}, the first match in @code{nnimap-split-rule} | ||
| 18160 | found will be used. | ||
| 18161 | |||
| 18162 | Nnmail equivalent: @code{nnmail-crosspost}. | ||
| 18163 | |||
| 18164 | @item nnimap-split-inbox | ||
| 18165 | @cindex splitting, inbox | ||
| 18166 | @cindex inbox | ||
| 18167 | @vindex nnimap-split-inbox | ||
| 18168 | |||
| 18169 | A string or a list of strings that gives the name(s) of @acronym{IMAP} | ||
| 18170 | mailboxes to split from. Defaults to @code{nil}, which means that | ||
| 18171 | splitting is disabled! | ||
| 18172 | |||
| 18173 | @lisp | ||
| 18174 | (setq nnimap-split-inbox | ||
| 18175 | '("INBOX" ("~/friend/Mail" . "lists/*") "lists.imap")) | ||
| 18176 | @end lisp | ||
| 18177 | |||
| 18178 | No nnmail equivalent. | ||
| 18179 | |||
| 18180 | @item nnimap-split-rule | ||
| 18181 | @cindex splitting, rules | ||
| 18182 | @vindex nnimap-split-rule | ||
| 18183 | |||
| 18184 | New mail found in @code{nnimap-split-inbox} will be split according to | ||
| 18185 | this variable. | ||
| 18186 | |||
| 18187 | This variable contains a list of lists, where the first element in the | ||
| 18188 | sublist gives the name of the @acronym{IMAP} mailbox to move articles | ||
| 18189 | matching the regexp in the second element in the sublist. Got that? | ||
| 18190 | Neither did I, we need examples. | ||
| 18191 | |||
| 18192 | @lisp | ||
| 18193 | (setq nnimap-split-rule | ||
| 18194 | '(("INBOX.nnimap" | ||
| 18195 | "^Sender: owner-nnimap@@vic20.globalcom.se") | ||
| 18196 | ("INBOX.junk" "^Subject:.*MAKE MONEY") | ||
| 18197 | ("INBOX.private" ""))) | ||
| 18198 | @end lisp | ||
| 18199 | |||
| 18200 | This will put all articles from the nnimap mailing list into mailbox | ||
| 18201 | INBOX.nnimap, all articles containing MAKE MONEY in the Subject: line | ||
| 18202 | into INBOX.junk and everything else in INBOX.private. | ||
| 18203 | |||
| 18204 | The first string may contain @samp{\\1} forms, like the ones used by | ||
| 18205 | replace-match to insert sub-expressions from the matched text. For | ||
| 18206 | instance: | ||
| 18207 | |||
| 18208 | @lisp | ||
| 18209 | ("INBOX.lists.\\1" "^Sender: owner-\\([a-z-]+\\)@@") | ||
| 18210 | @end lisp | ||
| 18211 | |||
| 18212 | The first element can also be the symbol @code{junk} to indicate that | ||
| 18213 | matching messages should simply be deleted. Use with care. | ||
| 18214 | |||
| 18215 | The second element can also be a function. In that case, it will be | ||
| 18216 | called with the first element of the rule as the argument, in a buffer | ||
| 18217 | containing the headers of the article. It should return a | ||
| 18218 | non-@code{nil} value if it thinks that the mail belongs in that group. | ||
| 18219 | |||
| 18220 | Nnmail users might recollect that the last regexp had to be empty to | ||
| 18221 | match all articles (like in the example above). This is not required in | ||
| 18222 | nnimap. Articles not matching any of the regexps will not be moved out | ||
| 18223 | of your inbox. (This might affect performance if you keep lots of | ||
| 18224 | unread articles in your inbox, since the splitting code would go over | ||
| 18225 | them every time you fetch new mail.) | ||
| 18226 | |||
| 18227 | These rules are processed from the beginning of the alist toward the | ||
| 18228 | end. The first rule to make a match will ``win'', unless you have | ||
| 18229 | crossposting enabled. In that case, all matching rules will ``win''. | ||
| 18230 | |||
| 18231 | This variable can also have a function as its value, the function will | ||
| 18232 | be called with the headers narrowed and should return a group where it | ||
| 18233 | thinks the article should be split to. See @code{nnimap-split-fancy}. | ||
| 18234 | |||
| 18235 | The splitting code tries to create mailboxes if it needs to. | ||
| 18236 | |||
| 18237 | To allow for different split rules on different virtual servers, and | ||
| 18238 | even different split rules in different inboxes on the same server, | ||
| 18239 | the syntax of this variable have been extended along the lines of: | ||
| 18240 | |||
| 18241 | @lisp | ||
| 18242 | (setq nnimap-split-rule | ||
| 18243 | '(("my1server" (".*" (("ding" "ding@@gnus.org") | ||
| 18244 | ("junk" "From:.*Simon")))) | ||
| 18245 | ("my2server" ("INBOX" nnimap-split-fancy)) | ||
| 18246 | ("my[34]server" (".*" (("private" "To:.*Simon") | ||
| 18247 | ("junk" my-junk-func)))))) | ||
| 18248 | @end lisp | ||
| 18249 | |||
| 18250 | The virtual server name is in fact a regexp, so that the same rules | ||
| 18251 | may apply to several servers. In the example, the servers | ||
| 18252 | @code{my3server} and @code{my4server} both use the same rules. | ||
| 18253 | Similarly, the inbox string is also a regexp. The actual splitting | ||
| 18254 | rules are as before, either a function, or a list with group/regexp or | ||
| 18255 | group/function elements. | ||
| 18256 | |||
| 18257 | Nnmail equivalent: @code{nnmail-split-methods}. | ||
| 18258 | |||
| 18259 | @item nnimap-split-predicate | ||
| 18260 | @cindex splitting | ||
| 18261 | @vindex nnimap-split-predicate | ||
| 18262 | |||
| 18263 | Mail matching this predicate in @code{nnimap-split-inbox} will be | ||
| 18264 | split, it is a string and the default is @samp{UNSEEN UNDELETED}. | ||
| 18265 | |||
| 18266 | This might be useful if you use another @acronym{IMAP} client to read mail in | ||
| 18267 | your inbox but would like Gnus to split all articles in the inbox | ||
| 18268 | regardless of readedness. Then you might change this to | ||
| 18269 | @samp{UNDELETED}. | ||
| 18270 | |||
| 18271 | @item nnimap-split-fancy | ||
| 18272 | @cindex splitting, fancy | ||
| 18273 | @findex nnimap-split-fancy | ||
| 18274 | @vindex nnimap-split-fancy | ||
| 18275 | |||
| 18276 | It's possible to set @code{nnimap-split-rule} to | ||
| 18277 | @code{nnmail-split-fancy} if you want to use fancy | ||
| 18278 | splitting. @xref{Fancy Mail Splitting}. | ||
| 18279 | |||
| 18280 | However, to be able to have different fancy split rules for nnmail and | ||
| 18281 | nnimap back ends you can set @code{nnimap-split-rule} to | ||
| 18282 | @code{nnimap-split-fancy} and define the nnimap specific fancy split | ||
| 18283 | rule in @code{nnimap-split-fancy}. | ||
| 18284 | |||
| 18285 | Example: | ||
| 18286 | |||
| 18287 | @lisp | ||
| 18288 | (setq nnimap-split-rule 'nnimap-split-fancy | ||
| 18289 | nnimap-split-fancy ...) | ||
| 18290 | @end lisp | ||
| 18291 | |||
| 18292 | Nnmail equivalent: @code{nnmail-split-fancy}. | ||
| 18293 | |||
| 18294 | @item nnimap-split-download-body | ||
| 18295 | @findex nnimap-split-download-body | ||
| 18296 | @vindex nnimap-split-download-body | ||
| 18297 | |||
| 18298 | Set to non-@code{nil} to download entire articles during splitting. | ||
| 18299 | This is generally not required, and will slow things down | ||
| 18300 | considerably. You may need it if you want to use an advanced | ||
| 18301 | splitting function that analyzes the body to split the article. | ||
| 18302 | |||
| 18303 | @end table | ||
| 18304 | |||
| 18305 | @node Expiring in IMAP | ||
| 18306 | @subsection Expiring in IMAP | ||
| 18307 | @cindex expiring @acronym{IMAP} mail | ||
| 18308 | |||
| 18309 | Even though @code{nnimap} is not a proper @code{nnmail} derived back | ||
| 18310 | end, it supports most features in regular expiring (@pxref{Expiring | ||
| 18311 | Mail}). Unlike splitting in @acronym{IMAP} (@pxref{Splitting in | ||
| 18312 | IMAP}) it does not clone the @code{nnmail} variables (i.e., creating | ||
| 18313 | @var{nnimap-expiry-wait}) but reuse the @code{nnmail} variables. What | ||
| 18314 | follows below are the variables used by the @code{nnimap} expiry | ||
| 18315 | process. | ||
| 18316 | |||
| 18317 | A note on how the expire mark is stored on the @acronym{IMAP} server is | ||
| 18318 | appropriate here as well. The expire mark is translated into a | ||
| 18319 | @code{imap} client specific mark, @code{gnus-expire}, and stored on the | ||
| 18320 | message. This means that likely only Gnus will understand and treat | ||
| 18321 | the @code{gnus-expire} mark properly, although other clients may allow | ||
| 18322 | you to view client specific flags on the message. It also means that | ||
| 18323 | your server must support permanent storage of client specific flags on | ||
| 18324 | messages. Most do, fortunately. | ||
| 18325 | |||
| 18326 | If expiring @acronym{IMAP} mail seems very slow, try setting the server | ||
| 18327 | variable @code{nnimap-search-uids-not-since-is-evil}. | ||
| 18328 | |||
| 18329 | @table @code | ||
| 18330 | |||
| 18331 | @item nnmail-expiry-wait | ||
| 18332 | @item nnmail-expiry-wait-function | ||
| 18333 | |||
| 18334 | These variables are fully supported. The expire value can be a | ||
| 18335 | number, the symbol @code{immediate} or @code{never}. | ||
| 18336 | |||
| 18337 | @item nnmail-expiry-target | ||
| 18338 | |||
| 18339 | This variable is supported, and internally implemented by calling the | ||
| 18340 | @code{nnmail} functions that handle this. It contains an optimization | ||
| 18341 | that if the destination is a @acronym{IMAP} group on the same server, the | ||
| 18342 | article is copied instead of appended (that is, uploaded again). | ||
| 18343 | |||
| 18344 | @end table | ||
| 18345 | |||
| 18346 | @node Editing IMAP ACLs | ||
| 18347 | @subsection Editing IMAP ACLs | ||
| 18348 | @cindex editing imap acls | ||
| 18349 | @cindex Access Control Lists | ||
| 18350 | @cindex Editing @acronym{IMAP} ACLs | ||
| 18351 | @kindex G l (Group) | ||
| 18352 | @findex gnus-group-nnimap-edit-acl | ||
| 18353 | |||
| 18354 | ACL stands for Access Control List. ACLs are used in @acronym{IMAP} for | ||
| 18355 | limiting (or enabling) other users access to your mail boxes. Not all | ||
| 18356 | @acronym{IMAP} servers support this, this function will give an error if it | ||
| 18357 | doesn't. | ||
| 18358 | |||
| 18359 | To edit an ACL for a mailbox, type @kbd{G l} | ||
| 18360 | (@code{gnus-group-edit-nnimap-acl}) and you'll be presented with an ACL | ||
| 18361 | editing window with detailed instructions. | ||
| 18362 | |||
| 18363 | Some possible uses: | ||
| 18364 | |||
| 18365 | @itemize @bullet | ||
| 18366 | @item | ||
| 18367 | Giving ``anyone'' the ``lrs'' rights (lookup, read, keep seen/unseen flags) | ||
| 18368 | on your mailing list mailboxes enables other users on the same server to | ||
| 18369 | follow the list without subscribing to it. | ||
| 18370 | @item | ||
| 18371 | At least with the Cyrus server, you are required to give the user | ||
| 18372 | ``anyone'' posting ("p") capabilities to have ``plussing'' work (that is, | ||
| 18373 | mail sent to user+mailbox@@domain ending up in the @acronym{IMAP} mailbox | ||
| 18374 | INBOX.mailbox). | ||
| 18375 | @end itemize | ||
| 18376 | |||
| 18377 | @node Expunging mailboxes | ||
| 18378 | @subsection Expunging mailboxes | ||
| 18379 | @cindex expunging | ||
| 18380 | |||
| 18381 | @cindex expunge | ||
| 18382 | @cindex manual expunging | ||
| 18383 | @kindex G x (Group) | ||
| 18384 | @findex gnus-group-nnimap-expunge | ||
| 18385 | |||
| 18386 | If you're using the @code{never} setting of @code{nnimap-expunge-on-close}, | ||
| 18387 | you may want the option of expunging all deleted articles in a mailbox | ||
| 18388 | manually. This is exactly what @kbd{G x} does. | ||
| 18389 | |||
| 18390 | Currently there is no way of showing deleted articles, you can just | ||
| 18391 | delete them. | ||
| 18392 | |||
| 18393 | @node A note on namespaces | ||
| 18394 | @subsection A note on namespaces | ||
| 18395 | @cindex IMAP namespace | ||
| 18396 | @cindex namespaces | ||
| 18397 | |||
| 18398 | The @acronym{IMAP} protocol has a concept called namespaces, described | ||
| 18399 | by the following text in the RFC2060: | ||
| 18400 | |||
| 18401 | @display | ||
| 18402 | 5.1.2. Mailbox Namespace Naming Convention | ||
| 18403 | |||
| 18404 | By convention, the first hierarchical element of any mailbox name | ||
| 18405 | which begins with "#" identifies the "namespace" of the remainder of | ||
| 18406 | the name. This makes it possible to disambiguate between different | ||
| 18407 | types of mailbox stores, each of which have their own namespaces. | ||
| 18408 | |||
| 18409 | For example, implementations which offer access to USENET | ||
| 18410 | newsgroups MAY use the "#news" namespace to partition the USENET | ||
| 18411 | newsgroup namespace from that of other mailboxes. Thus, the | ||
| 18412 | comp.mail.misc newsgroup would have an mailbox name of | ||
| 18413 | "#news.comp.mail.misc", and the name "comp.mail.misc" could refer | ||
| 18414 | to a different object (e.g. a user's private mailbox). | ||
| 18415 | @end display | ||
| 18416 | |||
| 18417 | While there is nothing in this text that warrants concern for the | ||
| 18418 | @acronym{IMAP} implementation in Gnus, some servers use namespace | ||
| 18419 | prefixes in a way that does not work with how Gnus uses mailbox names. | ||
| 18420 | |||
| 18421 | Specifically, University of Washington's @acronym{IMAP} server uses | ||
| 18422 | mailbox names like @code{#driver.mbx/read-mail} which are valid only | ||
| 18423 | in the @sc{create} and @sc{append} commands. After the mailbox is | ||
| 18424 | created (or a messages is appended to a mailbox), it must be accessed | ||
| 18425 | without the namespace prefix, i.e. @code{read-mail}. Since Gnus do | ||
| 18426 | not make it possible for the user to guarantee that user entered | ||
| 18427 | mailbox names will only be used with the CREATE and APPEND commands, | ||
| 18428 | you should simply not use the namespace prefixed mailbox names in | ||
| 18429 | Gnus. | ||
| 18430 | |||
| 18431 | See the UoW IMAPD documentation for the @code{#driver.*/} prefix | ||
| 18432 | for more information on how to use the prefixes. They are a power | ||
| 18433 | tool and should be used only if you are sure what the effects are. | ||
| 18434 | |||
| 18435 | @node Debugging IMAP | ||
| 18436 | @subsection Debugging IMAP | ||
| 18437 | @cindex IMAP debugging | ||
| 18438 | @cindex protocol dump (IMAP) | ||
| 18439 | |||
| 18440 | @acronym{IMAP} is a complex protocol, more so than @acronym{NNTP} or | ||
| 18441 | @acronym{POP3}. Implementation bugs are not unlikely, and we do our | ||
| 18442 | best to fix them right away. If you encounter odd behavior, chances | ||
| 18443 | are that either the server or Gnus is buggy. | ||
| 18444 | |||
| 18445 | If you are familiar with network protocols in general, you will | ||
| 18446 | probably be able to extract some clues from the protocol dump of the | ||
| 18447 | exchanges between Gnus and the server. Even if you are not familiar | ||
| 18448 | with network protocols, when you include the protocol dump in | ||
| 18449 | @acronym{IMAP}-related bug reports you are helping us with data | ||
| 18450 | critical to solving the problem. Therefore, we strongly encourage you | ||
| 18451 | to include the protocol dump when reporting IMAP bugs in Gnus. | ||
| 18452 | |||
| 18453 | |||
| 18454 | @vindex imap-log | ||
| 18455 | Because the protocol dump, when enabled, generates lots of data, it is | ||
| 18456 | disabled by default. You can enable it by setting @code{imap-log} as | ||
| 18457 | follows: | ||
| 18458 | |||
| 18459 | @lisp | ||
| 18460 | (setq imap-log t) | ||
| 18461 | @end lisp | ||
| 18462 | |||
| 18463 | This instructs the @code{imap.el} package to log any exchanges with | ||
| 18464 | the server. The log is stored in the buffer @samp{*imap-log*}. Look | ||
| 18465 | for error messages, which sometimes are tagged with the keyword | ||
| 18466 | @code{BAD}---but when submitting a bug, make sure to include all the | ||
| 18467 | data. | ||
| 18468 | |||
| 18469 | @node Other Sources | 17822 | @node Other Sources |
| 18470 | @section Other Sources | 17823 | @section Other Sources |
| 18471 | 17824 | ||
| @@ -22378,7 +21731,6 @@ four days, Gnus will decay the scores four times, for instance. | |||
| 22378 | * Highlighting and Menus:: Making buffers look all nice and cozy. | 21731 | * Highlighting and Menus:: Making buffers look all nice and cozy. |
| 22379 | * Buttons:: Get tendinitis in ten easy steps! | 21732 | * Buttons:: Get tendinitis in ten easy steps! |
| 22380 | * Daemons:: Gnus can do things behind your back. | 21733 | * Daemons:: Gnus can do things behind your back. |
| 22381 | * NoCeM:: How to avoid spam and other fatty foods. | ||
| 22382 | * Undo:: Some actions can be undone. | 21734 | * Undo:: Some actions can be undone. |
| 22383 | * Predicate Specifiers:: Specifying predicates. | 21735 | * Predicate Specifiers:: Specifying predicates. |
| 22384 | * Moderation:: What to do if you're a moderator. | 21736 | * Moderation:: What to do if you're a moderator. |
| @@ -23397,13 +22749,12 @@ your @file{~/.gnus.el} file: | |||
| 23397 | (gnus-demon-add-handler 'gnus-demon-close-connections 30 t) | 22749 | (gnus-demon-add-handler 'gnus-demon-close-connections 30 t) |
| 23398 | @end lisp | 22750 | @end lisp |
| 23399 | 22751 | ||
| 23400 | @findex gnus-demon-add-nocem | ||
| 23401 | @findex gnus-demon-add-scanmail | 22752 | @findex gnus-demon-add-scanmail |
| 23402 | @findex gnus-demon-add-rescan | 22753 | @findex gnus-demon-add-rescan |
| 23403 | @findex gnus-demon-add-scan-timestamps | 22754 | @findex gnus-demon-add-scan-timestamps |
| 23404 | @findex gnus-demon-add-disconnection | 22755 | @findex gnus-demon-add-disconnection |
| 23405 | Some ready-made functions to do this have been created: | 22756 | Some ready-made functions to do this have been created: |
| 23406 | @code{gnus-demon-add-nocem}, @code{gnus-demon-add-disconnection}, | 22757 | @code{gnus-demon-add-disconnection}, |
| 23407 | @code{gnus-demon-add-nntp-close-connection}, | 22758 | @code{gnus-demon-add-nntp-close-connection}, |
| 23408 | @code{gnus-demon-add-scan-timestamps}, @code{gnus-demon-add-rescan}, and | 22759 | @code{gnus-demon-add-scan-timestamps}, @code{gnus-demon-add-rescan}, and |
| 23409 | @code{gnus-demon-add-scanmail}. Just put those functions in your | 22760 | @code{gnus-demon-add-scanmail}. Just put those functions in your |
| @@ -23422,152 +22773,6 @@ is a sure-fire way of getting booted off any respectable system. So | |||
| 23422 | behave. | 22773 | behave. |
| 23423 | 22774 | ||
| 23424 | 22775 | ||
| 23425 | @node NoCeM | ||
| 23426 | @section NoCeM | ||
| 23427 | @cindex nocem | ||
| 23428 | @cindex spam | ||
| 23429 | |||
| 23430 | @dfn{Spamming} is posting the same article lots and lots of times. | ||
| 23431 | Spamming is bad. Spamming is evil. | ||
| 23432 | |||
| 23433 | Spamming is usually canceled within a day or so by various anti-spamming | ||
| 23434 | agencies. These agencies usually also send out @dfn{NoCeM} messages. | ||
| 23435 | NoCeM is pronounced ``no see-'em'', and means what the name | ||
| 23436 | implies---these are messages that make the offending articles, like, go | ||
| 23437 | away. | ||
| 23438 | |||
| 23439 | What use are these NoCeM messages if the articles are canceled anyway? | ||
| 23440 | Some sites do not honor cancel messages and some sites just honor cancels | ||
| 23441 | from a select few people. Then you may wish to make use of the NoCeM | ||
| 23442 | messages, which are distributed in the newsgroups | ||
| 23443 | @samp{news.lists.filters}, @samp{alt.nocem.misc}, etc. | ||
| 23444 | |||
| 23445 | Gnus can read and parse the messages in this group automatically, and | ||
| 23446 | this will make spam disappear. | ||
| 23447 | |||
| 23448 | There are some variables to customize, of course: | ||
| 23449 | |||
| 23450 | @table @code | ||
| 23451 | @item gnus-use-nocem | ||
| 23452 | @vindex gnus-use-nocem | ||
| 23453 | Set this variable to @code{t} to set the ball rolling. It is @code{nil} | ||
| 23454 | by default. | ||
| 23455 | |||
| 23456 | You can also set this variable to a positive number as a group level. | ||
| 23457 | In that case, Gnus scans NoCeM messages when checking new news if this | ||
| 23458 | value is not exceeding a group level that you specify as the prefix | ||
| 23459 | argument to some commands, e.g. @code{gnus}, | ||
| 23460 | @code{gnus-group-get-new-news}, etc. Otherwise, Gnus does not scan | ||
| 23461 | NoCeM messages if you specify a group level that is smaller than this | ||
| 23462 | value to those commands. For example, if you use 1 or 2 on the mail | ||
| 23463 | groups and the levels on the news groups remain the default, 3 is the | ||
| 23464 | best choice. | ||
| 23465 | |||
| 23466 | @item gnus-nocem-groups | ||
| 23467 | @vindex gnus-nocem-groups | ||
| 23468 | Gnus will look for NoCeM messages in the groups in this list. The | ||
| 23469 | default is | ||
| 23470 | @lisp | ||
| 23471 | ("news.lists.filters" "alt.nocem.misc") | ||
| 23472 | @end lisp | ||
| 23473 | |||
| 23474 | @item gnus-nocem-issuers | ||
| 23475 | @vindex gnus-nocem-issuers | ||
| 23476 | There are many people issuing NoCeM messages. This list says what | ||
| 23477 | people you want to listen to. The default is: | ||
| 23478 | |||
| 23479 | @lisp | ||
| 23480 | ("Adri Verhoef" | ||
| 23481 | "alba-nocem@@albasani.net" | ||
| 23482 | "bleachbot@@httrack.com" | ||
| 23483 | "news@@arcor-online.net" | ||
| 23484 | "news@@uni-berlin.de" | ||
| 23485 | "nocem@@arcor.de" | ||
| 23486 | "pgpmoose@@killfile.org" | ||
| 23487 | "xjsppl@@gmx.de") | ||
| 23488 | @end lisp | ||
| 23489 | |||
| 23490 | Known despammers that you can put in this list are listed at@* | ||
| 23491 | @uref{http://www.xs4all.nl/~rosalind/nocemreg/nocemreg.html}. | ||
| 23492 | |||
| 23493 | You do not have to heed NoCeM messages from all these people---just the | ||
| 23494 | ones you want to listen to. You also don't have to accept all NoCeM | ||
| 23495 | messages from the people you like. Each NoCeM message has a @dfn{type} | ||
| 23496 | header that gives the message a (more or less, usually less) rigorous | ||
| 23497 | definition. Common types are @samp{spam}, @samp{spew}, @samp{mmf}, | ||
| 23498 | @samp{binary}, and @samp{troll}. To specify this, you have to use | ||
| 23499 | @code{(@var{issuer} @var{conditions} @dots{})} elements in the list. | ||
| 23500 | Each condition is either a string (which is a regexp that matches types | ||
| 23501 | you want to use) or a list on the form @code{(not @var{string})}, where | ||
| 23502 | @var{string} is a regexp that matches types you don't want to use. | ||
| 23503 | |||
| 23504 | For instance, if you want all NoCeM messages from Chris Lewis except his | ||
| 23505 | @samp{troll} messages, you'd say: | ||
| 23506 | |||
| 23507 | @lisp | ||
| 23508 | ("clewis@@ferret.ocunix.on.ca" ".*" (not "troll")) | ||
| 23509 | @end lisp | ||
| 23510 | |||
| 23511 | On the other hand, if you just want nothing but his @samp{spam} and | ||
| 23512 | @samp{spew} messages, you'd say: | ||
| 23513 | |||
| 23514 | @lisp | ||
| 23515 | ("clewis@@ferret.ocunix.on.ca" (not ".*") "spew" "spam") | ||
| 23516 | @end lisp | ||
| 23517 | |||
| 23518 | The specs are applied left-to-right. | ||
| 23519 | |||
| 23520 | |||
| 23521 | @item gnus-nocem-verifyer | ||
| 23522 | @vindex gnus-nocem-verifyer | ||
| 23523 | @findex gnus-nocem-epg-verify | ||
| 23524 | @findex pgg-verify | ||
| 23525 | This should be a function for verifying that the NoCeM issuer is who she | ||
| 23526 | says she is. This variable defaults to @code{gnus-nocem-epg-verify} if | ||
| 23527 | EasyPG is available, otherwise defaults to @code{pgg-verify}. The | ||
| 23528 | function should return non-@code{nil} if the verification is successful, | ||
| 23529 | otherwise (including the case the NoCeM message was not signed) should | ||
| 23530 | return @code{nil}. If this is too slow and you don't care for | ||
| 23531 | verification (which may be dangerous), you can set this variable to | ||
| 23532 | @code{nil}. | ||
| 23533 | |||
| 23534 | Formerly the default was @code{mc-verify}, which is a Mailcrypt | ||
| 23535 | function. While you can still use it, you can change it into | ||
| 23536 | @code{gnus-nocem-epg-verify} or @code{pgg-verify} running with GnuPG if | ||
| 23537 | you are willing to add the @acronym{PGP} public keys to GnuPG's keyring. | ||
| 23538 | |||
| 23539 | @item gnus-nocem-directory | ||
| 23540 | @vindex gnus-nocem-directory | ||
| 23541 | This is where Gnus will store its NoCeM cache files. The default is@* | ||
| 23542 | @file{~/News/NoCeM/}. | ||
| 23543 | |||
| 23544 | @item gnus-nocem-expiry-wait | ||
| 23545 | @vindex gnus-nocem-expiry-wait | ||
| 23546 | The number of days before removing old NoCeM entries from the cache. | ||
| 23547 | The default is 15. If you make it shorter Gnus will be faster, but you | ||
| 23548 | might then see old spam. | ||
| 23549 | |||
| 23550 | @item gnus-nocem-check-from | ||
| 23551 | @vindex gnus-nocem-check-from | ||
| 23552 | Non-@code{nil} means check for valid issuers in message bodies. | ||
| 23553 | Otherwise don't bother fetching articles unless their author matches a | ||
| 23554 | valid issuer; that is much faster if you are selective about the | ||
| 23555 | issuers. | ||
| 23556 | |||
| 23557 | @item gnus-nocem-check-article-limit | ||
| 23558 | @vindex gnus-nocem-check-article-limit | ||
| 23559 | If non-@code{nil}, the maximum number of articles to check in any NoCeM | ||
| 23560 | group. @code{nil} means no restriction. NoCeM groups can be huge and | ||
| 23561 | very slow to process. | ||
| 23562 | |||
| 23563 | @end table | ||
| 23564 | |||
| 23565 | Using NoCeM could potentially be a memory hog. If you have many living | ||
| 23566 | (i. e., subscribed or unsubscribed groups), your Emacs process will grow | ||
| 23567 | big. If this is a problem, you should kill off all (or most) of your | ||
| 23568 | unsubscribed groups (@pxref{Subscription Commands}). | ||
| 23569 | |||
| 23570 | |||
| 23571 | @node Undo | 22776 | @node Undo |
| 23572 | @section Undo | 22777 | @section Undo |
| 23573 | @cindex undo | 22778 | @cindex undo |
| @@ -23701,6 +22906,7 @@ stuff, so Gnus has taken advantage of that. | |||
| 23701 | * Face:: Display a funkier, teensier colored image. | 22906 | * Face:: Display a funkier, teensier colored image. |
| 23702 | * Smileys:: Show all those happy faces the way they were meant to be shown. | 22907 | * Smileys:: Show all those happy faces the way they were meant to be shown. |
| 23703 | * Picons:: How to display pictures of what you're reading. | 22908 | * Picons:: How to display pictures of what you're reading. |
| 22909 | * Gravatars:: Display the avatar of people you read. | ||
| 23704 | * XVarious:: Other XEmacsy Gnusey variables. | 22910 | * XVarious:: Other XEmacsy Gnusey variables. |
| 23705 | @end menu | 22911 | @end menu |
| 23706 | 22912 | ||
| @@ -24027,8 +23233,56 @@ want to add @samp{"unknown"} to this list. | |||
| 24027 | Ordered list of suffixes on picon file names to try. Defaults to | 23233 | Ordered list of suffixes on picon file names to try. Defaults to |
| 24028 | @code{("xpm" "gif" "xbm")} minus those not built-in your Emacs. | 23234 | @code{("xpm" "gif" "xbm")} minus those not built-in your Emacs. |
| 24029 | 23235 | ||
| 23236 | @item gnus-picon-inhibit-top-level-domains | ||
| 23237 | @vindex gnus-picon-inhibit-top-level-domains | ||
| 23238 | If non-@code{nil} (which is the default), don't display picons for | ||
| 23239 | things like @samp{.net} and @samp{.de}, which aren't usually very | ||
| 23240 | interesting. | ||
| 23241 | |||
| 23242 | @end table | ||
| 23243 | |||
| 23244 | @node Gravatars | ||
| 23245 | @subsection Gravatars | ||
| 23246 | |||
| 23247 | @iftex | ||
| 23248 | @iflatex | ||
| 23249 | \include{gravatars} | ||
| 23250 | @end iflatex | ||
| 23251 | @end iftex | ||
| 23252 | |||
| 23253 | A gravatar is an image registered to an e-mail address. | ||
| 23254 | |||
| 23255 | You can submit yours on-line at @uref{http://www.gravatar.com}. | ||
| 23256 | |||
| 23257 | The following variables offer control over how things are displayed. | ||
| 23258 | |||
| 23259 | @table @code | ||
| 23260 | |||
| 23261 | @item gnus-gravatar-size | ||
| 23262 | @vindex gnus-gravatar-size | ||
| 23263 | The size in pixels of gravatars. Gravatars are always square, so one | ||
| 23264 | number for the size is enough. | ||
| 23265 | |||
| 23266 | @item gnus-gravatar-relief | ||
| 23267 | @vindex gnus-gravatar-relief | ||
| 23268 | If non-nil, adds a shadow rectangle around the image. The value, | ||
| 23269 | relief, specifies the width of the shadow lines, in pixels. If relief | ||
| 23270 | is negative, shadows are drawn so that the image appears as a pressed | ||
| 23271 | button; otherwise, it appears as an unpressed button. | ||
| 23272 | |||
| 24030 | @end table | 23273 | @end table |
| 24031 | 23274 | ||
| 23275 | If you want to see them in the From field, set: | ||
| 23276 | @lisp | ||
| 23277 | (setq gnus-treat-from-gravatar 'head) | ||
| 23278 | @end lisp | ||
| 23279 | |||
| 23280 | If you want to see them in the Cc and To fields, set: | ||
| 23281 | |||
| 23282 | @lisp | ||
| 23283 | (setq gnus-treat-mail-gravatar 'head) | ||
| 23284 | @end lisp | ||
| 23285 | |||
| 24032 | 23286 | ||
| 24033 | @node XVarious | 23287 | @node XVarious |
| 24034 | @subsection Various XEmacs Variables | 23288 | @subsection Various XEmacs Variables |
| @@ -24364,7 +23618,7 @@ call the external tools during splitting. Example fancy split method: | |||
| 24364 | Note that with the nnimap back end, message bodies will not be | 23618 | Note that with the nnimap back end, message bodies will not be |
| 24365 | downloaded by default. You need to set | 23619 | downloaded by default. You need to set |
| 24366 | @code{nnimap-split-download-body} to @code{t} to do that | 23620 | @code{nnimap-split-download-body} to @code{t} to do that |
| 24367 | (@pxref{Splitting in IMAP}). | 23621 | (@pxref{Client-Side @acronym{IMAP} Splitting}). |
| 24368 | 23622 | ||
| 24369 | That is about it. As some spam is likely to get through anyway, you | 23623 | That is about it. As some spam is likely to get through anyway, you |
| 24370 | might want to have a nifty function to call when you happen to read | 23624 | might want to have a nifty function to call when you happen to read |
| @@ -24646,14 +23900,14 @@ the value @samp{spam} means @samp{nnimap+your-server:spam}. The value | |||
| 24646 | @vindex nnimap-split-download-body | 23900 | @vindex nnimap-split-download-body |
| 24647 | Note for IMAP users: if you use the @code{spam-check-bogofilter}, | 23901 | Note for IMAP users: if you use the @code{spam-check-bogofilter}, |
| 24648 | @code{spam-check-ifile}, and @code{spam-check-stat} spam back ends, | 23902 | @code{spam-check-ifile}, and @code{spam-check-stat} spam back ends, |
| 24649 | you should also set the variable @code{nnimap-split-download-body} | 23903 | you should also set the variable @code{nnimap-split-download-body} to |
| 24650 | to @code{t}. These spam back ends are most useful when they can | 23904 | @code{t}. These spam back ends are most useful when they can ``scan'' |
| 24651 | ``scan'' the full message body. By default, the nnimap back end only | 23905 | the full message body. By default, the nnimap back end only retrieves |
| 24652 | retrieves the message headers; @code{nnimap-split-download-body} tells | 23906 | the message headers; @code{nnimap-split-download-body} tells it to |
| 24653 | it to retrieve the message bodies as well. We don't set this by | 23907 | retrieve the message bodies as well. We don't set this by default |
| 24654 | default because it will slow @acronym{IMAP} down, and that is not an | 23908 | because it will slow @acronym{IMAP} down, and that is not an |
| 24655 | appropriate decision to make on behalf of the user. @xref{Splitting | 23909 | appropriate decision to make on behalf of the user. @xref{Client-Side |
| 24656 | in IMAP}. | 23910 | @acronym{IMAP} Splitting}. |
| 24657 | 23911 | ||
| 24658 | You have to specify one or more spam back ends for @code{spam-split} | 23912 | You have to specify one or more spam back ends for @code{spam-split} |
| 24659 | to use, by setting the @code{spam-use-*} variables. @xref{Spam Back | 23913 | to use, by setting the @code{spam-use-*} variables. @xref{Spam Back |
| @@ -27570,13 +26824,6 @@ Mail can be re-scanned by a daemonic process (@pxref{Daemons}). | |||
| 27570 | @end iftex | 26824 | @end iftex |
| 27571 | 26825 | ||
| 27572 | @item | 26826 | @item |
| 27573 | Gnus can make use of NoCeM files to weed out spam (@pxref{NoCeM}). | ||
| 27574 | |||
| 27575 | @lisp | ||
| 27576 | (setq gnus-use-nocem t) | ||
| 27577 | @end lisp | ||
| 27578 | |||
| 27579 | @item | ||
| 27580 | Groups can be made permanently visible (@pxref{Listing Groups}). | 26827 | Groups can be made permanently visible (@pxref{Listing Groups}). |
| 27581 | 26828 | ||
| 27582 | @lisp | 26829 | @lisp |
| @@ -28092,9 +27339,7 @@ The revised Gnus @acronym{FAQ} is included in the manual, | |||
| 28092 | @acronym{TLS} wrapper shipped with Gnus | 27339 | @acronym{TLS} wrapper shipped with Gnus |
| 28093 | 27340 | ||
| 28094 | @acronym{TLS}/@acronym{SSL} is now supported in @acronym{IMAP} and | 27341 | @acronym{TLS}/@acronym{SSL} is now supported in @acronym{IMAP} and |
| 28095 | @acronym{NNTP} via @file{tls.el} and GNUTLS. The old | 27342 | @acronym{NNTP} via @file{tls.el} and GNUTLS. |
| 28096 | @acronym{TLS}/@acronym{SSL} support via (external third party) | ||
| 28097 | @file{ssl.el} and OpenSSL still works. | ||
| 28098 | 27343 | ||
| 28099 | @item | 27344 | @item |
| 28100 | Improved anti-spam features. | 27345 | Improved anti-spam features. |
| @@ -29672,7 +28917,7 @@ group and article numbers are when fetching articles by | |||
| 29672 | on successful article retrieval. | 28917 | on successful article retrieval. |
| 29673 | 28918 | ||
| 29674 | 28919 | ||
| 29675 | @item (nnchoke-request-group GROUP &optional SERVER FAST) | 28920 | @item (nnchoke-request-group GROUP &optional SERVER FAST INFO) |
| 29676 | 28921 | ||
| 29677 | Get data on @var{group}. This function also has the side effect of | 28922 | Get data on @var{group}. This function also has the side effect of |
| 29678 | making @var{group} the current group. | 28923 | making @var{group} the current group. |
| @@ -29680,6 +28925,9 @@ making @var{group} the current group. | |||
| 29680 | If @var{fast}, don't bother to return useful data, just make @var{group} | 28925 | If @var{fast}, don't bother to return useful data, just make @var{group} |
| 29681 | the current group. | 28926 | the current group. |
| 29682 | 28927 | ||
| 28928 | If @var{info}, it allows the backend to update the group info | ||
| 28929 | structure. | ||
| 28930 | |||
| 29683 | Here's an example of some result data and a definition of the same: | 28931 | Here's an example of some result data and a definition of the same: |
| 29684 | 28932 | ||
| 29685 | @example | 28933 | @example |
diff --git a/doc/misc/message.texi b/doc/misc/message.texi index 6b922476596..ad56520f892 100644 --- a/doc/misc/message.texi +++ b/doc/misc/message.texi | |||
| @@ -1090,11 +1090,11 @@ the passphrase prompt. | |||
| 1090 | @subsection Using PGP/MIME | 1090 | @subsection Using PGP/MIME |
| 1091 | 1091 | ||
| 1092 | @acronym{PGP/MIME} requires an external OpenPGP implementation, such | 1092 | @acronym{PGP/MIME} requires an external OpenPGP implementation, such |
| 1093 | as @uref{http://www.gnupg.org/, GNU Privacy Guard}. Pre-OpenPGP | 1093 | as @uref{http://www.gnupg.org/, GNU Privacy Guard}. Pre-OpenPGP |
| 1094 | implementations such as PGP 2.x and PGP 5.x are also supported. One | 1094 | implementations such as PGP 2.x and PGP 5.x are also supported. One |
| 1095 | Emacs interface to the PGP implementations, PGG (@pxref{Top, ,PGG, | 1095 | Emacs interface to the PGP implementations, PGG (@pxref{Top, ,PGG, |
| 1096 | pgg, PGG Manual}), is included, but Mailcrypt and Florian Weimer's | 1096 | pgg, PGG Manual}), is included, but Mailcrypt is also supported. |
| 1097 | @code{gpg.el} are also supported. @xref{PGP Compatibility}. | 1097 | @xref{PGP Compatibility}. |
| 1098 | 1098 | ||
| 1099 | @cindex gpg-agent | 1099 | @cindex gpg-agent |
| 1100 | Message internally calls GnuPG (the @command{gpg} command) to perform | 1100 | Message internally calls GnuPG (the @command{gpg} command) to perform |
diff --git a/doc/misc/tramp.texi b/doc/misc/tramp.texi index 604130d2606..775e4788de0 100644 --- a/doc/misc/tramp.texi +++ b/doc/misc/tramp.texi | |||
| @@ -619,10 +619,6 @@ or 2 to connect to the remote host. (You can also specify in | |||
| 619 | @file{~/.ssh/config}, the SSH configuration file, which protocol | 619 | @file{~/.ssh/config}, the SSH configuration file, which protocol |
| 620 | should be used, and use the regular @option{ssh} method.) | 620 | should be used, and use the regular @option{ssh} method.) |
| 621 | 621 | ||
| 622 | Two other variants, @option{ssh1_old} and @option{ssh2_old}, use the | ||
| 623 | @command{ssh1} and @command{ssh2} commands explicitly. If you don't | ||
| 624 | know what these are, you do not need these options. | ||
| 625 | |||
| 626 | All the methods based on @command{ssh} have an additional feature: you | 622 | All the methods based on @command{ssh} have an additional feature: you |
| 627 | can specify a host name which looks like @file{host#42} (the real host | 623 | can specify a host name which looks like @file{host#42} (the real host |
| 628 | name, then a hash sign, then a port number). This means to connect to | 624 | name, then a hash sign, then a port number). This means to connect to |
| @@ -731,19 +727,6 @@ expects PuTTY session names, calling @samp{plink -load @var{session} | |||
| 731 | hasn't defined a user name. Different port numbers must be defined in | 727 | hasn't defined a user name. Different port numbers must be defined in |
| 732 | the session. | 728 | the session. |
| 733 | 729 | ||
| 734 | |||
| 735 | @item @option{fish} | ||
| 736 | @cindex method fish | ||
| 737 | @cindex fish method | ||
| 738 | |||
| 739 | This is an experimental implementation of the fish protocol, known from | ||
| 740 | the GNU Midnight Commander or the KDE Konqueror. @value{tramp} expects | ||
| 741 | the fish server implementation from the KDE kioslave. That means, the | ||
| 742 | file @file{~/.fishsrv.pl} is expected to reside on the remote host. | ||
| 743 | |||
| 744 | The implementation lacks good performance. The code is offered anyway, | ||
| 745 | maybe somebody can improve the performance. | ||
| 746 | |||
| 747 | @end table | 730 | @end table |
| 748 | 731 | ||
| 749 | 732 | ||
| @@ -803,10 +786,6 @@ or 2 to connect to the remote host. (You can also specify in | |||
| 803 | @file{~/.ssh/config}, the SSH configuration file, which protocol | 786 | @file{~/.ssh/config}, the SSH configuration file, which protocol |
| 804 | should be used, and use the regular @option{scp} method.) | 787 | should be used, and use the regular @option{scp} method.) |
| 805 | 788 | ||
| 806 | Two other variants, @option{scp1_old} and @option{scp2_old}, use the | ||
| 807 | @command{ssh1} and @command{ssh2} commands explicitly. If you don't | ||
| 808 | know what these are, you do not need these options. | ||
| 809 | |||
| 810 | All the @command{ssh} based methods support the @samp{-p} feature | 789 | All the @command{ssh} based methods support the @samp{-p} feature |
| 811 | where you can specify a port number to connect to in the host name. | 790 | where you can specify a port number to connect to in the host name. |
| 812 | For example, the host name @file{host#42} tells @value{tramp} to | 791 | For example, the host name @file{host#42} tells @value{tramp} to |
diff --git a/doc/misc/url.texi b/doc/misc/url.texi index a6bbf0bd3eb..acb4145f120 100644 --- a/doc/misc/url.texi +++ b/doc/misc/url.texi | |||
| @@ -731,14 +731,6 @@ directory to store the cache files. It defaults to sub-directory | |||
| 731 | @file{cache} of @code{url-configuration-directory}. | 731 | @file{cache} of @code{url-configuration-directory}. |
| 732 | @end defopt | 732 | @end defopt |
| 733 | 733 | ||
| 734 | @c Fixme: function v. option, but neither used. | ||
| 735 | @c @findex url-cache-expired | ||
| 736 | @c @defopt url-cache-expired | ||
| 737 | @c This is a function to decide whether or not a cache entry has expired. | ||
| 738 | @c It takes two times as it parameters and returns non-@code{nil} if the | ||
| 739 | @c second time is ``too old'' when compared with the first time. | ||
| 740 | @c @end defopt | ||
| 741 | |||
| 742 | @defopt url-cache-creation-function | 734 | @defopt url-cache-creation-function |
| 743 | The cache relies on a scheme for mapping URLs to files in the cache. | 735 | The cache relies on a scheme for mapping URLs to files in the cache. |
| 744 | This variable names a function which sets the type of cache to use. | 736 | This variable names a function which sets the type of cache to use. |
| @@ -768,6 +760,22 @@ more likely to conflict with other files. | |||
| 768 | @end smallexample | 760 | @end smallexample |
| 769 | @end defun | 761 | @end defun |
| 770 | 762 | ||
| 763 | @defun url-cache-expired | ||
| 764 | This function returns non-nil if a cache entry has expired (or is absent). | ||
| 765 | The arguments are a URL and optional expiration delay in seconds | ||
| 766 | (default @var{url-cache-expire-time}). | ||
| 767 | @end defun | ||
| 768 | |||
| 769 | @defopt url-cache-expire-time | ||
| 770 | This variable is the default number of seconds to use for the | ||
| 771 | expire-time argument of the function @code{url-cache-expired}. | ||
| 772 | @end defopt | ||
| 773 | |||
| 774 | @defun url-fetch-from-cache | ||
| 775 | This function takes a URL as its argument and returns a buffer | ||
| 776 | containing the data cached for that URL. | ||
| 777 | @end defun | ||
| 778 | |||
| 771 | @c Fixme: never actually used currently? | 779 | @c Fixme: never actually used currently? |
| 772 | @c @defopt url-standalone-mode | 780 | @c @defopt url-standalone-mode |
| 773 | @c @cindex Relying on cache | 781 | @c @cindex Relying on cache |
diff --git a/doc/misc/woman.texi b/doc/misc/woman.texi index ba772c4b4a1..788c10b87dd 100644 --- a/doc/misc/woman.texi +++ b/doc/misc/woman.texi | |||
| @@ -1121,8 +1121,8 @@ A regular match expression used to match compressed man file extensions | |||
| 1121 | for which decompressors are available and handled by auto-compression | 1121 | for which decompressors are available and handled by auto-compression |
| 1122 | mode. It should begin with @code{\\.} and end with @code{\\'} and | 1122 | mode. It should begin with @code{\\.} and end with @code{\\'} and |
| 1123 | @emph{must not} be optional. The default value is | 1123 | @emph{must not} be optional. The default value is |
| 1124 | @code{"\\.\\(g?z\\|bz2\\)\\'"}, which matches the @code{gzip} and | 1124 | @code{"\\.\\(g?z\\|bz2\\|xz\\)\\'"}, which matches the @code{gzip}, |
| 1125 | @code{bzip2} compression extensions. | 1125 | @code{bzip2}, and @code{xz} compression extensions. |
| 1126 | 1126 | ||
| 1127 | @emph{Do not change this unless you are sure you know what you are doing!} | 1127 | @emph{Do not change this unless you are sure you know what you are doing!} |
| 1128 | 1128 | ||