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.
36 If you have a Web browser, the official hypertext version is at
37 @uref{http://my.gnus.org/FAQ/,http://my.gnus.org/FAQ/},
38 the Docbook source is available from
39 @uref{http://sourceforge.net/projects/gnus/,http://sourceforge.net}.
42 Please submit features and suggestions to the
43 @uref{mailto:faq-discuss@@my.gnus.org,FAQ discussion list}.
44 The list is protected against junk mail with
45 @uref{http://smarden.org/qconfirm/index.html,qconfirm}. As
46 a subscriber, your submissions will automatically pass. You can
47 also subscribe to the list by sending a blank email to
48 @uref{mailto:faq-discuss-subscribe@@my.gnus.org,faq-discuss-subscribe@@my.gnus.org}
49 and @uref{http://mail1.kens.com/cgi-bin/ezmlm-browse?command=monthbythread%26list=faq-discuss,browse the archive}.
51 @node FAQ - Introduction, FAQ 1 - Installation, Frequently Asked Questions, Frequently Asked Questions
52 @comment node-name, next, previous, up
55 This is the Gnus Frequently Asked Questions list.
57 Gnus is a Usenet Newsreader and Electronic Mail User Agent implemented
58 as a part of Emacs. It's been around in some form for almost a decade
59 now, and has been distributed as a standard part of Emacs for much of
60 that time. Gnus 5 is the latest (and greatest) incarnation. The
61 original version was called GNUS, and was written by Masanobu UMEDA.
62 When autumn crept up in '94, Lars Magne Ingebrigtsen grew bored and
63 decided to rewrite Gnus.
65 Its biggest strength is the fact that it is extremely
66 customizable. It is somewhat intimidating at first glance, but
67 most of the complexity can be ignored until you're ready to take
68 advantage of it. If you receive a reasonable volume of e-mail
69 (you're on various mailing lists), or you would like to read
70 high-volume mailing lists but cannot keep up with them, or read
71 high volume newsgroups or are just bored, then Gnus is what you
74 This FAQ was maintained by Justin Sheehy until March 2002. He
75 would like to thank Steve Baur and Per Abrahamsen for doing a wonderful
76 job with this FAQ before him. We would like to do the same - thanks,
80 If you have a Web browser, the official hypertext version is at:
81 @uref{http://my.gnus.org/FAQ/,http://my.gnus.org/FAQ/}.
82 This version is much nicer than the unofficial hypertext
83 versions that are archived at Utrecht, Oxford, Smart Pages, Ohio
84 State, and other FAQ archives. See the resources question below
85 if you want information on obtaining it in another format.
88 The information contained here was compiled with the assistance
89 of the Gnus development mailing list, and any errors or
90 misprints are the my.gnus.org team's fault, sorry.
94 @node FAQ 1 - Installation, FAQ 2 - Startup / Group buffer, FAQ - Introduction, Frequently Asked Questions
99 * [1.1]:: What is the latest version of Gnus?
100 * [1.2]:: What's new in 5.10.0?
101 * [1.3]:: Where and how to get Gnus?
102 * [1.4]:: What to do with the tarball now?
103 * [1.5]:: Which version of Emacs do I need?
104 * [1.6]:: How do I run Gnus on both Emacs and XEmacs?
109 @node [1.1], [1.2], FAQ 1 - Installation, FAQ 1 - Installation
111 @subheading Question 1.1:
113 What is the latest version of Gnus?
117 Jingle please: Gnus 5.10.0 is released, get it while it's
118 hot! As well as the step in version number is rather
119 small, Gnus 5.10 has tons of new features which you
120 shouldn't miss, however if you are cautious, you might
121 prefer to stay with 5.8.8 respectively 5.9 (they are
122 basically the same) until some bugfix releases are out.
125 @node [1.2], [1.3], [1.1], FAQ 1 - Installation
127 @subheading Question 1.2:
129 What's new in 5.10.0?
133 First of all, you should have a look into the file
134 GNUS-NEWS in the toplevel directory of the Gnus tarball,
135 there the most important changes are listed. Here's a
136 short list of the changes I find especially
137 important/interesting:
145 Major rewrite of the Gnus agent, Gnus agent is now
149 Many new article washing functions for dealing with
150 ugly formatted articles.
156 message-utils now included in Gnus.
159 New format specifiers for summary lines, e.g. %B for
160 a complex trn-style thread tree.
165 @node [1.3], [1.4], [1.2], FAQ 1 - Installation
167 @subheading Question 1.3:
169 Where and how to get Gnus?
173 The latest released version of Gnus isn't included in
174 Emacs 21 and until now it also isn't available through the
175 package system of XEmacs 21.4, therefor you should get the
177 @uref{http://www.gnus.org/dist/gnus.tar.gz,http://www.gnus.org/dist/gnus.tar.gz}
178 or via anonymous FTP from
179 @uref{ftp://ftp.gnus.org/pub/gnus/gnus.tar.gz,ftp://ftp.gnus.org/pub/gnus/gnus.tar.gz}.
182 @node [1.4], [1.5], [1.3], FAQ 1 - Installation
184 @subheading Question 1.4:
186 What to do with the tarball now?
191 Untar it via @samp{tar xvzf gnus.tar.gz} and do the common
192 @samp{./configure; make; make install} circle.
193 (under MS-Windows either get the Cygwin environment from
194 @uref{http://www.cygwin.com,http://www.cygwin.com}
195 which allows you to do what's described above or unpack the
196 tarball with some packer (e.g. Winace from
197 @uref{http://www.winace.com,http://www.winace.com})
198 and use the batch-file make.bat included in the tarball to install
199 Gnus. If you don't want to (or aren't allowed to) install Gnus
200 system-wide, you can install it in your home directory and add the
201 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/"))
214 Make sure that you don't have any gnus related stuff
215 before this line, on MS Windows use something like
216 "C:/path/to/lisp" (yes, "/").
219 @node [1.5], [1.6], [1.4], FAQ 1 - Installation
221 @subheading Question 1.5:
223 Which version of Emacs do I need?
227 Gnus 5.10.0 requires an Emacs version that is greater
228 than or equal to Emacs 20.3 or XEmacs 20.1.
231 @node [1.6], , [1.5], FAQ 1 - Installation
233 @subheading Question 1.6:
235 How do I run Gnus on both Emacs and XEmacs?
239 You can't use the same copy of Gnus in both as the Lisp
240 files are byte-compiled to a format which is different
241 depending on which Emacs did the compilation. Get one copy
242 of Gnus for Emacs and one for XEmacs.
245 @node FAQ 2 - Startup / Group buffer, FAQ 3 - Getting messages, FAQ 1 - Installation, Frequently Asked Questions
247 @section Startup / Group buffer
250 * [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?
251 * [2.2]:: Gnus doesn't remember which groups I'm subscribed to, what's this?
252 * [2.3]:: How to change the format of the lines in Group buffer?
253 * [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?
254 * [2.5]:: How to manually sort the groups in Group buffer? How to sort the groups in a topic?
258 @node [2.1], [2.2], FAQ 2 - Startup / Group buffer, FAQ 2 - Startup / Group buffer
260 @subheading Question 2.1:
262 Every time I start Gnus I get a message "Gnus auto-save
263 file exists. Do you want to read it?", what does this mean
264 and how to prevent it?
269 This message means that the last time you used Gnus, it
270 wasn't properly exited and therefor couldn't write its
271 informations to disk (e.g. which messages you read), you
272 are now asked if you want to restore those informations
273 from the auto-save file.
276 To prevent this message make sure you exit Gnus
277 via @samp{q} in group buffer instead of
281 @node [2.2], [2.3], [2.1], FAQ 2 - Startup / Group buffer
286 Gnus doesn't remember which groups I'm subscribed to,
292 You get the message described in the q/a pair above while
293 starting Gnus, right? It's an other symptom for the same
294 problem, so read the answer above.
297 @node [2.3], [2.4], [2.2], FAQ 2 - Startup / Group buffer
299 @subheading Question 2.3:
301 How to change the format of the lines in Group buffer?
306 You've got to tweak the value of the variable
307 gnus-group-line-format. See the manual node "Group Line
308 Specification" for information on how to do this. An
309 example for this (guess from whose .gnus :-)):
314 (setq gnus-group-line-format "%P%M%S[%5t]%5y : %(%g%)\n")
319 @node [2.4], [2.5], [2.3], FAQ 2 - Startup / Group buffer
321 @subheading Question 2.4:
323 My group buffer becomes a bit crowded, is there a way to
324 sort my groups into categories so I can easier browse
330 Gnus offers the topic mode, it allows you to sort your
331 groups in, well, topics, e.g. all groups dealing with
332 Linux under the topic linux, all dealing with music under
333 the topic music and all dealing with scottish music under
334 the topic scottish which is a subtopic of music.
337 To enter topic mode, just hit t while in Group buffer. Now
338 you can use @samp{T n} to create a topic
339 at point and @samp{T m} to move a group to
340 a specific topic. For more commands see the manual or the
341 menu. You might want to include the %P specifier at the
342 beginning of your gnus-group-line-format variable to have
343 the groups nicely indented.
346 @node [2.5], , [2.4], FAQ 2 - Startup / Group buffer
348 @subheading Question 2.5:
350 How to manually sort the groups in Group buffer? How to
351 sort the groups in a topic?
356 Move point over the group you want to move and
357 hit @samp{C-k}, now move point to the
358 place where you want the group to be and
362 @node FAQ 3 - Getting messages, FAQ 4 - Reading messages, FAQ 2 - Startup / Group buffer, Frequently Asked Questions
364 @section Getting messages
367 * [3.1]:: I just installed Gnus, started it via M-x gnus but it only says "nntp (news) open error", what to do?
368 * [3.2]:: I'm working under Windows and have no idea what ~/.gnus means.
369 * [3.3]:: My news server requires authentication, how to store user name and password on disk?
370 * [3.4]:: Gnus seems to start up OK, but I can't find out how to subscribe to a group.
371 * [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?
372 * [3.6]:: I want Gnus to fetch news from several servers, is this possible?
373 * [3.7]:: And how about local spool files?
374 * [3.8]:: OK, reading news works now, but I want to be able to read my mail with Gnus, too. How to do it?
375 * [3.9]:: And what about IMAP?
376 * [3.10]:: At the office we use one of those MS Exchange servers, can I use Gnus to read my mail from it?
377 * [3.11]:: Can I tell Gnus not to delete the mails on the server it retrieves via POP3?
381 @node [3.1], [3.2], FAQ 3 - Getting messages, FAQ 3 - Getting messages
383 @subheading Question 3.1:
385 I just installed Gnus, started it via
387 but it only says "nntp (news) open error", what to do?
392 You've got to tell Gnus where to fetch the news from. Read
393 the documentation for information on how to do this. As a
394 first start, put those lines in ~/.gnus:
399 (setq gnus-select-method '(nntp "news.yourprovider.net"))
400 (setq user-mail-address "you@@yourprovider.net")
401 (setq user-full-name "Your Name")
406 @node [3.2], [3.3], [3.1], FAQ 3 - Getting messages
408 @subheading Question 3.2:
410 I'm working under Windows and have no idea what ~/.gnus means.
415 The ~/ means the home directory where Gnus and Emacs look
416 for the configuration files. However, you don't really
417 need to know what this means, it suffices that Emacs knows
418 what it means :-) You can type
419 @samp{C-x C-f ~/.gnus RET }
420 (yes, with the forward slash, even on Windows), and
421 Emacs will open the right file for you. (It will most
422 likely be new, and thus empty.)
423 However, I'd discourage you from doing so, since the
424 directory Emacs chooses will most certainly not be what
425 you want, so let's do it the correct way.
426 The first thing you've got to do is to
427 create a suitable directory (no blanks in directory name
428 please) e.g. c:\myhome. Then you must set the environment
429 variable HOME to this directory. To do this under Win9x
430 or Me include the line
440 in your autoexec.bat and reboot. Under NT, 2000 and XP,
441 hit Winkey+Pause/Break to enter system options (if it
442 doesn't work, go to Control Panel -> System). There you'll
443 find the possibility to set environment variables, create
444 a new one with name HOME and value C:\myhome, a reboot is
448 Now to create ~/.gnus, say
449 @samp{C-x C-f ~/.gnus RET C-x C-s}.
453 @node [3.3], [3.4], [3.2], FAQ 3 - Getting messages
455 @subheading Question 3.3:
457 My news server requires authentication, how to store
458 user name and password on disk?
463 Create a file ~/.authinfo which includes for each server a line like this
467 machine news.yourprovider.net login YourUserName password YourPassword
472 Make sure that the file isn't readable to others if you
473 work on a OS which is capable of doing so. (Under Unix
477 chmod 600 ~/.authinfo
484 @node [3.4], [3.5], [3.3], FAQ 3 - Getting messages
486 @subheading Question 3.4:
488 Gnus seems to start up OK, but I can't find out how to
489 subscribe to a group.
494 If you know the name of the group say @samp{U
495 name.of.group RET} in group buffer (use the
496 tab-completion Luke). Otherwise hit ^ in group buffer,
497 this brings you to the server buffer. Now place point (the
498 cursor) over the server which carries the group you want,
499 hit @samp{RET}, move point to the group
500 you want to subscribe to and say @samp{u}
504 @node [3.5], [3.6], [3.4], FAQ 3 - Getting messages
506 @subheading Question 3.5:
508 Gnus doesn't show all groups / Gnus says I'm not allowed to
509 post on this server as well as I am, what's that?
514 Some providers allow restricted anonymous access and full
515 access only after authorization. To make Gnus send authinfo
516 to those servers append
525 to the line for those servers in ~/.authinfo.
528 @node [3.6], [3.7], [3.5], FAQ 3 - Getting messages
530 @subheading Question 3.6:
532 I want Gnus to fetch news from several servers, is this possible?
537 Of course. You can specify more sources for articles in the
538 variable gnus-secondary-select-methods. Add something like
544 (add-to-list 'gnus-secondary-select-methods '(nntp "news.yourSecondProvider.net"))
545 (add-to-list 'gnus-secondary-select-methods '(nntp "news.yourThirdProvider.net"))
550 @node [3.7], [3.8], [3.6], FAQ 3 - Getting messages
552 @subheading Question 3.7:
554 And how about local spool files?
559 No problem, this is just one more select method called
560 nnspool, so you want this:
565 (add-to-list 'gnus-secondary-select-methods '(nnspool ""))
570 Or this if you don't want an NNTP Server as primary news source:
575 (setq gnus-select-method '(nnspool ""))
580 Gnus will look for the spool file in /usr/spool/news, if you
581 want something different, change the line above to something like this:
586 (add-to-list 'gnus-secondary-select-methods
587 '(nnspool "" (nnspool-directory "/usr/local/myspoolddir")))
592 This sets the spool directory for this server only.
593 You might have to specify more stuff like the program used
594 to post articles, see the Gnus manual on how to do this.
597 @node [3.8], [3.9], [3.7], FAQ 3 - Getting messages
599 @subheading Question 3.8:
601 OK, reading news works now, but I want to be able to read my mail
602 with Gnus, too. How to do it?
607 That's a bit harder since there are many possible sources
608 for mail, many possible ways for storing mail and many
609 different ways for sending mail. The most common cases are
610 these: 1: You want to read your mail from a pop3 server and
611 send them directly to a SMTP Server 2: Some program like
612 fetchmail retrieves your mail and stores it on disk from
613 where Gnus shall read it. Outgoing mail is sent by
614 Sendmail, Postfix or some other MTA. Sometimes, you even
615 need a combination of the above cases.
618 However, the first thing to do is to tell Gnus in which way
619 it should store the mail, in Gnus terminology which back end
620 to use. Gnus supports many different back ends, the most
621 commonly used one is nnml. It stores every mail in one file
622 and is therefor quite fast. However you might prefer a one
623 file per group approach if your file system has problems with
624 many small files, the nnfolder back end is then probably the
625 choice for you. To use nnml add the following to ~/.gnus:
630 (add-to-list 'gnus-secondary-select-methods '(nnml ""))
635 As you might have guessed, if you want nnfolder, it's
640 (add-to-list 'gnus-secondary-select-methods '(nnfolder ""))
645 Now we need to tell Gnus, where to get it's mail from. If
646 it's a POP3 server, then you need something like this:
651 (eval-after-load "mail-source"
652 '(add-to-list 'mail-sources '(pop :server "pop.YourProvider.net"
654 :password "yourPassword"))
659 Make sure ~/.gnus isn't readable to others if you store
660 your password there. If you want to read your mail from a
661 traditional spool file on your local machine, it's
666 (eval-after-load "mail-source"
667 '(add-to-list 'mail-sources '(file :path "/path/to/spool/file"))
672 If it's a Maildir, with one file per message as used by
673 postfix, Qmail and (optionally) fetchmail it's
678 (eval-after-load "mail-source"
679 '(add-to-list 'mail-sources '(maildir :path "/path/to/Maildir/"
680 :subdirs ("cur" "new")))
685 And finally if you want to read your mail from several files
686 in one directory, for example because procmail already split your
692 (eval-after-load "mail-source"
693 '(add-to-list 'mail-sources '(directory :path "/path/to/procmail-dir/"
699 Where :suffix ".prcml" tells Gnus only to use files with the
703 OK, now you only need to tell Gnus how to send mail. If you
704 want to send mail via sendmail (or whichever MTA is playing
705 the role of sendmail on your system), you don't need to do
706 anything. However, if you want to send your mail to an
707 SMTP Server you need the following in your ~/.gnus
712 (setq send-mail-function 'smtpmail-send-it)
713 (setq message-send-mail-function 'smtpmail-send-it)
714 (setq smtpmail-default-smtp-server "smtp.yourProvider.net")
719 @node [3.9], [3.10], [3.8], FAQ 3 - Getting messages
721 @subheading Question 3.9:
728 There are two ways of using IMAP with Gnus. The first one is
729 to use IMAP like POP3, that means Gnus fetches the mail from
730 the IMAP server and stores it on disk. If you want to do
731 this (you don't really want to do this) add the following to
737 (add-to-list 'mail-sources '(imap :server "mail.mycorp.com"
741 :authentication login
743 :fetchflag "\\Seen"))
748 You might have to tweak the values for stream and/or
749 authentification, see the Gnus manual node "Mail Source
750 Specifiers" for possible values.
753 If you want to use IMAP the way it's intended, you've got to
754 follow a different approach. You've got to add the nnimap
755 back end to your select method and give the information
756 about the server there.
761 (add-to-list 'gnus-secondary-select-methods
762 '(nnimap "Give the baby a name"
763 (nnimap-address "imap.yourProvider.net")
765 (nnimap-list-pattern "archive.*")))
770 Again, you might have to specify how to authenticate to the
771 server if Gnus can't guess the correct way, see the Manual
772 Node "IMAP" for detailed information.
775 @node [3.10], [3.11], [3.9], FAQ 3 - Getting messages
777 @subheading Question 3.10:
779 At the office we use one of those MS Exchange servers, can I use
780 Gnus to read my mail from it?
785 Offer your administrator a pair of new running shoes for
786 activating IMAP on the server and follow the instructions
790 @node [3.11], , [3.10], FAQ 3 - Getting messages
792 @subheading Question 3.11:
794 Can I tell Gnus not to delete the mails on the server it
800 First of all, that's not the way POP3 is intended to work,
801 if you have the possibility, you should use the IMAP
802 Protocol if you want your messages to stay on the
803 server. Nevertheless there might be situations where you
804 need the feature, but sadly Gnus itself has no predefined
805 functionality to do so.
808 However this is Gnus county so there are possibilities to
809 achieve what you want. The easiest way is to get an external
810 program which retrieves copies of the mail and stores them
811 on disk, so Gnus can read it from there. On Unix systems you
812 could use e.g. fetchmail for this, on MS Windows you can use
813 Hamster, an excellent local news and mail server.
816 The other solution would be, to replace the method Gnus
817 uses to get mail from POP3 servers by one which is capable
818 of leaving the mail on the server. If you use XEmacs, get
819 the package mail-lib, it includes an enhanced pop3.el,
820 look in the file, there's documentation on how to tell
821 Gnus to use it and not to delete the retrieved mail. For
822 GNU Emacs look for the file epop3.el which can do the same
823 (If you know the home of this file, please send me an
824 e-mail). You can also tell Gnus to use an external program
825 (e.g. fetchmail) to fetch your mail, see the info node
826 "Mail Source Specifiers" in the Gnus manual on how to do
831 @node FAQ 4 - Reading messages, FAQ 5 - Composing messages, FAQ 3 - Getting messages, Frequently Asked Questions
833 @section Reading messages
836 * [4.1]:: When I enter a group, all read messages are gone. How to view them again?
837 * [4.2]:: How to tell Gnus to show an important message every time I enter a group, even when it's read?
838 * [4.3]:: How to view the headers of a message?
839 * [4.4]:: How to view the raw unformatted message?
840 * [4.5]:: How can I change the headers Gnus displays by default at the top of the article buffer?
841 * [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?
842 * [4.7]:: Can I use some other browser than w3 to render my HTML-mails?
843 * [4.8]:: Is there anything I can do to make poorly formatted mails more readable?
844 * [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?
845 * [4.10]:: How can I disable threading in some (e.g. mail-) groups, or set other variables specific for some groups?
846 * [4.11]:: Can I highlight messages written by me and follow-ups to those?
847 * [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?
848 * [4.13]:: I don't like the layout of summary and article buffer, how to change it? Perhaps even a three pane display?
849 * [4.14]:: I don't like the way the Summary buffer looks, how to tweak it?
850 * [4.15]:: How to split incoming mails in several groups?
854 @node [4.1], [4.2], FAQ 4 - Reading messages, FAQ 4 - Reading messages
856 @subheading Question 4.1:
858 When I enter a group, all read messages are gone. How to view them again?
863 If you enter the group by saying
865 in summary buffer with point over the group, only unread and ticked messages are loaded. Say
867 instead to load all available messages. If you want only the e.g. 300 newest say
871 Loading only unread messages can be annoying if you have threaded view enabled, say
876 (setq gnus-fetch-old-headers 'some)
882 in ~/.gnus to load enough old articles to prevent teared threads, replace 'some with t to load
883 all articles (Warning: Both settings enlarge the amount of data which is
884 fetched when you enter a group and slow down the process of entering a group).
887 If you already use Gnus 5.10.0, you can say
889 In summary buffer to load the last N messages, this feature is not available in 5.8.8
892 If you don't want all old messages, but the parent of the message you're just reading,
893 you can say @samp{^}, if you want to retrieve the whole thread
894 the message you're just reading belongs to, @samp{A T} is your friend.
897 @node [4.2], [4.3], [4.1], FAQ 4 - Reading messages
899 @subheading Question 4.2:
901 How to tell Gnus to show an important message every time I
902 enter a group, even when it's read?
907 You can tick important messages. To do this hit
908 @samp{u} while point is in summary buffer
909 over the message. When you want to remove the mark, hit
910 either @samp{d} (this deletes the tick
911 mark and set's unread mark) or @samp{M c}
912 (which deletes all marks for the message).
915 @node [4.3], [4.4], [4.2], FAQ 4 - Reading messages
917 @subheading Question 4.3:
919 How to view the headers of a message?
925 to show all headers, one more
930 @node [4.4], [4.5], [4.3], FAQ 4 - Reading messages
932 @subheading Question 4.4:
934 How to view the raw unformatted message?
941 to show the raw message
943 returns to normal view.
946 @node [4.5], [4.6], [4.4], FAQ 4 - Reading messages
948 @subheading Question 4.5:
950 How can I change the headers Gnus displays by default at
951 the top of the article buffer?
956 The variable gnus-visible-headers controls which headers
957 are shown, its value is a regular expression, header lines
958 which match it are shown. So if you want author, subject,
959 date, and if the header exists, Followup-To and MUA / NUA
965 (setq gnus-visible-headers
966 "^\\(From:\\|Subject:\\|Date:\\|Followup-To:\\|X-Newsreader:\\|User-Agent:\\|X-Mailer:\\)")
971 @node [4.6], [4.7], [4.5], FAQ 4 - Reading messages
973 @subheading Question 4.6:
975 I'd like Gnus NOT to render HTML-mails but show me the
976 text part if it's available. How to do it?
986 (eval-after-load "mm-decode"
988 (add-to-list 'mm-discouraged-alternatives "text/html")
989 (add-to-list 'mm-discouraged-alternatives "text/richtext")))
994 in ~/.gnus. If you don't want HTML rendered, even if there's no text alternative add
999 (setq mm-automatic-display (remove "text/html" mm-automatic-display))
1007 @node [4.7], [4.8], [4.6], FAQ 4 - Reading messages
1009 @subheading Question 4.7:
1011 Can I use some other browser than w3 to render my HTML-mails?
1016 Only if you use Gnus 5.10.0 or younger. In this case you've got the
1017 choice between w3, w3m, links, lynx and html2text, which
1018 one is used can be specified in the variable
1019 mm-text-html-renderer, so if you want links to render your
1025 (setq mm-text-html-renderer 'links)
1030 @node [4.8], [4.9], [4.7], FAQ 4 - Reading messages
1032 @subheading Question 4.8:
1034 Is there anything I can do to make poorly formatted mails
1040 Gnus offers you several functions to "wash" incoming mail,
1041 you can find them if you browse through the menu, item Article->Washing. The most
1042 interesting ones are probably "Wrap long lines" (
1046 ) and "Outlook Deuglify" which repairs the dumb quoting used
1047 by many users of Microsoft products (
1048 @samp{W Y f} gives you full deuglify.
1049 See @samp{W Y C-h} or
1050 have a look at the menus for other deuglifications).
1051 Outlook deuglify is only available since Gnus 5.10.0.
1054 @node [4.9], [4.10], [4.8], FAQ 4 - Reading messages
1056 @subheading Question 4.9:
1058 Is there a way to automatically ignore posts by specific
1059 authors or with specific words in the subject? And can I
1060 highlight more interesting ones in some way?
1065 You want Scoring. Scoring means, that you define rules
1066 which assign each message an integer value. Depending on
1067 the value the message is highlighted in summary buffer (if
1068 it's high, say +2000) or automatically marked read (if the
1069 value is low, say -800) or some other action happens.
1072 There are basically three ways of setting up rules which assign
1073 the scoring-value to messages. The first and easiest way is to set
1074 up rules based on the article you are just reading. Say you're
1075 reading a message by a guy who always writes nonsense and you want
1076 to ignore his messages in the future. Hit
1077 @samp{L}, to set up a rule which lowers the score.
1078 Now Gnus asks you which the criteria for lowering the Score shall
1079 be. Hit @samp{?} twice to see all possibilities,
1080 we want @samp{a} which means the author (the from
1081 header). Now Gnus wants to know which kind of matching we want.
1082 Hit either @samp{e} for an exact match or
1083 @samp{s} for substring-match and delete afterwards
1084 everything but the name to score down all authors with the given
1085 name no matter which email address is used. Now you need to tell
1086 Gnus when to apply the rule and how long it should last, hit e.g.
1087 @samp{p} to apply the rule now and let it last
1088 forever. If you want to raise the score instead of lowering it say
1089 @samp{I} instead of @samp{L}.
1092 You can also set up rules by hand. To do this say @samp{V
1093 f} in summary buffer. Then you are asked for the name
1094 of the score file, it's name.of.group.SCORE for rules valid in
1095 only one group or all.Score for rules valid in all groups. See the
1096 Gnus manual for the exact syntax, basically it's one big list
1097 whose elements are lists again. the first element of those lists
1098 is the header to score on, then one more list with what to match,
1099 which score to assign, when to expire the rule and how to do the
1100 matching. If you find me very interesting, you could e.g. add the
1101 following to your all.Score:
1106 (("references" ("hschmi22.userfqdn.rz-online.de" 500 nil s))
1107 ("message-id" ("hschmi22.userfqdn.rz-online.de" 999 nil s)))
1112 This would add 999 to the score of messages written by me
1113 and 500 to the score of messages which are a (possibly
1114 indirect) answer to a message written by me. Of course
1115 nobody with a sane mind would do this :-)
1118 The third alternative is adaptive scoring. This means Gnus
1119 watches you and tries to find out what you find
1120 interesting and what annoying and sets up rules
1121 which reflect this. Adaptive scoring can be a huge help
1122 when reading high traffic groups. If you want to activate
1123 adaptive scoring say
1128 (setq gnus-use-adaptive-scoring t)
1136 @node [4.10], [4.11], [4.9], FAQ 4 - Reading messages
1138 @subheading Question 4.10:
1140 How can I disable threading in some (e.g. mail-) groups, or
1141 set other variables specific for some groups?
1146 While in group buffer move point over the group and hit
1147 @samp{G c}, this opens a buffer where you
1148 can set options for the group. At the bottom of the buffer
1149 you'll find an item that allows you to set variables
1150 locally for the group. To disable threading enter
1151 gnus-show-threads as name of variable and nil as
1152 value. Hit button done at the top of the buffer when
1156 @node [4.11], [4.12], [4.10], FAQ 4 - Reading messages
1158 @subheading Question 4.11:
1160 Can I highlight messages written by me and follow-ups to
1166 Stop those "Can I ..." questions, the answer is always yes
1167 in Gnus Country :-). It's a three step process: First we
1168 make faces (specifications of how summary-line shall look
1169 like) for those postings, then we'll give them some
1170 special score and finally we'll tell Gnus to use the new
1171 faces. You can find detailed instructions on how to do it on
1172 @uref{http://my.gnus.org/Members/dzimmerm/HowTo%2C2002-07-25%2C1027619165012198456/view,my.gnus.org}
1175 @node [4.12], [4.13], [4.11], FAQ 4 - Reading messages
1177 @subheading Question 4.12:
1179 The number of total messages in a group which Gnus
1180 displays in group buffer is by far to high, especially in
1181 mail groups. Is this a bug?
1186 No, that's a matter of design of Gnus, fixing this would
1187 mean reimplementation of major parts of Gnus'
1188 back ends. Gnus thinks "highest-article-number -
1189 lowest-article-number = total-number-of-articles". This
1190 works OK for Usenet groups, but if you delete and move
1191 many messages in mail groups, this fails. To cure the
1192 symptom, enter the group via @samp{C-u RET}
1193 (this makes Gnus get all messages), then
1194 hit @samp{M P b} to mark all messages and
1195 then say @samp{B m name.of.group} to move
1196 all messages to the group they have been in before, they
1197 get new message numbers in this process and the count is
1198 right again (until you delete and move your mail to other
1202 @node [4.13], [4.14], [4.12], FAQ 4 - Reading messages
1204 @subheading Question 4.13:
1206 I don't like the layout of summary and article buffer, how
1207 to change it? Perhaps even a three pane display?
1212 You can control the windows configuration by calling the
1213 function gnus-add-configuration. The syntax is a bit
1214 complicated but explained very well in the manual node
1215 "Window Layout". Some popular examples:
1218 Instead 25% summary 75% article buffer 35% summary and 65%
1219 article (the 1.0 for article means "take the remaining
1225 (gnus-add-configuration '(article (vertical 1.0 (summary .35 point) (article 1.0))))
1230 A three pane layout, Group buffer on the left, summary
1231 buffer top-right, article buffer bottom-right:
1236 (gnus-add-configuration
1242 (summary 0.25 point)
1244 (gnus-add-configuration
1250 (summary 1.0 point)))))
1255 @node [4.14], [4.15], [4.13], FAQ 4 - Reading messages
1257 @subheading Question 4.14:
1259 I don't like the way the Summary buffer looks, how to tweak it?
1264 You've got to play around with the variable
1265 gnus-summary-line-format. It's value is a string of
1266 symbols which stand for things like author, date, subject
1267 etc. A list of the available specifiers can be found in the
1268 manual node "Summary Buffer Lines" and the often forgotten
1269 node "Formatting Variables" and it's sub-nodes. There
1270 you'll find useful things like positioning the cursor and
1271 tabulators which allow you a summary in table form, but
1272 sadly hard tabulators are broken in 5.8.8.
1275 Since 5.10.0, Gnus offers you some very nice new specifiers,
1276 e.g. %B which draws a thread-tree and %&user-date which
1277 gives you a date where the details are dependent of the
1278 articles age. Here's an example which uses both:
1283 (setq gnus-summary-line-format ":%U%R %B %s %-60=|%4L |%-20,20f |%&user-date; \n")
1293 :O Re: [Richard Stallman] rfc2047.el | 13 |Lars Magne Ingebrigt |Sat 23:06
1294 :O Re: Revival of the ding-patches list | 13 |Lars Magne Ingebrigt |Sat 23:12
1295 :R > Re: Find correct list of articles for a gro| 25 |Lars Magne Ingebrigt |Sat 23:16
1296 :O \-> ... | 21 |Kai Grossjohann | 0:01
1297 :R > Re: Cry for help: deuglify.el - moving stuf| 28 |Lars Magne Ingebrigt |Sat 23:34
1298 :O \-> ... | 115 |Raymond Scholz | 1:24
1299 :O \-> ... | 19 |Lars Magne Ingebrigt |15:33
1300 :O Slow mailing list | 13 |Lars Magne Ingebrigt |Sat 23:49
1301 :O Re: `@@' mark not documented | 13 |Lars Magne Ingebrigt |Sat 23:50
1302 :R > Re: Gnus still doesn't count messages prope| 23 |Lars Magne Ingebrigt |Sat 23:57
1303 :O \-> ... | 18 |Kai Grossjohann | 0:35
1304 :O \-> ... | 13 |Lars Magne Ingebrigt | 0:56
1309 @node [4.15], , [4.14], FAQ 4 - Reading messages
1311 @subheading Question 4.15:
1313 How to split incoming mails in several groups?
1318 Gnus offers two possibilities for splitting mail, the easy
1319 nnmail-split-methods and the more powerful Fancy Mail
1320 Splitting. I'll only talk about the first one, refer to
1321 the manual, node "Fancy Mail Splitting" for the latter.
1324 The value of nnmail-split-methods is a list, each element
1325 is a list which stands for a splitting rule. Each rule has
1326 the form "group where matching articles should go to",
1327 "regular expression which has to be matched", the first
1328 rule which matches wins. The last rule must always be a
1329 general rule (regular expression .*) which denotes where
1330 articles should go which don't match any other rule. If
1331 the folder doesn't exist yet, it will be created as soon
1332 as an article lands there. By default the mail will be
1333 send to all groups whose rules match. If you
1334 don't want that (you probably don't want), say
1339 (setq nnmail-crosspost nil)
1347 An example might be better than thousand words, so here's
1348 my nnmail-split-methods. Note that I send duplicates in a
1349 special group and that the default group is spam, since I
1350 filter all mails out which are from some list I'm
1351 subscribed to or which are addressed directly to me
1352 before. Those rules kill about 80% of the Spam which
1353 reaches me (Email addresses are changed to prevent spammers
1359 (setq nnmail-split-methods
1360 '(("duplicates" "^Gnus-Warning:.*duplicate")
1361 ("XEmacs-NT" "^\\(To:\\|CC:\\).*localpart@@xemacs.bla.*")
1362 ("Gnus-Tut" "^\\(To:\\|CC:\\).*localpart@@socha.bla.*")
1363 ("tcsh" "^\\(To:\\|CC:\\).*localpart@@mx.gw.bla.*")
1364 ("BAfH" "^\\(To:\\|CC:\\).*localpart@@.*uni-muenchen.bla.*")
1365 ("Hamster-src" "^\\(CC:\\|To:\\).*hamster-sourcen@@yahoogroups.\\(de\\|com\\).*")
1366 ("Tagesschau" "^From: tagesschau <localpart@@www.tagesschau.bla>$")
1367 ("Replies" "^\\(CC:\\|To:\\).*localpart@@Frank-Schmitt.bla.*")
1368 ("EK" "^From:.*\\(localpart@@privateprovider.bla\\|localpart@@workplace.bla\\).*")
1369 ("Spam" "^Content-Type:.*\\(ks_c_5601-1987\\|EUC-KR\\|big5\\|iso-2022-jp\\).*")
1370 ("Spam" "^Subject:.*\\(This really work\\|XINGA\\|ADV:\\|XXX\\|adult\\|sex\\).*")
1371 ("Spam" "^Subject:.*\\(\=\?ks_c_5601-1987\?\\|\=\?euc-kr\?\\|\=\?big5\?\\).*")
1372 ("Spam" "^X-Mailer:\\(.*BulkMailer.*\\|.*MIME::Lite.*\\|\\)")
1373 ("Spam" "^X-Mailer:\\(.*CyberCreek Avalanche\\|.*http\:\/\/GetResponse\.com\\)")
1374 ("Spam" "^From:.*\\(verizon\.net\\|prontomail\.com\\|money\\|ConsumerDirect\\).*")
1375 ("Spam" "^Delivered-To: GMX delivery to spamtrap@@gmx.bla$")
1376 ("Spam" "^Received: from link2buy.com")
1377 ("Spam" "^CC: .*azzrael@@t-online.bla")
1378 ("Spam" "^X-Mailer-Version: 1.50 BETA")
1379 ("Uni" "^\\(CC:\\|To:\\).*localpart@@uni-koblenz.bla.*")
1380 ("Inbox" "^\\(CC:\\|To:\\).*\\(my\ name\\|address@@one.bla\\|adress@@two.bla\\)")
1387 @node FAQ 5 - Composing messages, FAQ 6 - Old messages, FAQ 4 - Reading messages, Frequently Asked Questions
1389 @section Composing messages
1392 * [5.1]:: What are the basic commands I need to know for sending mail and postings?
1393 * [5.2]:: How to enable automatic word-wrap when composing messages?
1394 * [5.3]:: How to set stuff like From, Organization, Reply-To, signature...?
1395 * [5.4]:: Can I set things like From, Signature etc group based on the group I post too?
1396 * [5.5]:: Is there a spell-checker? Perhaps even on-the-fly spell-checking?
1397 * [5.6]:: Can I set the dictionary based on the group I'm posting to?
1398 * [5.7]:: Is there some kind of address-book, so I needn't remember all those email addresses?
1399 * [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?
1400 * [5.9]:: Sometimes I accidentally hit r instead of f in newsgroups. Can Gnus warn me, when I'm replying by mail in newsgroups?
1401 * [5.10]:: How to tell Gnus not to generate a sender header?
1402 * [5.11]:: I want gnus to locally store copies of my send mail and news, how to do it?
1403 * [5.12]:: People tell me my Message-IDs are not correct, why aren't they and how to fix it?
1407 @node [5.1], [5.2], FAQ 5 - Composing messages, FAQ 5 - Composing messages
1409 @subheading Question 5.1:
1411 What are the basic commands I need to know for sending mail and postings?
1416 To start composing a new mail hit @samp{m}
1417 either in Group or Summary buffer, for a posting, it's
1418 either @samp{a} in Group buffer and
1419 filling the Newsgroups header manually
1420 or @samp{a} in the Summary buffer of the
1421 group where the posting shall be send to. Replying by mail
1423 @samp{r} if you don't want to cite the
1424 author, or import the cited text manually and
1425 @samp{R} to cite the text of the original
1426 message. For a follow up to a newsgroup, it's
1427 @samp{f} and @samp{F}
1428 (analog to @samp{r} and
1432 Enter new headers above the line saying "--text follows
1433 this line--", enter the text below the line. When ready
1434 hit @samp{C-c C-c}, to send the message,
1435 if you want to finish it later hit @samp{C-c
1436 C-d} to save it in the drafts group, where you
1437 can start editing it again by saying @samp{D
1441 @node [5.2], [5.3], [5.1], FAQ 5 - Composing messages
1443 @subheading Question 5.2:
1445 How to enable automatic word-wrap when composing messages?
1455 (add-hook 'message-mode-hook
1457 (setq fill-column 72)
1458 (turn-on-auto-fill)))
1463 in ~/.gnus. You can reformat a paragraph by hitting
1464 @samp{M-q} (as usual)
1467 @node [5.3], [5.4], [5.2], FAQ 5 - Composing messages
1469 @subheading Question 5.3:
1471 How to set stuff like From, Organization, Reply-To, signature...?
1476 There are other ways, but you should use posting styles
1477 for this. (See below why).
1478 This example should make the syntax clear:
1483 (setq gnus-posting-styles
1485 (name "Frank Schmitt")
1486 (address "me@@there.bla")
1487 (organization "Hamme net, kren mer och nimmi")
1488 (signature-file "~/.signature")
1489 ("X-SampleHeader" "foobar")
1490 (eval (setq some-variable "Foo bar")))))
1495 The ".*" means that this settings are the default ones
1496 (see below), valid values for the first element of the
1497 following lists are signature, signature-file,
1498 organization, address, name or body. The attribute name
1499 can also be a string. In that case, this will be used as
1500 a header name, and the value will be inserted in the
1501 headers of the article; if the value is `nil', the header
1502 name will be removed. You can also say (eval (foo bar)),
1503 then the function foo will be evaluated with argument bar
1504 and the result will be thrown away.
1507 @node [5.4], [5.5], [5.3], FAQ 5 - Composing messages
1509 @subheading Question 5.4:
1511 Can I set things like From, Signature etc group based on the group I post too?
1516 That's the strength of posting styles. Before, we used ".*"
1517 to set the default for all groups. You can use a regexp
1518 like "^gmane" and the following settings are only applied
1519 to postings you send to the gmane hierarchy, use
1520 ".*binaries" instead and they will be applied to postings
1521 send to groups containing the string binaries in their
1525 You can instead of specifying a regexp specify a function
1526 which is evaluated, only if it returns true, the
1527 corresponding settings take effect. Two interesting
1528 candidates for this are message-news-p which returns t if
1529 the current Group is a newsgroup and the corresponding
1533 Note that all forms that match are applied, that means in
1534 the example below, when I post to
1535 gmane.mail.spam.spamassassin.general, the settings under
1536 ".*" are applied and the settings under message-news-p and
1537 those under "^gmane" and those under
1538 "^gmane\\.mail\\.spam\\.spamassassin\\.general$". Because
1539 of this put general settings at the top and specific ones
1545 (setq gnus-posting-styles
1547 (name "Frank Schmitt")
1548 (organization "Hamme net, kren mer och nimmi")
1549 (signature-file "~/.signature") )
1550 ((message-news-p) ;;Usenet news?
1551 (address "mySpamTrap@@Frank-Schmitt.bla")
1552 ("Reply-To" "hereRealRepliesOnlyPlease@@Frank-Schmitt.bla") )
1553 ((message-mail-p) ;;mail?
1554 (address "usedForMails@@Frank-Schmitt.bla") )
1555 ("^gmane" ;;this is mail, too in fact
1556 (address "usedForMails@@Frank-Schmitt.net")
1558 ("^gmane.mail.spam.spamassassin.general$"
1559 (eval (setq mail-envelope-from "Azzrael@@rz-online.de"))
1560 (address "Azzrael@@rz-online.de")) ))
1565 @node [5.5], [5.6], [5.4], FAQ 5 - Composing messages
1567 @subheading Question 5.5:
1569 Is there a spell-checker? Perhaps even on-the-fly spell-checking?
1574 You can use ispell.el to spell-check stuff in Emacs. So the
1575 first thing to do is to make sure that you've got either
1576 @uref{http://fmg-www.cs.ucla.edu/fmg-members/geoff/ispell.html,ispell}
1577 or @uref{http://aspell.sourceforge.net/,aspell}
1578 installed and in your Path. Then you need
1579 @uref{http://www.kdstevens.com/~stevens/ispell-page.html,ispell.el}
1580 and for on-the-fly spell-checking
1581 @uref{http://www-sop.inria.fr/mimosa/personnel/Manuel.Serrano/flyspell/flyspell.html,flyspell.el}.
1582 Ispell.el is shipped with Gnus Emacs and available through the Emacs package system,
1583 flyspell.el is shipped with Emacs and part of XEmacs text-modes package which is
1584 available through the package system, so there should be no need to install them
1588 Ispell.el assumes you use ispell, if you choose aspell say
1592 (setq ispell-program-name "aspell")
1597 in your Emacs configuration file.
1600 If you want your outgoing messages to be spell-checked, say
1604 (add-hook 'message-send-hook 'ispell-message)
1608 In your ~/.gnus, if you prefer on-the-fly spell-checking say
1612 (add-hook 'message-mode-hook (lambda () (flyspell-mode 1)))
1616 @node [5.6], [5.7], [5.5], FAQ 5 - Composing messages
1618 @subheading Question 5.6:
1620 Can I set the dictionary based on the group I'm posting to?
1625 Yes, say something like
1630 (add-hook 'gnus-select-group-hook
1634 "^de\\." (gnus-group-real-name gnus-newsgroup-name))
1635 (ispell-change-dictionary "deutsch8"))
1637 (ispell-change-dictionary "english")))))
1643 in ~/.gnus. Change "^de\\." and "deutsch8" to something
1644 that suits your needs.
1647 @node [5.7], [5.8], [5.6], FAQ 5 - Composing messages
1649 @subheading Question 5.7:
1651 Is there some kind of address-book, so I needn't remember
1652 all those email addresses?
1657 There's an very basic solution for this, mail aliases.
1658 You can store your mail addresses in a ~/.mailrc file using a simple
1664 alias al "Al <al@@english-heritage.bla>"
1669 Then typing your alias (followed by a space or punctuation
1670 character) on a To: or Cc: line in the message buffer will
1671 cause gnus to insert the full address for you. See the
1672 node "Mail Aliases" in Message (not Gnus) manual for
1676 However, what you really want is the Insidious Big Brother
1677 Database bbdb. Get it through the XEmacs package system or from
1678 @uref{http://bbdb.sourceforge.net/,bbdb's homepage}.
1679 Now place the following in ~/.gnus, to activate bbdb for Gnus:
1685 (bbdb-initialize 'gnus 'message)
1690 Now you probably want some general bbdb configuration,
1691 place them in ~/.emacs:
1697 ;;If you don't live in Northern America, you should disable the
1698 ;;syntax check for telephone numbers by saying
1699 (setq bbdb-north-american-phone-numbers-p nil)
1700 ;;Tell bbdb about your email address:
1701 (setq bbdb-user-mail-names
1702 (regexp-opt '("Your.Email@@here.bla"
1703 "Your.other@@mail.there.bla")))
1704 ;;cycling while completing email addresses
1705 (setq bbdb-complete-name-allow-cycling t)
1707 (setq bbdb-use-pop-up nil)
1712 Now you should be ready to go. Say @samp{M-x bbdb RET
1713 RET} to open a bbdb buffer showing all
1714 entries. Say @samp{c} to create a new
1715 entry, @samp{b} to search your BBDB and
1716 @samp{C-o} to add a new field to an
1717 entry. If you want to add a sender to the BBDB you can
1718 also just hit `:' on the posting in the summary buffer and
1719 you are done. When you now compose a new mail,
1720 hit @samp{TAB} to cycle through know
1724 @node [5.8], [5.9], [5.7], FAQ 5 - Composing messages
1726 @subheading Question 5.8:
1728 Sometimes I see little images at the top of article
1729 buffer. What's that and how can I send one with my
1735 Those images are called X-Faces. They are 48*48 pixel b/w
1736 pictures, encoded in a header line. If you want to include
1737 one in your posts, you've got to convert some image to a
1738 X-Face. So fire up some image manipulation program (say
1739 Gimp), open the image you want to include, cut out the
1740 relevant part, reduce color depth to 1 bit, resize to
1741 48*48 and save as bitmap. Now you should get the compface
1743 @uref{ftp://ftp.cs.indiana.edu:/pub/faces/,this site}.
1744 and create the actual X-face by saying
1749 cat file.xbm | xbm2ikon |compface > file.face
1750 cat ./file.face | sed 's/\\/\\\\/g' | sed 's/\"/\\\"/g' > ./file.face.quoted
1755 if you can't use compface, there's an online X-face converter at
1756 @uref{http://www.dairiki.org/xface/,http://www.dairiki.org/xface/}.
1757 If you use MS Windows, you could also use the WinFace program from
1758 @uref{http://www.xs4all.nl/~walterln/winface/,http://www.xs4all.nl/~walterln/winface/}.
1759 Now you only have to tell Gnus to include the X-face in your postings by saying
1764 (setq message-default-headers
1767 (insert-file-contents "~/.xemacs/xface")
1776 @node [5.9], [5.10], [5.8], FAQ 5 - Composing messages
1778 @subheading Question 5.9:
1780 Sometimes I accidentally hit r instead of f in
1781 newsgroups. Can Gnus warn me, when I'm replying by mail in
1787 Put this in ~/.gnus:
1792 (setq gnus-confirm-mail-reply-to-news t)
1797 if you already use Gnus 5.10.0, if you still use 5.8.8 or
1798 5.9 try this instead:
1803 (defadvice gnus-summary-reply (around reply-in-news activate)
1805 (when (or (not (gnus-news-group-p gnus-newsgroup-name))
1806 (y-or-n-p "Really reply? "))
1812 @node [5.10], [5.11], [5.9], FAQ 5 - Composing messages
1814 @subheading Question 5.10:
1816 How to tell Gnus not to generate a sender header?
1821 Since 5.10.0 Gnus doesn't generate a sender header by
1822 default. For older Gnus' try this in ~/.gnus:
1827 (eval-after-load "message"
1828 '(add-to-list 'message-syntax-checks '(sender . disabled)))
1834 @node [5.11], [5.12], [5.10], FAQ 5 - Composing messages
1836 @subheading Question 5.11:
1838 I want gnus to locally store copies of my send mail and
1844 You must set the variable gnus-message-archive-group to do
1845 this. You can set it to a string giving the name of the
1846 group where the copies shall go or like in the example
1847 below use a function which is evaluated and which returns
1853 (setq gnus-message-archive-group
1854 '((if (message-news-p)
1862 @node [5.12], , [5.11], FAQ 5 - Composing messages
1864 @subheading Question 5.12:
1866 People tell me my Message-IDs are not correct, why
1867 aren't they and how to fix it?
1872 The message-ID is an unique identifier for messages you
1873 send. To make it unique, Gnus need to know which machine
1874 name to put after the "@@". If the name of the machine
1875 where Gnus is running isn't suitable (it probably isn't
1876 at most private machines) you can tell Gnus what to use
1882 (defun message-make-message-id()
1883 (concat "<"(message-unique-id)"@@yourmachine.yourdomain.tld>"))
1889 in ~/.gnus. If you have no idea what to insert for
1890 "yourmachine.yourdomain.tld", you've got several
1891 choices. You can either ask your provider if he allows
1892 you to use something like
1893 yourUserName.userfqdn.provider.net, or you can use
1894 somethingUnique.yourdomain.tld if you own the domain
1895 yourdomain.tld, or you can register at a service which
1896 gives private users a FQDN for free, e.g.
1897 @uref{http://www.stura.tu-freiberg.de/~dlx/addfqdn.html,http://www.stura.tu-freiberg.de/~dlx/addfqdn.html}.
1898 (Sorry but this website is in German, if you know of an
1899 English one offering the same, drop me a note).
1902 Finally you can tell Gnus not to generate a Message-ID
1903 for News at all (and letting the server do the job) by saying
1908 (setq message-required-news-headers
1909 (remove' Message-ID message-required-news-headers))
1914 you can also tell Gnus not to generate Message-IDs for mail by saying
1919 (setq message-required-mail-headers
1920 (remove' Message-ID message-required-mail-headers))
1925 , however some mail servers don't generate proper
1926 Message-IDs, too, so test if your Mail Server behaves
1927 correctly by sending yourself a Mail and looking at the Message-ID.
1931 @node FAQ 6 - Old messages, FAQ 7 - Gnus in a dial-up environment, FAQ 5 - Composing messages, Frequently Asked Questions
1933 @section Old messages
1936 * [6.1]:: How to import my old mail into Gnus?
1937 * [6.2]:: How to archive interesting messages?
1938 * [6.3]:: How to search for a specific message?
1939 * [6.4]:: How to get rid of old unwanted mail?
1940 * [6.5]:: I want that all read messages are expired (at least in some groups). How to do it?
1941 * [6.6]:: I don't want expiration to delete my mails but to move them to another group.
1945 @node [6.1], [6.2], FAQ 6 - Old messages, FAQ 6 - Old messages
1947 @subheading Question 6.1:
1949 How to import my old mail into Gnus?
1954 The easiest way is to tell your old mail program to
1955 export the messages in mbox format. Most Unix mailers
1956 are able to do this, if you come from the MS Windows
1957 world, you may find tools at
1958 @uref{http://mbx2mbox.sourceforge.net/,http://mbx2mbox.sourceforge.net/}.
1961 Now you've got to import this mbox file into Gnus. To do
1962 this, create a nndoc group based on the mbox file by
1963 saying @samp{G f /path/file.mbox RET} in
1964 Group buffer. You now have read-only access to your
1965 mail. If you want to import the messages to your normal
1966 Gnus mail groups hierarchy, enter the nndoc group you've
1967 just created by saying @samp{C-u RET}
1968 (thus making sure all messages are retrieved), mark all
1969 messages by saying @samp{M P b} and
1970 either copy them to the desired group by saying
1971 @samp{B c name.of.group RET} or send them
1972 through nnmail-split-methods (respool them) by saying
1976 @node [6.2], [6.3], [6.1], FAQ 6 - Old messages
1978 @subheading Question 6.2:
1980 How to archive interesting messages?
1985 If you stumble across an interesting message, say in
1986 gnu.emacs.gnus and want to archive it there are several
1987 solutions. The first and easiest is to save it to a file
1988 by saying @samp{O f}. However, wouldn't
1989 it be much more convenient to have more direct access to
1990 the archived message from Gnus? If you say yes, put this
1991 snippet by Frank Haun <pille3003@@fhaun.de> in
1997 (defun my-archive-article (&optional n)
1998 "Copies one or more article(s) to a corresponding `nnml:' group, e.g.
1999 `gnus.ding' goes to `nnml:1.gnus.ding'. And `nnml:List-gnus.ding' goes
2000 to `nnml:1.List-gnus-ding'.
2002 Use process marks or mark a region in the summary buffer to archive
2003 more then one article."
2008 (if (featurep 'xemacs)
2009 (replace-in-string gnus-newsgroup-name "^.*:" "")
2010 (replace-regexp-in-string "^.*:" "" gnus-newsgroup-name)))))
2011 (gnus-summary-copy-article n archive-name)))
2016 You can now say @samp{M-x
2017 my-archive-article} in summary buffer to
2018 archive the article under the cursor in a nnml
2019 group. (Change nnml to your preferred back end)
2022 Of course you can also make sure the cache is enabled by saying
2027 (setq gnus-use-cache t)
2032 then you only have to set either the tick or the dormant
2033 mark for articles you want to keep, setting the read
2034 mark will remove them from cache.
2037 @node [6.3], [6.4], [6.2], FAQ 6 - Old messages
2039 @subheading Question 6.3:
2041 How to search for a specific message?
2046 There are several ways for this, too. For a posting from
2047 a Usenet group the easiest solution is probably to ask
2048 @uref{http://groups.google.com,groups.google.com},
2049 if you found the posting there, tell Google to display
2050 the raw message, look for the message-id, and say
2051 @samp{M-^ the@@message.id RET} in a
2053 Since Gnus 5.10.0 there's also a Gnus interface for
2054 groups.google.com which you can call with
2055 @samp{G W}) in group buffer.
2058 Another idea which works for both mail and news groups
2059 is to enter the group where the message you are
2060 searching is and use the standard Emacs search
2061 @samp{C-s}, it's smart enough to look at
2062 articles in collapsed threads, too. If you want to
2063 search bodies, too try @samp{M-s}
2064 instead. Further on there are the
2065 gnus-summary-limit-to-foo functions, which can help you,
2069 Of course you can also use grep to search through your
2070 local mail, but this is both slow for big archives and
2071 inconvenient since you are not displaying the found mail
2072 in Gnus. Here comes nnir into action. Nnir is a front end
2073 to search engines like swish-e or swish++ and
2074 others. You index your mail with one of those search
2075 engines and with the help of nnir you can search trough
2076 the indexed mail and generate a temporary group with all
2077 messages which met your search criteria. If this sound
2078 cool to you get nnir.el from
2079 @uref{ftp://ls6-ftp.cs.uni-dortmund.de/pub/src/emacs/,ftp://ls6-ftp.cs.uni-dortmund.de/pub/src/emacs/}
2080 or @uref{ftp://ftp.is.informatik.uni-duisburg.de/pub/src/emacs/,ftp://ftp.is.informatik.uni-duisburg.de/pub/src/emacs/}.
2081 Instructions on how to use it are at the top of the file.
2084 @node [6.4], [6.5], [6.3], FAQ 6 - Old messages
2086 @subheading Question 6.4:
2088 How to get rid of old unwanted mail?
2093 You can of course just mark the mail you don't need
2094 anymore by saying @samp{#} with point
2095 over the mail and then say @samp{B DEL}
2096 to get rid of them forever. You could also instead of
2097 actually deleting them, send them to a junk-group by
2098 saying @samp{B m nnml:trash-bin} which
2099 you clear from time to time, but both are not the intended
2103 In Gnus, we let mail expire like news expires on a news
2104 server. That means you tell Gnus the message is
2105 expirable (you tell Gnus "I don't need this mail
2106 anymore") by saying @samp{E} with point
2107 over the mail in summary buffer. Now when you leave the
2108 group, Gnus looks at all messages which you marked as
2109 expirable before and if they are old enough (default is
2110 older than a week) they are deleted.
2113 @node [6.5], [6.6], [6.4], FAQ 6 - Old messages
2115 @subheading Question 6.5:
2117 I want that all read messages are expired (at least in
2118 some groups). How to do it?
2123 If you want all read messages to be expired (e.g. in
2124 mailing lists where there's an online archive), you've
2125 got two choices: auto-expire and
2126 total-expire. Auto-expire means, that every article
2127 which has no marks set and is selected for reading is
2128 marked as expirable, Gnus hits @samp{E}
2129 for you every time you read a message. Total-expire
2130 follows a slightly different approach, here all article
2131 where the read mark is set are expirable.
2134 To activate auto-expire, include auto-expire in the
2135 Group parameters for the group. (Hit @samp{G
2136 c} in summary buffer with point over the
2137 group to change group parameters). For total-expire add
2138 total-expire to the group-parameters.
2141 Which method you choose is merely a matter of taste:
2142 Auto-expire is faster, but it doesn't play together with
2143 Adaptive Scoring, so if you want to use this feature,
2144 you should use total-expire.
2147 If you want a message to be excluded from expiration in
2148 a group where total or auto expire is active, set either
2149 tick (hit @samp{u}) or dormant mark (hit
2150 @samp{u}), when you use auto-expire, you
2151 can also set the read mark (hit
2155 @node [6.6], , [6.5], FAQ 6 - Old messages
2157 @subheading Question 6.6:
2159 I don't want expiration to delete my mails but to move them
2165 Say something like this in ~/.gnus:
2170 (setq nnmail-expiry-target "nnml:expired")
2175 (If you want to change the value of nnmail-expiry-target
2176 on a per group basis see the question "How can I disable
2177 threading in some (e.g. mail-) groups, or set other
2178 variables specific for some groups?")
2182 @node FAQ 7 - Gnus in a dial-up environment, FAQ 8 - Getting help, FAQ 6 - Old messages, Frequently Asked Questions
2184 @section Gnus in a dial-up environment
2187 * [7.1]:: I don't have a permanent connection to the net, how can I minimize the time I've got to be connected?
2188 * [7.2]:: So what was this thing about the Agent?
2189 * [7.3]:: I want to store article bodies on disk, too. How to do it?
2190 * [7.4]:: How to tell Gnus not to try to send mails / postings while I'm offline?
2195 @node [7.1], [7.2], FAQ 7 - Gnus in a dial-up environment, FAQ 7 - Gnus in a dial-up environment
2197 @subheading Question 7.1:
2199 I don't have a permanent connection to the net, how can
2200 I minimize the time I've got to be connected?
2205 You've got basically two options: Either you use the
2206 Gnus Agent (see below) for this, or you can install
2207 programs which fetch your news and mail to your local
2208 disk and Gnus reads the stuff from your local
2212 If you want to follow the second approach, you need a
2213 program which fetches news and offers them to Gnus, a
2214 program which does the same for mail and a program which
2215 receives the mail you write from Gnus and sends them
2219 Let's talk about Unix systems first: For the news part,
2220 the easiest solution is a small nntp server like
2221 @uref{http://www.leafnode.org/,Leafnode} or
2222 @uref{http://infa.abo.fi/~patrik/sn/,sn},
2223 of course you can also install a full featured news
2225 @uref{http://www.isc.org/products/INN/,inn}.
2226 Then you want to fetch your Mail, popular choices
2227 are @uref{http://www.catb.org/~esr/fetchmail/,fetchmail}
2228 and @uref{http://www.qcc.ca/~charlesc/software/getmail-3.0/,getmail}.
2229 You should tell those to write the mail to your disk and
2230 Gnus to read it from there. Last but not least the mail
2231 sending part: This can be done with every MTA like
2232 @uref{http://www.sendmail.org/,sendmail},
2233 @uref{http://www.qmail.org/,postfix},
2234 @uref{http://www.exim.org/,exim} or
2235 @uref{http://www.qmail.org/,qmail}.
2238 On windows boxes I'd vote for
2239 @uref{http://www.tglsoft.de/,Hamster},
2240 it's a small freeware, open-source program which fetches
2241 your mail and news from remote servers and offers them
2242 to Gnus (or any other mail and/or news reader) via nntp
2243 respectively POP3 or IMAP. It also includes a smtp
2244 server for receiving mails from Gnus.
2247 @node [7.2], [7.3], [7.1], FAQ 7 - Gnus in a dial-up environment
2249 @subheading Question 7.2:
2251 So what was this thing about the Agent?
2256 The Gnus agent is part of Gnus, it allows you to fetch
2257 mail and news and store them on disk for reading them
2258 later when you're offline. It kind of mimics offline
2259 newsreaders like e.g. Forte Agent. If you want to use
2260 the Agent place the following in ~/.gnus if you are
2261 still using 5.8.8 or 5.9 (it's the default since 5.10.0):
2271 Now you've got to select the servers whose groups can be
2272 stored locally. To do this, open the server buffer
2273 (that is press @samp{^} while in the
2274 group buffer). Now select a server by moving point to
2275 the line naming that server. Finally, agentize the
2276 server by typing @samp{J a}. If you
2277 make a mistake, or change your mind, you can undo this
2278 action by typing @samp{J r}. When
2279 you're done, type 'q' to return to the group buffer.
2280 Now the next time you enter a group on a agentized
2281 server, the headers will be stored on disk and read from
2282 there the next time you enter the group.
2285 @node [7.3], [7.4], [7.2], FAQ 7 - Gnus in a dial-up environment
2287 @subheading Question 7.3:
2289 I want to store article bodies on disk, too. How to do it?
2294 You can tell the agent to automatically fetch the bodies
2295 of articles which fulfill certain predicates, this is
2296 done in a special buffer which can be reached by
2297 saying @samp{J c} in group
2298 buffer. Please refer to the documentation for
2299 information which predicates are possible and how
2303 Further on you can tell the agent manually which
2304 articles to store on disk. There are two ways to do
2305 this: Number one: In the summary buffer, process mark a
2306 set of articles that shall be stored in the agent by
2307 saying @samp{#} with point over the
2308 article and then type @samp{J s}. The
2309 other possibility is to set, again in the summary
2310 buffer, downloadable (%) marks for the articles you
2311 want by typing @samp{@@} with point over
2312 the article and then typing @samp{J u}.
2313 What's the difference? Well, process marks are erased as
2314 soon as you exit the summary buffer while downloadable
2315 marks are permanent. You can actually set downloadable
2316 marks in several groups then use fetch session ('J s' in
2317 the GROUP buffer) to fetch all of those articles. The
2318 only downside is that fetch session also fetches all of
2319 the headers for every selected group on an agentized
2320 server. Depending on the volume of headers, the initial
2321 fetch session could take hours.
2324 @node [7.4], , [7.3], FAQ 7 - Gnus in a dial-up environment
2326 @subheading Question 7.4:
2328 How to tell Gnus not to try to send mails / postings
2334 All you've got to do is to tell Gnus when you are online
2335 (plugged) and when you are offline (unplugged), the rest
2336 works automatically. You can toggle plugged/unplugged
2337 state by saying @samp{J j} in group
2338 buffer. To start Gnus unplugged say @samp{M-x
2339 gnus-unplugged} instead of
2340 @samp{M-x gnus}. Note that for this to
2341 work, the agent must be active.
2345 @node FAQ 8 - Getting help, FAQ 9 - Tuning Gnus, FAQ 7 - Gnus in a dial-up environment, Frequently Asked Questions
2347 @section Getting help
2350 * [8.1]:: How to find information and help inside Emacs?
2351 * [8.2]:: I can't find anything in the Gnus manual about X (e.g. attachments, PGP, MIME...), is it not documented?
2352 * [8.3]:: Which websites should I know?
2353 * [8.4]:: Which mailing lists and newsgroups are there?
2354 * [8.5]:: Where to report bugs?
2355 * [8.6]:: I need real-time help, where to find it?
2359 @node [8.1], [8.2], FAQ 8 - Getting help, FAQ 8 - Getting help
2361 @subheading Question 8.1:
2363 How to find information and help inside Emacs?
2368 The first stop should be the Gnus manual (Say
2369 @samp{C-h i d m Gnus RET} to start the
2370 Gnus manual, then walk through the menus or do a
2371 full-text search with @samp{s}). Then
2372 there are the general Emacs help commands starting with
2373 C-h, type @samp{C-h ? ?} to get a list
2374 of all available help commands and their meaning. Finally
2375 @samp{M-x apropos-command} lets you
2376 search through all available functions and @samp{M-x
2377 apropos} searches the bound variables.
2380 @node [8.2], [8.3], [8.1], FAQ 8 - Getting help
2382 @subheading Question 8.2:
2384 I can't find anything in the Gnus manual about X
2385 (e.g. attachments, PGP, MIME...), is it not documented?
2390 There's not only the Gnus manual but also the manuals
2391 for message, emacs-mime, sieve and pgg. Those packages
2392 are distributed with Gnus and used by Gnus but aren't
2393 really part of core Gnus, so they are documented in
2394 different info files, you should have a look in those
2398 @node [8.3], [8.4], [8.2], FAQ 8 - Getting help
2400 @subheading Question 8.3:
2402 Which websites should I know?
2407 The two most important ones are the
2408 @uref{http://www.gnus.org,official Gnus website}.
2409 and it's sister site
2410 @uref{http://my.gnus.org,my.gnus.org (MGO)},
2411 hosting an archive of lisp snippets, howtos, a (not
2412 really finished) tutorial and this FAQ.
2415 Tell me about other sites which are interesting.
2418 @node [8.4], [8.5], [8.3], FAQ 8 - Getting help
2420 @subheading Question 8.4:
2422 Which mailing lists and newsgroups are there?
2427 There's the newsgroup gnu.emacs.gnus (pull it from
2428 e.g. news.gnus.org) which deals with general questions
2429 and the ding mailing list (ding@@gnus.org) dealing with
2430 development of Gnus. You can read the ding list via
2431 NNTP, too under the name gnus.ding from news.gnus.org.
2434 If you want to stay in the big8,
2435 news.software.newssreaders is also read by some Gnus
2436 users (but chances for qualified help are much better in
2437 the above groups) and if you speak German, there's
2438 de.comm.software.gnus.
2441 @node [8.5], [8.6], [8.4], FAQ 8 - Getting help
2443 @subheading Question 8.5:
2445 Where to report bugs?
2450 Say @samp{M-x gnus-bug}, this will start
2452 @uref{mailto:bugs@@gnus.org,gnus bug mailing list}
2453 including information about your environment which make
2454 it easier to help you.
2457 @node [8.6], , [8.5], FAQ 8 - Getting help
2459 @subheading Question 8.6:
2461 I need real-time help, where to find it?
2466 Point your IRC client to irc.my.gnus.org channel
2467 #mygnus. Don't be afraid if people there speak German,
2468 they are willing and capable of switching to
2469 English when people from outside Germany enter.
2473 @node FAQ 9 - Tuning Gnus, FAQ - Glossary, FAQ 8 - Getting help, Frequently Asked Questions
2475 @section Tuning Gnus
2478 * [9.1]:: Starting Gnus is really slow, how to speed it up?
2479 * [9.2]:: How to speed up the process of entering a group?
2480 * [9.3]:: Sending mail becomes slower and slower, what's up?
2484 @node [9.1], [9.2], FAQ 9 - Tuning Gnus, FAQ 9 - Tuning Gnus
2486 @subheading Question 9.1:
2488 Starting Gnus is really slow, how to speed it up?
2493 The reason for this could be the way Gnus reads it's
2494 active file, see the node "The Active File" in the Gnus
2495 manual for things you might try to speed the process up.
2496 An other idea would be to byte compile your ~/.gnus (say
2497 @samp{M-x byte-compile-file RET ~/.gnus
2498 RET} to do it). Finally, if you have require
2499 statements in your .gnus, you could replace them with
2500 eval-after-load, which loads the stuff not at startup
2501 time, but when it's needed. Say you've got this in your
2508 (add-to-list 'message-syntax-checks '(sender . disabled))
2513 then as soon as you start Gnus, message.el is loaded. If
2519 (eval-after-load "message"
2520 '(add-to-list 'message-syntax-checks '(sender . disabled)))
2525 it's loaded when it's needed.
2528 @node [9.2], [9.3], [9.1], FAQ 9 - Tuning Gnus
2530 @subheading Question 9.2:
2532 How to speed up the process of entering a group?
2537 A speed killer is setting the variable
2538 gnus-fetch-old-headers to anything different from nil,
2539 so don't do this if speed is an issue. To speed up
2540 building of summary say
2550 at the bottom of your ~/.gnus, this will make gnus
2551 byte-compile things like
2552 gnus-summary-line-format.
2553 then you could increase the value of gc-cons-threshold
2554 by saying something like
2559 (setq gc-cons-threshold 3500000)
2564 in ~/.emacs. If you don't care about width of CJK
2565 characters or use Gnus 5.10.0 or younger together with a
2566 recent GNU Emacs, you should say
2571 (setq gnus-use-correct-string-widths nil)
2577 in ~/.gnus (thanks to Jesper harder for the last
2578 two suggestions). Finally if you are still using 5.8.8
2579 or 5.9 and experience speed problems with summary
2580 buffer generation, you definitely should update to
2581 5.10.0 since there quite some work on improving it has
2585 @node [9.3], , [9.2], FAQ 9 - Tuning Gnus
2587 @subheading Question 9.3:
2589 Sending mail becomes slower and slower, what's up?
2594 The reason could be that you told Gnus to archive the
2595 messages you wrote by setting
2596 gnus-message-archive-group. Try to use a nnml group
2597 instead of an archive group, this should bring you back
2602 @node FAQ - Glossary, , FAQ 9 - Tuning Gnus, Frequently Asked Questions
2609 When the term ~/.gnus is used it just means your Gnus
2610 configuration file. You might as well call it ~/.gnus.el or
2611 specify another name.
2615 In Gnus terminology a back end is a virtual server, a layer
2616 between core Gnus and the real NNTP-, POP3-, IMAP- or
2617 whatever-server which offers Gnus a standardized interface
2618 to functions like "get message", "get Headers" etc.
2622 When the term Emacs is used in this FAQ, it means either GNU
2627 In this FAQ message means a either a mail or a posting to a
2628 Usenet Newsgroup or to some other fancy back end, no matter
2629 of which kind it is.
2633 MUA is an acronym for Mail User Agent, it's the program you
2634 use to read and write e-mails.
2638 NUA is an acronym for News User Agent, it's the program you
2639 use to read and write Usenet news.