1 @c Insert "\input texinfo" at 1st line before texing this file alone.
3 @c Copyright (C) 1995, 2001, 2003 Free Software Foundation, Inc.
4 @setfilename gnus-faq.info
6 @c Frequently Asked Questions, FAQ - Introduction, Emacs for Heathens, Top
8 @node Frequently Asked Questions
9 @comment node-name, next, previous, up
11 @c @chapter Frequently Asked Questions
12 @section Frequently Asked Questions
14 @c - Uncomment @chapter, comment @section
15 @c - run (texinfo-every-node-update)
19 * FAQ - Introduction:: About Gnus and this FAQ.
20 * FAQ 1 - Installation:: Installation of Gnus.
21 * FAQ 2 - Startup / Group buffer:: Start up questions and the first buffer Gnus shows you.
22 * FAQ 3 - Getting messages:: Making Gnus read your mail and news.
23 * FAQ 4 - Reading messages:: How to efficiently read messages.
24 * FAQ 5 - Composing messages:: Composing mails or Usenet postings.
25 * FAQ 6 - Old messages:: Importing, archiving, searching and deleting messages.
26 * FAQ 7 - Gnus in a dial-up environment:: Reading mail and news while offline.
27 * FAQ 8 - Getting help:: When this FAQ isn't enough.
28 * FAQ 9 - Tuning Gnus:: How to make Gnus faster.
29 * FAQ - Glossary:: Terms used in the FAQ explained.
35 This is the new Gnus Frequently Asked Questions list. If you have a
36 Web browser, the official hypertext version is at
37 @uref{http://my.gnus.org/FAQ/}, the Docbook source is available from
38 @uref{http://sourceforge.net/projects/gnus/}.
41 Please submit features and suggestions to the
42 @email{faq-discuss@@my.gnus.org,FAQ discussion list}.
43 The list is protected against junk mail with
44 @uref{http://smarden.org/qconfirm/index.html,qconfirm, qconfirm}. As
45 a subscriber, your submissions will automatically pass. You can
46 also subscribe to the list by sending a blank email to
47 @email{faq-discuss-subscribe@@my.gnus.org}
49 @uref{http://mail1.kens.com/cgi-bin/ezmlm-browse?command=monthbythread%26list=faq-discuss,browse
50 the archive, browse the archive}.
52 @node FAQ - Introduction, FAQ 1 - Installation, Frequently Asked Questions, Frequently Asked Questions
53 @comment node-name, next, previous, up
56 This is the Gnus Frequently Asked Questions list.
58 Gnus is a Usenet Newsreader and Electronic Mail User Agent implemented
59 as a part of Emacs. It's been around in some form for almost a decade
60 now, and has been distributed as a standard part of Emacs for much of
61 that time. Gnus 5 is the latest (and greatest) incarnation. The
62 original version was called GNUS, and was written by Masanobu UMEDA.
63 When autumn crept up in '94, Lars Magne Ingebrigtsen grew bored and
64 decided to rewrite Gnus.
66 Its biggest strength is the fact that it is extremely
67 customizable. It is somewhat intimidating at first glance, but
68 most of the complexity can be ignored until you're ready to take
69 advantage of it. If you receive a reasonable volume of e-mail
70 (you're on various mailing lists), or you would like to read
71 high-volume mailing lists but cannot keep up with them, or read
72 high volume newsgroups or are just bored, then Gnus is what you
75 This FAQ was maintained by Justin Sheehy until March 2002. He
76 would like to thank Steve Baur and Per Abrahamsen for doing a wonderful
77 job with this FAQ before him. We would like to do the same - thanks,
81 If you have a Web browser, the official hypertext version is at:@*
82 @uref{http://my.gnus.org/FAQ/}.
83 This version is much nicer than the unofficial hypertext
84 versions that are archived at Utrecht, Oxford, Smart Pages, Ohio
85 State, and other FAQ archives. See the resources question below
86 if you want information on obtaining it in another format.
89 The information contained here was compiled with the assistance
90 of the Gnus development mailing list, and any errors or
91 misprints are the my.gnus.org team's fault, sorry.
95 @node FAQ 1 - Installation, FAQ 2 - Startup / Group buffer, FAQ - Introduction, Frequently Asked Questions
97 @subsection Installation
100 * [1.1]:: What is the latest version of Gnus?
101 * [1.2]:: What's new in 5.10.0?
102 * [1.3]:: Where and how to get Gnus?
103 * [1.4]:: What to do with the tarball now?
104 * [1.5]:: Which version of Emacs do I need?
105 * [1.6]:: How do I run Gnus on both Emacs and XEmacs?
110 @node [1.1], [1.2], FAQ 1 - Installation, FAQ 1 - Installation
112 @subsubheading Question 1.1:
114 What is the latest version of Gnus?
118 Jingle please: Gnus 5.10.0 is released, get it while it's
119 hot! As well as the step in version number is rather
120 small, Gnus 5.10 has tons of new features which you
121 shouldn't miss, however if you are cautious, you might
122 prefer to stay with 5.8.8 respectively 5.9 (they are
123 basically the same) until some bugfix releases are out.
126 @node [1.2], [1.3], [1.1], FAQ 1 - Installation
128 @subsubheading Question 1.2:
130 What's new in 5.10.0?
134 First of all, you should have a look into the file
135 GNUS-NEWS in the toplevel directory of the Gnus tarball,
136 there the most important changes are listed. Here's a
137 short list of the changes I find especially
138 important/interesting:
146 Major rewrite of the Gnus agent, Gnus agent is now
150 Many new article washing functions for dealing with
151 ugly formatted articles.
157 message-utils now included in Gnus.
160 New format specifiers for summary lines, e.g. %B for
161 a complex trn-style thread tree.
166 @node [1.3], [1.4], [1.2], FAQ 1 - Installation
168 @subsubheading Question 1.3:
170 Where and how to get Gnus?
174 The latest released version of Gnus isn't included in
175 Emacs 21 and until now it also isn't available through the
176 package system of XEmacs 21.4, therefor you should get the
178 @uref{http://www.gnus.org/dist/gnus.tar.gz}
179 or via anonymous FTP from
180 @uref{ftp://ftp.gnus.org/pub/gnus/gnus.tar.gz}.
183 @node [1.4], [1.5], [1.3], FAQ 1 - Installation
185 @subsubheading Question 1.4:
187 What to do with the tarball now?
192 Untar it via @samp{tar xvzf gnus.tar.gz} and do the common
193 @samp{./configure; make; make install} circle.
194 (under MS-Windows either get the Cygwin environment from
195 @uref{http://www.cygwin.com}
196 which allows you to do what's described above or unpack the
197 tarball with some packer (e.g. Winace from
198 @uref{http://www.winace.com})
199 and use the batch-file make.bat included in the tarball to install
200 Gnus. If you don't want to (or aren't allowed to) install Gnus
201 system-wide, you can install it in your home directory and add the
202 following lines to your ~/.xemacs/init.el or ~/.emacs:
206 (add-to-list 'load-path "/path/to/gnus/lisp")
207 (if (featurep 'xemacs)
208 (add-to-list 'Info-directory-list "/path/to/gnus/texi/")
209 (add-to-list 'Info-default-directory-list "/path/to/gnus/texi/"))
213 Make sure that you don't have any gnus related stuff
214 before this line, on MS Windows use something like
215 "C:/path/to/lisp" (yes, "/").
218 @node [1.5], [1.6], [1.4], FAQ 1 - Installation
220 @subsubheading Question 1.5:
222 Which version of Emacs do I need?
226 Gnus 5.10.0 requires an Emacs version that is greater
227 than or equal to Emacs 20.3 or XEmacs 20.1.
230 @node [1.6], , [1.5], FAQ 1 - Installation
232 @subsubheading Question 1.6:
234 How do I run Gnus on both Emacs and XEmacs?
238 You can't use the same copy of Gnus in both as the Lisp
239 files are byte-compiled to a format which is different
240 depending on which Emacs did the compilation. Get one copy
241 of Gnus for Emacs and one for XEmacs.
244 @node FAQ 2 - Startup / Group buffer, FAQ 3 - Getting messages, FAQ 1 - Installation, Frequently Asked Questions
246 @subsection Startup / Group buffer
249 * [2.1]:: Every time I start Gnus I get a message "Gnus auto-save file exists. Do you want to read it?", what does this mean and how to prevent it?
250 * [2.2]:: Gnus doesn't remember which groups I'm subscribed to, what's this?
251 * [2.3]:: How to change the format of the lines in Group buffer?
252 * [2.4]:: My group buffer becomes a bit crowded, is there a way to sort my groups into categories so I can easier browse through them?
253 * [2.5]:: How to manually sort the groups in Group buffer? How to sort the groups in a topic?
257 @node [2.1], [2.2], FAQ 2 - Startup / Group buffer, FAQ 2 - Startup / Group buffer
259 @subsubheading Question 2.1:
261 Every time I start Gnus I get a message "Gnus auto-save
262 file exists. Do you want to read it?", what does this mean
263 and how to prevent it?
268 This message means that the last time you used Gnus, it
269 wasn't properly exited and therefor couldn't write its
270 informations to disk (e.g. which messages you read), you
271 are now asked if you want to restore those informations
272 from the auto-save file.
275 To prevent this message make sure you exit Gnus
276 via @samp{q} in group buffer instead of
280 @node [2.2], [2.3], [2.1], FAQ 2 - Startup / Group buffer
282 @subsubheading Question: 2.2
284 Gnus doesn't remember which groups I'm subscribed to,
290 You get the message described in the q/a pair above while
291 starting Gnus, right? It's an other symptom for the same
292 problem, so read the answer above.
295 @node [2.3], [2.4], [2.2], FAQ 2 - Startup / Group buffer
297 @subsubheading Question 2.3:
299 How to change the format of the lines in Group buffer?
304 You've got to tweak the value of the variable
305 gnus-group-line-format. See the manual node "Group Line
306 Specification" for information on how to do this. An
307 example for this (guess from whose .gnus :-)):
312 (setq gnus-group-line-format "%P%M%S[%5t]%5y : %(%g%)\n")
317 @node [2.4], [2.5], [2.3], FAQ 2 - Startup / Group buffer
319 @subsubheading Question 2.4:
321 My group buffer becomes a bit crowded, is there a way to
322 sort my groups into categories so I can easier browse
328 Gnus offers the topic mode, it allows you to sort your
329 groups in, well, topics, e.g. all groups dealing with
330 Linux under the topic linux, all dealing with music under
331 the topic music and all dealing with scottish music under
332 the topic scottish which is a subtopic of music.
335 To enter topic mode, just hit t while in Group buffer. Now
336 you can use @samp{T n} to create a topic
337 at point and @samp{T m} to move a group to
338 a specific topic. For more commands see the manual or the
339 menu. You might want to include the %P specifier at the
340 beginning of your gnus-group-line-format variable to have
341 the groups nicely indented.
344 @node [2.5], , [2.4], FAQ 2 - Startup / Group buffer
346 @subsubheading Question 2.5:
348 How to manually sort the groups in Group buffer? How to
349 sort the groups in a topic?
354 Move point over the group you want to move and
355 hit @samp{C-k}, now move point to the
356 place where you want the group to be and
360 @node FAQ 3 - Getting messages, FAQ 4 - Reading messages, FAQ 2 - Startup / Group buffer, Frequently Asked Questions
362 @subsection Getting messages
365 * [3.1]:: I just installed Gnus, started it via M-x gnus but it only says "nntp (news) open error", what to do?
366 * [3.2]:: I'm working under Windows and have no idea what ~/.gnus means.
367 * [3.3]:: My news server requires authentication, how to store user name and password on disk?
368 * [3.4]:: Gnus seems to start up OK, but I can't find out how to subscribe to a group.
369 * [3.5]:: Gnus doesn't show all groups / Gnus says I'm not allowed to post on this server as well as I am, what's that?
370 * [3.6]:: I want Gnus to fetch news from several servers, is this possible?
371 * [3.7]:: And how about local spool files?
372 * [3.8]:: OK, reading news works now, but I want to be able to read my mail with Gnus, too. How to do it?
373 * [3.9]:: And what about IMAP?
374 * [3.10]:: At the office we use one of those MS Exchange servers, can I use Gnus to read my mail from it?
375 * [3.11]:: Can I tell Gnus not to delete the mails on the server it retrieves via POP3?
379 @node [3.1], [3.2], FAQ 3 - Getting messages, FAQ 3 - Getting messages
381 @subsubheading Question 3.1:
383 I just installed Gnus, started it via
385 but it only says "nntp (news) open error", what to do?
390 You've got to tell Gnus where to fetch the news from. Read
391 the documentation for information on how to do this. As a
392 first start, put those lines in ~/.gnus:
396 (setq gnus-select-method '(nntp "news.yourprovider.net"))
397 (setq user-mail-address "you@@yourprovider.net")
398 (setq user-full-name "Your Name")
402 @node [3.2], [3.3], [3.1], FAQ 3 - Getting messages
404 @subsubheading Question 3.2:
406 I'm working under Windows and have no idea what ~/.gnus means.
411 The ~/ means the home directory where Gnus and Emacs look for the
412 configuration files. However, you don't really need to know what this
413 means, it suffices that Emacs knows what it means :-) You can type
414 @samp{C-x C-f ~/.gnus RET } (yes, with the forward slash, even on
415 Windows), and Emacs will open the right file for you. (It will most
416 likely be new, and thus empty.) However, I'd discourage you from
417 doing so, since the directory Emacs chooses will most certainly not be
418 what you want, so let's do it the correct way. The first thing you've
419 got to do is to create a suitable directory (no blanks in directory
420 name please) e.g. @file{c:\myhome}. Then you must set the environment
421 variable HOME to this directory. To do this under Win9x or Me include
432 in your autoexec.bat and reboot. Under NT, 2000 and XP,
433 hit Winkey+Pause/Break to enter system options (if it
434 doesn't work, go to Control Panel -> System). There you'll
435 find the possibility to set environment variables, create
436 a new one with name HOME and value @file{c:\myhome}, a reboot is
440 Now to create ~/.gnus, say
441 @samp{C-x C-f ~/.gnus RET C-x C-s}.
445 @node [3.3], [3.4], [3.2], FAQ 3 - Getting messages
447 @subsubheading Question 3.3:
449 My news server requires authentication, how to store
450 user name and password on disk?
455 Create a file ~/.authinfo which includes for each server a line like this
459 machine news.yourprovider.net login YourUserName password YourPassword
464 Make sure that the file isn't readable to others if you
465 work on a OS which is capable of doing so. (Under Unix
469 chmod 600 ~/.authinfo
476 @node [3.4], [3.5], [3.3], FAQ 3 - Getting messages
478 @subsubheading Question 3.4:
480 Gnus seems to start up OK, but I can't find out how to
481 subscribe to a group.
486 If you know the name of the group say @samp{U
487 name.of.group RET} in group buffer (use the
488 tab-completion Luke). Otherwise hit ^ in group buffer,
489 this brings you to the server buffer. Now place point (the
490 cursor) over the server which carries the group you want,
491 hit @samp{RET}, move point to the group
492 you want to subscribe to and say @samp{u}
496 @node [3.5], [3.6], [3.4], FAQ 3 - Getting messages
498 @subsubheading Question 3.5:
500 Gnus doesn't show all groups / Gnus says I'm not allowed to
501 post on this server as well as I am, what's that?
506 Some providers allow restricted anonymous access and full
507 access only after authorization. To make Gnus send authinfo
508 to those servers append
517 to the line for those servers in ~/.authinfo.
520 @node [3.6], [3.7], [3.5], FAQ 3 - Getting messages
522 @subsubheading Question 3.6:
524 I want Gnus to fetch news from several servers, is this possible?
529 Of course. You can specify more sources for articles in the
530 variable gnus-secondary-select-methods. Add something like
535 (add-to-list 'gnus-secondary-select-methods
536 '(nntp "news.yourSecondProvider.net"))
537 (add-to-list 'gnus-secondary-select-methods
538 '(nntp "news.yourThirdProvider.net"))
542 @node [3.7], [3.8], [3.6], FAQ 3 - Getting messages
544 @subsubheading Question 3.7:
546 And how about local spool files?
551 No problem, this is just one more select method called
552 nnspool, so you want this:
556 (add-to-list 'gnus-secondary-select-methods '(nnspool ""))
560 Or this if you don't want an NNTP Server as primary news source:
564 (setq gnus-select-method '(nnspool ""))
568 Gnus will look for the spool file in /usr/spool/news, if you
569 want something different, change the line above to something like this:
573 (add-to-list 'gnus-secondary-select-methods
574 '(nnspool "" (nnspool-directory "/usr/local/myspoolddir")))
578 This sets the spool directory for this server only.
579 You might have to specify more stuff like the program used
580 to post articles, see the Gnus manual on how to do this.
583 @node [3.8], [3.9], [3.7], FAQ 3 - Getting messages
585 @subsubheading Question 3.8:
587 OK, reading news works now, but I want to be able to read my mail
588 with Gnus, too. How to do it?
593 That's a bit harder since there are many possible sources
594 for mail, many possible ways for storing mail and many
595 different ways for sending mail. The most common cases are
596 these: 1: You want to read your mail from a pop3 server and
597 send them directly to a SMTP Server 2: Some program like
598 fetchmail retrieves your mail and stores it on disk from
599 where Gnus shall read it. Outgoing mail is sent by
600 Sendmail, Postfix or some other MTA. Sometimes, you even
601 need a combination of the above cases.
604 However, the first thing to do is to tell Gnus in which way
605 it should store the mail, in Gnus terminology which back end
606 to use. Gnus supports many different back ends, the most
607 commonly used one is nnml. It stores every mail in one file
608 and is therefor quite fast. However you might prefer a one
609 file per group approach if your file system has problems with
610 many small files, the nnfolder back end is then probably the
611 choice for you. To use nnml add the following to ~/.gnus:
615 (add-to-list 'gnus-secondary-select-methods '(nnml ""))
619 As you might have guessed, if you want nnfolder, it's
623 (add-to-list 'gnus-secondary-select-methods '(nnfolder ""))
627 Now we need to tell Gnus, where to get it's mail from. If
628 it's a POP3 server, then you need something like this:
632 (eval-after-load "mail-source"
633 '(add-to-list 'mail-sources '(pop :server "pop.YourProvider.net"
635 :password "yourPassword"))
639 Make sure ~/.gnus isn't readable to others if you store
640 your password there. If you want to read your mail from a
641 traditional spool file on your local machine, it's
645 (eval-after-load "mail-source"
646 '(add-to-list 'mail-sources '(file :path "/path/to/spool/file")))
650 If it's a Maildir, with one file per message as used by
651 postfix, Qmail and (optionally) fetchmail it's
655 (eval-after-load "mail-source"
656 '(add-to-list 'mail-sources '(maildir :path "/path/to/Maildir/"
657 :subdirs ("cur" "new")))
661 And finally if you want to read your mail from several files
662 in one directory, for example because procmail already split your
667 (eval-after-load "mail-source"
668 '(add-to-list 'mail-sources '(directory :path "/path/to/procmail-dir/"
673 Where :suffix ".prcml" tells Gnus only to use files with the
677 OK, now you only need to tell Gnus how to send mail. If you
678 want to send mail via sendmail (or whichever MTA is playing
679 the role of sendmail on your system), you don't need to do
680 anything. However, if you want to send your mail to an
681 SMTP Server you need the following in your ~/.gnus
685 (setq send-mail-function 'smtpmail-send-it)
686 (setq message-send-mail-function 'smtpmail-send-it)
687 (setq smtpmail-default-smtp-server "smtp.yourProvider.net")
691 @node [3.9], [3.10], [3.8], FAQ 3 - Getting messages
693 @subsubheading Question 3.9:
700 There are two ways of using IMAP with Gnus. The first one is
701 to use IMAP like POP3, that means Gnus fetches the mail from
702 the IMAP server and stores it on disk. If you want to do
703 this (you don't really want to do this) add the following to
708 (add-to-list 'mail-sources '(imap :server "mail.mycorp.com"
712 :authentication login
714 :fetchflag "\\Seen"))
718 You might have to tweak the values for stream and/or
719 authentification, see the Gnus manual node "Mail Source
720 Specifiers" for possible values.
723 If you want to use IMAP the way it's intended, you've got to
724 follow a different approach. You've got to add the nnimap
725 back end to your select method and give the information
726 about the server there.
731 'gnus-secondary-select-methods
732 '(nnimap "Give the baby a name"
733 (nnimap-address "imap.yourProvider.net")
735 (nnimap-list-pattern "archive.*")))
739 Again, you might have to specify how to authenticate to the
740 server if Gnus can't guess the correct way, see the Manual
741 Node "IMAP" for detailed information.
744 @node [3.10], [3.11], [3.9], FAQ 3 - Getting messages
746 @subsubheading Question 3.10:
748 At the office we use one of those MS Exchange servers, can I use
749 Gnus to read my mail from it?
754 Offer your administrator a pair of new running shoes for
755 activating IMAP on the server and follow the instructions
759 @node [3.11], , [3.10], FAQ 3 - Getting messages
761 @subsubheading Question 3.11:
763 Can I tell Gnus not to delete the mails on the server it
769 First of all, that's not the way POP3 is intended to work,
770 if you have the possibility, you should use the IMAP
771 Protocol if you want your messages to stay on the
772 server. Nevertheless there might be situations where you
773 need the feature, but sadly Gnus itself has no predefined
774 functionality to do so.
777 However this is Gnus county so there are possibilities to
778 achieve what you want. The easiest way is to get an external
779 program which retrieves copies of the mail and stores them
780 on disk, so Gnus can read it from there. On Unix systems you
781 could use e.g. fetchmail for this, on MS Windows you can use
782 Hamster, an excellent local news and mail server.
785 The other solution would be, to replace the method Gnus
786 uses to get mail from POP3 servers by one which is capable
787 of leaving the mail on the server. If you use XEmacs, get
788 the package mail-lib, it includes an enhanced pop3.el,
789 look in the file, there's documentation on how to tell
790 Gnus to use it and not to delete the retrieved mail. For
791 GNU Emacs look for the file epop3.el which can do the same
792 (If you know the home of this file, please send me an
793 e-mail). You can also tell Gnus to use an external program
794 (e.g. fetchmail) to fetch your mail, see the info node
795 "Mail Source Specifiers" in the Gnus manual on how to do
800 @node FAQ 4 - Reading messages, FAQ 5 - Composing messages, FAQ 3 - Getting messages, Frequently Asked Questions
802 @subsection Reading messages
805 * [4.1]:: When I enter a group, all read messages are gone. How to view them again?
806 * [4.2]:: How to tell Gnus to show an important message every time I enter a group, even when it's read?
807 * [4.3]:: How to view the headers of a message?
808 * [4.4]:: How to view the raw unformatted message?
809 * [4.5]:: How can I change the headers Gnus displays by default at the top of the article buffer?
810 * [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?
811 * [4.7]:: Can I use some other browser than w3 to render my HTML-mails?
812 * [4.8]:: Is there anything I can do to make poorly formatted mails more readable?
813 * [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?
814 * [4.10]:: How can I disable threading in some (e.g. mail-) groups, or set other variables specific for some groups?
815 * [4.11]:: Can I highlight messages written by me and follow-ups to those?
816 * [4.12]:: The number of total messages in a group which Gnus displays in group buffer is by far to high, especially in mail groups. Is this a bug?
817 * [4.13]:: I don't like the layout of summary and article buffer, how to change it? Perhaps even a three pane display?
818 * [4.14]:: I don't like the way the Summary buffer looks, how to tweak it?
819 * [4.15]:: How to split incoming mails in several groups?
823 @node [4.1], [4.2], FAQ 4 - Reading messages, FAQ 4 - Reading messages
825 @subsubheading Question 4.1:
827 When I enter a group, all read messages are gone. How to view them again?
832 If you enter the group by saying
834 in summary buffer with point over the group, only unread and ticked messages are loaded. Say
836 instead to load all available messages. If you want only the e.g. 300 newest say
840 Loading only unread messages can be annoying if you have threaded view enabled, say
844 (setq gnus-fetch-old-headers 'some)
849 in ~/.gnus to load enough old articles to prevent teared threads, replace 'some with t to load
850 all articles (Warning: Both settings enlarge the amount of data which is
851 fetched when you enter a group and slow down the process of entering a group).
854 If you already use Gnus 5.10.0, you can say
856 In summary buffer to load the last N messages, this feature is not available in 5.8.8
859 If you don't want all old messages, but the parent of the message you're just reading,
860 you can say @samp{^}, if you want to retrieve the whole thread
861 the message you're just reading belongs to, @samp{A T} is your friend.
864 @node [4.2], [4.3], [4.1], FAQ 4 - Reading messages
866 @subsubheading Question 4.2:
868 How to tell Gnus to show an important message every time I
869 enter a group, even when it's read?
874 You can tick important messages. To do this hit
875 @samp{u} while point is in summary buffer
876 over the message. When you want to remove the mark, hit
877 either @samp{d} (this deletes the tick
878 mark and set's unread mark) or @samp{M c}
879 (which deletes all marks for the message).
882 @node [4.3], [4.4], [4.2], FAQ 4 - Reading messages
884 @subsubheading Question 4.3:
886 How to view the headers of a message?
892 to show all headers, one more
897 @node [4.4], [4.5], [4.3], FAQ 4 - Reading messages
899 @subsubheading Question 4.4:
901 How to view the raw unformatted message?
908 to show the raw message
910 returns to normal view.
913 @node [4.5], [4.6], [4.4], FAQ 4 - Reading messages
915 @subsubheading Question 4.5:
917 How can I change the headers Gnus displays by default at
918 the top of the article buffer?
923 The variable gnus-visible-headers controls which headers
924 are shown, its value is a regular expression, header lines
925 which match it are shown. So if you want author, subject,
926 date, and if the header exists, Followup-To and MUA / NUA
930 (setq gnus-visible-headers
931 "^\\(From:\\|Subject:\\|Date:\\|Followup-To:\
932 \\|X-Newsreader:\\|User-Agent:\\|X-Mailer:\\)")
936 @node [4.6], [4.7], [4.5], FAQ 4 - Reading messages
938 @subsubheading Question 4.6:
940 I'd like Gnus NOT to render HTML-mails but show me the
941 text part if it's available. How to do it?
950 (eval-after-load "mm-decode"
952 (add-to-list 'mm-discouraged-alternatives "text/html")
953 (add-to-list 'mm-discouraged-alternatives "text/richtext")))
957 in ~/.gnus. If you don't want HTML rendered, even if there's no text alternative add
961 (setq mm-automatic-display (remove "text/html" mm-automatic-display))
968 @node [4.7], [4.8], [4.6], FAQ 4 - Reading messages
970 @subsubheading Question 4.7:
972 Can I use some other browser than w3 to render my HTML-mails?
977 Only if you use Gnus 5.10.0 or younger. In this case you've got the
978 choice between w3, w3m, links, lynx and html2text, which
979 one is used can be specified in the variable
980 mm-text-html-renderer, so if you want links to render your
985 (setq mm-text-html-renderer 'links)
989 @node [4.8], [4.9], [4.7], FAQ 4 - Reading messages
991 @subsubheading Question 4.8:
993 Is there anything I can do to make poorly formatted mails
999 Gnus offers you several functions to "wash" incoming mail,
1000 you can find them if you browse through the menu, item Article->Washing. The most
1001 interesting ones are probably "Wrap long lines" (
1005 ) and "Outlook Deuglify" which repairs the dumb quoting used
1006 by many users of Microsoft products (
1007 @samp{W Y f} gives you full deuglify.
1008 See @samp{W Y C-h} or
1009 have a look at the menus for other deuglifications).
1010 Outlook deuglify is only available since Gnus 5.10.0.
1013 @node [4.9], [4.10], [4.8], FAQ 4 - Reading messages
1015 @subsubheading Question 4.9:
1017 Is there a way to automatically ignore posts by specific
1018 authors or with specific words in the subject? And can I
1019 highlight more interesting ones in some way?
1024 You want Scoring. Scoring means, that you define rules
1025 which assign each message an integer value. Depending on
1026 the value the message is highlighted in summary buffer (if
1027 it's high, say +2000) or automatically marked read (if the
1028 value is low, say -800) or some other action happens.
1031 There are basically three ways of setting up rules which assign
1032 the scoring-value to messages. The first and easiest way is to set
1033 up rules based on the article you are just reading. Say you're
1034 reading a message by a guy who always writes nonsense and you want
1035 to ignore his messages in the future. Hit
1036 @samp{L}, to set up a rule which lowers the score.
1037 Now Gnus asks you which the criteria for lowering the Score shall
1038 be. Hit @samp{?} twice to see all possibilities,
1039 we want @samp{a} which means the author (the from
1040 header). Now Gnus wants to know which kind of matching we want.
1041 Hit either @samp{e} for an exact match or
1042 @samp{s} for substring-match and delete afterwards
1043 everything but the name to score down all authors with the given
1044 name no matter which email address is used. Now you need to tell
1045 Gnus when to apply the rule and how long it should last, hit e.g.
1046 @samp{p} to apply the rule now and let it last
1047 forever. If you want to raise the score instead of lowering it say
1048 @samp{I} instead of @samp{L}.
1051 You can also set up rules by hand. To do this say @samp{V
1052 f} in summary buffer. Then you are asked for the name
1053 of the score file, it's name.of.group.SCORE for rules valid in
1054 only one group or all.Score for rules valid in all groups. See the
1055 Gnus manual for the exact syntax, basically it's one big list
1056 whose elements are lists again. the first element of those lists
1057 is the header to score on, then one more list with what to match,
1058 which score to assign, when to expire the rule and how to do the
1059 matching. If you find me very interesting, you could e.g. add the
1060 following to your all.Score:
1064 (("references" ("hschmi22.userfqdn.rz-online.de" 500 nil s))
1065 ("message-id" ("hschmi22.userfqdn.rz-online.de" 999 nil s)))
1069 This would add 999 to the score of messages written by me
1070 and 500 to the score of messages which are a (possibly
1071 indirect) answer to a message written by me. Of course
1072 nobody with a sane mind would do this :-)
1075 The third alternative is adaptive scoring. This means Gnus
1076 watches you and tries to find out what you find
1077 interesting and what annoying and sets up rules
1078 which reflect this. Adaptive scoring can be a huge help
1079 when reading high traffic groups. If you want to activate
1080 adaptive scoring say
1084 (setq gnus-use-adaptive-scoring t)
1091 @node [4.10], [4.11], [4.9], FAQ 4 - Reading messages
1093 @subsubheading Question 4.10:
1095 How can I disable threading in some (e.g. mail-) groups, or
1096 set other variables specific for some groups?
1101 While in group buffer move point over the group and hit
1102 @samp{G c}, this opens a buffer where you
1103 can set options for the group. At the bottom of the buffer
1104 you'll find an item that allows you to set variables
1105 locally for the group. To disable threading enter
1106 gnus-show-threads as name of variable and nil as
1107 value. Hit button done at the top of the buffer when
1111 @node [4.11], [4.12], [4.10], FAQ 4 - Reading messages
1113 @subsubheading Question 4.11:
1115 Can I highlight messages written by me and follow-ups to
1121 Stop those "Can I ..." questions, the answer is always yes
1122 in Gnus Country :-). It's a three step process: First we
1123 make faces (specifications of how summary-line shall look
1124 like) for those postings, then we'll give them some
1125 special score and finally we'll tell Gnus to use the new
1126 faces. You can find detailed instructions on how to do it on
1127 @uref{http://my.gnus.org/Members/dzimmerm/HowTo%2C2002-07-25%2C1027619165012198456/view,my.gnus.org}
1130 @node [4.12], [4.13], [4.11], FAQ 4 - Reading messages
1132 @subsubheading Question 4.12:
1134 The number of total messages in a group which Gnus
1135 displays in group buffer is by far to high, especially in
1136 mail groups. Is this a bug?
1141 No, that's a matter of design of Gnus, fixing this would
1142 mean reimplementation of major parts of Gnus'
1143 back ends. Gnus thinks "highest-article-number -
1144 lowest-article-number = total-number-of-articles". This
1145 works OK for Usenet groups, but if you delete and move
1146 many messages in mail groups, this fails. To cure the
1147 symptom, enter the group via @samp{C-u RET}
1148 (this makes Gnus get all messages), then
1149 hit @samp{M P b} to mark all messages and
1150 then say @samp{B m name.of.group} to move
1151 all messages to the group they have been in before, they
1152 get new message numbers in this process and the count is
1153 right again (until you delete and move your mail to other
1157 @node [4.13], [4.14], [4.12], FAQ 4 - Reading messages
1159 @subsubheading Question 4.13:
1161 I don't like the layout of summary and article buffer, how
1162 to change it? Perhaps even a three pane display?
1167 You can control the windows configuration by calling the
1168 function gnus-add-configuration. The syntax is a bit
1169 complicated but explained very well in the manual node
1170 "Window Layout". Some popular examples:
1173 Instead 25% summary 75% article buffer 35% summary and 65%
1174 article (the 1.0 for article means "take the remaining
1179 (gnus-add-configuration
1180 '(article (vertical 1.0
1186 A three pane layout, Group buffer on the left, summary
1187 buffer top-right, article buffer bottom-right:
1191 (gnus-add-configuration
1197 (summary 0.25 point)
1199 (gnus-add-configuration
1205 (summary 1.0 point)))))
1209 @node [4.14], [4.15], [4.13], FAQ 4 - Reading messages
1211 @subsubheading Question 4.14:
1213 I don't like the way the Summary buffer looks, how to tweak it?
1218 You've got to play around with the variable
1219 gnus-summary-line-format. It's value is a string of
1220 symbols which stand for things like author, date, subject
1221 etc. A list of the available specifiers can be found in the
1222 manual node "Summary Buffer Lines" and the often forgotten
1223 node "Formatting Variables" and it's sub-nodes. There
1224 you'll find useful things like positioning the cursor and
1225 tabulators which allow you a summary in table form, but
1226 sadly hard tabulators are broken in 5.8.8.
1229 Since 5.10.0, Gnus offers you some very nice new specifiers,
1230 e.g. %B which draws a thread-tree and %&user-date which
1231 gives you a date where the details are dependent of the
1232 articles age. Here's an example which uses both:
1236 (setq gnus-summary-line-format
1237 ":%U%R %B %s %-60=|%4L |%-20,20f |%&user-date; \n")
1245 :O Re: [Richard Stallman] rfc2047.el | 13 |Lars Magne Ingebrigt |Sat 23:06
1246 :O Re: Revival of the ding-patches list | 13 |Lars Magne Ingebrigt |Sat 23:12
1247 :R > Re: Find correct list of articles for a gro| 25 |Lars Magne Ingebrigt |Sat 23:16
1248 :O \-> ... | 21 |Kai Grossjohann | 0:01
1249 :R > Re: Cry for help: deuglify.el - moving stuf| 28 |Lars Magne Ingebrigt |Sat 23:34
1250 :O \-> ... | 115 |Raymond Scholz | 1:24
1251 :O \-> ... | 19 |Lars Magne Ingebrigt |15:33
1252 :O Slow mailing list | 13 |Lars Magne Ingebrigt |Sat 23:49
1253 :O Re: `@@' mark not documented | 13 |Lars Magne Ingebrigt |Sat 23:50
1254 :R > Re: Gnus still doesn't count messages prope| 23 |Lars Magne Ingebrigt |Sat 23:57
1255 :O \-> ... | 18 |Kai Grossjohann | 0:35
1256 :O \-> ... | 13 |Lars Magne Ingebrigt | 0:56
1260 @node [4.15], , [4.14], FAQ 4 - Reading messages
1262 @subsubheading Question 4.15:
1264 How to split incoming mails in several groups?
1269 Gnus offers two possibilities for splitting mail, the easy
1270 nnmail-split-methods and the more powerful Fancy Mail
1271 Splitting. I'll only talk about the first one, refer to
1272 the manual, node "Fancy Mail Splitting" for the latter.
1275 The value of nnmail-split-methods is a list, each element
1276 is a list which stands for a splitting rule. Each rule has
1277 the form "group where matching articles should go to",
1278 "regular expression which has to be matched", the first
1279 rule which matches wins. The last rule must always be a
1280 general rule (regular expression .*) which denotes where
1281 articles should go which don't match any other rule. If
1282 the folder doesn't exist yet, it will be created as soon
1283 as an article lands there. By default the mail will be
1284 send to all groups whose rules match. If you
1285 don't want that (you probably don't want), say
1289 (setq nnmail-crosspost nil)
1296 An example might be better than thousand words, so here's
1297 my nnmail-split-methods. Note that I send duplicates in a
1298 special group and that the default group is spam, since I
1299 filter all mails out which are from some list I'm
1300 subscribed to or which are addressed directly to me
1301 before. Those rules kill about 80% of the Spam which
1302 reaches me (Email addresses are changed to prevent spammers
1307 (setq nnmail-split-methods
1308 '(("duplicates" "^Gnus-Warning:.*duplicate")
1309 ("XEmacs-NT" "^\\(To:\\|CC:\\).*localpart@@xemacs.bla.*")
1310 ("Gnus-Tut" "^\\(To:\\|CC:\\).*localpart@@socha.bla.*")
1311 ("tcsh" "^\\(To:\\|CC:\\).*localpart@@mx.gw.bla.*")
1312 ("BAfH" "^\\(To:\\|CC:\\).*localpart@@.*uni-muenchen.bla.*")
1314 "^\\(CC:\\|To:\\).*hamster-sourcen@@yahoogroups.\\(de\\|com\\).*")
1315 ("Tagesschau" "^From: tagesschau <localpart@@www.tagesschau.bla>$")
1316 ("Replies" "^\\(CC:\\|To:\\).*localpart@@Frank-Schmitt.bla.*")
1318 "^From:.*\\(localpart@@privateprovider.bla\\|localpart@@workplace.bla\\).*")
1320 "^Content-Type:.*\\(ks_c_5601-1987\\|EUC-KR\\|big5\\|iso-2022-jp\\).*")
1322 "^Subject:.*\\(This really work\\|XINGA\\|ADV:\\|XXX\\|adult\\|sex\\).*")
1324 "^Subject:.*\\(\=\?ks_c_5601-1987\?\\|\=\?euc-kr\?\\|\=\?big5\?\\).*")
1325 ("Spam" "^X-Mailer:\\(.*BulkMailer.*\\|.*MIME::Lite.*\\|\\)")
1327 "^X-Mailer:\\(.*CyberCreek Avalanche\\|.*http\:\/\/GetResponse\.com\\)")
1329 "^From:.*\\(verizon\.net\\|prontomail\.com\\|money\\|ConsumerDirect\\).*")
1330 ("Spam" "^Delivered-To: GMX delivery to spamtrap@@gmx.bla$")
1331 ("Spam" "^Received: from link2buy.com")
1332 ("Spam" "^CC: .*azzrael@@t-online.bla")
1333 ("Spam" "^X-Mailer-Version: 1.50 BETA")
1334 ("Uni" "^\\(CC:\\|To:\\).*localpart@@uni-koblenz.bla.*")
1336 "^\\(CC:\\|To:\\).*\\(my\ name\\|address@@one.bla\\|adress@@two.bla\\)")
1342 @node FAQ 5 - Composing messages, FAQ 6 - Old messages, FAQ 4 - Reading messages, Frequently Asked Questions
1344 @subsection Composing messages
1347 * [5.1]:: What are the basic commands I need to know for sending mail and postings?
1348 * [5.2]:: How to enable automatic word-wrap when composing messages?
1349 * [5.3]:: How to set stuff like From, Organization, Reply-To, signature...?
1350 * [5.4]:: Can I set things like From, Signature etc group based on the group I post too?
1351 * [5.5]:: Is there a spell-checker? Perhaps even on-the-fly spell-checking?
1352 * [5.6]:: Can I set the dictionary based on the group I'm posting to?
1353 * [5.7]:: Is there some kind of address-book, so I needn't remember all those email addresses?
1354 * [5.8]:: Sometimes I see little images at the top of article buffer. What's that and how can I send one with my postings, too?
1355 * [5.9]:: Sometimes I accidentally hit r instead of f in newsgroups. Can Gnus warn me, when I'm replying by mail in newsgroups?
1356 * [5.10]:: How to tell Gnus not to generate a sender header?
1357 * [5.11]:: I want gnus to locally store copies of my send mail and news, how to do it?
1358 * [5.12]:: People tell me my Message-IDs are not correct, why aren't they and how to fix it?
1362 @node [5.1], [5.2], FAQ 5 - Composing messages, FAQ 5 - Composing messages
1364 @subsubheading Question 5.1:
1366 What are the basic commands I need to know for sending mail and postings?
1371 To start composing a new mail hit @samp{m}
1372 either in Group or Summary buffer, for a posting, it's
1373 either @samp{a} in Group buffer and
1374 filling the Newsgroups header manually
1375 or @samp{a} in the Summary buffer of the
1376 group where the posting shall be send to. Replying by mail
1378 @samp{r} if you don't want to cite the
1379 author, or import the cited text manually and
1380 @samp{R} to cite the text of the original
1381 message. For a follow up to a newsgroup, it's
1382 @samp{f} and @samp{F}
1383 (analog to @samp{r} and
1387 Enter new headers above the line saying "--text follows
1388 this line--", enter the text below the line. When ready
1389 hit @samp{C-c C-c}, to send the message,
1390 if you want to finish it later hit @samp{C-c
1391 C-d} to save it in the drafts group, where you
1392 can start editing it again by saying @samp{D
1396 @node [5.2], [5.3], [5.1], FAQ 5 - Composing messages
1398 @subsubheading Question 5.2:
1400 How to enable automatic word-wrap when composing messages?
1409 (add-hook 'message-mode-hook
1411 (setq fill-column 72)
1412 (turn-on-auto-fill)))
1416 in ~/.gnus. You can reformat a paragraph by hitting
1417 @samp{M-q} (as usual)
1420 @node [5.3], [5.4], [5.2], FAQ 5 - Composing messages
1422 @subsubheading Question 5.3:
1424 How to set stuff like From, Organization, Reply-To, signature...?
1429 There are other ways, but you should use posting styles
1430 for this. (See below why).
1431 This example should make the syntax clear:
1435 (setq gnus-posting-styles
1437 (name "Frank Schmitt")
1438 (address "me@@there.bla")
1439 (organization "Hamme net, kren mer och nimmi")
1440 (signature-file "~/.signature")
1441 ("X-SampleHeader" "foobar")
1442 (eval (setq some-variable "Foo bar")))))
1446 The ".*" means that this settings are the default ones
1447 (see below), valid values for the first element of the
1448 following lists are signature, signature-file,
1449 organization, address, name or body. The attribute name
1450 can also be a string. In that case, this will be used as
1451 a header name, and the value will be inserted in the
1452 headers of the article; if the value is `nil', the header
1453 name will be removed. You can also say (eval (foo bar)),
1454 then the function foo will be evaluated with argument bar
1455 and the result will be thrown away.
1458 @node [5.4], [5.5], [5.3], FAQ 5 - Composing messages
1460 @subsubheading Question 5.4:
1462 Can I set things like From, Signature etc group based on the group I post too?
1467 That's the strength of posting styles. Before, we used ".*"
1468 to set the default for all groups. You can use a regexp
1469 like "^gmane" and the following settings are only applied
1470 to postings you send to the gmane hierarchy, use
1471 ".*binaries" instead and they will be applied to postings
1472 send to groups containing the string binaries in their
1476 You can instead of specifying a regexp specify a function
1477 which is evaluated, only if it returns true, the
1478 corresponding settings take effect. Two interesting
1479 candidates for this are message-news-p which returns t if
1480 the current Group is a newsgroup and the corresponding
1484 Note that all forms that match are applied, that means in
1485 the example below, when I post to
1486 gmane.mail.spam.spamassassin.general, the settings under
1487 ".*" are applied and the settings under message-news-p and
1488 those under "^gmane" and those under
1489 "^gmane\\.mail\\.spam\\.spamassassin\\.general$". Because
1490 of this put general settings at the top and specific ones
1495 (setq gnus-posting-styles
1497 (name "Frank Schmitt")
1498 (organization "Hamme net, kren mer och nimmi")
1499 (signature-file "~/.signature"))
1500 ((message-news-p) ;;Usenet news?
1501 (address "mySpamTrap@@Frank-Schmitt.bla")
1502 ("Reply-To" "hereRealRepliesOnlyPlease@@Frank-Schmitt.bla"))
1503 ((message-mail-p) ;;mail?
1504 (address "usedForMails@@Frank-Schmitt.bla"))
1505 ("^gmane" ;;this is mail, too in fact
1506 (address "usedForMails@@Frank-Schmitt.net")
1508 ("^gmane.mail.spam.spamassassin.general$"
1509 (eval (setq mail-envelope-from "Azzrael@@rz-online.de"))
1510 (address "Azzrael@@rz-online.de"))))
1514 @node [5.5], [5.6], [5.4], FAQ 5 - Composing messages
1516 @subsubheading Question 5.5:
1518 Is there a spell-checker? Perhaps even on-the-fly spell-checking?
1523 You can use ispell.el to spell-check stuff in Emacs. So the first
1524 thing to do is to make sure that you've got either
1527 @uref{http://fmg-www.cs.ucla.edu/fmg-members/geoff/ispell.html,ispell}
1530 @uref{http://aspell.sourceforge.net/,aspell}
1533 installed and in your Path.
1536 @uref{http://www.kdstevens.com/~stevens/ispell-page.html,ispell.el,ispell.el}
1537 and for on-the-fly spell-checking
1538 @uref{http://www-sop.inria.fr/mimosa/personnel/Manuel.Serrano/flyspell/flyspell.html,flyspell.el,flyspell.el}.
1539 Ispell.el is shipped with Gnus Emacs and available through the Emacs
1540 package system, flyspell.el is shipped with Emacs and part of XEmacs
1541 text-modes package which is available through the package system, so
1542 there should be no need to install them manually.
1545 Ispell.el assumes you use ispell, if you choose aspell say
1549 (setq ispell-program-name "aspell")
1554 in your Emacs configuration file.
1557 If you want your outgoing messages to be spell-checked, say
1561 (add-hook 'message-send-hook 'ispell-message)
1565 In your ~/.gnus, if you prefer on-the-fly spell-checking say
1569 (add-hook 'message-mode-hook (lambda () (flyspell-mode 1)))
1573 @node [5.6], [5.7], [5.5], FAQ 5 - Composing messages
1575 @subsubheading Question 5.6:
1577 Can I set the dictionary based on the group I'm posting to?
1582 Yes, say something like
1586 (add-hook 'gnus-select-group-hook
1590 "^de\\." (gnus-group-real-name gnus-newsgroup-name))
1591 (ispell-change-dictionary "deutsch8"))
1593 (ispell-change-dictionary "english")))))
1598 in ~/.gnus. Change "^de\\." and "deutsch8" to something
1599 that suits your needs.
1602 @node [5.7], [5.8], [5.6], FAQ 5 - Composing messages
1604 @subsubheading Question 5.7:
1606 Is there some kind of address-book, so I needn't remember
1607 all those email addresses?
1612 There's an very basic solution for this, mail aliases.
1613 You can store your mail addresses in a ~/.mailrc file using a simple
1618 alias al "Al <al@@english-heritage.bla>"
1622 Then typing your alias (followed by a space or punctuation
1623 character) on a To: or Cc: line in the message buffer will
1624 cause gnus to insert the full address for you. See the
1625 node "Mail Aliases" in Message (not Gnus) manual for
1629 However, what you really want is the Insidious Big Brother
1630 Database bbdb. Get it through the XEmacs package system or from
1631 @uref{http://bbdb.sourceforge.net/,bbdb's homepage}.
1632 Now place the following in ~/.gnus, to activate bbdb for Gnus:
1637 (bbdb-initialize 'gnus 'message)
1641 Now you probably want some general bbdb configuration,
1642 place them in ~/.emacs:
1647 ;;If you don't live in Northern America, you should disable the
1648 ;;syntax check for telephone numbers by saying
1649 (setq bbdb-north-american-phone-numbers-p nil)
1650 ;;Tell bbdb about your email address:
1651 (setq bbdb-user-mail-names
1652 (regexp-opt '("Your.Email@@here.bla"
1653 "Your.other@@mail.there.bla")))
1654 ;;cycling while completing email addresses
1655 (setq bbdb-complete-name-allow-cycling t)
1657 (setq bbdb-use-pop-up nil)
1661 Now you should be ready to go. Say @samp{M-x bbdb RET
1662 RET} to open a bbdb buffer showing all
1663 entries. Say @samp{c} to create a new
1664 entry, @samp{b} to search your BBDB and
1665 @samp{C-o} to add a new field to an
1666 entry. If you want to add a sender to the BBDB you can
1667 also just hit `:' on the posting in the summary buffer and
1668 you are done. When you now compose a new mail,
1669 hit @samp{TAB} to cycle through know
1673 @node [5.8], [5.9], [5.7], FAQ 5 - Composing messages
1675 @subsubheading Question 5.8:
1677 Sometimes I see little images at the top of article
1678 buffer. What's that and how can I send one with my
1684 Those images are called X-Faces. They are 48*48 pixel b/w
1685 pictures, encoded in a header line. If you want to include
1686 one in your posts, you've got to convert some image to a
1687 X-Face. So fire up some image manipulation program (say
1688 Gimp), open the image you want to include, cut out the
1689 relevant part, reduce color depth to 1 bit, resize to
1690 48*48 and save as bitmap. Now you should get the compface
1692 @uref{ftp://ftp.cs.indiana.edu:/pub/faces/,this site}.
1693 and create the actual X-face by saying
1697 cat file.xbm | xbm2ikon |compface > file.face
1698 cat ./file.face | sed 's/\\/\\\\/g' | sed 's/\"/\\\"/g' > ./file.face.quoted
1702 If you can't use compface, there's an online X-face converter at@*
1703 @uref{http://www.dairiki.org/xface/}. If you use MS Windows, you
1704 could also use the WinFace program from
1705 @uref{http://www.xs4all.nl/~walterln/winface/}.
1707 Now you only have to tell Gnus to include the X-face in your postings
1711 (setq message-default-headers
1714 (insert-file-contents "~/.xemacs/xface")
1722 @node [5.9], [5.10], [5.8], FAQ 5 - Composing messages
1724 @subsubheading Question 5.9:
1726 Sometimes I accidentally hit r instead of f in
1727 newsgroups. Can Gnus warn me, when I'm replying by mail in
1733 Put this in ~/.gnus:
1737 (setq gnus-confirm-mail-reply-to-news t)
1741 if you already use Gnus 5.10.0, if you still use 5.8.8 or
1742 5.9 try this instead:
1746 (defadvice gnus-summary-reply (around reply-in-news activate)
1748 (when (or (not (gnus-news-group-p gnus-newsgroup-name))
1749 (y-or-n-p "Really reply? "))
1754 @node [5.10], [5.11], [5.9], FAQ 5 - Composing messages
1756 @subsubheading Question 5.10:
1758 How to tell Gnus not to generate a sender header?
1763 Since 5.10.0 Gnus doesn't generate a sender header by
1764 default. For older Gnus' try this in ~/.gnus:
1768 (eval-after-load "message"
1769 '(add-to-list 'message-syntax-checks '(sender . disabled)))
1774 @node [5.11], [5.12], [5.10], FAQ 5 - Composing messages
1776 @subsubheading Question 5.11:
1778 I want gnus to locally store copies of my send mail and
1784 You must set the variable gnus-message-archive-group to do
1785 this. You can set it to a string giving the name of the
1786 group where the copies shall go or like in the example
1787 below use a function which is evaluated and which returns
1792 (setq gnus-message-archive-group
1793 '((if (message-news-p)
1800 @node [5.12], , [5.11], FAQ 5 - Composing messages
1802 @subsubheading Question 5.12:
1804 People tell me my Message-IDs are not correct, why
1805 aren't they and how to fix it?
1810 The message-ID is an unique identifier for messages you
1811 send. To make it unique, Gnus need to know which machine
1812 name to put after the "@@". If the name of the machine
1813 where Gnus is running isn't suitable (it probably isn't
1814 at most private machines) you can tell Gnus what to use
1819 (defun message-make-message-id()
1820 (concat "<"(message-unique-id)"@@yourmachine.yourdomain.tld>"))
1825 in ~/.gnus. If you have no idea what to insert for
1826 "yourmachine.yourdomain.tld", you've got several
1827 choices. You can either ask your provider if he allows
1828 you to use something like
1829 yourUserName.userfqdn.provider.net, or you can use
1830 somethingUnique.yourdomain.tld if you own the domain
1831 yourdomain.tld, or you can register at a service which
1832 gives private users a FQDN for free, e.g.
1833 @uref{http://www.stura.tu-freiberg.de/~dlx/addfqdn.html}.
1834 (Sorry but this website is in German, if you know of an
1835 English one offering the same, drop me a note).
1838 Finally you can tell Gnus not to generate a Message-ID
1839 for News at all (and letting the server do the job) by saying
1843 (setq message-required-news-headers
1844 (remove' Message-ID message-required-news-headers))
1848 you can also tell Gnus not to generate Message-IDs for mail by saying
1852 (setq message-required-mail-headers
1853 (remove' Message-ID message-required-mail-headers))
1857 , however some mail servers don't generate proper
1858 Message-IDs, too, so test if your Mail Server behaves
1859 correctly by sending yourself a Mail and looking at the Message-ID.
1863 @node FAQ 6 - Old messages, FAQ 7 - Gnus in a dial-up environment, FAQ 5 - Composing messages, Frequently Asked Questions
1865 @subsection Old messages
1868 * [6.1]:: How to import my old mail into Gnus?
1869 * [6.2]:: How to archive interesting messages?
1870 * [6.3]:: How to search for a specific message?
1871 * [6.4]:: How to get rid of old unwanted mail?
1872 * [6.5]:: I want that all read messages are expired (at least in some groups). How to do it?
1873 * [6.6]:: I don't want expiration to delete my mails but to move them to another group.
1877 @node [6.1], [6.2], FAQ 6 - Old messages, FAQ 6 - Old messages
1879 @subsubheading Question 6.1:
1881 How to import my old mail into Gnus?
1886 The easiest way is to tell your old mail program to
1887 export the messages in mbox format. Most Unix mailers
1888 are able to do this, if you come from the MS Windows
1889 world, you may find tools at
1890 @uref{http://mbx2mbox.sourceforge.net/}.
1893 Now you've got to import this mbox file into Gnus. To do
1894 this, create a nndoc group based on the mbox file by
1895 saying @samp{G f /path/file.mbox RET} in
1896 Group buffer. You now have read-only access to your
1897 mail. If you want to import the messages to your normal
1898 Gnus mail groups hierarchy, enter the nndoc group you've
1899 just created by saying @samp{C-u RET}
1900 (thus making sure all messages are retrieved), mark all
1901 messages by saying @samp{M P b} and
1902 either copy them to the desired group by saying
1903 @samp{B c name.of.group RET} or send them
1904 through nnmail-split-methods (respool them) by saying
1908 @node [6.2], [6.3], [6.1], FAQ 6 - Old messages
1910 @subsubheading Question 6.2:
1912 How to archive interesting messages?
1917 If you stumble across an interesting message, say in
1918 gnu.emacs.gnus and want to archive it there are several
1919 solutions. The first and easiest is to save it to a file
1920 by saying @samp{O f}. However, wouldn't
1921 it be much more convenient to have more direct access to
1922 the archived message from Gnus? If you say yes, put this
1923 snippet by Frank Haun <pille3003@@fhaun.de> in
1928 (defun my-archive-article (&optional n)
1929 "Copies one or more article(s) to a corresponding `nnml:' group, e.g.
1930 `gnus.ding' goes to `nnml:1.gnus.ding'. And `nnml:List-gnus.ding' goes
1931 to `nnml:1.List-gnus-ding'.
1933 Use process marks or mark a region in the summary buffer to archive
1934 more then one article."
1939 (if (featurep 'xemacs)
1940 (replace-in-string gnus-newsgroup-name "^.*:" "")
1941 (replace-regexp-in-string "^.*:" "" gnus-newsgroup-name)))))
1942 (gnus-summary-copy-article n archive-name)))
1946 You can now say @samp{M-x
1947 my-archive-article} in summary buffer to
1948 archive the article under the cursor in a nnml
1949 group. (Change nnml to your preferred back end)
1952 Of course you can also make sure the cache is enabled by saying
1956 (setq gnus-use-cache t)
1960 then you only have to set either the tick or the dormant
1961 mark for articles you want to keep, setting the read
1962 mark will remove them from cache.
1965 @node [6.3], [6.4], [6.2], FAQ 6 - Old messages
1967 @subsubheading Question 6.3:
1969 How to search for a specific message?
1974 There are several ways for this, too. For a posting from
1975 a Usenet group the easiest solution is probably to ask
1976 @uref{http://groups.google.com,groups.google.com},
1977 if you found the posting there, tell Google to display
1978 the raw message, look for the message-id, and say
1979 @samp{M-^ the@@message.id RET} in a
1981 Since Gnus 5.10.0 there's also a Gnus interface for
1982 groups.google.com which you can call with
1983 @samp{G W}) in group buffer.
1986 Another idea which works for both mail and news groups
1987 is to enter the group where the message you are
1988 searching is and use the standard Emacs search
1989 @samp{C-s}, it's smart enough to look at
1990 articles in collapsed threads, too. If you want to
1991 search bodies, too try @samp{M-s}
1992 instead. Further on there are the
1993 gnus-summary-limit-to-foo functions, which can help you,
1997 Of course you can also use grep to search through your
1998 local mail, but this is both slow for big archives and
1999 inconvenient since you are not displaying the found mail
2000 in Gnus. Here comes nnir into action. Nnir is a front end
2001 to search engines like swish-e or swish++ and
2002 others. You index your mail with one of those search
2003 engines and with the help of nnir you can search trough
2004 the indexed mail and generate a temporary group with all
2005 messages which met your search criteria. If this sound
2006 cool to you get nnir.el from
2007 @uref{ftp://ls6-ftp.cs.uni-dortmund.de/pub/src/emacs/}
2008 or @uref{ftp://ftp.is.informatik.uni-duisburg.de/pub/src/emacs/}.
2009 Instructions on how to use it are at the top of the file.
2012 @node [6.4], [6.5], [6.3], FAQ 6 - Old messages
2014 @subsubheading Question 6.4:
2016 How to get rid of old unwanted mail?
2021 You can of course just mark the mail you don't need
2022 anymore by saying @samp{#} with point
2023 over the mail and then say @samp{B DEL}
2024 to get rid of them forever. You could also instead of
2025 actually deleting them, send them to a junk-group by
2026 saying @samp{B m nnml:trash-bin} which
2027 you clear from time to time, but both are not the intended
2031 In Gnus, we let mail expire like news expires on a news
2032 server. That means you tell Gnus the message is
2033 expirable (you tell Gnus "I don't need this mail
2034 anymore") by saying @samp{E} with point
2035 over the mail in summary buffer. Now when you leave the
2036 group, Gnus looks at all messages which you marked as
2037 expirable before and if they are old enough (default is
2038 older than a week) they are deleted.
2041 @node [6.5], [6.6], [6.4], FAQ 6 - Old messages
2043 @subsubheading Question 6.5:
2045 I want that all read messages are expired (at least in
2046 some groups). How to do it?
2051 If you want all read messages to be expired (e.g. in
2052 mailing lists where there's an online archive), you've
2053 got two choices: auto-expire and
2054 total-expire. Auto-expire means, that every article
2055 which has no marks set and is selected for reading is
2056 marked as expirable, Gnus hits @samp{E}
2057 for you every time you read a message. Total-expire
2058 follows a slightly different approach, here all article
2059 where the read mark is set are expirable.
2062 To activate auto-expire, include auto-expire in the
2063 Group parameters for the group. (Hit @samp{G
2064 c} in summary buffer with point over the
2065 group to change group parameters). For total-expire add
2066 total-expire to the group-parameters.
2069 Which method you choose is merely a matter of taste:
2070 Auto-expire is faster, but it doesn't play together with
2071 Adaptive Scoring, so if you want to use this feature,
2072 you should use total-expire.
2075 If you want a message to be excluded from expiration in
2076 a group where total or auto expire is active, set either
2077 tick (hit @samp{u}) or dormant mark (hit
2078 @samp{u}), when you use auto-expire, you
2079 can also set the read mark (hit
2083 @node [6.6], , [6.5], FAQ 6 - Old messages
2085 @subsubheading Question 6.6:
2087 I don't want expiration to delete my mails but to move them
2093 Say something like this in ~/.gnus:
2097 (setq nnmail-expiry-target "nnml:expired")
2101 (If you want to change the value of nnmail-expiry-target
2102 on a per group basis see the question "How can I disable
2103 threading in some (e.g. mail-) groups, or set other
2104 variables specific for some groups?")
2108 @node FAQ 7 - Gnus in a dial-up environment, FAQ 8 - Getting help, FAQ 6 - Old messages, Frequently Asked Questions
2110 @subsection Gnus in a dial-up environment
2113 * [7.1]:: I don't have a permanent connection to the net, how can I minimize the time I've got to be connected?
2114 * [7.2]:: So what was this thing about the Agent?
2115 * [7.3]:: I want to store article bodies on disk, too. How to do it?
2116 * [7.4]:: How to tell Gnus not to try to send mails / postings while I'm offline?
2121 @node [7.1], [7.2], FAQ 7 - Gnus in a dial-up environment, FAQ 7 - Gnus in a dial-up environment
2123 @subsubheading Question 7.1:
2125 I don't have a permanent connection to the net, how can
2126 I minimize the time I've got to be connected?
2131 You've got basically two options: Either you use the
2132 Gnus Agent (see below) for this, or you can install
2133 programs which fetch your news and mail to your local
2134 disk and Gnus reads the stuff from your local
2138 If you want to follow the second approach, you need a
2139 program which fetches news and offers them to Gnus, a
2140 program which does the same for mail and a program which
2141 receives the mail you write from Gnus and sends them
2145 Let's talk about Unix systems first: For the news part, the easiest
2146 solution is a small nntp server like
2147 @uref{http://www.leafnode.org/,Leafnode} or
2148 @uref{http://infa.abo.fi/~patrik/sn/,sn}, of course you can also
2149 install a full featured news server like
2150 @uref{http://www.isc.org/products/INN/,inn}.
2152 Then you want to fetch your Mail, popular choices are
2155 @uref{http://www.catb.org/~esr/fetchmail/,fetchmail} and
2157 @uref{http://www.qcc.ca/~charlesc/software/getmail-3.0/,getmail}.
2159 You should tell those to write the mail to your disk and Gnus to read
2160 it from there. Last but not least the mail sending part: This can be
2161 done with every MTA like @uref{http://www.sendmail.org/,sendmail},
2162 @uref{http://www.qmail.org/,postfix}, @uref{http://www.exim.org/,exim}
2163 or @uref{http://www.qmail.org/,qmail}.
2166 On windows boxes I'd vote for
2167 @uref{http://www.tglsoft.de/,Hamster},
2168 it's a small freeware, open-source program which fetches
2169 your mail and news from remote servers and offers them
2170 to Gnus (or any other mail and/or news reader) via nntp
2171 respectively POP3 or IMAP. It also includes a smtp
2172 server for receiving mails from Gnus.
2175 @node [7.2], [7.3], [7.1], FAQ 7 - Gnus in a dial-up environment
2177 @subsubheading Question 7.2:
2179 So what was this thing about the Agent?
2184 The Gnus agent is part of Gnus, it allows you to fetch
2185 mail and news and store them on disk for reading them
2186 later when you're offline. It kind of mimics offline
2187 newsreaders like e.g. Forte Agent. If you want to use
2188 the Agent place the following in ~/.gnus if you are
2189 still using 5.8.8 or 5.9 (it's the default since 5.10.0):
2197 Now you've got to select the servers whose groups can be
2198 stored locally. To do this, open the server buffer
2199 (that is press @samp{^} while in the
2200 group buffer). Now select a server by moving point to
2201 the line naming that server. Finally, agentize the
2202 server by typing @samp{J a}. If you
2203 make a mistake, or change your mind, you can undo this
2204 action by typing @samp{J r}. When
2205 you're done, type 'q' to return to the group buffer.
2206 Now the next time you enter a group on a agentized
2207 server, the headers will be stored on disk and read from
2208 there the next time you enter the group.
2211 @node [7.3], [7.4], [7.2], FAQ 7 - Gnus in a dial-up environment
2213 @subsubheading Question 7.3:
2215 I want to store article bodies on disk, too. How to do it?
2220 You can tell the agent to automatically fetch the bodies
2221 of articles which fulfill certain predicates, this is
2222 done in a special buffer which can be reached by
2223 saying @samp{J c} in group
2224 buffer. Please refer to the documentation for
2225 information which predicates are possible and how
2229 Further on you can tell the agent manually which
2230 articles to store on disk. There are two ways to do
2231 this: Number one: In the summary buffer, process mark a
2232 set of articles that shall be stored in the agent by
2233 saying @samp{#} with point over the
2234 article and then type @samp{J s}. The
2235 other possibility is to set, again in the summary
2236 buffer, downloadable (%) marks for the articles you
2237 want by typing @samp{@@} with point over
2238 the article and then typing @samp{J u}.
2239 What's the difference? Well, process marks are erased as
2240 soon as you exit the summary buffer while downloadable
2241 marks are permanent. You can actually set downloadable
2242 marks in several groups then use fetch session ('J s' in
2243 the GROUP buffer) to fetch all of those articles. The
2244 only downside is that fetch session also fetches all of
2245 the headers for every selected group on an agentized
2246 server. Depending on the volume of headers, the initial
2247 fetch session could take hours.
2250 @node [7.4], , [7.3], FAQ 7 - Gnus in a dial-up environment
2252 @subsubheading Question 7.4:
2254 How to tell Gnus not to try to send mails / postings
2260 All you've got to do is to tell Gnus when you are online
2261 (plugged) and when you are offline (unplugged), the rest
2262 works automatically. You can toggle plugged/unplugged
2263 state by saying @samp{J j} in group
2264 buffer. To start Gnus unplugged say @samp{M-x
2265 gnus-unplugged} instead of
2266 @samp{M-x gnus}. Note that for this to
2267 work, the agent must be active.
2271 @node FAQ 8 - Getting help, FAQ 9 - Tuning Gnus, FAQ 7 - Gnus in a dial-up environment, Frequently Asked Questions
2273 @subsection Getting help
2276 * [8.1]:: How to find information and help inside Emacs?
2277 * [8.2]:: I can't find anything in the Gnus manual about X (e.g. attachments, PGP, MIME...), is it not documented?
2278 * [8.3]:: Which websites should I know?
2279 * [8.4]:: Which mailing lists and newsgroups are there?
2280 * [8.5]:: Where to report bugs?
2281 * [8.6]:: I need real-time help, where to find it?
2285 @node [8.1], [8.2], FAQ 8 - Getting help, FAQ 8 - Getting help
2287 @subsubheading Question 8.1:
2289 How to find information and help inside Emacs?
2294 The first stop should be the Gnus manual (Say
2295 @samp{C-h i d m Gnus RET} to start the
2296 Gnus manual, then walk through the menus or do a
2297 full-text search with @samp{s}). Then
2298 there are the general Emacs help commands starting with
2299 C-h, type @samp{C-h ? ?} to get a list
2300 of all available help commands and their meaning. Finally
2301 @samp{M-x apropos-command} lets you
2302 search through all available functions and @samp{M-x
2303 apropos} searches the bound variables.
2306 @node [8.2], [8.3], [8.1], FAQ 8 - Getting help
2308 @subsubheading Question 8.2:
2310 I can't find anything in the Gnus manual about X
2311 (e.g. attachments, PGP, MIME...), is it not documented?
2316 There's not only the Gnus manual but also the manuals
2317 for message, emacs-mime, sieve and pgg. Those packages
2318 are distributed with Gnus and used by Gnus but aren't
2319 really part of core Gnus, so they are documented in
2320 different info files, you should have a look in those
2324 @node [8.3], [8.4], [8.2], FAQ 8 - Getting help
2326 @subsubheading Question 8.3:
2328 Which websites should I know?
2333 The two most important ones are the
2334 @uref{http://www.gnus.org,official Gnus website}.
2335 and it's sister site
2336 @uref{http://my.gnus.org,my.gnus.org (MGO)},
2337 hosting an archive of lisp snippets, howtos, a (not
2338 really finished) tutorial and this FAQ.
2341 Tell me about other sites which are interesting.
2344 @node [8.4], [8.5], [8.3], FAQ 8 - Getting help
2346 @subsubheading Question 8.4:
2348 Which mailing lists and newsgroups are there?
2353 There's the newsgroup gnu.emacs.gnus (pull it from
2354 e.g. news.gnus.org) which deals with general questions
2355 and the ding mailing list (ding@@gnus.org) dealing with
2356 development of Gnus. You can read the ding list via
2357 NNTP, too under the name gnus.ding from news.gnus.org.
2360 If you want to stay in the big8,
2361 news.software.newssreaders is also read by some Gnus
2362 users (but chances for qualified help are much better in
2363 the above groups) and if you speak German, there's
2364 de.comm.software.gnus.
2367 @node [8.5], [8.6], [8.4], FAQ 8 - Getting help
2369 @subsubheading Question 8.5:
2371 Where to report bugs?
2376 Say @samp{M-x gnus-bug}, this will start a message to the
2377 @email{bugs@@gnus.org,gnus bug mailing list} including information
2378 about your environment which make it easier to help you.
2381 @node [8.6], , [8.5], FAQ 8 - Getting help
2383 @subsubheading Question 8.6:
2385 I need real-time help, where to find it?
2390 Point your IRC client to irc.my.gnus.org channel
2391 #mygnus. Don't be afraid if people there speak German,
2392 they are willing and capable of switching to
2393 English when people from outside Germany enter.
2397 @node FAQ 9 - Tuning Gnus, FAQ - Glossary, FAQ 8 - Getting help, Frequently Asked Questions
2399 @subsection Tuning Gnus
2402 * [9.1]:: Starting Gnus is really slow, how to speed it up?
2403 * [9.2]:: How to speed up the process of entering a group?
2404 * [9.3]:: Sending mail becomes slower and slower, what's up?
2408 @node [9.1], [9.2], FAQ 9 - Tuning Gnus, FAQ 9 - Tuning Gnus
2410 @subsubheading Question 9.1:
2412 Starting Gnus is really slow, how to speed it up?
2417 The reason for this could be the way Gnus reads it's
2418 active file, see the node "The Active File" in the Gnus
2419 manual for things you might try to speed the process up.
2420 An other idea would be to byte compile your ~/.gnus (say
2421 @samp{M-x byte-compile-file RET ~/.gnus
2422 RET} to do it). Finally, if you have require
2423 statements in your .gnus, you could replace them with
2424 eval-after-load, which loads the stuff not at startup
2425 time, but when it's needed. Say you've got this in your
2431 (add-to-list 'message-syntax-checks '(sender . disabled))
2435 then as soon as you start Gnus, message.el is loaded. If
2440 (eval-after-load "message"
2441 '(add-to-list 'message-syntax-checks '(sender . disabled)))
2445 it's loaded when it's needed.
2448 @node [9.2], [9.3], [9.1], FAQ 9 - Tuning Gnus
2450 @subsubheading Question 9.2:
2452 How to speed up the process of entering a group?
2457 A speed killer is setting the variable
2458 gnus-fetch-old-headers to anything different from nil,
2459 so don't do this if speed is an issue. To speed up
2460 building of summary say
2468 at the bottom of your ~/.gnus, this will make gnus
2469 byte-compile things like
2470 gnus-summary-line-format.
2471 then you could increase the value of gc-cons-threshold
2472 by saying something like
2476 (setq gc-cons-threshold 3500000)
2480 in ~/.emacs. If you don't care about width of CJK
2481 characters or use Gnus 5.10.0 or younger together with a
2482 recent GNU Emacs, you should say
2486 (setq gnus-use-correct-string-widths nil)
2491 in ~/.gnus (thanks to Jesper harder for the last
2492 two suggestions). Finally if you are still using 5.8.8
2493 or 5.9 and experience speed problems with summary
2494 buffer generation, you definitely should update to
2495 5.10.0 since there quite some work on improving it has
2499 @node [9.3], , [9.2], FAQ 9 - Tuning Gnus
2501 @subsubheading Question 9.3:
2503 Sending mail becomes slower and slower, what's up?
2508 The reason could be that you told Gnus to archive the
2509 messages you wrote by setting
2510 gnus-message-archive-group. Try to use a nnml group
2511 instead of an archive group, this should bring you back
2516 @node FAQ - Glossary, , FAQ 9 - Tuning Gnus, Frequently Asked Questions
2518 @subsection Glossary
2523 When the term ~/.gnus is used it just means your Gnus
2524 configuration file. You might as well call it ~/.gnus.el or
2525 specify another name.
2529 In Gnus terminology a back end is a virtual server, a layer
2530 between core Gnus and the real NNTP-, POP3-, IMAP- or
2531 whatever-server which offers Gnus a standardized interface
2532 to functions like "get message", "get Headers" etc.
2536 When the term Emacs is used in this FAQ, it means either GNU
2541 In this FAQ message means a either a mail or a posting to a
2542 Usenet Newsgroup or to some other fancy back end, no matter
2543 of which kind it is.
2547 MUA is an acronym for Mail User Agent, it's the program you
2548 use to read and write e-mails.
2552 NUA is an acronym for News User Agent, it's the program you
2553 use to read and write Usenet news.