gnus-faq.texi 72.6 KB
Newer Older
1 2 3 4 5 6 7 8
@c \input texinfo @c -*-texinfo-*-
@c Uncomment 1st line before texing this file alone.
@c %**start of header
@c Copyright (C) 1995, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
@c
@c Do not modify this file, it was generated from gnus-faq.xml, available from
@c <URL:http://my.gnus.org/FAQ/>.
@c
9
@setfilename gnus-faq.info
10 11 12
@settitle Frequently Asked Questions
@c %**end of header
@c
Dave Love's avatar
#  
Dave Love committed
13 14 15 16 17

@node Frequently Asked Questions
@section Frequently Asked Questions

@menu
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
* FAQ - Changes::                           
* FAQ - Introduction::                       About Gnus and this FAQ.
* FAQ 1 - Installation FAQ::                 Installation of Gnus.
* FAQ 2 - Startup / Group buffer::           Start up questions and the
                                             first buffer Gnus shows you.
* FAQ 3 - Getting Messages::                 Making Gnus read your mail
                                             and news.
* FAQ 4 - Reading messages::                 How to efficiently read
                                             messages.
* FAQ 5 - Composing messages::               Composing mails or Usenet
                                             postings.
* FAQ 6 - Old messages::                     Importing, archiving,
                                             searching and deleting messages.
* FAQ 7 - Gnus in a dial-up environment::    Reading mail and news while
                                             offline.
* FAQ 8 - Getting help::                     When this FAQ isn't enough.
* FAQ 9 - Tuning Gnus::                      How to make Gnus faster.
* FAQ - Glossary::                           Terms used in the FAQ
                                             explained.
Dave Love's avatar
#  
Dave Love committed
37 38
@end menu

39 40
@subheading Abstract

41 42 43 44 45
This is the new Gnus Frequently Asked Questions list.
If you have a Web browser, the official hypertext version is at
@uref{http://my.gnus.org/FAQ/},
the Docbook source is available from
@uref{http://sourceforge.net/projects/gnus/, http://sourceforge.net}.
46

47 48 49 50 51 52 53 54
Please submit features and suggestions to the 
@email{faq-discuss@@my.gnus.org, FAQ discussion list}.
The list is protected against junk mail with
@uref{http://smarden.org/qconfirm/index.html, qconfirm}. As
a subscriber, your submissions will automatically pass.  You can
also subscribe to the list by sending a blank email to
@email{faq-discuss-subscribe@@my.gnus.org, faq-discuss-subscribe@@my.gnus.org}
and @uref{http://mail1.kens.com/cgi-bin/ezmlm-browse?command=monthbythread%26list=faq-discuss, browse
55
the archive (BROKEN)}.
56

57 58
@node FAQ - Changes
@subheading Changes
59 60 61



62 63 64 65 66 67
@itemize @bullet

@item
Updated FAQ to reflect release of Gnus 5.10 and start of
No Gnus development.
@end itemize
68

69 70 71 72
@node FAQ - Introduction
@subheading Introduction

This is the Gnus Frequently Asked Questions list.
73

74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108
Gnus is a Usenet Newsreader and Electronic Mail User Agent implemented
as a part of Emacs. It's been around in some form for almost a decade
now, and has been distributed as a standard part of Emacs for much of
that time. Gnus 5 is the latest (and greatest) incarnation. The
original version was called GNUS, and was written by Masanobu UMEDA.
When autumn crept up in '94, Lars Magne Ingebrigtsen grew bored and
decided to rewrite Gnus.

Its biggest strength is the fact that it is extremely
customizable. It is somewhat intimidating at first glance, but
most of the complexity can be ignored until you're ready to take
advantage of it. If you receive a reasonable volume of e-mail
(you're on various mailing lists), or you would like to read
high-volume mailing lists but cannot keep up with them, or read
high volume newsgroups or are just bored, then Gnus is what you
want.

This FAQ was maintained by Justin Sheehy until March 2002. He
would like to thank Steve Baur and Per Abrahamsen for doing a wonderful
job with this FAQ before him. We would like to do the same - thanks,
Justin!

If you have a Web browser, the official hypertext version is at:
@uref{http://my.gnus.org/FAQ/}.
This version is much nicer than the unofficial hypertext
versions that are archived at Utrecht, Oxford, Smart Pages, Ohio
State, and other FAQ archives. See the resources question below
if you want information on obtaining it in another format.

The information contained here was compiled with the assistance
of the Gnus development mailing list, and any errors or
misprints are the my.gnus.org team's fault, sorry.

@node FAQ 1 - Installation FAQ
@subsection Installation FAQ
Dave Love's avatar
#  
Dave Love committed
109

110
@menu
111 112 113 114 115 116 117 118
* [1.1]::    What is the latest version of Gnus?
* [1.2]::    What's new in 5.10?
* [1.3]::    Where and how to get Gnus?
* [1.4]::    What to do with the tarball now?
* [1.5]::    I sometimes read references to No Gnus and Oort Gnus, what
             are those?
* [1.6]::    Which version of Emacs do I need?
* [1.7]::    How do I run Gnus on both Emacs and XEmacs?
119
@end menu
Dave Love's avatar
#  
Dave Love committed
120

121 122
@node [1.1]
@subsubheading Question 1.1
Dave Love's avatar
#  
Dave Love committed
123

124
What is the latest version of Gnus?
Dave Love's avatar
#  
Dave Love committed
125

126
@subsubheading Answer
Dave Love's avatar
#  
Dave Love committed
127

128 129 130
Jingle please: Gnus 5.10 is released, get it while it's
hot! As well as the step in version number is rather
small, Gnus 5.10 has tons of new features which you
131
shouldn't miss. The current release (5.10.8) should be at
132
least as stable as the latest release of the 5.8 series.
Dave Love's avatar
#  
Dave Love committed
133

134 135
@node [1.2]
@subsubheading Question 1.2
Dave Love's avatar
#  
Dave Love committed
136

137
What's new in 5.10?
Dave Love's avatar
#  
Dave Love committed
138

139
@subsubheading Answer
Dave Love's avatar
#  
Dave Love committed
140

141 142 143 144 145
First of all, you should have a look into the file
GNUS-NEWS in the toplevel directory of the Gnus tarball,
there the most important changes are listed. Here's a
short list of the changes I find especially
important/interesting:
146

147
@itemize @bullet
Dave Love's avatar
#  
Dave Love committed
148 149

@item
150 151 152
Major rewrite of the Gnus agent, Gnus agent is now
active by default.

153
@item
154 155 156
Many new article washing functions for dealing with
ugly formatted articles.

157
@item
158 159
Anti Spam features.

160
@item
161 162
Message-utils now included in Gnus.

163
@item
164 165
New format specifiers for summary lines, e.g. %B for
a complex trn-style thread tree.
166
@end itemize
167 168 169

@node [1.3]
@subsubheading Question 1.3
170 171 172

Where and how to get Gnus?

173
@subsubheading Answer
174

175 176 177 178 179 180 181
The latest released version of Gnus isn't included in
Emacs 21, therefor you should get the Gnus tarball from
@uref{http://www.gnus.org/dist/gnus.tar.gz}
or via anonymous FTP from 
@uref{ftp://ftp.gnus.org/pub/gnus/gnus.tar.gz}.
If you use XEmacs instead of Emacs you can use XEmacs'
package system instead.
182

183 184
@node [1.4]
@subsubheading Question 1.4
185

186 187 188 189 190 191 192 193 194 195 196 197 198 199 200
What to do with the tarball now?

@subsubheading Answer

Untar it via @samp{tar xvzf gnus.tar.gz} and do the common 
@samp{./configure; make; make install} circle.
(under MS-Windows either get the Cygwin environment from
@uref{http://www.cygwin.com}
which allows you to do what's described above or unpack the
tarball with some packer (e.g. Winace from
@uref{http://www.winace.com})
and use the batch-file make.bat included in the tarball to install
Gnus.) If you don't want to (or aren't allowed to) install Gnus
system-wide, you can install it in your home directory and add the
following lines to your ~/.xemacs/init.el or ~/.emacs:
Dave Love's avatar
#  
Dave Love committed
201

202 203 204 205 206 207 208
@example
(add-to-list 'load-path "/path/to/gnus/lisp")
(if (featurep 'xemacs)
    (add-to-list 'Info-directory-list "/path/to/gnus/texi/")
  (add-to-list 'Info-default-directory-list "/path/to/gnus/texi/"))
@end example
@noindent
209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230

Make sure that you don't have any Gnus related stuff
before this line, on MS Windows use something like
"C:/path/to/lisp" (yes, "/").

@node [1.5]
@subsubheading Question 1.5

I sometimes read references to No Gnus and Oort Gnus,
what are those?

@subsubheading Answer

Oort Gnus was the name of the development version of
Gnus, which became Gnus 5.10 in autumn 2003. No Gnus is
the name of the current development version which will
once become Gnus 5.12 or Gnus 6. (If you're wondering why
not 5.11, the odd version numbers are normally used for
the Gnus versions bundled with Emacs)

@node [1.6]
@subsubheading Question 1.6
231 232 233

Which version of Emacs do I need?

234
@subsubheading Answer
235

236 237 238 239
Gnus 5.10 requires an Emacs version that is greater than or equal
to Emacs 20.7 or XEmacs 21.1.
The development versions of Gnus (aka No Gnus) requires Emacs 21
or XEmacs 21.4.
240 241 242

@node [1.7]
@subsubheading Question 1.7
243 244 245

How do I run Gnus on both Emacs and XEmacs?

246
@subsubheading Answer
247

248 249 250 251 252 253
You can't use the same copy of Gnus in both as the Lisp
files are byte-compiled to a format which is different
depending on which Emacs did the compilation. Get one copy
of Gnus for Emacs and one for XEmacs.

@node FAQ 2 - Startup / Group buffer
254
@subsection Startup / Group buffer
Dave Love's avatar
#  
Dave Love committed
255

256
@menu
257 258 259 260 261 262 263 264 265 266 267
* [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?
* [2.2]::    Gnus doesn't remember which groups I'm subscribed to,
             what's this?
* [2.3]::    How to change the format of the lines in Group buffer?
* [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?
* [2.5]::    How to manually sort the groups in Group buffer? How to
             sort the groups in a topic?
268
@end menu
Dave Love's avatar
#  
Dave Love committed
269

270 271
@node [2.1]
@subsubheading Question 2.1
272

273 274 275
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?
276

277
@subsubheading Answer
278

279 280 281 282 283
This message means that the last time you used Gnus, it
wasn't properly exited and therefor couldn't write its
informations to disk (e.g. which messages you read), you
are now asked if you want to restore those informations
from the auto-save file.
284

285 286 287
To prevent this message make sure you exit Gnus
via @samp{q} in group buffer instead of
just killing Emacs.
288

289 290
@node [2.2]
@subsubheading Question 2.2
291

292 293
Gnus doesn't remember which groups I'm subscribed to,
what's this?
294

295
@subsubheading Answer
296

297 298 299
You get the message described in the q/a pair above while
starting Gnus, right? It's an other symptom for the same
problem, so read the answer above.
300

301 302
@node [2.3]
@subsubheading Question 2.3
303

304
How to change the format of the lines in Group buffer?
Dave Love's avatar
#  
Dave Love committed
305

306
@subsubheading Answer
Dave Love's avatar
#  
Dave Love committed
307

308 309 310 311 312 313
You've got to tweak the value of the variable
gnus-group-line-format. See the manual node "Group Line
Specification" for information on how to do this. An
example for this (guess from whose .gnus :-)):

@example
314 315
(setq gnus-group-line-format "%P%M%S[%5t]%5y : %(%g%)\n")
@end example
316
@noindent
317

318 319
@node [2.4]
@subsubheading Question 2.4
320

321 322 323
My group buffer becomes a bit crowded, is there a way to
sort my groups into categories so I can easier browse
through them?
324

325
@subsubheading Answer
326

327 328 329 330 331
Gnus offers the topic mode, it allows you to sort your
groups in, well, topics, e.g. all groups dealing with
Linux under the topic linux, all dealing with music under
the topic music and all dealing with scottish music under
the topic scottish which is a subtopic of music.
332

333 334 335 336 337 338 339
To enter topic mode, just hit t while in Group buffer. Now
you can use @samp{T n} to create a topic
at point and @samp{T m} to move a group to
a specific topic. For more commands see the manual or the
menu. You might want to include the %P specifier at the
beginning of your gnus-group-line-format variable to have
the groups nicely indented.
340

341 342 343 344 345 346 347 348 349 350 351 352 353 354 355
@node [2.5]
@subsubheading Question 2.5

How to manually sort the groups in Group buffer? How to
sort the groups in a topic?

@subsubheading Answer

Move point over the group you want to move and
hit @samp{C-k}, now move point to the
place where you want the group to be and
hit @samp{C-y}.

@node FAQ 3 - Getting Messages
@subsection Getting Messages
Dave Love's avatar
#  
Dave Love committed
356

357
@menu
358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377
* [3.1]::     I just installed Gnus, started it via  @samp{M-x gnus} 
              but it only says "nntp (news) open error", what to do?
* [3.2]::     I'm working under Windows and have no idea what ~/.gnus.el
              means.
* [3.3]::     My news server requires authentication, how to store user
              name and password on disk?
* [3.4]::     Gnus seems to start up OK, but I can't find out how to
              subscribe to a group.
* [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?
* [3.6]::     I want Gnus to fetch news from several servers, is this
              possible?
* [3.7]::     And how about local spool files?
* [3.8]::     OK, reading news works now, but I want to be able to read
              my mail with Gnus, too. How to do it?
* [3.9]::     And what about IMAP?
* [3.10]::    At the office we use one of those MS Exchange servers, can
              I use Gnus to read my mail from it?
* [3.11]::    Can I tell Gnus not to delete the mails on the server it
              retrieves via POP3?
378
@end menu
Dave Love's avatar
#  
Dave Love committed
379

380 381
@node [3.1]
@subsubheading Question 3.1
Dave Love's avatar
#  
Dave Love committed
382

383 384 385
I just installed Gnus, started it via 
@samp{M-x gnus} 
but it only says "nntp (news) open error", what to do?
Dave Love's avatar
#  
Dave Love committed
386

387
@subsubheading Answer
Dave Love's avatar
#  
Dave Love committed
388

389 390 391
You've got to tell Gnus where to fetch the news from. Read
the documentation for information on how to do this. As a
first start, put those lines in ~/.gnus.el:
Dave Love's avatar
#  
Dave Love committed
392

393 394 395 396 397
@example
(setq gnus-select-method '(nntp "news.yourprovider.net"))
(setq user-mail-address "you@@yourprovider.net")
(setq user-full-name "Your Name")
@end example
398
@noindent
399

400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422
@node [3.2]
@subsubheading Question 3.2

I'm working under Windows and have no idea what ~/.gnus.el means.

@subsubheading Answer

The ~/ means the home directory where Gnus and Emacs look
for the configuration files.  However, you don't really
need to know what this means, it suffices that Emacs knows
what it means :-) You can type 
@samp{C-x C-f ~/.gnus.el RET } 
(yes, with the forward slash, even on Windows), and
Emacs will open the right file for you.  (It will most
likely be new, and thus empty.)
However, I'd discourage you from doing so, since the
directory Emacs chooses will most certainly not be what
you want, so let's do it the correct way. 
The first thing you've got to do is to
create a suitable directory (no blanks in directory name
please) e.g. c:\myhome. Then you must set the environment
variable HOME to this directory.  To do this under Win9x
or Me include the line
Dave Love's avatar
#  
Dave Love committed
423

424 425 426 427 428
@example
SET HOME=C:\myhome
@end example
@noindent

429 430 431 432 433 434
in your autoexec.bat and reboot.  Under NT, 2000 and XP,
hit Winkey+Pause/Break to enter system options (if it
doesn't work, go to Control Panel -> System). There you'll
find the possibility to set environment variables, create
a new one with name HOME and value C:\myhome, a reboot is
not necessary.
435

436 437 438
Now to create ~/.gnus.el, say
@samp{C-x C-f ~/.gnus.el RET C-x C-s}.
in Emacs.
439

440 441
@node [3.3]
@subsubheading Question 3.3
442

443 444 445 446 447 448
My news server requires authentication, how to store
user name and password on disk?

@subsubheading Answer

Create a file ~/.authinfo which includes for each server a line like this
Dave Love's avatar
#  
Dave Love committed
449 450

@example
451
machine news.yourprovider.net login YourUserName password YourPassword
Dave Love's avatar
#  
Dave Love committed
452
@end example
453 454
@noindent
.
455 456 457
Make sure that the file isn't readable to others if you
work on a OS which is capable of doing so.  (Under Unix
say 
458 459 460 461 462
@example
chmod 600 ~/.authinfo
@end example
@noindent

463
in a shell.)
464

465 466
@node [3.4]
@subsubheading Question 3.4
467

468 469
Gnus seems to start up OK, but I can't find out how to
subscribe to a group.
470

471
@subsubheading Answer
472

473 474 475 476 477 478 479 480
If you know the name of the group say @samp{U
name.of.group RET} in group buffer (use the
tab-completion Luke). Otherwise hit ^ in group buffer,
this brings you to the server buffer. Now place point (the
cursor) over the server which carries the group you want,
hit @samp{RET}, move point to the group
you want to subscribe to and say @samp{u}
to subscribe to it.
481

482 483 484 485 486 487 488 489 490 491 492
@node [3.5]
@subsubheading Question 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?

@subsubheading Answer

Some providers allow restricted anonymous access and full
access only after authorization. To make Gnus send authinfo
to those servers append 
Dave Love's avatar
#  
Dave Love committed
493

494 495 496 497 498
@example
force yes
@end example
@noindent
 
499
to the line for those servers in ~/.authinfo.
Dave Love's avatar
#  
Dave Love committed
500

501 502
@node [3.6]
@subsubheading Question 3.6
503

504
I want Gnus to fetch news from several servers, is this possible?
505

506 507 508 509 510
@subsubheading Answer

Of course. You can specify more sources for articles in the
variable gnus-secondary-select-methods. Add something like
this in ~/.gnus.el:
Dave Love's avatar
#  
Dave Love committed
511

512
@example
513
(add-to-list 'gnus-secondary-select-methods
514
             '(nntp "news.yourSecondProvider.net"))
515 516
(add-to-list 'gnus-secondary-select-methods
             '(nntp "news.yourThirdProvider.net"))
517
@end example
518
@noindent
Dave Love's avatar
#  
Dave Love committed
519

520 521
@node [3.7]
@subsubheading Question 3.7
Dave Love's avatar
#  
Dave Love committed
522

523
And how about local spool files?
Dave Love's avatar
#  
Dave Love committed
524

525 526 527 528
@subsubheading Answer

No problem, this is just one more select method called
nnspool, so you want this:
Dave Love's avatar
#  
Dave Love committed
529

530 531 532 533
@example
(add-to-list 'gnus-secondary-select-methods '(nnspool ""))
@end example
@noindent
534 535

Or this if you don't want an NNTP Server as primary news source:
Dave Love's avatar
#  
Dave Love committed
536

537 538 539 540
@example
(setq gnus-select-method '(nnspool ""))
@end example
@noindent
541 542 543

Gnus will look for the spool file in /usr/spool/news, if you
want something different, change the line above to something like this:
Dave Love's avatar
#  
Dave Love committed
544

545 546
@example
(add-to-list 'gnus-secondary-select-methods
547 548
             '(nnspool ""
		       (nnspool-directory "/usr/local/myspoolddir")))
549 550 551
@end example
@noindent

552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581
This sets the spool directory for this server only.
You might have to specify more stuff like the program used
to post articles, see the Gnus manual on how to do this.

@node [3.8]
@subsubheading Question 3.8

OK, reading news works now, but I want to be able to read my mail
with Gnus, too. How to do it?

@subsubheading Answer

That's a bit harder since there are many possible sources
for mail, many possible ways for storing mail and many
different ways for sending mail. The most common cases are
these: 1: You want to read your mail from a pop3 server and
send them directly to a SMTP Server 2: Some program like
fetchmail retrieves your mail and stores it on disk from
where Gnus shall read it. Outgoing mail is sent by
Sendmail, Postfix or some other MTA. Sometimes, you even
need a combination of the above cases.

However, the first thing to do is to tell Gnus in which way
it should store the mail, in Gnus terminology which back end
to use. Gnus supports many different back ends, the most
commonly used one is nnml. It stores every mail in one file
and is therefor quite fast. However you might prefer a one
file per group approach if your file system has problems with
many small files, the nnfolder back end is then probably the
choice for you.  To use nnml add the following to ~/.gnus.el:
Dave Love's avatar
#  
Dave Love committed
582

583 584 585 586
@example
(add-to-list 'gnus-secondary-select-methods '(nnml ""))
@end example
@noindent
587 588

As you might have guessed, if you want nnfolder, it's
589 590 591 592

@example
(add-to-list 'gnus-secondary-select-methods '(nnfolder ""))
@end example
593
@noindent
Dave Love's avatar
#  
Dave Love committed
594

595 596
Now we need to tell Gnus, where to get it's mail from. If
it's a POP3 server, then you need something like this:
Dave Love's avatar
#  
Dave Love committed
597

598 599 600 601 602 603 604
@example
(eval-after-load "mail-source"
  '(add-to-list 'mail-sources '(pop :server "pop.YourProvider.net"
                                    :user "yourUserName"
                                    :password "yourPassword")))
@end example
@noindent
605 606 607 608

Make sure ~/.gnus.el isn't readable to others if you store
your password there. If you want to read your mail from a
traditional spool file on your local machine, it's
Dave Love's avatar
#  
Dave Love committed
609

610 611
@example
(eval-after-load "mail-source"
612
  '(add-to-list 'mail-sources '(file :path "/path/to/spool/file"))
613 614
@end example
@noindent
615 616 617

If it's a Maildir, with one file per message as used by
postfix, Qmail and (optionally) fetchmail it's
Dave Love's avatar
#  
Dave Love committed
618

619 620 621 622 623 624
@example
(eval-after-load "mail-source"
  '(add-to-list 'mail-sources '(maildir :path "/path/to/Maildir/"
                                        :subdirs ("cur" "new")))
@end example
@noindent
625 626 627 628

And finally if you want to read your mail from several files
in one directory, for example because procmail already split your
mail, it's
Dave Love's avatar
#  
Dave Love committed
629

630 631
@example
(eval-after-load "mail-source"
632 633 634
  '(add-to-list 'mail-sources
		'(directory :path "/path/to/procmail-dir/"
			    :suffix ".prcml")))
635 636
@end example
@noindent
Dave Love's avatar
#  
Dave Love committed
637

638 639 640 641 642 643 644 645
Where :suffix ".prcml" tells Gnus only to use files with the
suffix .prcml.

OK, now you only need to tell Gnus how to send mail. If you
want to send mail via sendmail (or whichever MTA is playing
the role of sendmail on your system), you don't need to do
anything. However, if you want to send your mail to an
SMTP Server you need the following in your ~/.gnus.el
Dave Love's avatar
#  
Dave Love committed
646

647 648 649 650 651
@example
(setq send-mail-function 'smtpmail-send-it)
(setq message-send-mail-function 'smtpmail-send-it)
(setq smtpmail-default-smtp-server "smtp.yourProvider.net")
@end example
652
@noindent
Dave Love's avatar
#  
Dave Love committed
653

654 655
@node [3.9]
@subsubheading Question 3.9
Dave Love's avatar
#  
Dave Love committed
656

657
And what about IMAP?
Dave Love's avatar
#  
Dave Love committed
658

659 660 661 662 663 664 665
@subsubheading Answer

There are two ways of using IMAP with Gnus. The first one is
to use IMAP like POP3, that means Gnus fetches the mail from
the IMAP server and stores it on disk. If you want to do
this (you don't really want to do this) add the following to
~/.gnus.el
Dave Love's avatar
#  
Dave Love committed
666

667 668 669 670 671 672 673 674 675 676
@example
(add-to-list 'mail-sources '(imap :server "mail.mycorp.com"
                                  :user "username"
                                  :pass "password"
                                  :stream network
                                  :authentication login
                                  :mailbox "INBOX"
                                  :fetchflag "\\Seen"))
@end example
@noindent
Dave Love's avatar
#  
Dave Love committed
677

678 679 680 681 682 683 684 685
You might have to tweak the values for stream and/or
authentification, see the Gnus manual node "Mail Source
Specifiers" for possible values.

If you want to use IMAP the way it's intended, you've got to
follow a different approach.  You've got to add the nnimap
back end to your select method and give the information
about the server there.
Dave Love's avatar
#  
Dave Love committed
686

687
@example
688 689 690 691 692
(add-to-list 'gnus-secondary-select-methods
	     '(nnimap "Give the baby a name"
		      (nnimap-address "imap.yourProvider.net")
		      (nnimap-port 143)
		      (nnimap-list-pattern "archive.*")))
693 694 695
@end example
@noindent

696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747
Again, you might have to specify how to authenticate to the
server if Gnus can't guess the correct way, see the Manual
Node "IMAP" for detailed information.

@node [3.10]
@subsubheading Question 3.10

At the office we use one of those MS Exchange servers, can I use
Gnus to read my mail from it?

@subsubheading Answer

Offer your administrator a pair of new running shoes for
activating IMAP on the server and follow the instructions
above.

@node [3.11]
@subsubheading Question 3.11

Can I tell Gnus not to delete the mails on the server it
retrieves via POP3?

@subsubheading Answer

First of all, that's not the way POP3 is intended to work,
if you have the possibility, you should use the IMAP
Protocol if you want your messages to stay on the
server. Nevertheless there might be situations where you
need the feature, but sadly Gnus itself has no predefined
functionality to do so.

However this is Gnus county so there are possibilities to
achieve what you want. The easiest way is to get an external
program which retrieves copies of the mail and stores them
on disk, so Gnus can read it from there. On Unix systems you
could use e.g. fetchmail for this, on MS Windows you can use
Hamster, an excellent local news and mail server.

The other solution would be, to replace the method Gnus
uses to get mail from POP3 servers by one which is capable
of leaving the mail on the server. If you use XEmacs, get
the package mail-lib, it includes an enhanced pop3.el,
look in the file, there's documentation on how to tell
Gnus to use it and not to delete the retrieved mail. For
GNU Emacs look for the file epop3.el which can do the same
(If you know the home of this file, please send me an
e-mail). You can also tell Gnus to use an external program
(e.g. fetchmail) to fetch your mail, see the info node
"Mail Source Specifiers" in the Gnus manual on how to do
it.

@node FAQ 4 - Reading messages
748
@subsection Reading messages
Dave Love's avatar
#  
Dave Love committed
749

750
@menu
751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779
* [4.1]::     When I enter a group, all read messages are gone. How to
              view them again?
* [4.2]::     How to tell Gnus to show an important message every time I
              enter a group, even when it's read?
* [4.3]::     How to view the headers of a message?
* [4.4]::     How to view the raw unformatted message?
* [4.5]::     How can I change the headers Gnus displays by default at
              the top of the article buffer?
* [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?
* [4.7]::     Can I use some other browser than w3 to render my
              HTML-mails?
* [4.8]::     Is there anything I can do to make poorly formatted mails
              more readable?
* [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?
* [4.10]::    How can I disable threading in some (e.g. mail-) groups,
              or set other variables specific for some groups?
* [4.11]::    Can I highlight messages written by me and follow-ups to
              those?
* [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?
* [4.13]::    I don't like the layout of summary and article buffer, how
              to change it? Perhaps even a three pane display?
* [4.14]::    I don't like the way the Summary buffer looks, how to
              tweak it?
* [4.15]::    How to split incoming mails in several groups?
780
@end menu
Dave Love's avatar
#  
Dave Love committed
781

782 783
@node [4.1]
@subsubheading Question 4.1
Dave Love's avatar
#  
Dave Love committed
784

785
When I enter a group, all read messages are gone. How to view them again?
Dave Love's avatar
#  
Dave Love committed
786

787
@subsubheading Answer
788

789 790 791 792 793 794
If you enter the group by saying  
@samp{RET}
in group buffer with point over the group, only unread and ticked messages are loaded. Say
@samp{C-u RET}
instead to load all available messages. If you want only the e.g. 300 newest say
@samp{C-u 300 RET}
Dave Love's avatar
#  
Dave Love committed
795

796
Loading only unread messages can be annoying if you have threaded view enabled, say
Dave Love's avatar
#  
Dave Love committed
797

798 799 800 801 802
@example
(setq gnus-fetch-old-headers 'some)
@end example
@noindent
 
803 804 805
in ~/.gnus.el to load enough old articles to prevent teared threads, replace 'some with t to load
all articles (Warning: Both settings enlarge the amount of data which is 
fetched when you enter a group and slow down the process of entering a group).
806

807 808 809
If you already use Gnus 5.10, you can say 
@samp{/o N} 
In summary buffer to load the last N messages, this feature is not available in 5.8.8
810

811 812 813
If you don't want all old messages, but the parent of the message you're just reading,
you can say @samp{^}, if you want to retrieve the whole thread
the message you're just reading belongs to, @samp{A T} is your friend.
814

815 816
@node [4.2]
@subsubheading Question 4.2
817

818 819
How to tell Gnus to show an important message every time I
enter a group, even when it's read?
820

821
@subsubheading Answer
822

823 824 825 826 827 828
You can tick important messages. To do this hit
@samp{u} while point is in summary buffer
over the message. When you want to remove the mark, hit
either @samp{d} (this deletes the tick
mark and set's unread mark) or @samp{M c}
(which deletes all marks for the message).
829

830 831
@node [4.3]
@subsubheading Question 4.3
832

833
How to view the headers of a message?
834

835
@subsubheading Answer
836

837 838 839 840
Say @samp{t} 
to show all headers, one more
@samp{t} 
hides them again.
841

842 843
@node [4.4]
@subsubheading Question 4.4
844

845
How to view the raw unformatted message?
846

847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867
@subsubheading Answer

Say 
@samp{C-u g} 
to show the raw message
@samp{g} 
returns to normal view.

@node [4.5]
@subsubheading Question 4.5

How can I change the headers Gnus displays by default at
the top of the article buffer?

@subsubheading Answer

The variable gnus-visible-headers controls which headers
are shown, its value is a regular expression, header lines
which match it are shown. So if you want author, subject,
date, and if the header exists, Followup-To and MUA / NUA
say this in ~/.gnus.el:
868 869

@example
870 871 872
(setq gnus-visible-headers
      '("^From" "^Subject" "^Date" "^Newsgroups" "^Followup-To"
	"^User-Agent" "^X-Newsreader" "^X-Mailer"))
873
@end example
874
@noindent
Dave Love's avatar
#  
Dave Love committed
875

876 877
@node [4.6]
@subsubheading Question 4.6
Dave Love's avatar
#  
Dave Love committed
878

879 880
I'd like Gnus NOT to render HTML-mails but show me the
text part if it's available. How to do it?
Dave Love's avatar
#  
Dave Love committed
881

882 883 884
@subsubheading Answer

Say
Dave Love's avatar
#  
Dave Love committed
885

886 887 888 889 890 891 892
@example
(eval-after-load "mm-decode"
 '(progn 
      (add-to-list 'mm-discouraged-alternatives "text/html")
      (add-to-list 'mm-discouraged-alternatives "text/richtext")))
@end example
@noindent
893 894

in ~/.gnus.el. If you don't want HTML rendered, even if there's no text alternative add
Dave Love's avatar
#  
Dave Love committed
895

896 897 898 899
@example
(setq mm-automatic-display (remove "text/html" mm-automatic-display))
@end example
@noindent
Dave Love's avatar
#  
Dave Love committed
900

901
too.
Dave Love's avatar
#  
Dave Love committed
902

903 904
@node [4.7]
@subsubheading Question 4.7
Dave Love's avatar
#  
Dave Love committed
905

906 907 908 909 910 911 912 913 914
Can I use some other browser than w3 to render my HTML-mails?

@subsubheading Answer

Only if you use Gnus 5.10 or younger. In this case you've got the
choice between w3, w3m, links, lynx and html2text, which
one is used can be specified in the variable
mm-text-html-renderer, so if you want links to render your
mail say
Dave Love's avatar
#  
Dave Love committed
915 916

@example
917
(setq mm-text-html-renderer 'links)
Dave Love's avatar
#  
Dave Love committed
918
@end example
919
@noindent
920

921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983
@node [4.8]
@subsubheading Question 4.8

Is there anything I can do to make poorly formatted mails
more readable?

@subsubheading Answer

Gnus offers you several functions to "wash" incoming mail, you can
find them if you browse through the menu, item
Article->Washing. The most interesting ones are probably "Wrap
long lines" (@samp{W w}), "Decode ROT13"
(@samp{W r}) and "Outlook Deuglify" which repairs
the dumb quoting used by many users of Microsoft products
(@samp{W Y f} gives you full deuglify.
See @samp{W Y C-h} or have a look at the menus for
other deuglifications).  Outlook deuglify is only available since
Gnus 5.10.

@node [4.9]
@subsubheading Question 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?

@subsubheading Answer

You want Scoring. Scoring means, that you define rules
which assign each message an integer value. Depending on
the value the message is highlighted in summary buffer (if
it's high, say +2000) or automatically marked read (if the
value is low, say -800) or some other action happens.

There are basically three ways of setting up rules which assign
the scoring-value to messages. The first and easiest way is to set
up rules based on the article you are just reading. Say you're
reading a message by a guy who always writes nonsense and you want
to ignore his messages in the future. Hit
@samp{L}, to set up a rule which lowers the score.
Now Gnus asks you which the criteria for lowering the Score shall
be. Hit @samp{?} twice to see all possibilities,
we want @samp{a} which means the author (the from
header). Now Gnus wants to know which kind of matching we want.
Hit either @samp{e} for an exact match or
@samp{s} for substring-match and delete afterwards
everything but the name to score down all authors with the given
name no matter which email address is used. Now you need to tell
Gnus when to apply the rule and how long it should last, hit e.g.
@samp{p} to apply the rule now and let it last
forever. If you want to raise the score instead of lowering it say
@samp{I} instead of @samp{L}.

You can also set up rules by hand. To do this say @samp{V
f} in summary buffer. Then you are asked for the name
of the score file, it's name.of.group.SCORE for rules valid in
only one group or all.Score for rules valid in all groups. See the
Gnus manual for the exact syntax, basically it's one big list
whose elements are lists again. the first element of those lists
is the header to score on, then one more list with what to match,
which score to assign, when to expire the rule and how to do the
matching. If you find me very interesting, you could e.g. add the
following to your all.Score:
Dave Love's avatar
#  
Dave Love committed
984

985 986 987 988 989 990
@example
(("references" ("hschmi22.userfqdn.rz-online.de" 500 nil s))
 ("message-id" ("hschmi22.userfqdn.rz-online.de" 999 nil s)))
@end example
@noindent

991 992 993 994 995 996 997 998 999 1000 1001
This would add 999 to the score of messages written by me
and 500 to the score of messages which are a (possibly
indirect) answer to a message written by me. Of course
nobody with a sane mind would do this :-)

The third alternative is adaptive scoring. This means Gnus
watches you and tries to find out what you find
interesting and what annoying and sets up rules
which reflect this. Adaptive scoring can be a huge help
when reading high traffic groups. If you want to activate
adaptive scoring say
Dave Love's avatar
#  
Dave Love committed
1002

1003 1004 1005 1006 1007
@example
(setq gnus-use-adaptive-scoring t)
@end example
@noindent

1008
in ~/.gnus.el.
1009

1010 1011
@node [4.10]
@subsubheading Question 4.10
1012

1013 1014
How can I disable threading in some (e.g. mail-) groups, or
set other variables specific for some groups?
1015

1016
@subsubheading Answer
1017

1018 1019 1020 1021 1022 1023 1024 1025
While in group buffer move point over the group and hit
@samp{G c}, this opens a buffer where you
can set options for the group. At the bottom of the buffer
you'll find an item that allows you to set variables
locally for the group. To disable threading enter
gnus-show-threads as name of variable and nil as
value. Hit button done at the top of the buffer when
you're ready.
1026

1027 1028
@node [4.11]
@subsubheading Question 4.11
1029

1030 1031
Can I highlight messages written by me and follow-ups to
those?
1032

1033
@subsubheading Answer
1034

1035 1036 1037 1038 1039 1040 1041
Stop those "Can I ..." questions, the answer is always yes
in Gnus Country :-). It's a three step process: First we
make faces (specifications of how summary-line shall look
like) for those postings, then we'll give them some
special score and finally we'll tell Gnus to use the new
faces. You can find detailed instructions on how to do it on
@uref{http://my.gnus.org/node/view/224, my.gnus.org}
1042

1043 1044
@node [4.12]
@subsubheading Question 4.12
1045

1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082
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?

@subsubheading Answer

No, that's a matter of design of Gnus, fixing this would
mean reimplementation of major parts of Gnus'
back ends. Gnus thinks "highest-article-number -
lowest-article-number = total-number-of-articles". This
works OK for Usenet groups, but if you delete and move
many messages in mail groups, this fails. To cure the
symptom, enter the group via @samp{C-u RET} 
(this makes Gnus get all messages), then
hit @samp{M P b} to mark all messages and
then say @samp{B m name.of.group} to move
all messages to the group they have been in before, they
get new message numbers in this process and the count is
right again (until you delete and move your mail to other
groups again).

@node [4.13]
@subsubheading Question 4.13

I don't like the layout of summary and article buffer, how
to change it? Perhaps even a three pane display?

@subsubheading Answer

You can control the windows configuration by calling the
function gnus-add-configuration. The syntax is a bit
complicated but explained very well in the manual node
"Window Layout". Some popular examples:

Instead 25% summary 75% article buffer 35% summary and 65%
article (the 1.0 for article means "take the remaining
space"):
Dave Love's avatar
#  
Dave Love committed
1083

1084