@c \input texinfo @c -*-texinfo-*-
@c Uncomment 1st line before texing this file alone.
@c %**start of header
-@c Copyright (C) 1995, 2001-2012 Free Software Foundation, Inc.
+@c Copyright (C) 1995, 2001-2015 Free Software Foundation, Inc.
@c
-@setfilename gnus-faq.info
-@settitle Frequently Asked Questions
+@c @setfilename gnus-faq.info
+@c @settitle Frequently Asked Questions
+@c @include docstyle.texi
@c %**end of header
@c
@email{ding@@gnus.org, ding list}.
@node FAQ - Changes
-@subheading Changes
+@subsection Changes
@end itemize
@node FAQ - Introduction
-@subheading Introduction
+@subsection Introduction
This is the Gnus Frequently Asked Questions list.
as a part of Emacs. It's been around in some form for almost a decade
now, and has been distributed as a standard part of Emacs for much of
that time. Gnus 5 is the latest (and greatest) incarnation. The
-original version was called GNUS, and was written by Masanobu UMEDA.
+original version was called GNUS, and was written by Masanobu UMEDA@.
When autumn crept up in '94, Lars Magne Ingebrigtsen grew bored and
decided to rewrite Gnus.
This FAQ was maintained by Justin Sheehy until March 2002. He
would like to thank Steve Baur and Per Abrahamsen for doing a wonderful
-job with this FAQ before him. We would like to do the same - thanks,
+job with this FAQ before him. We would like to do the same: thanks,
Justin!
This version is much nicer than the unofficial hypertext
Message-utils now included in Gnus.
@item
-New format specifiers for summary lines, e.g. %B for
+New format specifiers for summary lines, e.g., %B for
a complex trn-style thread tree.
@end itemize
@subsubheading Answer
Gnus is released independent from releases of Emacs and XEmacs.
-Therefore, the version bundled with Emacs or the version in XEmacs'
-package system might not be up to date (e.g. Gnus 5.9 bundled with Emacs
+Therefore, the version bundled with Emacs or the version in XEmacs's
+package system might not be up to date (e.g., Gnus 5.9 bundled with Emacs
21 is outdated).
You can get the latest released version of Gnus from
@uref{http://www.gnus.org/dist/gnus.tar.gz}
(under MS-Windows either get the Cygwin environment from
@uref{http://www.cygwin.com}
which allows you to do what's described above or unpack the
-tarball with some packer (e.g. Winace from
+tarball with some packer (e.g., Winace from
@uref{http://www.winace.com})
and use the batch-file make.bat included in the tarball to install
Gnus.) If you don't want to (or aren't allowed to) install Gnus
@subsubheading Answer
-Gnus 5.10 requires an Emacs version that is greater than or equal
-to Emacs 20.7 or XEmacs 21.1.
-The development versions of Gnus (aka No Gnus) requires Emacs 21
-or XEmacs 21.4.
+Gnus 5.13 requires an Emacs version that is greater than or equal
+to Emacs 23.1 or XEmacs 21.1, although there are some features that
+only work on Emacs 24.
@node FAQ 1-7
@subsubheading Question 1.7
This message means that the last time you used Gnus, it
wasn't properly exited and therefore couldn't write its
-information to disk (e.g. which messages you read), you
+information to disk (e.g., which messages you read), you
are now asked if you want to restore that information
from the auto-save file.
@subsubheading Answer
Gnus offers the topic mode, it allows you to sort your
-groups in, well, topics, e.g. all groups dealing with
+groups in, well, topics, e.g., all groups dealing with
Linux under the topic linux, all dealing with music under
the topic music and all dealing with scottish music under
the topic scottish which is a subtopic of music.
You've got to tell Gnus where to fetch the news from. Read
the documentation for information on how to do this. As a
-first start, put those lines in ~/.gnus.el:
+first start, put those lines in @file{~/.gnus.el}:
@example
(setq gnus-select-method '(nntp "news.yourprovider.net"))
@node FAQ 3-2
@subsubheading Question 3.2
-I'm working under Windows and have no idea what ~/.gnus.el means.
+I'm working under Windows and have no idea what @file{~/.gnus.el} means.
@subsubheading Answer
you want, so let's do it the correct way.
The first thing you've got to do is to
create a suitable directory (no blanks in directory name
-please) e.g. c:\myhome. Then you must set the environment
-variable HOME to this directory. To do this under Win9x
+please), e.g., c:\myhome. Then you must set the environment
+variable HOME to this directory. To do this under Windows 9x
or Me include the line
@example
possibility to set environment variables. Create a new one with
name HOME and value C:\myhome. Rebooting is not necessary.
-Now to create ~/.gnus.el, say
+Now to create @file{~/.gnus.el}, say
@samp{C-x C-f ~/.gnus.el RET C-x C-s}.
in Emacs.
Of course. You can specify more sources for articles in the
variable gnus-secondary-select-methods. Add something like
-this in ~/.gnus.el:
+this in @file{~/.gnus.el}:
@example
(add-to-list 'gnus-secondary-select-methods
send them directly to a SMTP Server 2: Some program like
fetchmail retrieves your mail and stores it on disk from
where Gnus shall read it. Outgoing mail is sent by
-Sendmail, Postfix or some other MTA. Sometimes, you even
+Sendmail, Postfix or some other MTA@. Sometimes, you even
need a combination of the above cases.
However, the first thing to do is to tell Gnus in which way
and is therefore quite fast. However you might prefer a one
file per group approach if your file system has problems with
many small files, the nnfolder back end is then probably the
-choice for you. To use nnml add the following to ~/.gnus.el:
+choice for you. To use nnml add the following to @file{~/.gnus.el}:
@example
(add-to-list 'gnus-secondary-select-methods '(nnml ""))
@end example
@noindent
-Make sure ~/.gnus.el isn't readable to others if you store
+Make sure @file{~/.gnus.el} isn't readable to others if you store
your password there. If you want to read your mail from a
traditional spool file on your local machine, it's
want to send mail via sendmail (or whichever MTA is playing
the role of sendmail on your system), you don't need to do
anything. However, if you want to send your mail to an
-SMTP Server you need the following in your ~/.gnus.el
+SMTP Server you need the following in your @file{~/.gnus.el}
@example
(setq send-mail-function 'smtpmail-send-it)
to use IMAP like POP3, that means Gnus fetches the mail from
the IMAP server and stores it on disk. If you want to do
this (you don't really want to do this) add the following to
-~/.gnus.el
+@file{~/.gnus.el}
@example
(add-to-list 'mail-sources '(imap :server "mail.mycorp.com"
@subsubheading Answer
-First of all, that's not the way POP3 is intended to work,
-if you have the possibility, you should use the IMAP
-Protocol if you want your messages to stay on the
-server. Nevertheless there might be situations where you
-need the feature, but sadly Gnus itself has no predefined
-functionality to do so.
-
-However this is Gnus county so there are possibilities to
-achieve what you want. The easiest way is to get an external
-program which retrieves copies of the mail and stores them
-on disk, so Gnus can read it from there. On Unix systems you
-could use e.g. fetchmail for this, on MS Windows you can use
-Hamster, an excellent local news and mail server.
-
-The other solution would be, to replace the method Gnus
-uses to get mail from POP3 servers by one which is capable
-of leaving the mail on the server. If you use XEmacs, get
-the package mail-lib, it includes an enhanced pop3.el,
-look in the file, there's documentation on how to tell
-Gnus to use it and not to delete the retrieved mail. For
-GNU Emacs look for the file epop3.el which can do the same
-(If you know the home of this file, please send me an
-e-mail). You can also tell Gnus to use an external program
-(e.g. fetchmail) to fetch your mail, see the info node
-"Mail Source Specifiers" in the Gnus manual on how to do
-it.
+Yes, if the POP3 server supports the UIDL control (maybe almost servers
+do it nowadays). To do that, add a @code{:leave VALUE} pair to each
+POP3 mail source. See @pxref{Mail Source Specifiers} for VALUE.
@node FAQ 4 - Reading messages
@subsection Reading messages
the top of the article buffer?
* FAQ 4-6:: I'd like Gnus NOT to render HTML-mails but show me the
text part if it's available. How to do it?
-* FAQ 4-7:: Can I use some other browser than w3 to render my
+* FAQ 4-7:: Can I use some other browser than shr to render my
HTML-mails?
* FAQ 4-8:: Is there anything I can do to make poorly formatted
mails more readable?
* FAQ 4-9:: Is there a way to automatically ignore posts by specific
authors or with specific words in the subject? And can I
highlight more interesting ones in some way?
-* FAQ 4-10:: How can I disable threading in some (e.g. mail-) groups,
+* FAQ 4-10:: How can I disable threading in some (e.g., mail-) groups,
or set other variables specific for some groups?
* FAQ 4-11:: Can I highlight messages written by me and follow-ups to
those?
* FAQ 4-14:: I don't like the way the Summary buffer looks, how to
tweak it?
* FAQ 4-15:: How to split incoming mails in several groups?
+* FAQ 4-16:: How can I ensure more contrast when viewing HTML mail?
@end menu
@node FAQ 4-1
@samp{RET}
in group buffer with point over the group, only unread and ticked messages are loaded. Say
@samp{C-u RET}
-instead to load all available messages. If you want only the e.g. 300 newest say
+instead to load all available messages. If you want only the 300 newest say
@samp{C-u 300 RET}
Loading only unread messages can be annoying if you have threaded view enabled, say
@end example
@noindent
-in ~/.gnus.el to load enough old articles to prevent teared threads, replace 'some with t to load
+in @file{~/.gnus.el} to load enough old articles to prevent teared threads, replace 'some with @code{t} to load
all articles (Warning: Both settings enlarge the amount of data which is
fetched when you enter a group and slow down the process of entering a group).
are shown, its value is a regular expression, header lines
which match it are shown. So if you want author, subject,
date, and if the header exists, Followup-To and MUA / NUA
-say this in ~/.gnus.el:
+say this in @file{~/.gnus.el}:
@example
(setq gnus-visible-headers
@end example
@noindent
-in ~/.gnus.el. If you don't want HTML rendered, even if there's no text alternative add
+in @file{~/.gnus.el}. If you don't want HTML rendered, even if there's no text alternative add
@example
(setq mm-automatic-display (remove "text/html" mm-automatic-display))
@node FAQ 4-7
@subsubheading Question 4.7
-Can I use some other browser than w3 to render my HTML-mails?
+Can I use some other browser than w3m to render my HTML-mails?
@subsubheading Answer
Only if you use Gnus 5.10 or younger. In this case you've got the
-choice between w3, w3m, links, lynx and html2text, which
+choice between shr, w3m, links, lynx and html2text, which
one is used can be specified in the variable
mm-text-html-renderer, so if you want links to render your
mail say
@samp{s} for substring-match and delete afterwards
everything but the name to score down all authors with the given
name no matter which email address is used. Now you need to tell
-Gnus when to apply the rule and how long it should last, hit e.g.
+Gnus when to apply the rule and how long it should last, hit
@samp{p} to apply the rule now and let it last
forever. If you want to raise the score instead of lowering it say
@samp{I} instead of @samp{L}.
whose elements are lists again. the first element of those lists
is the header to score on, then one more list with what to match,
which score to assign, when to expire the rule and how to do the
-matching. If you find me very interesting, you could e.g. add the
+matching. If you find me very interesting, you could add the
following to your all.Score:
@example
@end example
@noindent
-in ~/.gnus.el.
+in @file{~/.gnus.el}.
@node FAQ 4-10
@subsubheading Question 4.10
-How can I disable threading in some (e.g. mail-) groups, or
+How can I disable threading in some (e.g., mail-) groups, or
set other variables specific for some groups?
@subsubheading Answer
can set options for the group. At the bottom of the buffer
you'll find an item that allows you to set variables
locally for the group. To disable threading enter
-gnus-show-threads as name of variable and nil as
+gnus-show-threads as name of variable and @code{nil} as
value. Hit button done at the top of the buffer when
you're ready.
No, that's a matter of design of Gnus, fixing this would
mean reimplementation of major parts of Gnus'
-back ends. Gnus thinks "highest-article-number -
+back ends. Gnus thinks "highest-article-number @minus{}
lowest-article-number = total-number-of-articles". This
works OK for Usenet groups, but if you delete and move
many messages in mail groups, this fails. To cure the
sadly hard tabulators are broken in 5.8.8.
Since 5.10, Gnus offers you some very nice new specifiers,
-e.g. %B which draws a thread-tree and %&user-date which
+e.g., %B which draws a thread-tree and %&user-date which
gives you a date where the details are dependent of the
articles age. Here's an example which uses both:
:O \-> ... | 115 |Raymond Scholz | 1:24
:O \-> ... | 19 |Lars Magne Ingebrigt |15:33
:O Slow mailing list | 13 |Lars Magne Ingebrigt |Sat 23:49
-:O Re: `@@' mark not documented | 13 |Lars Magne Ingebrigt |Sat 23:50
+:O Re: '@@' mark not documented | 13 |Lars Magne Ingebrigt |Sat 23:50
:R > Re: Gnus still doesn't count messages prope| 23 |Lars Magne Ingebrigt |Sat 23:57
:O \-> ... | 18 |Kai Grossjohann | 0:35
:O \-> ... | 13 |Lars Magne Ingebrigt | 0:56
@end example
@noindent
-in ~/.gnus.el.
+in @file{~/.gnus.el}.
An example might be better than thousand words, so here's
my nnmail-split-methods. Note that I send duplicates in a
@end example
@noindent
+@node FAQ 4-16
+@subsubheading Question 4.16
+
+How can I ensure more contrast when viewing HTML mail?
+
+@subsubheading Answer
+
+Gnus' built-in simple HTML renderer (you use it if the value of
+@code{mm-text-html-renderer} is @code{shr}) uses the colors which are
+declared in the HTML mail. However, it adjusts them in order to
+prevent situations like dark gray text on black background. In case
+the results still have a too low contrast for you, increase the values
+of the variables @code{shr-color-visible-distance-min} and
+@code{shr-color-visible-luminance-min}.
+
@node FAQ 5 - Composing messages
@subsection Composing messages
messages?
* FAQ 5-3:: How to set stuff like From, Organization, Reply-To,
signature...?
-* FAQ 5-4:: Can I set things like From, Signature etc group based on
+* FAQ 5-4:: Can I set things like From, Signature etc. group based on
the group I post too?
* FAQ 5-5:: Is there a spell-checker? Perhaps even on-the-fly
spell-checking?
@end example
@noindent
-in ~/.gnus.el.
+in @file{~/.gnus.el}.
You can reformat a paragraph by hitting @samp{M-q}
(as usual).
organization, address, name or body. The attribute name
can also be a string. In that case, this will be used as
a header name, and the value will be inserted in the
-headers of the article; if the value is `nil', the header
+headers of the article; if the value is @code{nil}, the header
name will be removed. You can also say (eval (foo bar)),
then the function foo will be evaluated with argument bar
and the result will be thrown away.
@end example
@noindent
-In your ~/.gnus.el, if you prefer on-the-fly spell-checking say
+In your @file{~/.gnus.el}, if you prefer on-the-fly spell-checking say
@example
(add-hook 'message-mode-hook (lambda () (flyspell-mode 1)))
@end example
@noindent
-in ~/.gnus.el. Change "^de\\." and "deutsch8" to something
+in @file{~/.gnus.el}. Change "^de\\." and "deutsch8" to something
that suits your needs.
@node FAQ 5-7
However, what you really want is the Insidious Big Brother
Database bbdb. Get it through the XEmacs package system or from
@uref{http://bbdb.sourceforge.net/, bbdb's homepage}.
-Now place the following in ~/.gnus.el, to activate bbdb for Gnus:
+Now place the following in @file{~/.gnus.el}, to activate bbdb for Gnus:
@example
(require 'bbdb)
entry, @samp{b} to search your BBDB and
@samp{C-o} to add a new field to an
entry. If you want to add a sender to the BBDB you can
-also just hit `:' on the posting in the summary buffer and
+also just hit @kbd{:} on the posting in the summary buffer and
you are done. When you now compose a new mail,
hit @samp{TAB} to cycle through know
recipients.
If you can't use compface, there's an online X-face converter at
@uref{http://www.dairiki.org/xface/}.
-If you use MS Windows, you could also use the WinFace program from
-@uref{http://www.xs4all.nl/~walterln/winface/}.
+If you use MS Windows, you could also use the WinFace program,
+which used to be available from
+@indicateurl{http://www.xs4all.nl/~walterln/winface/}.
Now you only have to tell Gnus to include the X-face in your postings by saying
@example
@end example
@noindent
-in ~/.gnus.el. If you use Gnus 5.10, you can simply add an entry
+in @file{~/.gnus.el}. If you use Gnus 5.10, you can simply add an entry
@example
(x-face-file "~/.xface")
@subsubheading Answer
-Put this in ~/.gnus.el:
+Put this in @file{~/.gnus.el}:
@example
(setq gnus-confirm-mail-reply-to-news t)
@subsubheading Answer
Since 5.10 Gnus doesn't generate a sender header by
-default. For older Gnus' try this in ~/.gnus.el:
+default. For older Gnus' try this in @file{~/.gnus.el}:
@example
(eval-after-load "message"
@subsubheading Answer
-The message-ID is an unique identifier for messages you
+The message-ID is a unique identifier for messages you
send. To make it unique, Gnus need to know which machine
name to put after the "@@". If the name of the machine
where Gnus is running isn't suitable (it probably isn't
@end example
@noindent
-in ~/.gnus.el. If you use Gnus 5.9 or earlier, you can use this
+in @file{~/.gnus.el}. If you use Gnus 5.9 or earlier, you can use this
instead (works for newer versions as well):
@example
it be much more convenient to have more direct access to
the archived message from Gnus? If you say yes, put this
snippet by Frank Haun <pille3003@@fhaun.de> in
-~/.gnus.el:
+@file{~/.gnus.el}:
@example
(defun my-archive-article (&optional n)
- "Copies one or more article(s) to a corresponding `nnml:' group, e.g.
+ "Copies one or more article(s) to a corresponding `nnml:' group, e.g.,
`gnus.ding' goes to `nnml:1.gnus.ding'. And `nnml:List-gnus.ding' goes
to `nnml:1.List-gnus-ding'.
Of course you can also use grep to search through your
local mail, but this is both slow for big archives and
inconvenient since you are not displaying the found mail
-in Gnus. Here comes nnir into action. Nnir is a front end
+in Gnus. Here nnir comes into action. Nnir is a front end
to search engines like swish-e or swish++ and
-others. You index your mail with one of those search
+others. You index your mail with one of those search
engines and with the help of nnir you can search through
the indexed mail and generate a temporary group with all
-messages which met your search criteria. If this sound
-cool to you get nnir.el from
+messages which met your search criteria. If this sounds
+cool to you, get nnir.el from
+@c FIXME Isn't this file in Gnus?
+@ignore
+@c Dead link 2013/7.
@uref{ftp://ls6-ftp.cs.uni-dortmund.de/pub/src/emacs/}
-or @uref{ftp://ftp.is.informatik.uni-duisburg.de/pub/src/emacs/}.
+or
+@end ignore
+@uref{ftp://ftp.is.informatik.uni-duisburg.de/pub/src/emacs/}.
Instructions on how to use it are at the top of the file.
@node FAQ 6-4
@subsubheading Answer
-If you want all read messages to be expired (e.g. in
+If you want all read messages to be expired (e.g., in
mailing lists where there's an online archive), you've
got two choices: auto-expire and
total-expire. Auto-expire means, that every article
@subsubheading Answer
-Say something like this in ~/.gnus.el:
+Say something like this in @file{~/.gnus.el}:
@example
(setq nnmail-expiry-target "nnml:expired")
(If you want to change the value of nnmail-expiry-target
on a per group basis see the question "How can I disable
-threading in some (e.g. mail-) groups, or set other
+threading in some (e.g., mail-) groups, or set other
variables specific for some groups?")
@node FAQ 7 - Gnus in a dial-up environment
@uref{http://infa.abo.fi/~patrik/sn/, sn},
of course you can also install a full featured news
server like
-@uref{http://www.isc.org/products/INN/, inn}.
+@uref{http://www.isc.org/software/inn/, inn}.
Then you want to fetch your Mail, popular choices
are @uref{http://www.catb.org/~esr/fetchmail/, fetchmail}
and @uref{http://pyropus.ca/software/getmail/, getmail}.
it's a small freeware, open-source program which fetches
your mail and news from remote servers and offers them
to Gnus (or any other mail and/or news reader) via nntp
-respectively POP3 or IMAP. It also includes a smtp
+respectively POP3 or IMAP@. It also includes a smtp
server for receiving mails from Gnus.
@node FAQ 7-2
The Gnus agent is part of Gnus, it allows you to fetch
mail and news and store them on disk for reading them
later when you're offline. It kind of mimics offline
-newsreaders like e.g. Forte Agent. If you want to use
-the Agent place the following in ~/.gnus.el if you are
+newsreaders like Forte Agent. If you want to use
+the Agent place the following in @file{~/.gnus.el} if you are
still using 5.8.8 or 5.9 (it's the default since 5.10):
@example
@menu
* FAQ 8-1:: How to find information and help inside Emacs?
-* FAQ 8-2:: I can't find anything in the Gnus manual about X (e.g.
+* FAQ 8-2:: I can't find anything in the Gnus manual about X (e.g.,
attachments, PGP, MIME...), is it not documented?
* FAQ 8-3:: Which websites should I know?
* FAQ 8-4:: Which mailing lists and newsgroups are there?
@subsubheading Question 8.2
I can't find anything in the Gnus manual about X
-(e.g. attachments, PGP, MIME...), is it not documented?
+(e.g., attachments, PGP, MIME...), is it not documented?
@subsubheading Answer
-There's not only the Gnus manual but also the manuals
-for message, emacs-mime, sieve and pgg. Those packages
-are distributed with Gnus and used by Gnus but aren't
-really part of core Gnus, so they are documented in
-different info files, you should have a look in those
-manuals, too.
+There's not only the Gnus manual but also the manuals for message,
+emacs-mime, sieve, EasyPG Assistant, and pgg. Those packages are
+distributed with Gnus and used by Gnus but aren't really part of core
+Gnus, so they are documented in different info files, you should have
+a look in those manuals, too.
@node FAQ 8-3
@subsubheading Question 8.3
The reason for this could be the way Gnus reads its
active file, see the node "The Active File" in the Gnus
manual for things you might try to speed the process up.
-An other idea would be to byte compile your ~/.gnus.el (say
+An other idea would be to byte compile your @file{~/.gnus.el} (say
@samp{M-x byte-compile-file RET ~/.gnus.el
RET} to do it). Finally, if you have require
statements in your .gnus, you could replace them with
eval-after-load, which loads the stuff not at startup
time, but when it's needed. Say you've got this in your
-~/.gnus.el:
+@file{~/.gnus.el}:
@example
(require 'message)
@subsubheading Answer
A speed killer is setting the variable
-gnus-fetch-old-headers to anything different from nil,
+gnus-fetch-old-headers to anything different from @code{nil},
so don't do this if speed is an issue. To speed up
building of summary say
@end example
@noindent
-at the bottom of your ~/.gnus.el, this will make gnus
+at the bottom of your @file{~/.gnus.el}, this will make gnus
byte-compile things like
gnus-summary-line-format.
then you could increase the value of gc-cons-threshold
@end example
@noindent
-in ~/.gnus.el (thanks to Jesper harder for the last
+in @file{~/.gnus.el} (thanks to Jesper harder for the last
two suggestions). Finally if you are still using 5.8.8
or 5.9 and experience speed problems with summary
buffer generation, you definitely should update to
@table @dfn
@item ~/.gnus.el
-When the term ~/.gnus.el is used it just means your Gnus
-configuration file. You might as well call it ~/.gnus or
+When the term @file{~/.gnus.el} is used it just means your Gnus
+configuration file. You might as well call it @file{~/.gnus} or
specify another name.
@item Back End