Commit | Line | Data |
---|---|---|
bd579c15 | 1 | @c Insert "\input texinfo" at 1st line before texing this file alone. |
6bf7aab6 | 2 | @c -*-texinfo-*- |
23f87bed MB |
3 | @c Copyright (C) 1995, 2001, 2003, 2004 Free Software Foundation, Inc. |
4 | @setfilename gnus-faq.info | |
5 | ||
6 | @c Frequently Asked Questions, FAQ - Introduction, Emacs for Heathens, Top | |
6bf7aab6 DL |
7 | |
8 | @node Frequently Asked Questions | |
23f87bed MB |
9 | @comment node-name, next, previous, up |
10 | ||
11 | @c @chapter Frequently Asked Questions | |
6bf7aab6 | 12 | @section Frequently Asked Questions |
23f87bed MB |
13 | @cindex FAQ |
14 | @cindex Frequently Asked Questions | |
6bf7aab6 | 15 | |
23f87bed MB |
16 | @c - Uncomment @chapter, comment @section |
17 | @c - run (texinfo-every-node-update) | |
18 | @c - revert it. | |
6bf7aab6 DL |
19 | |
20 | @menu | |
23f87bed MB |
21 | * FAQ - Introduction:: About Gnus and this FAQ. |
22 | * FAQ 1 - Installation:: Installation of Gnus. | |
23 | * FAQ 2 - Startup / Group buffer:: Start up questions and the first | |
24 | buffer Gnus shows you. | |
25 | * FAQ 3 - Getting messages:: Making Gnus read your mail and news. | |
26 | * FAQ 4 - Reading messages:: How to efficiently read messages. | |
27 | * FAQ 5 - Composing messages:: Composing mails or Usenet postings. | |
28 | * FAQ 6 - Old messages:: Importing, archiving, searching | |
29 | and deleting messages. | |
30 | * FAQ 7 - Gnus in a dial-up environment:: Reading mail and news while offline. | |
31 | * FAQ 8 - Getting help:: When this FAQ isn't enough. | |
32 | * FAQ 9 - Tuning Gnus:: How to make Gnus faster. | |
33 | * FAQ - Glossary:: Terms used in the FAQ explained. | |
6bf7aab6 DL |
34 | @end menu |
35 | ||
36 | ||
23f87bed MB |
37 | @subheading Abstract |
38 | ||
39 | This is the new Gnus Frequently Asked Questions list. If you have a | |
40 | Web browser, the official hypertext version is at | |
41 | @uref{http://my.gnus.org/FAQ/}, the Docbook source is available from | |
42 | @uref{http://sourceforge.net/projects/gnus/}. | |
43 | ||
44 | ||
45 | Please submit features and suggestions to the | |
46 | @email{faq-discuss@@my.gnus.org,FAQ discussion list}. | |
47 | The list is protected against junk mail with | |
48 | @uref{http://smarden.org/qconfirm/index.html,qconfirm, qconfirm}. As | |
49 | a subscriber, your submissions will automatically pass. You can | |
50 | also subscribe to the list by sending a blank email to | |
51 | @email{faq-discuss-subscribe@@my.gnus.org} | |
52 | and | |
53 | @uref{http://mail1.kens.com/cgi-bin/ezmlm-browse?command=monthbythread%26list=faq-discuss,browse | |
54 | the archive, browse the archive}. | |
55 | ||
56 | @node FAQ - Introduction, FAQ 1 - Installation, Frequently Asked Questions, Frequently Asked Questions | |
57 | @comment node-name, next, previous, up | |
58 | @heading Introduction | |
59 | ||
60 | This is the Gnus Frequently Asked Questions list. | |
61 | ||
62 | Gnus is a Usenet Newsreader and Electronic Mail User Agent implemented | |
63 | as a part of Emacs. It's been around in some form for almost a decade | |
64 | now, and has been distributed as a standard part of Emacs for much of | |
65 | that time. Gnus 5 is the latest (and greatest) incarnation. The | |
66 | original version was called GNUS, and was written by Masanobu UMEDA. | |
67 | When autumn crept up in '94, Lars Magne Ingebrigtsen grew bored and | |
68 | decided to rewrite Gnus. | |
69 | ||
70 | Its biggest strength is the fact that it is extremely | |
71 | customizable. It is somewhat intimidating at first glance, but | |
72 | most of the complexity can be ignored until you're ready to take | |
73 | advantage of it. If you receive a reasonable volume of e-mail | |
74 | (you're on various mailing lists), or you would like to read | |
75 | high-volume mailing lists but cannot keep up with them, or read | |
76 | high volume newsgroups or are just bored, then Gnus is what you | |
77 | want. | |
78 | ||
79 | This FAQ was maintained by Justin Sheehy until March 2002. He | |
80 | would like to thank Steve Baur and Per Abrahamsen for doing a wonderful | |
81 | job with this FAQ before him. We would like to do the same - thanks, | |
82 | Justin! | |
83 | ||
84 | ||
85 | If you have a Web browser, the official hypertext version is at:@* | |
86 | @uref{http://my.gnus.org/FAQ/}. | |
87 | This version is much nicer than the unofficial hypertext | |
88 | versions that are archived at Utrecht, Oxford, Smart Pages, Ohio | |
89 | State, and other FAQ archives. See the resources question below | |
90 | if you want information on obtaining it in another format. | |
91 | ||
92 | ||
93 | The information contained here was compiled with the assistance | |
94 | of the Gnus development mailing list, and any errors or | |
95 | misprints are the my.gnus.org team's fault, sorry. | |
96 | ||
97 | ||
98 | @ifnottex | |
99 | @node FAQ 1 - Installation, FAQ 2 - Startup / Group buffer, FAQ - Introduction, Frequently Asked Questions | |
100 | @end ifnottex | |
6bf7aab6 DL |
101 | @subsection Installation |
102 | ||
23f87bed MB |
103 | @menu |
104 | * [1.1]:: What is the latest version of Gnus? | |
9b5773bc | 105 | * [1.2]:: What's new in 5.10? |
23f87bed MB |
106 | * [1.3]:: Where and how to get Gnus? |
107 | * [1.4]:: What to do with the tarball now? | |
108 | * [1.5]:: Which version of Emacs do I need? | |
109 | * [1.6]:: How do I run Gnus on both Emacs and XEmacs? | |
110 | @end menu | |
6bf7aab6 | 111 | |
6bf7aab6 | 112 | |
23f87bed MB |
113 | @ifnottex |
114 | @node [1.1], [1.2], FAQ 1 - Installation, FAQ 1 - Installation | |
115 | @end ifnottex | |
116 | @subsubheading Question 1.1: | |
6bf7aab6 | 117 | |
23f87bed | 118 | What is the latest version of Gnus? |
6bf7aab6 | 119 | |
23f87bed | 120 | Answer: |
6bf7aab6 | 121 | |
9b5773bc | 122 | Jingle please: Gnus 5.10 is released, get it while it's |
23f87bed MB |
123 | hot! As well as the step in version number is rather |
124 | small, Gnus 5.10 has tons of new features which you | |
125 | shouldn't miss, however if you are cautious, you might | |
126 | prefer to stay with 5.8.8 respectively 5.9 (they are | |
127 | basically the same) until some bugfix releases are out. | |
128 | ||
129 | @ifnottex | |
130 | @node [1.2], [1.3], [1.1], FAQ 1 - Installation | |
131 | @end ifnottex | |
132 | @subsubheading Question 1.2: | |
6bf7aab6 | 133 | |
9b5773bc | 134 | What's new in 5.10? |
6bf7aab6 | 135 | |
23f87bed | 136 | Answer: |
6bf7aab6 | 137 | |
23f87bed MB |
138 | First of all, you should have a look into the file |
139 | GNUS-NEWS in the toplevel directory of the Gnus tarball, | |
140 | there the most important changes are listed. Here's a | |
141 | short list of the changes I find especially | |
142 | important/interesting: | |
143 | ||
6bf7aab6 | 144 | |
23f87bed MB |
145 | |
146 | ||
147 | @itemize @bullet{} | |
6bf7aab6 DL |
148 | |
149 | @item | |
23f87bed MB |
150 | Major rewrite of the Gnus agent, Gnus agent is now |
151 | active by default. | |
152 | ||
153 | @item | |
154 | Many new article washing functions for dealing with | |
155 | ugly formatted articles. | |
156 | ||
157 | @item | |
158 | Anti Spam features. | |
159 | ||
160 | @item | |
161 | message-utils now included in Gnus. | |
162 | ||
163 | @item | |
164 | New format specifiers for summary lines, e.g. %B for | |
165 | a complex trn-style thread tree. | |
166 | ||
167 | @end itemize | |
168 | ||
169 | @ifnottex | |
170 | @node [1.3], [1.4], [1.2], FAQ 1 - Installation | |
171 | @end ifnottex | |
172 | @subsubheading Question 1.3: | |
173 | ||
174 | Where and how to get Gnus? | |
175 | ||
176 | Answer: | |
177 | ||
178 | The latest released version of Gnus isn't included in | |
179 | Emacs 21 and until now it also isn't available through the | |
180 | package system of XEmacs 21.4, therefor you should get the | |
181 | Gnus tarball from | |
182 | @uref{http://www.gnus.org/dist/gnus.tar.gz} | |
183 | or via anonymous FTP from | |
184 | @uref{ftp://ftp.gnus.org/pub/gnus/gnus.tar.gz}. | |
185 | ||
186 | @ifnottex | |
187 | @node [1.4], [1.5], [1.3], FAQ 1 - Installation | |
188 | @end ifnottex | |
189 | @subsubheading Question 1.4: | |
190 | ||
191 | What to do with the tarball now? | |
192 | ||
193 | ||
194 | Answer: | |
195 | ||
196 | Untar it via @samp{tar xvzf gnus.tar.gz} and do the common | |
197 | @samp{./configure; make; make install} circle. | |
198 | (under MS-Windows either get the Cygwin environment from | |
199 | @uref{http://www.cygwin.com} | |
200 | which allows you to do what's described above or unpack the | |
201 | tarball with some packer (e.g. Winace from | |
202 | @uref{http://www.winace.com}) | |
203 | and use the batch-file make.bat included in the tarball to install | |
204 | Gnus. If you don't want to (or aren't allowed to) install Gnus | |
205 | system-wide, you can install it in your home directory and add the | |
206 | following lines to your ~/.xemacs/init.el or ~/.emacs: | |
207 | ||
6bf7aab6 | 208 | |
23f87bed MB |
209 | @example |
210 | (add-to-list 'load-path "/path/to/gnus/lisp") | |
211 | (if (featurep 'xemacs) | |
212 | (add-to-list 'Info-directory-list "/path/to/gnus/texi/") | |
213 | (add-to-list 'Info-default-directory-list "/path/to/gnus/texi/")) | |
214 | @end example | |
6bf7aab6 | 215 | |
23f87bed MB |
216 | @noindent |
217 | Make sure that you don't have any Gnus related stuff | |
218 | before this line, on MS Windows use something like | |
219 | "C:/path/to/lisp" (yes, "/"). | |
220 | ||
221 | @ifnottex | |
222 | @node [1.5], [1.6], [1.4], FAQ 1 - Installation | |
223 | @end ifnottex | |
224 | @subsubheading Question 1.5: | |
225 | ||
226 | Which version of Emacs do I need? | |
227 | ||
228 | Answer: | |
229 | ||
9b5773bc | 230 | Gnus 5.10 requires an Emacs version that is greater |
23f87bed MB |
231 | than or equal to Emacs 20.7 or XEmacs 21.1. |
232 | ||
233 | @ifnottex | |
234 | @node [1.6], , [1.5], FAQ 1 - Installation | |
235 | @end ifnottex | |
236 | @subsubheading Question 1.6: | |
237 | ||
238 | How do I run Gnus on both Emacs and XEmacs? | |
239 | ||
240 | Answer: | |
241 | ||
242 | You can't use the same copy of Gnus in both as the Lisp | |
243 | files are byte-compiled to a format which is different | |
244 | depending on which Emacs did the compilation. Get one copy | |
245 | of Gnus for Emacs and one for XEmacs. | |
246 | ||
247 | @ifnottex | |
248 | @node FAQ 2 - Startup / Group buffer, FAQ 3 - Getting messages, FAQ 1 - Installation, Frequently Asked Questions | |
249 | @end ifnottex | |
250 | @subsection Startup / Group buffer | |
6bf7aab6 | 251 | |
23f87bed MB |
252 | @menu |
253 | * [2.1]:: Every time I start Gnus I get a message | |
254 | "Gnus auto-save file exists. Do you want to read it?", | |
255 | what does this mean and how to prevent it? | |
256 | * [2.2]:: Gnus doesn't remember which groups I'm subscribed to, what's this? | |
257 | * [2.3]:: How to change the format of the lines in Group buffer? | |
258 | * [2.4]:: My group buffer becomes a bit crowded, is there a way to sort my | |
259 | groups into categories so I can easier browse through them? | |
260 | * [2.5]:: How to manually sort the groups in Group buffer? How to sort the | |
261 | groups in a topic? | |
262 | @end menu | |
6bf7aab6 | 263 | |
23f87bed MB |
264 | @ifnottex |
265 | @node [2.1], [2.2], FAQ 2 - Startup / Group buffer, FAQ 2 - Startup / Group buffer | |
266 | @end ifnottex | |
267 | @subsubheading Question 2.1: | |
268 | ||
269 | Every time I start Gnus I get a message "Gnus auto-save | |
270 | file exists. Do you want to read it?", what does this mean | |
271 | and how to prevent it? | |
272 | ||
273 | ||
274 | Answer: | |
275 | ||
276 | This message means that the last time you used Gnus, it | |
277 | wasn't properly exited and therefor couldn't write its | |
278 | informations to disk (e.g. which messages you read), you | |
279 | are now asked if you want to restore those informations | |
280 | from the auto-save file. | |
281 | ||
282 | ||
283 | To prevent this message make sure you exit Gnus | |
284 | via @samp{q} in group buffer instead of | |
285 | just killing Emacs. | |
286 | ||
287 | @ifnottex | |
288 | @node [2.2], [2.3], [2.1], FAQ 2 - Startup / Group buffer | |
289 | @end ifnottex | |
290 | @subsubheading Question: 2.2 | |
291 | ||
292 | Gnus doesn't remember which groups I'm subscribed to, | |
293 | what's this? | |
294 | ||
295 | ||
296 | Answer: | |
297 | ||
298 | You get the message described in the q/a pair above while | |
299 | starting Gnus, right? It's an other symptom for the same | |
300 | problem, so read the answer above. | |
301 | ||
302 | @ifnottex | |
303 | @node [2.3], [2.4], [2.2], FAQ 2 - Startup / Group buffer | |
304 | @end ifnottex | |
305 | @subsubheading Question 2.3: | |
306 | ||
307 | How to change the format of the lines in Group buffer? | |
308 | ||
309 | ||
310 | Answer: | |
311 | ||
312 | You've got to tweak the value of the variable | |
313 | gnus-group-line-format. See the manual node "Group Line | |
314 | Specification" for information on how to do this. An | |
315 | example for this (guess from whose .gnus :-)): | |
316 | ||
6bf7aab6 | 317 | |
23f87bed | 318 | @example |
6bf7aab6 | 319 | |
23f87bed MB |
320 | (setq gnus-group-line-format "%P%M%S[%5t]%5y : %(%g%)\n") |
321 | ||
322 | @end example | |
323 | ||
324 | @ifnottex | |
325 | @node [2.4], [2.5], [2.3], FAQ 2 - Startup / Group buffer | |
326 | @end ifnottex | |
327 | @subsubheading Question 2.4: | |
328 | ||
329 | My group buffer becomes a bit crowded, is there a way to | |
330 | sort my groups into categories so I can easier browse | |
331 | through them? | |
332 | ||
333 | ||
334 | Answer: | |
335 | ||
336 | Gnus offers the topic mode, it allows you to sort your | |
337 | groups in, well, topics, e.g. all groups dealing with | |
338 | Linux under the topic linux, all dealing with music under | |
339 | the topic music and all dealing with scottish music under | |
340 | the topic scottish which is a subtopic of music. | |
341 | ||
342 | ||
343 | To enter topic mode, just hit t while in Group buffer. Now | |
344 | you can use @samp{T n} to create a topic | |
345 | at point and @samp{T m} to move a group to | |
346 | a specific topic. For more commands see the manual or the | |
347 | menu. You might want to include the %P specifier at the | |
348 | beginning of your gnus-group-line-format variable to have | |
349 | the groups nicely indented. | |
350 | ||
351 | @ifnottex | |
352 | @node [2.5], , [2.4], FAQ 2 - Startup / Group buffer | |
353 | @end ifnottex | |
354 | @subsubheading Question 2.5: | |
355 | ||
356 | How to manually sort the groups in Group buffer? How to | |
357 | sort the groups in a topic? | |
358 | ||
359 | ||
360 | Answer: | |
361 | ||
362 | Move point over the group you want to move and | |
363 | hit @samp{C-k}, now move point to the | |
364 | place where you want the group to be and | |
365 | hit @samp{C-y}. | |
366 | ||
367 | @ifnottex | |
368 | @node FAQ 3 - Getting messages, FAQ 4 - Reading messages, FAQ 2 - Startup / Group buffer, Frequently Asked Questions | |
369 | @end ifnottex | |
370 | @subsection Getting messages | |
6bf7aab6 | 371 | |
23f87bed MB |
372 | @menu |
373 | * [3.1]:: I just installed Gnus, started it via M-x gnus but it only says | |
374 | "nntp (news) open error", what to do? | |
375 | * [3.2]:: I'm working under Windows and have no idea what ~/.gnus means. | |
376 | * [3.3]:: My news server requires authentication, how to store user name | |
377 | and password on disk? | |
378 | * [3.4]:: Gnus seems to start up OK, but I can't find out how to | |
379 | subscribe to a group. | |
380 | * [3.5]:: Gnus doesn't show all groups / Gnus says I'm not allowed to | |
381 | post on this server as well as I am, what's that? | |
382 | * [3.6]:: I want Gnus to fetch news from several servers, is this possible? | |
383 | * [3.7]:: And how about local spool files? | |
384 | * [3.8]:: OK, reading news works now, but I want to be able to read my mail | |
385 | with Gnus, too. How to do it? | |
386 | * [3.9]:: And what about IMAP? | |
387 | * [3.10]:: At the office we use one of those MS Exchange servers, | |
388 | can I use Gnus to read my mail from it? | |
389 | * [3.11]:: Can I tell Gnus not to delete the mails on the server | |
390 | it retrieves via POP3? | |
391 | @end menu | |
6bf7aab6 | 392 | |
23f87bed MB |
393 | @ifnottex |
394 | @node [3.1], [3.2], FAQ 3 - Getting messages, FAQ 3 - Getting messages | |
395 | @end ifnottex | |
396 | @subsubheading Question 3.1: | |
6bf7aab6 | 397 | |
23f87bed MB |
398 | I just installed Gnus, started it via |
399 | @samp{M-x gnus} | |
400 | but it only says "nntp (news) open error", what to do? | |
401 | ||
6bf7aab6 | 402 | |
23f87bed | 403 | Answer: |
6bf7aab6 | 404 | |
23f87bed MB |
405 | You've got to tell Gnus where to fetch the news from. Read |
406 | the documentation for information on how to do this. As a | |
407 | first start, put those lines in ~/.gnus: | |
408 | ||
6bf7aab6 | 409 | |
23f87bed MB |
410 | @example |
411 | (setq gnus-select-method '(nntp "news.yourprovider.net")) | |
412 | (setq user-mail-address "you@@yourprovider.net") | |
413 | (setq user-full-name "Your Name") | |
414 | @end example | |
415 | ||
416 | @ifnottex | |
417 | @node [3.2], [3.3], [3.1], FAQ 3 - Getting messages | |
418 | @end ifnottex | |
419 | @subsubheading Question 3.2: | |
420 | ||
421 | I'm working under Windows and have no idea what ~/.gnus means. | |
422 | ||
423 | ||
424 | Answer: | |
425 | ||
426 | The ~/ means the home directory where Gnus and Emacs look for the | |
427 | configuration files. However, you don't really need to know what this | |
428 | means, it suffices that Emacs knows what it means :-) You can type | |
429 | @samp{C-x C-f ~/.gnus RET } (yes, with the forward slash, even on | |
430 | Windows), and Emacs will open the right file for you. (It will most | |
431 | likely be new, and thus empty.) However, I'd discourage you from | |
432 | doing so, since the directory Emacs chooses will most certainly not be | |
433 | what you want, so let's do it the correct way. The first thing you've | |
434 | got to do is to create a suitable directory (no blanks in directory | |
435 | name please) e.g. @file{c:\myhome}. Then you must set the environment | |
436 | variable HOME to this directory. To do this under Win9x or Me include | |
437 | the line | |
438 | ||
6bf7aab6 | 439 | |
23f87bed | 440 | @example |
6bf7aab6 | 441 | |
23f87bed | 442 | SET HOME=C:\myhome |
9b5773bc | 443 | |
23f87bed | 444 | @end example |
6bf7aab6 | 445 | |
23f87bed MB |
446 | @noindent |
447 | in your autoexec.bat and reboot. Under NT, 2000 and XP, | |
448 | hit Winkey+Pause/Break to enter system options (if it | |
449 | doesn't work, go to Control Panel -> System). There you'll | |
450 | find the possibility to set environment variables, create | |
451 | a new one with name HOME and value @file{c:\myhome}, a reboot is | |
452 | not necessary. | |
453 | ||
454 | ||
455 | Now to create ~/.gnus, say | |
456 | @samp{C-x C-f ~/.gnus RET C-x C-s}. | |
457 | in Emacs. | |
458 | ||
459 | @ifnottex | |
460 | @node [3.3], [3.4], [3.2], FAQ 3 - Getting messages | |
461 | @end ifnottex | |
462 | @subsubheading Question 3.3: | |
463 | ||
464 | My news server requires authentication, how to store | |
465 | user name and password on disk? | |
466 | ||
467 | ||
468 | Answer: | |
469 | ||
470 | Create a file ~/.authinfo which includes for each server a line like this | |
471 | ||
6bf7aab6 DL |
472 | |
473 | @example | |
23f87bed | 474 | machine news.yourprovider.net login YourUserName password YourPassword |
6bf7aab6 DL |
475 | @end example |
476 | ||
23f87bed MB |
477 | @noindent |
478 | . | |
479 | Make sure that the file isn't readable to others if you | |
480 | work on a OS which is capable of doing so. (Under Unix | |
481 | say | |
6bf7aab6 | 482 | |
23f87bed MB |
483 | @example |
484 | chmod 600 ~/.authinfo | |
485 | @end example | |
6bf7aab6 | 486 | |
23f87bed MB |
487 | @noindent |
488 | in a shell.) | |
489 | ||
490 | @ifnottex | |
491 | @node [3.4], [3.5], [3.3], FAQ 3 - Getting messages | |
492 | @end ifnottex | |
493 | @subsubheading Question 3.4: | |
494 | ||
495 | Gnus seems to start up OK, but I can't find out how to | |
496 | subscribe to a group. | |
497 | ||
498 | ||
499 | Answer: | |
500 | ||
501 | If you know the name of the group say @samp{U | |
502 | name.of.group RET} in group buffer (use the | |
503 | tab-completion Luke). Otherwise hit ^ in group buffer, | |
504 | this brings you to the server buffer. Now place point (the | |
505 | cursor) over the server which carries the group you want, | |
506 | hit @samp{RET}, move point to the group | |
507 | you want to subscribe to and say @samp{u} | |
508 | to subscribe to it. | |
509 | ||
510 | @ifnottex | |
511 | @node [3.5], [3.6], [3.4], FAQ 3 - Getting messages | |
512 | @end ifnottex | |
513 | @subsubheading Question 3.5: | |
514 | ||
515 | Gnus doesn't show all groups / Gnus says I'm not allowed to | |
516 | post on this server as well as I am, what's that? | |
517 | ||
518 | ||
519 | Answer: | |
520 | ||
521 | Some providers allow restricted anonymous access and full | |
522 | access only after authorization. To make Gnus send authinfo | |
523 | to those servers append | |
524 | ||
6bf7aab6 | 525 | |
23f87bed MB |
526 | @example |
527 | force yes | |
528 | @end example | |
529 | ||
6bf7aab6 | 530 | |
23f87bed MB |
531 | @noindent |
532 | to the line for those servers in ~/.authinfo. | |
533 | ||
534 | @ifnottex | |
535 | @node [3.6], [3.7], [3.5], FAQ 3 - Getting messages | |
536 | @end ifnottex | |
537 | @subsubheading Question 3.6: | |
6bf7aab6 | 538 | |
23f87bed MB |
539 | I want Gnus to fetch news from several servers, is this possible? |
540 | ||
177c0ea7 | 541 | |
23f87bed | 542 | Answer: |
177c0ea7 | 543 | |
23f87bed MB |
544 | Of course. You can specify more sources for articles in the |
545 | variable gnus-secondary-select-methods. Add something like | |
546 | this in ~/.gnus: | |
547 | ||
6bf7aab6 | 548 | |
23f87bed MB |
549 | @example |
550 | (add-to-list 'gnus-secondary-select-methods | |
9b5773bc | 551 | '(nntp "news.yourSecondProvider.net")) |
23f87bed | 552 | (add-to-list 'gnus-secondary-select-methods |
9b5773bc | 553 | '(nntp "news.yourThirdProvider.net")) |
23f87bed MB |
554 | @end example |
555 | ||
556 | @ifnottex | |
557 | @node [3.7], [3.8], [3.6], FAQ 3 - Getting messages | |
558 | @end ifnottex | |
559 | @subsubheading Question 3.7: | |
6bf7aab6 | 560 | |
23f87bed MB |
561 | And how about local spool files? |
562 | ||
6bf7aab6 | 563 | |
23f87bed | 564 | Answer: |
6bf7aab6 | 565 | |
23f87bed MB |
566 | No problem, this is just one more select method called |
567 | nnspool, so you want this: | |
568 | ||
6bf7aab6 | 569 | |
23f87bed MB |
570 | @example |
571 | (add-to-list 'gnus-secondary-select-methods '(nnspool "")) | |
572 | @end example | |
177c0ea7 | 573 | |
23f87bed MB |
574 | @noindent |
575 | Or this if you don't want an NNTP Server as primary news source: | |
576 | ||
6bf7aab6 | 577 | |
23f87bed MB |
578 | @example |
579 | (setq gnus-select-method '(nnspool "")) | |
580 | @end example | |
6bf7aab6 | 581 | |
23f87bed MB |
582 | @noindent |
583 | Gnus will look for the spool file in /usr/spool/news, if you | |
584 | want something different, change the line above to something like this: | |
585 | ||
6bf7aab6 | 586 | |
23f87bed MB |
587 | @example |
588 | (add-to-list 'gnus-secondary-select-methods | |
589 | '(nnspool "" (nnspool-directory "/usr/local/myspoolddir"))) | |
590 | @end example | |
6bf7aab6 | 591 | |
23f87bed MB |
592 | @noindent |
593 | This sets the spool directory for this server only. | |
594 | You might have to specify more stuff like the program used | |
595 | to post articles, see the Gnus manual on how to do this. | |
596 | ||
597 | @ifnottex | |
598 | @node [3.8], [3.9], [3.7], FAQ 3 - Getting messages | |
599 | @end ifnottex | |
600 | @subsubheading Question 3.8: | |
601 | ||
602 | OK, reading news works now, but I want to be able to read my mail | |
603 | with Gnus, too. How to do it? | |
604 | ||
605 | ||
606 | Answer: | |
607 | ||
608 | That's a bit harder since there are many possible sources | |
609 | for mail, many possible ways for storing mail and many | |
610 | different ways for sending mail. The most common cases are | |
611 | these: 1: You want to read your mail from a pop3 server and | |
612 | send them directly to a SMTP Server 2: Some program like | |
613 | fetchmail retrieves your mail and stores it on disk from | |
614 | where Gnus shall read it. Outgoing mail is sent by | |
615 | Sendmail, Postfix or some other MTA. Sometimes, you even | |
616 | need a combination of the above cases. | |
617 | ||
618 | ||
619 | However, the first thing to do is to tell Gnus in which way | |
620 | it should store the mail, in Gnus terminology which back end | |
621 | to use. Gnus supports many different back ends, the most | |
622 | commonly used one is nnml. It stores every mail in one file | |
623 | and is therefor quite fast. However you might prefer a one | |
624 | file per group approach if your file system has problems with | |
625 | many small files, the nnfolder back end is then probably the | |
626 | choice for you. To use nnml add the following to ~/.gnus: | |
627 | ||
6bf7aab6 | 628 | |
23f87bed MB |
629 | @example |
630 | (add-to-list 'gnus-secondary-select-methods '(nnml "")) | |
631 | @end example | |
6bf7aab6 | 632 | |
23f87bed MB |
633 | @noindent |
634 | As you might have guessed, if you want nnfolder, it's | |
635 | ||
636 | ||
637 | @example | |
638 | (add-to-list 'gnus-secondary-select-methods '(nnfolder "")) | |
639 | @end example | |
640 | ||
6bf7aab6 | 641 | |
23f87bed MB |
642 | Now we need to tell Gnus, where to get it's mail from. If |
643 | it's a POP3 server, then you need something like this: | |
644 | ||
6bf7aab6 | 645 | |
23f87bed MB |
646 | @example |
647 | (eval-after-load "mail-source" | |
648 | '(add-to-list 'mail-sources '(pop :server "pop.YourProvider.net" | |
649 | :user "yourUserName" | |
650 | :password "yourPassword"))) | |
651 | @end example | |
6bf7aab6 | 652 | |
23f87bed MB |
653 | @noindent |
654 | Make sure ~/.gnus isn't readable to others if you store | |
655 | your password there. If you want to read your mail from a | |
656 | traditional spool file on your local machine, it's | |
657 | ||
6bf7aab6 | 658 | |
23f87bed MB |
659 | @example |
660 | (eval-after-load "mail-source" | |
661 | '(add-to-list 'mail-sources '(file :path "/path/to/spool/file"))) | |
662 | @end example | |
6bf7aab6 | 663 | |
23f87bed MB |
664 | @noindent |
665 | If it's a Maildir, with one file per message as used by | |
666 | postfix, Qmail and (optionally) fetchmail it's | |
667 | ||
6bf7aab6 | 668 | |
23f87bed MB |
669 | @example |
670 | (eval-after-load "mail-source" | |
671 | '(add-to-list 'mail-sources '(maildir :path "/path/to/Maildir/" | |
672 | :subdirs ("cur" "new"))) | |
673 | @end example | |
6bf7aab6 | 674 | |
23f87bed MB |
675 | @noindent |
676 | And finally if you want to read your mail from several files | |
677 | in one directory, for example because procmail already split your | |
678 | mail, it's | |
679 | ||
6bf7aab6 | 680 | |
23f87bed MB |
681 | @example |
682 | (eval-after-load "mail-source" | |
683 | '(add-to-list 'mail-sources '(directory :path "/path/to/procmail-dir/" | |
684 | :suffix ".prcml")) | |
685 | @end example | |
6bf7aab6 | 686 | |
23f87bed MB |
687 | @noindent |
688 | Where :suffix ".prcml" tells Gnus only to use files with the | |
689 | suffix .prcml. | |
690 | ||
6bf7aab6 | 691 | |
23f87bed MB |
692 | OK, now you only need to tell Gnus how to send mail. If you |
693 | want to send mail via sendmail (or whichever MTA is playing | |
694 | the role of sendmail on your system), you don't need to do | |
695 | anything. However, if you want to send your mail to an | |
696 | SMTP Server you need the following in your ~/.gnus | |
697 | ||
6bf7aab6 | 698 | |
23f87bed MB |
699 | @example |
700 | (setq send-mail-function 'smtpmail-send-it) | |
701 | (setq message-send-mail-function 'smtpmail-send-it) | |
702 | (setq smtpmail-default-smtp-server "smtp.yourProvider.net") | |
703 | @end example | |
704 | ||
705 | @ifnottex | |
706 | @node [3.9], [3.10], [3.8], FAQ 3 - Getting messages | |
707 | @end ifnottex | |
708 | @subsubheading Question 3.9: | |
6bf7aab6 | 709 | |
23f87bed MB |
710 | And what about IMAP? |
711 | ||
6bf7aab6 | 712 | |
23f87bed | 713 | Answer: |
6bf7aab6 | 714 | |
23f87bed MB |
715 | There are two ways of using IMAP with Gnus. The first one is |
716 | to use IMAP like POP3, that means Gnus fetches the mail from | |
717 | the IMAP server and stores it on disk. If you want to do | |
718 | this (you don't really want to do this) add the following to | |
719 | ~/.gnus | |
720 | ||
6bf7aab6 | 721 | |
23f87bed MB |
722 | @example |
723 | (add-to-list 'mail-sources '(imap :server "mail.mycorp.com" | |
724 | :user "username" | |
725 | :pass "password" | |
726 | :stream network | |
727 | :authentication login | |
728 | :mailbox "INBOX" | |
729 | :fetchflag "\\Seen")) | |
730 | @end example | |
6bf7aab6 | 731 | |
23f87bed MB |
732 | @noindent |
733 | You might have to tweak the values for stream and/or | |
734 | authentification, see the Gnus manual node "Mail Source | |
735 | Specifiers" for possible values. | |
736 | ||
6bf7aab6 | 737 | |
23f87bed MB |
738 | If you want to use IMAP the way it's intended, you've got to |
739 | follow a different approach. You've got to add the nnimap | |
740 | back end to your select method and give the information | |
741 | about the server there. | |
742 | ||
6bf7aab6 | 743 | |
23f87bed MB |
744 | @example |
745 | (add-to-list | |
746 | 'gnus-secondary-select-methods | |
747 | '(nnimap "Give the baby a name" | |
9b5773bc MB |
748 | (nnimap-address "imap.yourProvider.net") |
749 | (nnimap-port 143) | |
750 | (nnimap-list-pattern "archive.*"))) | |
23f87bed | 751 | @end example |
6bf7aab6 | 752 | |
23f87bed MB |
753 | @noindent |
754 | Again, you might have to specify how to authenticate to the | |
755 | server if Gnus can't guess the correct way, see the Manual | |
756 | Node "IMAP" for detailed information. | |
757 | ||
758 | @ifnottex | |
759 | @node [3.10], [3.11], [3.9], FAQ 3 - Getting messages | |
760 | @end ifnottex | |
761 | @subsubheading Question 3.10: | |
762 | ||
763 | At the office we use one of those MS Exchange servers, can I use | |
764 | Gnus to read my mail from it? | |
765 | ||
766 | ||
767 | Answer: | |
768 | ||
769 | Offer your administrator a pair of new running shoes for | |
770 | activating IMAP on the server and follow the instructions | |
771 | above. | |
772 | ||
773 | @ifnottex | |
774 | @node [3.11], , [3.10], FAQ 3 - Getting messages | |
775 | @end ifnottex | |
776 | @subsubheading Question 3.11: | |
777 | ||
778 | Can I tell Gnus not to delete the mails on the server it | |
779 | retrieves via POP3? | |
780 | ||
781 | ||
782 | Answer: | |
783 | ||
784 | First of all, that's not the way POP3 is intended to work, | |
785 | if you have the possibility, you should use the IMAP | |
786 | Protocol if you want your messages to stay on the | |
787 | server. Nevertheless there might be situations where you | |
788 | need the feature, but sadly Gnus itself has no predefined | |
789 | functionality to do so. | |
790 | ||
791 | ||
792 | However this is Gnus county so there are possibilities to | |
793 | achieve what you want. The easiest way is to get an external | |
794 | program which retrieves copies of the mail and stores them | |
795 | on disk, so Gnus can read it from there. On Unix systems you | |
796 | could use e.g. fetchmail for this, on MS Windows you can use | |
797 | Hamster, an excellent local news and mail server. | |
798 | ||
799 | ||
800 | The other solution would be, to replace the method Gnus | |
801 | uses to get mail from POP3 servers by one which is capable | |
802 | of leaving the mail on the server. If you use XEmacs, get | |
803 | the package mail-lib, it includes an enhanced pop3.el, | |
804 | look in the file, there's documentation on how to tell | |
805 | Gnus to use it and not to delete the retrieved mail. For | |
806 | GNU Emacs look for the file epop3.el which can do the same | |
807 | (If you know the home of this file, please send me an | |
808 | e-mail). You can also tell Gnus to use an external program | |
809 | (e.g. fetchmail) to fetch your mail, see the info node | |
810 | "Mail Source Specifiers" in the Gnus manual on how to do | |
811 | it. | |
812 | ||
813 | ||
814 | @ifnottex | |
815 | @node FAQ 4 - Reading messages, FAQ 5 - Composing messages, FAQ 3 - Getting messages, Frequently Asked Questions | |
816 | @end ifnottex | |
817 | @subsection Reading messages | |
6bf7aab6 | 818 | |
23f87bed MB |
819 | @menu |
820 | * [4.1]:: When I enter a group, all read messages are gone. | |
821 | How to view them again? | |
822 | * [4.2]:: How to tell Gnus to show an important message every time | |
823 | I enter a group, even when it's read? | |
824 | * [4.3]:: How to view the headers of a message? | |
825 | * [4.4]:: How to view the raw unformatted message? | |
826 | * [4.5]:: How can I change the headers Gnus displays by default at the | |
827 | top of the article buffer? | |
828 | * [4.6]:: I'd like Gnus NOT to render HTML-mails but show me the | |
829 | text part if it's available. How to do it? | |
830 | * [4.7]:: Can I use some other browser than w3 to render my HTML-mails? | |
831 | * [4.8]:: Is there anything I can do to make poorly formatted mails | |
832 | more readable? | |
833 | * [4.9]:: Is there a way to automatically ignore posts by specific authors | |
834 | or with specific words in the subject? And can I highlight more | |
835 | interesting ones in some way? | |
836 | * [4.10]:: How can I disable threading in some (e.g. mail-) groups, or set | |
837 | other variables specific for some groups? | |
838 | * [4.11]:: Can I highlight messages written by me and follow-ups to those? | |
839 | * [4.12]:: The number of total messages in a group which Gnus displays in | |
840 | group buffer is by far to high, especially in mail groups. | |
841 | Is this a bug? | |
842 | * [4.13]:: I don't like the layout of summary and article buffer, | |
843 | how to change it? Perhaps even a three pane display? | |
844 | * [4.14]:: I don't like the way the Summary buffer looks, how to tweak it? | |
845 | * [4.15]:: How to split incoming mails in several groups? | |
846 | @end menu | |
6bf7aab6 | 847 | |
23f87bed MB |
848 | @ifnottex |
849 | @node [4.1], [4.2], FAQ 4 - Reading messages, FAQ 4 - Reading messages | |
850 | @end ifnottex | |
851 | @subsubheading Question 4.1: | |
6bf7aab6 | 852 | |
23f87bed MB |
853 | When I enter a group, all read messages are gone. How to view them again? |
854 | ||
6bf7aab6 | 855 | |
23f87bed | 856 | Answer: |
177c0ea7 | 857 | |
23f87bed MB |
858 | If you enter the group by saying |
859 | @samp{RET} | |
860 | in summary buffer with point over the group, only unread and ticked messages are loaded. Say | |
861 | @samp{C-u RET} | |
862 | instead to load all available messages. If you want only the e.g. 300 newest say | |
863 | @samp{C-u 300 RET} | |
864 | ||
6bf7aab6 | 865 | |
23f87bed MB |
866 | Loading only unread messages can be annoying if you have threaded view enabled, say |
867 | ||
6bf7aab6 | 868 | |
23f87bed MB |
869 | @example |
870 | (setq gnus-fetch-old-headers 'some) | |
871 | @end example | |
872 | ||
873 | ||
874 | @noindent | |
875 | in ~/.gnus to load enough old articles to prevent teared threads, replace 'some with t to load | |
876 | all articles (Warning: Both settings enlarge the amount of data which is | |
877 | fetched when you enter a group and slow down the process of entering a group). | |
878 | ||
879 | ||
9b5773bc | 880 | If you already use Gnus 5.10, you can say |
23f87bed MB |
881 | @samp{/o N} |
882 | In summary buffer to load the last N messages, this feature is not available in 5.8.8 | |
883 | ||
884 | ||
885 | If you don't want all old messages, but the parent of the message you're just reading, | |
886 | you can say @samp{^}, if you want to retrieve the whole thread | |
887 | the message you're just reading belongs to, @samp{A T} is your friend. | |
888 | ||
889 | @ifnottex | |
890 | @node [4.2], [4.3], [4.1], FAQ 4 - Reading messages | |
891 | @end ifnottex | |
892 | @subsubheading Question 4.2: | |
893 | ||
894 | How to tell Gnus to show an important message every time I | |
895 | enter a group, even when it's read? | |
896 | ||
897 | ||
898 | Answer: | |
899 | ||
900 | You can tick important messages. To do this hit | |
901 | @samp{u} while point is in summary buffer | |
902 | over the message. When you want to remove the mark, hit | |
903 | either @samp{d} (this deletes the tick | |
904 | mark and set's unread mark) or @samp{M c} | |
905 | (which deletes all marks for the message). | |
906 | ||
907 | @ifnottex | |
908 | @node [4.3], [4.4], [4.2], FAQ 4 - Reading messages | |
909 | @end ifnottex | |
910 | @subsubheading Question 4.3: | |
911 | ||
912 | How to view the headers of a message? | |
913 | ||
914 | ||
915 | Answer: | |
916 | ||
917 | Say @samp{t} | |
918 | to show all headers, one more | |
919 | @samp{t} | |
920 | hides them again. | |
921 | ||
922 | @ifnottex | |
923 | @node [4.4], [4.5], [4.3], FAQ 4 - Reading messages | |
924 | @end ifnottex | |
925 | @subsubheading Question 4.4: | |
926 | ||
927 | How to view the raw unformatted message? | |
928 | ||
929 | ||
930 | Answer: | |
931 | ||
932 | Say | |
933 | @samp{C-u g} | |
934 | to show the raw message | |
935 | @samp{g} | |
936 | returns to normal view. | |
937 | ||
938 | @ifnottex | |
939 | @node [4.5], [4.6], [4.4], FAQ 4 - Reading messages | |
940 | @end ifnottex | |
941 | @subsubheading Question 4.5: | |
942 | ||
943 | How can I change the headers Gnus displays by default at | |
944 | the top of the article buffer? | |
945 | ||
946 | ||
947 | Answer: | |
948 | ||
949 | The variable gnus-visible-headers controls which headers | |
950 | are shown, its value is a regular expression, header lines | |
951 | which match it are shown. So if you want author, subject, | |
952 | date, and if the header exists, Followup-To and MUA / NUA | |
953 | say this in ~/.gnus: | |
954 | ||
955 | @example | |
956 | (setq gnus-visible-headers | |
957 | "^\\(From:\\|Subject:\\|Date:\\|Followup-To:\ | |
958 | \\|X-Newsreader:\\|User-Agent:\\|X-Mailer:\\)") | |
959 | @end example | |
960 | ||
961 | @ifnottex | |
962 | @node [4.6], [4.7], [4.5], FAQ 4 - Reading messages | |
963 | @end ifnottex | |
964 | @subsubheading Question 4.6: | |
6bf7aab6 | 965 | |
23f87bed MB |
966 | I'd like Gnus NOT to render HTML-mails but show me the |
967 | text part if it's available. How to do it? | |
968 | ||
6bf7aab6 | 969 | |
23f87bed | 970 | Answer: |
6bf7aab6 | 971 | |
23f87bed MB |
972 | Say |
973 | ||
6bf7aab6 | 974 | |
23f87bed MB |
975 | @example |
976 | (eval-after-load "mm-decode" | |
977 | '(progn | |
978 | (add-to-list 'mm-discouraged-alternatives "text/html") | |
979 | (add-to-list 'mm-discouraged-alternatives "text/richtext"))) | |
980 | @end example | |
6bf7aab6 | 981 | |
23f87bed MB |
982 | @noindent |
983 | in ~/.gnus. If you don't want HTML rendered, even if there's no text alternative add | |
984 | ||
6bf7aab6 | 985 | |
23f87bed MB |
986 | @example |
987 | (setq mm-automatic-display (remove "text/html" mm-automatic-display)) | |
988 | @end example | |
6bf7aab6 | 989 | |
23f87bed MB |
990 | @noindent |
991 | too. | |
992 | ||
993 | @ifnottex | |
994 | @node [4.7], [4.8], [4.6], FAQ 4 - Reading messages | |
995 | @end ifnottex | |
996 | @subsubheading Question 4.7: | |
6bf7aab6 | 997 | |
23f87bed MB |
998 | Can I use some other browser than w3 to render my HTML-mails? |
999 | ||
6bf7aab6 | 1000 | |
23f87bed | 1001 | Answer: |
6bf7aab6 | 1002 | |
9b5773bc | 1003 | Only if you use Gnus 5.10 or younger. In this case you've got the |
23f87bed MB |
1004 | choice between w3, w3m, links, lynx and html2text, which |
1005 | one is used can be specified in the variable | |
1006 | mm-text-html-renderer, so if you want links to render your | |
1007 | mail say | |
1008 | ||
6bf7aab6 DL |
1009 | |
1010 | @example | |
23f87bed | 1011 | (setq mm-text-html-renderer 'links) |
6bf7aab6 | 1012 | @end example |
23f87bed MB |
1013 | |
1014 | @ifnottex | |
1015 | @node [4.8], [4.9], [4.7], FAQ 4 - Reading messages | |
1016 | @end ifnottex | |
1017 | @subsubheading Question 4.8: | |
1018 | ||
1019 | Is there anything I can do to make poorly formatted mails | |
1020 | more readable? | |
1021 | ||
1022 | ||
1023 | Answer: | |
1024 | ||
1025 | Gnus offers you several functions to "wash" incoming mail, | |
1026 | you can find them if you browse through the menu, item Article->Washing. The most | |
1027 | interesting ones are probably "Wrap long lines" ( | |
1028 | @samp{W w} | |
1029 | ), "Decode ROT13" ( | |
1030 | @samp{W r} | |
1031 | ) and "Outlook Deuglify" which repairs the dumb quoting used | |
1032 | by many users of Microsoft products ( | |
1033 | @samp{W Y f} gives you full deuglify. | |
1034 | See @samp{W Y C-h} or | |
1035 | have a look at the menus for other deuglifications). | |
9b5773bc | 1036 | Outlook deuglify is only available since Gnus 5.10. |
23f87bed MB |
1037 | |
1038 | @ifnottex | |
1039 | @node [4.9], [4.10], [4.8], FAQ 4 - Reading messages | |
1040 | @end ifnottex | |
1041 | @subsubheading Question 4.9: | |
1042 | ||
1043 | Is there a way to automatically ignore posts by specific | |
1044 | authors or with specific words in the subject? And can I | |
1045 | highlight more interesting ones in some way? | |
1046 | ||
1047 | ||
1048 | Answer: | |
1049 | ||
1050 | You want Scoring. Scoring means, that you define rules | |
1051 | which assign each message an integer value. Depending on | |
1052 | the value the message is highlighted in summary buffer (if | |
1053 | it's high, say +2000) or automatically marked read (if the | |
1054 | value is low, say -800) or some other action happens. | |
1055 | ||
1056 | ||
1057 | There are basically three ways of setting up rules which assign | |
1058 | the scoring-value to messages. The first and easiest way is to set | |
1059 | up rules based on the article you are just reading. Say you're | |
1060 | reading a message by a guy who always writes nonsense and you want | |
1061 | to ignore his messages in the future. Hit | |
1062 | @samp{L}, to set up a rule which lowers the score. | |
1063 | Now Gnus asks you which the criteria for lowering the Score shall | |
1064 | be. Hit @samp{?} twice to see all possibilities, | |
1065 | we want @samp{a} which means the author (the from | |
1066 | header). Now Gnus wants to know which kind of matching we want. | |
1067 | Hit either @samp{e} for an exact match or | |
1068 | @samp{s} for substring-match and delete afterwards | |
1069 | everything but the name to score down all authors with the given | |
1070 | name no matter which email address is used. Now you need to tell | |
1071 | Gnus when to apply the rule and how long it should last, hit e.g. | |
1072 | @samp{p} to apply the rule now and let it last | |
1073 | forever. If you want to raise the score instead of lowering it say | |
1074 | @samp{I} instead of @samp{L}. | |
1075 | ||
1076 | ||
1077 | You can also set up rules by hand. To do this say @samp{V | |
1078 | f} in summary buffer. Then you are asked for the name | |
1079 | of the score file, it's name.of.group.SCORE for rules valid in | |
1080 | only one group or all.Score for rules valid in all groups. See the | |
1081 | Gnus manual for the exact syntax, basically it's one big list | |
1082 | whose elements are lists again. the first element of those lists | |
1083 | is the header to score on, then one more list with what to match, | |
1084 | which score to assign, when to expire the rule and how to do the | |
1085 | matching. If you find me very interesting, you could e.g. add the | |
1086 | following to your all.Score: | |
1087 | ||
6bf7aab6 | 1088 | |
23f87bed MB |
1089 | @example |
1090 | (("references" ("hschmi22.userfqdn.rz-online.de" 500 nil s)) | |
1091 | ("message-id" ("hschmi22.userfqdn.rz-online.de" 999 nil s))) | |
1092 | @end example | |
6bf7aab6 | 1093 | |
23f87bed MB |
1094 | @noindent |
1095 | This would add 999 to the score of messages written by me | |
1096 | and 500 to the score of messages which are a (possibly | |
1097 | indirect) answer to a message written by me. Of course | |
1098 | nobody with a sane mind would do this :-) | |
1099 | ||
1100 | ||
1101 | The third alternative is adaptive scoring. This means Gnus | |
1102 | watches you and tries to find out what you find | |
1103 | interesting and what annoying and sets up rules | |
1104 | which reflect this. Adaptive scoring can be a huge help | |
1105 | when reading high traffic groups. If you want to activate | |
1106 | adaptive scoring say | |
1107 | ||
6bf7aab6 | 1108 | |
23f87bed MB |
1109 | @example |
1110 | (setq gnus-use-adaptive-scoring t) | |
1111 | @end example | |
6bf7aab6 | 1112 | |
23f87bed MB |
1113 | @noindent |
1114 | in ~/.gnus. | |
1115 | ||
1116 | @ifnottex | |
1117 | @node [4.10], [4.11], [4.9], FAQ 4 - Reading messages | |
1118 | @end ifnottex | |
1119 | @subsubheading Question 4.10: | |
1120 | ||
1121 | How can I disable threading in some (e.g. mail-) groups, or | |
1122 | set other variables specific for some groups? | |
1123 | ||
1124 | ||
1125 | Answer: | |
1126 | ||
1127 | While in group buffer move point over the group and hit | |
1128 | @samp{G c}, this opens a buffer where you | |
1129 | can set options for the group. At the bottom of the buffer | |
1130 | you'll find an item that allows you to set variables | |
1131 | locally for the group. To disable threading enter | |
1132 | gnus-show-threads as name of variable and nil as | |
1133 | value. Hit button done at the top of the buffer when | |
1134 | you're ready. | |
1135 | ||
1136 | @ifnottex | |
1137 | @node [4.11], [4.12], [4.10], FAQ 4 - Reading messages | |
1138 | @end ifnottex | |
1139 | @subsubheading Question 4.11: | |
1140 | ||
1141 | Can I highlight messages written by me and follow-ups to | |
1142 | those? | |
1143 | ||
1144 | ||
1145 | Answer: | |
1146 | ||
1147 | Stop those "Can I ..." questions, the answer is always yes | |
1148 | in Gnus Country :-). It's a three step process: First we | |
1149 | make faces (specifications of how summary-line shall look | |
1150 | like) for those postings, then we'll give them some | |
1151 | special score and finally we'll tell Gnus to use the new | |
1152 | faces. You can find detailed instructions on how to do it on | |
1153 | @uref{http://my.gnus.org/Members/dzimmerm/HowTo%2C2002-07-25%2C1027619165012198456/view,my.gnus.org} | |
1154 | ||
1155 | @ifnottex | |
1156 | @node [4.12], [4.13], [4.11], FAQ 4 - Reading messages | |
1157 | @end ifnottex | |
1158 | @subsubheading Question 4.12: | |
1159 | ||
1160 | The number of total messages in a group which Gnus | |
1161 | displays in group buffer is by far to high, especially in | |
1162 | mail groups. Is this a bug? | |
1163 | ||
1164 | ||
1165 | Answer: | |
1166 | ||
1167 | No, that's a matter of design of Gnus, fixing this would | |
1168 | mean reimplementation of major parts of Gnus' | |
1169 | back ends. Gnus thinks "highest-article-number - | |
1170 | lowest-article-number = total-number-of-articles". This | |
1171 | works OK for Usenet groups, but if you delete and move | |
1172 | many messages in mail groups, this fails. To cure the | |
1173 | symptom, enter the group via @samp{C-u RET} | |
1174 | (this makes Gnus get all messages), then | |
1175 | hit @samp{M P b} to mark all messages and | |
1176 | then say @samp{B m name.of.group} to move | |
1177 | all messages to the group they have been in before, they | |
1178 | get new message numbers in this process and the count is | |
1179 | right again (until you delete and move your mail to other | |
1180 | groups again). | |
1181 | ||
1182 | @ifnottex | |
1183 | @node [4.13], [4.14], [4.12], FAQ 4 - Reading messages | |
1184 | @end ifnottex | |
1185 | @subsubheading Question 4.13: | |
1186 | ||
1187 | I don't like the layout of summary and article buffer, how | |
1188 | to change it? Perhaps even a three pane display? | |
1189 | ||
1190 | ||
1191 | Answer: | |
1192 | ||
1193 | You can control the windows configuration by calling the | |
1194 | function gnus-add-configuration. The syntax is a bit | |
1195 | complicated but explained very well in the manual node | |
1196 | "Window Layout". Some popular examples: | |
1197 | ||
1198 | ||
1199 | Instead 25% summary 75% article buffer 35% summary and 65% | |
1200 | article (the 1.0 for article means "take the remaining | |
1201 | space"): | |
1202 | ||
6bf7aab6 | 1203 | |
23f87bed MB |
1204 | @example |
1205 | (gnus-add-configuration | |
1206 | '(article (vertical 1.0 | |
9b5773bc MB |
1207 | (summary .35 point) |
1208 | (article 1.0)))) | |
23f87bed MB |
1209 | @end example |
1210 | ||
6bf7aab6 | 1211 | |
23f87bed MB |
1212 | A three pane layout, Group buffer on the left, summary |
1213 | buffer top-right, article buffer bottom-right: | |
1214 | ||
6bf7aab6 | 1215 | |
23f87bed MB |
1216 | @example |
1217 | (gnus-add-configuration | |
1218 | '(article | |
1219 | (horizontal 1.0 | |
1220 | (vertical 25 | |
1221 | (group 1.0)) | |
1222 | (vertical 1.0 | |
1223 | (summary 0.25 point) | |
1224 | (article 1.0))))) | |
1225 | (gnus-add-configuration | |
1226 | '(summary | |
1227 | (horizontal 1.0 | |
1228 | (vertical 25 | |
1229 | (group 1.0)) | |
1230 | (vertical 1.0 | |
1231 | (summary 1.0 point))))) | |
1232 | @end example | |
1233 | ||
1234 | @ifnottex | |
1235 | @node [4.14], [4.15], [4.13], FAQ 4 - Reading messages | |
1236 | @end ifnottex | |
1237 | @subsubheading Question 4.14: | |
1238 | ||
1239 | I don't like the way the Summary buffer looks, how to tweak it? | |
1240 | ||
1241 | ||
1242 | Answer: | |
1243 | ||
1244 | You've got to play around with the variable | |
1245 | gnus-summary-line-format. It's value is a string of | |
1246 | symbols which stand for things like author, date, subject | |
1247 | etc. A list of the available specifiers can be found in the | |
1248 | manual node "Summary Buffer Lines" and the often forgotten | |
1249 | node "Formatting Variables" and it's sub-nodes. There | |
1250 | you'll find useful things like positioning the cursor and | |
1251 | tabulators which allow you a summary in table form, but | |
1252 | sadly hard tabulators are broken in 5.8.8. | |
1253 | ||
1254 | ||
9b5773bc | 1255 | Since 5.10, Gnus offers you some very nice new specifiers, |
23f87bed MB |
1256 | e.g. %B which draws a thread-tree and %&user-date which |
1257 | gives you a date where the details are dependent of the | |
1258 | articles age. Here's an example which uses both: | |
1259 | ||
6bf7aab6 | 1260 | |
23f87bed MB |
1261 | @example |
1262 | (setq gnus-summary-line-format | |
1263 | ":%U%R %B %s %-60=|%4L |%-20,20f |%&user-date; \n") | |
1264 | @end example | |
6bf7aab6 | 1265 | |
23f87bed MB |
1266 | @noindent |
1267 | resulting in: | |
1268 | ||
1269 | ||
1270 | @smallexample | |
1271 | :O Re: [Richard Stallman] rfc2047.el | 13 |Lars Magne Ingebrigt |Sat 23:06 | |
1272 | :O Re: Revival of the ding-patches list | 13 |Lars Magne Ingebrigt |Sat 23:12 | |
1273 | :R > Re: Find correct list of articles for a gro| 25 |Lars Magne Ingebrigt |Sat 23:16 | |
1274 | :O \-> ... | 21 |Kai Grossjohann | 0:01 | |
1275 | :R > Re: Cry for help: deuglify.el - moving stuf| 28 |Lars Magne Ingebrigt |Sat 23:34 | |
1276 | :O \-> ... | 115 |Raymond Scholz | 1:24 | |
1277 | :O \-> ... | 19 |Lars Magne Ingebrigt |15:33 | |
1278 | :O Slow mailing list | 13 |Lars Magne Ingebrigt |Sat 23:49 | |
1279 | :O Re: `@@' mark not documented | 13 |Lars Magne Ingebrigt |Sat 23:50 | |
1280 | :R > Re: Gnus still doesn't count messages prope| 23 |Lars Magne Ingebrigt |Sat 23:57 | |
1281 | :O \-> ... | 18 |Kai Grossjohann | 0:35 | |
1282 | :O \-> ... | 13 |Lars Magne Ingebrigt | 0:56 | |
1283 | @end smallexample | |
1284 | ||
1285 | @ifnottex | |
1286 | @node [4.15], , [4.14], FAQ 4 - Reading messages | |
1287 | @end ifnottex | |
1288 | @subsubheading Question 4.15: | |
1289 | ||
1290 | How to split incoming mails in several groups? | |
1291 | ||
1292 | ||
1293 | Answer: | |
1294 | ||
1295 | Gnus offers two possibilities for splitting mail, the easy | |
1296 | nnmail-split-methods and the more powerful Fancy Mail | |
1297 | Splitting. I'll only talk about the first one, refer to | |
1298 | the manual, node "Fancy Mail Splitting" for the latter. | |
1299 | ||
1300 | ||
1301 | The value of nnmail-split-methods is a list, each element | |
1302 | is a list which stands for a splitting rule. Each rule has | |
1303 | the form "group where matching articles should go to", | |
1304 | "regular expression which has to be matched", the first | |
1305 | rule which matches wins. The last rule must always be a | |
1306 | general rule (regular expression .*) which denotes where | |
1307 | articles should go which don't match any other rule. If | |
1308 | the folder doesn't exist yet, it will be created as soon | |
1309 | as an article lands there. By default the mail will be | |
1310 | send to all groups whose rules match. If you | |
1311 | don't want that (you probably don't want), say | |
1312 | ||
6bf7aab6 | 1313 | |
23f87bed MB |
1314 | @example |
1315 | (setq nnmail-crosspost nil) | |
1316 | @end example | |
6bf7aab6 | 1317 | |
23f87bed MB |
1318 | @noindent |
1319 | in ~/.gnus. | |
1320 | ||
6bf7aab6 | 1321 | |
23f87bed MB |
1322 | An example might be better than thousand words, so here's |
1323 | my nnmail-split-methods. Note that I send duplicates in a | |
1324 | special group and that the default group is spam, since I | |
1325 | filter all mails out which are from some list I'm | |
1326 | subscribed to or which are addressed directly to me | |
1327 | before. Those rules kill about 80% of the Spam which | |
1328 | reaches me (Email addresses are changed to prevent spammers | |
1329 | from using them): | |
1330 | ||
6bf7aab6 | 1331 | |
23f87bed MB |
1332 | @example |
1333 | (setq nnmail-split-methods | |
1334 | '(("duplicates" "^Gnus-Warning:.*duplicate") | |
1335 | ("XEmacs-NT" "^\\(To:\\|CC:\\).*localpart@@xemacs.bla.*") | |
1336 | ("Gnus-Tut" "^\\(To:\\|CC:\\).*localpart@@socha.bla.*") | |
1337 | ("tcsh" "^\\(To:\\|CC:\\).*localpart@@mx.gw.bla.*") | |
1338 | ("BAfH" "^\\(To:\\|CC:\\).*localpart@@.*uni-muenchen.bla.*") | |
1339 | ("Hamster-src" | |
1340 | "^\\(CC:\\|To:\\).*hamster-sourcen@@yahoogroups.\\(de\\|com\\).*") | |
1341 | ("Tagesschau" "^From: tagesschau <localpart@@www.tagesschau.bla>$") | |
1342 | ("Replies" "^\\(CC:\\|To:\\).*localpart@@Frank-Schmitt.bla.*") | |
1343 | ("EK" | |
1344 | "^From:.*\\(localpart@@privateprovider.bla\\|localpart@@workplace.bla\\).*") | |
1345 | ("Spam" | |
1346 | "^Content-Type:.*\\(ks_c_5601-1987\\|EUC-KR\\|big5\\|iso-2022-jp\\).*") | |
1347 | ("Spam" | |
1348 | "^Subject:.*\\(This really work\\|XINGA\\|ADV:\\|XXX\\|adult\\|sex\\).*") | |
1349 | ("Spam" | |
1350 | "^Subject:.*\\(\=\?ks_c_5601-1987\?\\|\=\?euc-kr\?\\|\=\?big5\?\\).*") | |
1351 | ("Spam" "^X-Mailer:\\(.*BulkMailer.*\\|.*MIME::Lite.*\\|\\)") | |
1352 | ("Spam" | |
1353 | "^X-Mailer:\\(.*CyberCreek Avalanche\\|.*http\:\/\/GetResponse\.com\\)") | |
1354 | ("Spam" | |
1355 | "^From:.*\\(verizon\.net\\|prontomail\.com\\|money\\|ConsumerDirect\\).*") | |
1356 | ("Spam" "^Delivered-To: GMX delivery to spamtrap@@gmx.bla$") | |
1357 | ("Spam" "^Received: from link2buy.com") | |
1358 | ("Spam" "^CC: .*azzrael@@t-online.bla") | |
1359 | ("Spam" "^X-Mailer-Version: 1.50 BETA") | |
1360 | ("Uni" "^\\(CC:\\|To:\\).*localpart@@uni-koblenz.bla.*") | |
1361 | ("Inbox" | |
1362 | "^\\(CC:\\|To:\\).*\\(my\ name\\|address@@one.bla\\|adress@@two.bla\\)") | |
1363 | ("Spam" ""))) | |
1364 | @end example | |
1365 | ||
6bf7aab6 | 1366 | |
23f87bed MB |
1367 | @ifnottex |
1368 | @node FAQ 5 - Composing messages, FAQ 6 - Old messages, FAQ 4 - Reading messages, Frequently Asked Questions | |
1369 | @end ifnottex | |
1370 | @subsection Composing messages | |
6bf7aab6 | 1371 | |
23f87bed MB |
1372 | @menu |
1373 | * [5.1]:: What are the basic commands I need to know for sending mail and | |
1374 | postings? | |
1375 | * [5.2]:: How to enable automatic word-wrap when composing messages? | |
1376 | * [5.3]:: How to set stuff like From, Organization, Reply-To, signature...? | |
1377 | * [5.4]:: Can I set things like From, Signature etc group based on the | |
1378 | group I post too? | |
1379 | * [5.5]:: Is there a spell-checker? Perhaps even on-the-fly spell-checking? | |
1380 | * [5.6]:: Can I set the dictionary based on the group I'm posting to? | |
1381 | * [5.7]:: Is there some kind of address-book, so I needn't remember all | |
1382 | those email addresses? | |
1383 | * [5.8]:: Sometimes I see little images at the top of article buffer. | |
1384 | What's that and how can I send one with my postings, too? | |
1385 | * [5.9]:: Sometimes I accidentally hit r instead of f in newsgroups. | |
1386 | Can Gnus warn me, when I'm replying by mail in newsgroups? | |
1387 | * [5.10]:: How to tell Gnus not to generate a sender header? | |
1388 | * [5.11]:: I want Gnus to locally store copies of my send mail and news, | |
1389 | how to do it? | |
1390 | * [5.12]:: People tell me my Message-IDs are not correct, | |
1391 | why aren't they and how to fix it? | |
1392 | @end menu | |
6bf7aab6 | 1393 | |
23f87bed MB |
1394 | @ifnottex |
1395 | @node [5.1], [5.2], FAQ 5 - Composing messages, FAQ 5 - Composing messages | |
1396 | @end ifnottex | |
1397 | @subsubheading Question 5.1: | |
1398 | ||
1399 | What are the basic commands I need to know for sending mail and postings? | |
1400 | ||
1401 | ||
1402 | Answer: | |
1403 | ||
1404 | To start composing a new mail hit @samp{m} | |
1405 | either in Group or Summary buffer, for a posting, it's | |
1406 | either @samp{a} in Group buffer and | |
1407 | filling the Newsgroups header manually | |
1408 | or @samp{a} in the Summary buffer of the | |
1409 | group where the posting shall be send to. Replying by mail | |
1410 | is | |
1411 | @samp{r} if you don't want to cite the | |
1412 | author, or import the cited text manually and | |
1413 | @samp{R} to cite the text of the original | |
1414 | message. For a follow up to a newsgroup, it's | |
1415 | @samp{f} and @samp{F} | |
1416 | (analog to @samp{r} and | |
1417 | @samp{R}. | |
1418 | ||
1419 | ||
1420 | Enter new headers above the line saying "--text follows | |
1421 | this line--", enter the text below the line. When ready | |
1422 | hit @samp{C-c C-c}, to send the message, | |
1423 | if you want to finish it later hit @samp{C-c | |
1424 | C-d} to save it in the drafts group, where you | |
1425 | can start editing it again by saying @samp{D | |
1426 | e}. | |
1427 | ||
1428 | @ifnottex | |
1429 | @node [5.2], [5.3], [5.1], FAQ 5 - Composing messages | |
1430 | @end ifnottex | |
1431 | @subsubheading Question 5.2: | |
1432 | ||
1433 | How to enable automatic word-wrap when composing messages? | |
1434 | ||
1435 | ||
1436 | Answer: | |
1437 | ||
1438 | Say | |
1439 | ||
6bf7aab6 | 1440 | |
23f87bed MB |
1441 | @example |
1442 | (add-hook 'message-mode-hook | |
1443 | (lambda () | |
1444 | (setq fill-column 72) | |
1445 | (turn-on-auto-fill))) | |
1446 | @end example | |
6bf7aab6 | 1447 | |
23f87bed MB |
1448 | @noindent |
1449 | in ~/.gnus. You can reformat a paragraph by hitting | |
1450 | @samp{M-q} (as usual) | |
1451 | ||
1452 | @ifnottex | |
1453 | @node [5.3], [5.4], [5.2], FAQ 5 - Composing messages | |
1454 | @end ifnottex | |
1455 | @subsubheading Question 5.3: | |
6bf7aab6 | 1456 | |
23f87bed MB |
1457 | How to set stuff like From, Organization, Reply-To, signature...? |
1458 | ||
6bf7aab6 | 1459 | |
23f87bed | 1460 | Answer: |
6bf7aab6 | 1461 | |
23f87bed MB |
1462 | There are other ways, but you should use posting styles |
1463 | for this. (See below why). | |
1464 | This example should make the syntax clear: | |
1465 | ||
6bf7aab6 | 1466 | |
23f87bed MB |
1467 | @example |
1468 | (setq gnus-posting-styles | |
1469 | '((".*" | |
1470 | (name "Frank Schmitt") | |
1471 | (address "me@@there.bla") | |
1472 | (organization "Hamme net, kren mer och nimmi") | |
1473 | (signature-file "~/.signature") | |
1474 | ("X-SampleHeader" "foobar") | |
1475 | (eval (setq some-variable "Foo bar"))))) | |
1476 | @end example | |
6bf7aab6 | 1477 | |
23f87bed MB |
1478 | @noindent |
1479 | The ".*" means that this settings are the default ones | |
1480 | (see below), valid values for the first element of the | |
1481 | following lists are signature, signature-file, | |
1482 | organization, address, name or body. The attribute name | |
1483 | can also be a string. In that case, this will be used as | |
1484 | a header name, and the value will be inserted in the | |
1485 | headers of the article; if the value is `nil', the header | |
1486 | name will be removed. You can also say (eval (foo bar)), | |
1487 | then the function foo will be evaluated with argument bar | |
1488 | and the result will be thrown away. | |
1489 | ||
1490 | @ifnottex | |
1491 | @node [5.4], [5.5], [5.3], FAQ 5 - Composing messages | |
1492 | @end ifnottex | |
1493 | @subsubheading Question 5.4: | |
1494 | ||
1495 | Can I set things like From, Signature etc group based on the group I post too? | |
1496 | ||
1497 | ||
1498 | Answer: | |
1499 | ||
1500 | That's the strength of posting styles. Before, we used ".*" | |
1501 | to set the default for all groups. You can use a regexp | |
1502 | like "^gmane" and the following settings are only applied | |
1503 | to postings you send to the gmane hierarchy, use | |
1504 | ".*binaries" instead and they will be applied to postings | |
1505 | send to groups containing the string binaries in their | |
1506 | name etc. | |
1507 | ||
1508 | ||
1509 | You can instead of specifying a regexp specify a function | |
1510 | which is evaluated, only if it returns true, the | |
1511 | corresponding settings take effect. Two interesting | |
1512 | candidates for this are message-news-p which returns t if | |
1513 | the current Group is a newsgroup and the corresponding | |
1514 | message-mail-p. | |
1515 | ||
1516 | ||
1517 | Note that all forms that match are applied, that means in | |
1518 | the example below, when I post to | |
1519 | gmane.mail.spam.spamassassin.general, the settings under | |
1520 | ".*" are applied and the settings under message-news-p and | |
1521 | those under "^gmane" and those under | |
1522 | "^gmane\\.mail\\.spam\\.spamassassin\\.general$". Because | |
1523 | of this put general settings at the top and specific ones | |
1524 | at the bottom. | |
1525 | ||
6bf7aab6 | 1526 | |
23f87bed MB |
1527 | @example |
1528 | (setq gnus-posting-styles | |
1529 | '((".*" ;;default | |
1530 | (name "Frank Schmitt") | |
1531 | (organization "Hamme net, kren mer och nimmi") | |
1532 | (signature-file "~/.signature")) | |
1533 | ((message-news-p) ;;Usenet news? | |
1534 | (address "mySpamTrap@@Frank-Schmitt.bla") | |
1535 | ("Reply-To" "hereRealRepliesOnlyPlease@@Frank-Schmitt.bla")) | |
1536 | ((message-mail-p) ;;mail? | |
1537 | (address "usedForMails@@Frank-Schmitt.bla")) | |
1538 | ("^gmane" ;;this is mail, too in fact | |
1539 | (address "usedForMails@@Frank-Schmitt.net") | |
1540 | ("Reply-To" nil)) | |
1541 | ("^gmane.mail.spam.spamassassin.general$" | |
1542 | (eval (setq mail-envelope-from "Azzrael@@rz-online.de")) | |
1543 | (address "Azzrael@@rz-online.de")))) | |
1544 | @end example | |
1545 | ||
1546 | @ifnottex | |
1547 | @node [5.5], [5.6], [5.4], FAQ 5 - Composing messages | |
1548 | @end ifnottex | |
1549 | @subsubheading Question 5.5: | |
6bf7aab6 | 1550 | |
23f87bed MB |
1551 | Is there a spell-checker? Perhaps even on-the-fly spell-checking? |
1552 | ||
6bf7aab6 | 1553 | |
23f87bed | 1554 | Answer: |
6bf7aab6 | 1555 | |
23f87bed MB |
1556 | You can use ispell.el to spell-check stuff in Emacs. So the first |
1557 | thing to do is to make sure that you've got either | |
6bf7aab6 DL |
1558 | @itemize @bullet |
1559 | @item | |
23f87bed MB |
1560 | @uref{http://fmg-www.cs.ucla.edu/fmg-members/geoff/ispell.html,ispell} |
1561 | or | |
1562 | @item | |
1563 | @uref{http://aspell.sourceforge.net/,aspell} | |
1564 | @end itemize | |
1565 | @noindent | |
1566 | installed and in your Path. | |
1567 | ||
1568 | Then you need | |
1569 | @uref{http://www.kdstevens.com/~stevens/ispell-page.html,ispell.el,ispell.el} | |
1570 | and for on-the-fly spell-checking | |
1571 | @uref{http://www-sop.inria.fr/mimosa/personnel/Manuel.Serrano/flyspell/flyspell.html,flyspell.el,flyspell.el}. | |
1572 | Ispell.el is shipped with Gnus Emacs and available through the Emacs | |
1573 | package system, flyspell.el is shipped with Emacs and part of XEmacs | |
1574 | text-modes package which is available through the package system, so | |
1575 | there should be no need to install them manually. | |
1576 | ||
1577 | ||
1578 | Ispell.el assumes you use ispell, if you choose aspell say | |
1579 | ||
6bf7aab6 | 1580 | |
23f87bed MB |
1581 | @example |
1582 | (setq ispell-program-name "aspell") | |
1583 | @end example | |
1584 | ||
6bf7aab6 | 1585 | |
23f87bed MB |
1586 | @noindent |
1587 | in your Emacs configuration file. | |
1588 | ||
6bf7aab6 | 1589 | |
23f87bed MB |
1590 | If you want your outgoing messages to be spell-checked, say |
1591 | ||
6bf7aab6 | 1592 | |
23f87bed MB |
1593 | @example |
1594 | (add-hook 'message-send-hook 'ispell-message) | |
1595 | @end example | |
6bf7aab6 | 1596 | |
23f87bed MB |
1597 | @noindent |
1598 | In your ~/.gnus, if you prefer on-the-fly spell-checking say | |
1599 | ||
6bf7aab6 | 1600 | |
23f87bed MB |
1601 | @example |
1602 | (add-hook 'message-mode-hook (lambda () (flyspell-mode 1))) | |
1603 | @end example | |
1604 | ||
1605 | @ifnottex | |
1606 | @node [5.6], [5.7], [5.5], FAQ 5 - Composing messages | |
1607 | @end ifnottex | |
1608 | @subsubheading Question 5.6: | |
6bf7aab6 | 1609 | |
23f87bed MB |
1610 | Can I set the dictionary based on the group I'm posting to? |
1611 | ||
6bf7aab6 | 1612 | |
23f87bed | 1613 | Answer: |
6bf7aab6 | 1614 | |
23f87bed MB |
1615 | Yes, say something like |
1616 | ||
6bf7aab6 | 1617 | |
23f87bed MB |
1618 | @example |
1619 | (add-hook 'gnus-select-group-hook | |
1620 | (lambda () | |
1621 | (cond | |
1622 | ((string-match | |
1623 | "^de\\." (gnus-group-real-name gnus-newsgroup-name)) | |
1624 | (ispell-change-dictionary "deutsch8")) | |
1625 | (t | |
1626 | (ispell-change-dictionary "english"))))) | |
1627 | @end example | |
1628 | ||
6bf7aab6 | 1629 | |
23f87bed MB |
1630 | @noindent |
1631 | in ~/.gnus. Change "^de\\." and "deutsch8" to something | |
1632 | that suits your needs. | |
1633 | ||
1634 | @ifnottex | |
1635 | @node [5.7], [5.8], [5.6], FAQ 5 - Composing messages | |
1636 | @end ifnottex | |
1637 | @subsubheading Question 5.7: | |
6bf7aab6 | 1638 | |
23f87bed MB |
1639 | Is there some kind of address-book, so I needn't remember |
1640 | all those email addresses? | |
1641 | ||
6bf7aab6 | 1642 | |
23f87bed | 1643 | Answer: |
6bf7aab6 | 1644 | |
23f87bed MB |
1645 | There's an very basic solution for this, mail aliases. |
1646 | You can store your mail addresses in a ~/.mailrc file using a simple | |
1647 | alias syntax: | |
1648 | ||
6bf7aab6 | 1649 | |
23f87bed MB |
1650 | @example |
1651 | alias al "Al <al@@english-heritage.bla>" | |
1652 | @end example | |
6bf7aab6 | 1653 | |
23f87bed MB |
1654 | @noindent |
1655 | Then typing your alias (followed by a space or punctuation | |
1656 | character) on a To: or Cc: line in the message buffer will | |
1657 | cause Gnus to insert the full address for you. See the | |
1658 | node "Mail Aliases" in Message (not Gnus) manual for | |
1659 | details. | |
1660 | ||
6bf7aab6 | 1661 | |
23f87bed MB |
1662 | However, what you really want is the Insidious Big Brother |
1663 | Database bbdb. Get it through the XEmacs package system or from | |
1664 | @uref{http://bbdb.sourceforge.net/,bbdb's homepage}. | |
1665 | Now place the following in ~/.gnus, to activate bbdb for Gnus: | |
1666 | ||
6bf7aab6 | 1667 | |
23f87bed MB |
1668 | @example |
1669 | (require 'bbdb) | |
1670 | (bbdb-initialize 'gnus 'message) | |
1671 | @end example | |
6bf7aab6 | 1672 | |
23f87bed MB |
1673 | @noindent |
1674 | Now you probably want some general bbdb configuration, | |
1675 | place them in ~/.emacs: | |
1676 | ||
6bf7aab6 | 1677 | |
23f87bed MB |
1678 | @example |
1679 | (require 'bbdb) | |
1680 | ;;If you don't live in Northern America, you should disable the | |
1681 | ;;syntax check for telephone numbers by saying | |
1682 | (setq bbdb-north-american-phone-numbers-p nil) | |
1683 | ;;Tell bbdb about your email address: | |
1684 | (setq bbdb-user-mail-names | |
1685 | (regexp-opt '("Your.Email@@here.bla" | |
1686 | "Your.other@@mail.there.bla"))) | |
1687 | ;;cycling while completing email addresses | |
1688 | (setq bbdb-complete-name-allow-cycling t) | |
1689 | ;;No popup-buffers | |
1690 | (setq bbdb-use-pop-up nil) | |
1691 | @end example | |
6bf7aab6 | 1692 | |
23f87bed MB |
1693 | @noindent |
1694 | Now you should be ready to go. Say @samp{M-x bbdb RET | |
1695 | RET} to open a bbdb buffer showing all | |
1696 | entries. Say @samp{c} to create a new | |
1697 | entry, @samp{b} to search your BBDB and | |
1698 | @samp{C-o} to add a new field to an | |
1699 | entry. If you want to add a sender to the BBDB you can | |
1700 | also just hit `:' on the posting in the summary buffer and | |
1701 | you are done. When you now compose a new mail, | |
1702 | hit @samp{TAB} to cycle through know | |
1703 | recipients. | |
1704 | ||
1705 | @ifnottex | |
1706 | @node [5.8], [5.9], [5.7], FAQ 5 - Composing messages | |
1707 | @end ifnottex | |
1708 | @subsubheading Question 5.8: | |
1709 | ||
1710 | Sometimes I see little images at the top of article | |
1711 | buffer. What's that and how can I send one with my | |
1712 | postings, too? | |
1713 | ||
1714 | ||
1715 | Answer: | |
1716 | ||
1717 | Those images are called X-Faces. They are 48*48 pixel b/w | |
1718 | pictures, encoded in a header line. If you want to include | |
1719 | one in your posts, you've got to convert some image to a | |
1720 | X-Face. So fire up some image manipulation program (say | |
1721 | Gimp), open the image you want to include, cut out the | |
1722 | relevant part, reduce color depth to 1 bit, resize to | |
1723 | 48*48 and save as bitmap. Now you should get the compface | |
1724 | package from | |
1725 | @uref{ftp://ftp.cs.indiana.edu:/pub/faces/,this site}. | |
1726 | and create the actual X-face by saying | |
1727 | ||
6bf7aab6 | 1728 | |
23f87bed MB |
1729 | @example |
1730 | cat file.xbm | xbm2ikon |compface > file.face | |
1731 | cat ./file.face | sed 's/\\/\\\\/g' | sed 's/\"/\\\"/g' > ./file.face.quoted | |
1732 | @end example | |
6bf7aab6 | 1733 | |
23f87bed MB |
1734 | @noindent |
1735 | If you can't use compface, there's an online X-face converter at@* | |
1736 | @uref{http://www.dairiki.org/xface/}. If you use MS Windows, you | |
1737 | could also use the WinFace program from | |
1738 | @uref{http://www.xs4all.nl/~walterln/winface/}. | |
6bf7aab6 | 1739 | |
23f87bed MB |
1740 | Now you only have to tell Gnus to include the X-face in your postings |
1741 | by saying | |
6bf7aab6 | 1742 | |
23f87bed MB |
1743 | @example |
1744 | (setq message-default-headers | |
1745 | (with-temp-buffer | |
1746 | (insert "X-Face: ") | |
1747 | (insert-file-contents "~/.xemacs/xface") | |
1748 | (buffer-string))) | |
1749 | @end example | |
1750 | ||
1751 | @noindent | |
1752 | in ~/.gnus. | |
1753 | ||
1754 | @ifnottex | |
1755 | @node [5.9], [5.10], [5.8], FAQ 5 - Composing messages | |
1756 | @end ifnottex | |
1757 | @subsubheading Question 5.9: | |
1758 | ||
1759 | Sometimes I accidentally hit r instead of f in | |
1760 | newsgroups. Can Gnus warn me, when I'm replying by mail in | |
1761 | newsgroups? | |
1762 | ||
6bf7aab6 | 1763 | |
23f87bed MB |
1764 | Answer: |
1765 | ||
1766 | Put this in ~/.gnus: | |
1767 | ||
1768 | ||
1769 | @example | |
1770 | (setq gnus-confirm-mail-reply-to-news t) | |
1771 | @end example | |
6bf7aab6 | 1772 | |
23f87bed | 1773 | @noindent |
9b5773bc | 1774 | if you already use Gnus 5.10, if you still use 5.8.8 or |
23f87bed MB |
1775 | 5.9 try this instead: |
1776 | ||
1777 | ||
1778 | @example | |
ebbeed62 MB |
1779 | (eval-after-load "gnus-msg" |
1780 | '(unless (boundp 'gnus-confirm-mail-reply-to-news) | |
1781 | (defadvice gnus-summary-reply (around reply-in-news activate) | |
1782 | "Request confirmation when replying to news." | |
23f87bed | 1783 | (interactive) |
ebbeed62 MB |
1784 | (when (or (not (gnus-news-group-p gnus-newsgroup-name)) |
1785 | (y-or-n-p "Really reply by mail to article author? ")) | |
1786 | ad-do-it)))) | |
23f87bed MB |
1787 | @end example |
1788 | ||
1789 | @ifnottex | |
1790 | @node [5.10], [5.11], [5.9], FAQ 5 - Composing messages | |
1791 | @end ifnottex | |
1792 | @subsubheading Question 5.10: | |
1793 | ||
1794 | How to tell Gnus not to generate a sender header? | |
1795 | ||
1796 | ||
1797 | Answer: | |
1798 | ||
9b5773bc | 1799 | Since 5.10 Gnus doesn't generate a sender header by |
23f87bed MB |
1800 | default. For older Gnus' try this in ~/.gnus: |
1801 | ||
1802 | ||
1803 | @example | |
1804 | (eval-after-load "message" | |
1805 | '(add-to-list 'message-syntax-checks '(sender . disabled))) | |
1806 | @end example | |
1807 | ||
1808 | ||
1809 | @ifnottex | |
1810 | @node [5.11], [5.12], [5.10], FAQ 5 - Composing messages | |
1811 | @end ifnottex | |
1812 | @subsubheading Question 5.11: | |
1813 | ||
1814 | I want gnus to locally store copies of my send mail and | |
1815 | news, how to do it? | |
1816 | ||
1817 | ||
1818 | Answer: | |
1819 | ||
1820 | You must set the variable gnus-message-archive-group to do | |
1821 | this. You can set it to a string giving the name of the | |
1822 | group where the copies shall go or like in the example | |
1823 | below use a function which is evaluated and which returns | |
1824 | the group to use. | |
1825 | ||
1826 | ||
1827 | @example | |
1828 | (setq gnus-message-archive-group | |
1829 | '((if (message-news-p) | |
1830 | "nnml:Send-News" | |
1831 | "nnml:Send-Mail"))) | |
1832 | @end example | |
1833 | ||
1834 | ||
1835 | @ifnottex | |
1836 | @node [5.12], , [5.11], FAQ 5 - Composing messages | |
1837 | @end ifnottex | |
1838 | @subsubheading Question 5.12: | |
1839 | ||
1840 | People tell me my Message-IDs are not correct, why | |
1841 | aren't they and how to fix it? | |
1842 | ||
1843 | ||
1844 | Answer: | |
1845 | ||
1846 | The message-ID is an unique identifier for messages you | |
1847 | send. To make it unique, Gnus need to know which machine | |
1848 | name to put after the "@@". If the name of the machine | |
1849 | where Gnus is running isn't suitable (it probably isn't | |
1850 | at most private machines) you can tell Gnus what to use | |
1851 | by saying | |
1852 | @example | |
1853 | (setq message-user-fqdn "yourmachine.yourdomain.tld") | |
1854 | @end example | |
1855 | @noindent | |
1856 | in ~/.gnus. If you use Gnus 5.9 or ealier, you can use this | |
9b5773bc | 1857 | instead (works for newer versions a well): |
23f87bed MB |
1858 | @example |
1859 | (eval-after-load "message" | |
9b5773bc | 1860 | '(let ((fqdn "yourmachine.yourdomain.tld"));; <-- Edit this! |
23f87bed MB |
1861 | (if (boundp 'message-user-fqdn) |
1862 | (setq message-user-fqdn fqdn) | |
1863 | (gnus-message 1 "Redefining `message-make-fqdn'.") | |
1864 | (defun message-make-fqdn () | |
1865 | "Return user's fully qualified domain name." | |
1866 | fqdn)))) | |
1867 | @end example | |
1868 | ||
1869 | If you have no idea what to insert for | |
1870 | "yourmachine.yourdomain.tld", you've got several | |
1871 | choices. You can either ask your provider if he allows | |
1872 | you to use something like | |
1873 | yourUserName.userfqdn.provider.net, or you can use | |
1874 | somethingUnique.yourdomain.tld if you own the domain | |
1875 | yourdomain.tld, or you can register at a service which | |
1876 | gives private users a FQDN for free, e.g. | |
1877 | @uref{http://www.stura.tu-freiberg.de/~dlx/addfqdn.html}. | |
1878 | (Sorry but this website is in German, if you know of an | |
1879 | English one offering the same, drop me a note). | |
1880 | ||
1881 | ||
1882 | Finally you can tell Gnus not to generate a Message-ID | |
1883 | for News at all (and letting the server do the job) by saying | |
1884 | ||
1885 | ||
1886 | @example | |
1887 | (setq message-required-news-headers | |
1888 | (remove' Message-ID message-required-news-headers)) | |
1889 | @end example | |
1890 | ||
1891 | @noindent | |
1892 | you can also tell Gnus not to generate Message-IDs for mail by saying | |
1893 | ||
1894 | ||
1895 | @example | |
1896 | (setq message-required-mail-headers | |
1897 | (remove' Message-ID message-required-mail-headers)) | |
1898 | @end example | |
1899 | ||
1900 | @noindent | |
1901 | , however some mail servers don't generate proper | |
1902 | Message-IDs, too, so test if your Mail Server behaves | |
1903 | correctly by sending yourself a Mail and looking at the Message-ID. | |
1904 | ||
1905 | ||
1906 | @ifnottex | |
1907 | @node FAQ 6 - Old messages, FAQ 7 - Gnus in a dial-up environment, FAQ 5 - Composing messages, Frequently Asked Questions | |
1908 | @end ifnottex | |
1909 | @subsection Old messages | |
1910 | ||
1911 | @menu | |
1912 | * [6.1]:: How to import my old mail into Gnus? | |
1913 | * [6.2]:: How to archive interesting messages? | |
1914 | * [6.3]:: How to search for a specific message? | |
1915 | * [6.4]:: How to get rid of old unwanted mail? | |
1916 | * [6.5]:: I want that all read messages are expired (at least in some | |
1917 | groups). How to do it? | |
1918 | * [6.6]:: I don't want expiration to delete my mails but to move them | |
1919 | to another group. | |
1920 | @end menu | |
1921 | ||
1922 | @ifnottex | |
1923 | @node [6.1], [6.2], FAQ 6 - Old messages, FAQ 6 - Old messages | |
1924 | @end ifnottex | |
1925 | @subsubheading Question 6.1: | |
1926 | ||
1927 | How to import my old mail into Gnus? | |
1928 | ||
1929 | ||
1930 | Answer: | |
1931 | ||
1932 | The easiest way is to tell your old mail program to | |
1933 | export the messages in mbox format. Most Unix mailers | |
1934 | are able to do this, if you come from the MS Windows | |
1935 | world, you may find tools at | |
1936 | @uref{http://mbx2mbox.sourceforge.net/}. | |
1937 | ||
1938 | ||
1939 | Now you've got to import this mbox file into Gnus. To do | |
1940 | this, create a nndoc group based on the mbox file by | |
1941 | saying @samp{G f /path/file.mbox RET} in | |
1942 | Group buffer. You now have read-only access to your | |
1943 | mail. If you want to import the messages to your normal | |
1944 | Gnus mail groups hierarchy, enter the nndoc group you've | |
1945 | just created by saying @samp{C-u RET} | |
1946 | (thus making sure all messages are retrieved), mark all | |
1947 | messages by saying @samp{M P b} and | |
1948 | either copy them to the desired group by saying | |
1949 | @samp{B c name.of.group RET} or send them | |
1950 | through nnmail-split-methods (respool them) by saying | |
1951 | @samp{B r}. | |
1952 | ||
1953 | @ifnottex | |
1954 | @node [6.2], [6.3], [6.1], FAQ 6 - Old messages | |
1955 | @end ifnottex | |
1956 | @subsubheading Question 6.2: | |
1957 | ||
1958 | How to archive interesting messages? | |
1959 | ||
1960 | ||
1961 | Answer: | |
1962 | ||
1963 | If you stumble across an interesting message, say in | |
1964 | gnu.emacs.gnus and want to archive it there are several | |
1965 | solutions. The first and easiest is to save it to a file | |
1966 | by saying @samp{O f}. However, wouldn't | |
1967 | it be much more convenient to have more direct access to | |
1968 | the archived message from Gnus? If you say yes, put this | |
1969 | snippet by Frank Haun <pille3003@@fhaun.de> in | |
1970 | ~/.gnus: | |
1971 | ||
1972 | ||
1973 | @example | |
1974 | (defun my-archive-article (&optional n) | |
1975 | "Copies one or more article(s) to a corresponding `nnml:' group, e.g. | |
1976 | `gnus.ding' goes to `nnml:1.gnus.ding'. And `nnml:List-gnus.ding' goes | |
1977 | to `nnml:1.List-gnus-ding'. | |
1978 | ||
1979 | Use process marks or mark a region in the summary buffer to archive | |
1980 | more then one article." | |
1981 | (interactive "P") | |
1982 | (let ((archive-name | |
1983 | (format | |
1984 | "nnml:1.%s" | |
1985 | (if (featurep 'xemacs) | |
1986 | (replace-in-string gnus-newsgroup-name "^.*:" "") | |
1987 | (replace-regexp-in-string "^.*:" "" gnus-newsgroup-name))))) | |
1988 | (gnus-summary-copy-article n archive-name))) | |
1989 | @end example | |
1990 | ||
1991 | @noindent | |
1992 | You can now say @samp{M-x | |
1993 | my-archive-article} in summary buffer to | |
1994 | archive the article under the cursor in a nnml | |
1995 | group. (Change nnml to your preferred back end) | |
1996 | ||
1997 | ||
1998 | Of course you can also make sure the cache is enabled by saying | |
1999 | ||
2000 | ||
2001 | @example | |
2002 | (setq gnus-use-cache t) | |
2003 | @end example | |
2004 | ||
2005 | @noindent | |
2006 | then you only have to set either the tick or the dormant | |
2007 | mark for articles you want to keep, setting the read | |
2008 | mark will remove them from cache. | |
2009 | ||
2010 | @ifnottex | |
2011 | @node [6.3], [6.4], [6.2], FAQ 6 - Old messages | |
2012 | @end ifnottex | |
2013 | @subsubheading Question 6.3: | |
2014 | ||
2015 | How to search for a specific message? | |
2016 | ||
2017 | ||
2018 | Answer: | |
2019 | ||
2020 | There are several ways for this, too. For a posting from | |
2021 | a Usenet group the easiest solution is probably to ask | |
2022 | @uref{http://groups.google.com,groups.google.com}, | |
2023 | if you found the posting there, tell Google to display | |
2024 | the raw message, look for the message-id, and say | |
2025 | @samp{M-^ the@@message.id RET} in a | |
2026 | summary buffer. | |
9b5773bc | 2027 | Since Gnus 5.10 there's also a Gnus interface for |
23f87bed MB |
2028 | groups.google.com which you can call with |
2029 | @samp{G W}) in group buffer. | |
2030 | ||
2031 | ||
2032 | Another idea which works for both mail and news groups | |
2033 | is to enter the group where the message you are | |
2034 | searching is and use the standard Emacs search | |
2035 | @samp{C-s}, it's smart enough to look at | |
2036 | articles in collapsed threads, too. If you want to | |
2037 | search bodies, too try @samp{M-s} | |
2038 | instead. Further on there are the | |
2039 | gnus-summary-limit-to-foo functions, which can help you, | |
2040 | too. | |
2041 | ||
2042 | ||
2043 | Of course you can also use grep to search through your | |
2044 | local mail, but this is both slow for big archives and | |
2045 | inconvenient since you are not displaying the found mail | |
2046 | in Gnus. Here comes nnir into action. Nnir is a front end | |
2047 | to search engines like swish-e or swish++ and | |
2048 | others. You index your mail with one of those search | |
2049 | engines and with the help of nnir you can search trough | |
2050 | the indexed mail and generate a temporary group with all | |
2051 | messages which met your search criteria. If this sound | |
9b5773bc MB |
2052 | cool to you get nnir.el from the contrib directory of the Gnus |
2053 | distribution or | |
2054 | @uref{http://quimby.gnus.org/cgi-bin/cvsweb.cgi/~checkout~/gnus/contrib/nnir.el?rev=HEAD&content-type=text/plain} | |
23f87bed MB |
2055 | Instructions on how to use it are at the top of the file. |
2056 | ||
2057 | @ifnottex | |
2058 | @node [6.4], [6.5], [6.3], FAQ 6 - Old messages | |
2059 | @end ifnottex | |
2060 | @subsubheading Question 6.4: | |
2061 | ||
2062 | How to get rid of old unwanted mail? | |
2063 | ||
2064 | ||
2065 | Answer: | |
2066 | ||
2067 | You can of course just mark the mail you don't need | |
2068 | anymore by saying @samp{#} with point | |
2069 | over the mail and then say @samp{B DEL} | |
2070 | to get rid of them forever. You could also instead of | |
2071 | actually deleting them, send them to a junk-group by | |
2072 | saying @samp{B m nnml:trash-bin} which | |
2073 | you clear from time to time, but both are not the intended | |
2074 | way in Gnus. | |
2075 | ||
2076 | ||
2077 | In Gnus, we let mail expire like news expires on a news | |
2078 | server. That means you tell Gnus the message is | |
2079 | expirable (you tell Gnus "I don't need this mail | |
2080 | anymore") by saying @samp{E} with point | |
2081 | over the mail in summary buffer. Now when you leave the | |
2082 | group, Gnus looks at all messages which you marked as | |
2083 | expirable before and if they are old enough (default is | |
2084 | older than a week) they are deleted. | |
2085 | ||
2086 | @ifnottex | |
2087 | @node [6.5], [6.6], [6.4], FAQ 6 - Old messages | |
2088 | @end ifnottex | |
2089 | @subsubheading Question 6.5: | |
2090 | ||
2091 | I want that all read messages are expired (at least in | |
2092 | some groups). How to do it? | |
2093 | ||
2094 | ||
2095 | Answer: | |
2096 | ||
2097 | If you want all read messages to be expired (e.g. in | |
2098 | mailing lists where there's an online archive), you've | |
2099 | got two choices: auto-expire and | |
2100 | total-expire. Auto-expire means, that every article | |
2101 | which has no marks set and is selected for reading is | |
2102 | marked as expirable, Gnus hits @samp{E} | |
2103 | for you every time you read a message. Total-expire | |
2104 | follows a slightly different approach, here all article | |
2105 | where the read mark is set are expirable. | |
2106 | ||
2107 | ||
2108 | To activate auto-expire, include auto-expire in the | |
2109 | Group parameters for the group. (Hit @samp{G | |
2110 | c} in summary buffer with point over the | |
2111 | group to change group parameters). For total-expire add | |
2112 | total-expire to the group-parameters. | |
2113 | ||
2114 | ||
2115 | Which method you choose is merely a matter of taste: | |
2116 | Auto-expire is faster, but it doesn't play together with | |
2117 | Adaptive Scoring, so if you want to use this feature, | |
2118 | you should use total-expire. | |
2119 | ||
2120 | ||
2121 | If you want a message to be excluded from expiration in | |
2122 | a group where total or auto expire is active, set either | |
2123 | tick (hit @samp{u}) or dormant mark (hit | |
2124 | @samp{u}), when you use auto-expire, you | |
2125 | can also set the read mark (hit | |
2126 | @samp{d}). | |
2127 | ||
2128 | @ifnottex | |
2129 | @node [6.6], , [6.5], FAQ 6 - Old messages | |
2130 | @end ifnottex | |
2131 | @subsubheading Question 6.6: | |
2132 | ||
2133 | I don't want expiration to delete my mails but to move them | |
2134 | to another group. | |
2135 | ||
2136 | ||
2137 | Answer: | |
2138 | ||
2139 | Say something like this in ~/.gnus: | |
2140 | ||
2141 | ||
2142 | @example | |
2143 | (setq nnmail-expiry-target "nnml:expired") | |
2144 | @end example | |
2145 | ||
2146 | @noindent | |
2147 | (If you want to change the value of nnmail-expiry-target | |
2148 | on a per group basis see the question "How can I disable | |
2149 | threading in some (e.g. mail-) groups, or set other | |
2150 | variables specific for some groups?") | |
2151 | ||
2152 | ||
2153 | @ifnottex | |
2154 | @node FAQ 7 - Gnus in a dial-up environment, FAQ 8 - Getting help, FAQ 6 - Old messages, Frequently Asked Questions | |
2155 | @end ifnottex | |
2156 | @subsection Gnus in a dial-up environment | |
2157 | ||
2158 | @menu | |
2159 | * [7.1]:: I don't have a permanent connection to the net, how can I | |
2160 | minimize the time I've got to be connected? | |
2161 | * [7.2]:: So what was this thing about the Agent? | |
2162 | * [7.3]:: I want to store article bodies on disk, too. How to do it? | |
2163 | * [7.4]:: How to tell Gnus not to try to send mails / postings while | |
2164 | I'm offline? | |
2165 | @end menu | |
2166 | ||
2167 | ||
2168 | @ifnottex | |
2169 | @node [7.1], [7.2], FAQ 7 - Gnus in a dial-up environment, FAQ 7 - Gnus in a dial-up environment | |
2170 | @end ifnottex | |
2171 | @subsubheading Question 7.1: | |
2172 | ||
2173 | I don't have a permanent connection to the net, how can | |
2174 | I minimize the time I've got to be connected? | |
2175 | ||
2176 | ||
2177 | Answer: | |
2178 | ||
2179 | You've got basically two options: Either you use the | |
2180 | Gnus Agent (see below) for this, or you can install | |
2181 | programs which fetch your news and mail to your local | |
2182 | disk and Gnus reads the stuff from your local | |
2183 | machine. | |
2184 | ||
2185 | ||
2186 | If you want to follow the second approach, you need a | |
2187 | program which fetches news and offers them to Gnus, a | |
2188 | program which does the same for mail and a program which | |
2189 | receives the mail you write from Gnus and sends them | |
2190 | when you're online. | |
2191 | ||
2192 | ||
2193 | Let's talk about Unix systems first: For the news part, the easiest | |
2194 | solution is a small nntp server like | |
2195 | @uref{http://www.leafnode.org/,Leafnode} or | |
2196 | @uref{http://infa.abo.fi/~patrik/sn/,sn}, of course you can also | |
2197 | install a full featured news server like | |
2198 | @uref{http://www.isc.org/products/INN/,inn}. | |
2199 | ||
2200 | Then you want to fetch your Mail, popular choices are | |
6bf7aab6 DL |
2201 | @itemize @bullet |
2202 | @item | |
23f87bed MB |
2203 | @uref{http://www.catb.org/~esr/fetchmail/,fetchmail} and |
2204 | @item | |
2205 | @uref{http://www.qcc.ca/~charlesc/software/getmail-3.0/,getmail}. | |
2206 | @end itemize | |
2207 | You should tell those to write the mail to your disk and Gnus to read | |
2208 | it from there. Last but not least the mail sending part: This can be | |
2209 | done with every MTA like @uref{http://www.sendmail.org/,sendmail}, | |
2210 | @uref{http://www.qmail.org/,postfix}, @uref{http://www.exim.org/,exim} | |
2211 | or @uref{http://www.qmail.org/,qmail}. | |
2212 | ||
2213 | ||
2214 | On windows boxes I'd vote for | |
2215 | @uref{http://www.tglsoft.de/,Hamster}, | |
2216 | it's a small freeware, open-source program which fetches | |
2217 | your mail and news from remote servers and offers them | |
2218 | to Gnus (or any other mail and/or news reader) via nntp | |
2219 | respectively POP3 or IMAP. It also includes a smtp | |
2220 | server for receiving mails from Gnus. | |
2221 | ||
2222 | @ifnottex | |
2223 | @node [7.2], [7.3], [7.1], FAQ 7 - Gnus in a dial-up environment | |
2224 | @end ifnottex | |
2225 | @subsubheading Question 7.2: | |
2226 | ||
2227 | So what was this thing about the Agent? | |
2228 | ||
2229 | ||
2230 | Answer: | |
2231 | ||
2232 | The Gnus agent is part of Gnus, it allows you to fetch | |
2233 | mail and news and store them on disk for reading them | |
2234 | later when you're offline. It kind of mimics offline | |
2235 | newsreaders like e.g. Forte Agent. If you want to use | |
2236 | the Agent place the following in ~/.gnus if you are | |
9b5773bc | 2237 | still using 5.8.8 or 5.9 (it's the default since 5.10): |
23f87bed | 2238 | |
6bf7aab6 | 2239 | |
23f87bed MB |
2240 | @example |
2241 | (setq gnus-agent t) | |
2242 | @end example | |
2243 | ||
2244 | ||
2245 | Now you've got to select the servers whose groups can be | |
2246 | stored locally. To do this, open the server buffer | |
2247 | (that is press @samp{^} while in the | |
2248 | group buffer). Now select a server by moving point to | |
2249 | the line naming that server. Finally, agentize the | |
2250 | server by typing @samp{J a}. If you | |
2251 | make a mistake, or change your mind, you can undo this | |
2252 | action by typing @samp{J r}. When | |
2253 | you're done, type 'q' to return to the group buffer. | |
2254 | Now the next time you enter a group on a agentized | |
2255 | server, the headers will be stored on disk and read from | |
2256 | there the next time you enter the group. | |
2257 | ||
2258 | @ifnottex | |
2259 | @node [7.3], [7.4], [7.2], FAQ 7 - Gnus in a dial-up environment | |
2260 | @end ifnottex | |
2261 | @subsubheading Question 7.3: | |
2262 | ||
2263 | I want to store article bodies on disk, too. How to do it? | |
2264 | ||
2265 | ||
2266 | Answer: | |
2267 | ||
2268 | You can tell the agent to automatically fetch the bodies | |
2269 | of articles which fulfill certain predicates, this is | |
2270 | done in a special buffer which can be reached by | |
2271 | saying @samp{J c} in group | |
2272 | buffer. Please refer to the documentation for | |
2273 | information which predicates are possible and how | |
2274 | exactly to do it. | |
2275 | ||
2276 | ||
2277 | Further on you can tell the agent manually which | |
2278 | articles to store on disk. There are two ways to do | |
2279 | this: Number one: In the summary buffer, process mark a | |
2280 | set of articles that shall be stored in the agent by | |
2281 | saying @samp{#} with point over the | |
2282 | article and then type @samp{J s}. The | |
2283 | other possibility is to set, again in the summary | |
2284 | buffer, downloadable (%) marks for the articles you | |
2285 | want by typing @samp{@@} with point over | |
2286 | the article and then typing @samp{J u}. | |
2287 | What's the difference? Well, process marks are erased as | |
2288 | soon as you exit the summary buffer while downloadable | |
2289 | marks are permanent. You can actually set downloadable | |
2290 | marks in several groups then use fetch session ('J s' in | |
2291 | the GROUP buffer) to fetch all of those articles. The | |
2292 | only downside is that fetch session also fetches all of | |
2293 | the headers for every selected group on an agentized | |
2294 | server. Depending on the volume of headers, the initial | |
2295 | fetch session could take hours. | |
2296 | ||
2297 | @ifnottex | |
2298 | @node [7.4], , [7.3], FAQ 7 - Gnus in a dial-up environment | |
2299 | @end ifnottex | |
2300 | @subsubheading Question 7.4: | |
2301 | ||
2302 | How to tell Gnus not to try to send mails / postings | |
2303 | while I'm offline? | |
2304 | ||
2305 | ||
2306 | Answer: | |
2307 | ||
2308 | All you've got to do is to tell Gnus when you are online | |
2309 | (plugged) and when you are offline (unplugged), the rest | |
2310 | works automatically. You can toggle plugged/unplugged | |
2311 | state by saying @samp{J j} in group | |
2312 | buffer. To start Gnus unplugged say @samp{M-x | |
2313 | gnus-unplugged} instead of | |
2314 | @samp{M-x gnus}. Note that for this to | |
2315 | work, the agent must be active. | |
2316 | ||
2317 | ||
2318 | @ifnottex | |
2319 | @node FAQ 8 - Getting help, FAQ 9 - Tuning Gnus, FAQ 7 - Gnus in a dial-up environment, Frequently Asked Questions | |
2320 | @end ifnottex | |
2321 | @subsection Getting help | |
6bf7aab6 | 2322 | |
23f87bed MB |
2323 | @menu |
2324 | * [8.1]:: How to find information and help inside Emacs? | |
2325 | * [8.2]:: I can't find anything in the Gnus manual about X | |
2326 | (e.g. attachments, PGP, MIME...), is it not documented? | |
2327 | * [8.3]:: Which websites should I know? | |
2328 | * [8.4]:: Which mailing lists and newsgroups are there? | |
2329 | * [8.5]:: Where to report bugs? | |
2330 | * [8.6]:: I need real-time help, where to find it? | |
2331 | @end menu | |
6bf7aab6 | 2332 | |
23f87bed MB |
2333 | @ifnottex |
2334 | @node [8.1], [8.2], FAQ 8 - Getting help, FAQ 8 - Getting help | |
2335 | @end ifnottex | |
2336 | @subsubheading Question 8.1: | |
2337 | ||
2338 | How to find information and help inside Emacs? | |
2339 | ||
2340 | ||
2341 | Answer: | |
2342 | ||
2343 | The first stop should be the Gnus manual (Say | |
2344 | @samp{C-h i d m Gnus RET} to start the | |
2345 | Gnus manual, then walk through the menus or do a | |
2346 | full-text search with @samp{s}). Then | |
2347 | there are the general Emacs help commands starting with | |
2348 | C-h, type @samp{C-h ? ?} to get a list | |
2349 | of all available help commands and their meaning. Finally | |
2350 | @samp{M-x apropos-command} lets you | |
2351 | search through all available functions and @samp{M-x | |
2352 | apropos} searches the bound variables. | |
2353 | ||
2354 | @ifnottex | |
2355 | @node [8.2], [8.3], [8.1], FAQ 8 - Getting help | |
2356 | @end ifnottex | |
2357 | @subsubheading Question 8.2: | |
2358 | ||
2359 | I can't find anything in the Gnus manual about X | |
2360 | (e.g. attachments, PGP, MIME...), is it not documented? | |
2361 | ||
2362 | ||
2363 | Answer: | |
2364 | ||
2365 | There's not only the Gnus manual but also the manuals | |
2366 | for message, emacs-mime, sieve and pgg. Those packages | |
2367 | are distributed with Gnus and used by Gnus but aren't | |
2368 | really part of core Gnus, so they are documented in | |
2369 | different info files, you should have a look in those | |
2370 | manuals, too. | |
2371 | ||
2372 | @ifnottex | |
2373 | @node [8.3], [8.4], [8.2], FAQ 8 - Getting help | |
2374 | @end ifnottex | |
2375 | @subsubheading Question 8.3: | |
2376 | ||
2377 | Which websites should I know? | |
2378 | ||
2379 | ||
2380 | Answer: | |
2381 | ||
2382 | The two most important ones are the | |
2383 | @uref{http://www.gnus.org,official Gnus website}. | |
2384 | and it's sister site | |
2385 | @uref{http://my.gnus.org,my.gnus.org (MGO)}, | |
2386 | hosting an archive of lisp snippets, howtos, a (not | |
2387 | really finished) tutorial and this FAQ. | |
2388 | ||
2389 | ||
2390 | Tell me about other sites which are interesting. | |
2391 | ||
2392 | @ifnottex | |
2393 | @node [8.4], [8.5], [8.3], FAQ 8 - Getting help | |
2394 | @end ifnottex | |
2395 | @subsubheading Question 8.4: | |
2396 | ||
2397 | Which mailing lists and newsgroups are there? | |
2398 | ||
2399 | ||
2400 | Answer: | |
2401 | ||
2402 | There's the newsgroup gnu.emacs.gnus (pull it from | |
2403 | e.g. news.gnus.org) which deals with general questions | |
2404 | and the ding mailing list (ding@@gnus.org) dealing with | |
2405 | development of Gnus. You can read the ding list via | |
2406 | NNTP, too under the name gnus.ding from news.gnus.org. | |
2407 | ||
2408 | ||
2409 | If you want to stay in the big8, | |
2410 | news.software.newssreaders is also read by some Gnus | |
2411 | users (but chances for qualified help are much better in | |
2412 | the above groups) and if you speak German, there's | |
2413 | de.comm.software.gnus. | |
2414 | ||
2415 | @ifnottex | |
2416 | @node [8.5], [8.6], [8.4], FAQ 8 - Getting help | |
2417 | @end ifnottex | |
2418 | @subsubheading Question 8.5: | |
2419 | ||
2420 | Where to report bugs? | |
2421 | ||
2422 | ||
2423 | Answer: | |
2424 | ||
2425 | Say @samp{M-x gnus-bug}, this will start a message to the | |
2426 | @email{bugs@@gnus.org,gnus bug mailing list} including information | |
2427 | about your environment which make it easier to help you. | |
2428 | ||
2429 | @ifnottex | |
2430 | @node [8.6], , [8.5], FAQ 8 - Getting help | |
2431 | @end ifnottex | |
2432 | @subsubheading Question 8.6: | |
2433 | ||
2434 | I need real-time help, where to find it? | |
2435 | ||
2436 | ||
2437 | Answer: | |
2438 | ||
2439 | Point your IRC client to irc.my.gnus.org channel | |
2440 | #mygnus. Don't be afraid if people there speak German, | |
2441 | they are willing and capable of switching to | |
2442 | English when people from outside Germany enter. | |
2443 | ||
2444 | ||
2445 | @ifnottex | |
2446 | @node FAQ 9 - Tuning Gnus, FAQ - Glossary, FAQ 8 - Getting help, Frequently Asked Questions | |
2447 | @end ifnottex | |
2448 | @subsection Tuning Gnus | |
6bf7aab6 | 2449 | |
23f87bed MB |
2450 | @menu |
2451 | * [9.1]:: Starting Gnus is really slow, how to speed it up? | |
2452 | * [9.2]:: How to speed up the process of entering a group? | |
2453 | * [9.3]:: Sending mail becomes slower and slower, what's up? | |
2454 | @end menu | |
6bf7aab6 | 2455 | |
23f87bed MB |
2456 | @ifnottex |
2457 | @node [9.1], [9.2], FAQ 9 - Tuning Gnus, FAQ 9 - Tuning Gnus | |
2458 | @end ifnottex | |
2459 | @subsubheading Question 9.1: | |
6bf7aab6 | 2460 | |
23f87bed MB |
2461 | Starting Gnus is really slow, how to speed it up? |
2462 | ||
6bf7aab6 | 2463 | |
23f87bed | 2464 | Answer: |
6bf7aab6 | 2465 | |
23f87bed MB |
2466 | The reason for this could be the way Gnus reads it's |
2467 | active file, see the node "The Active File" in the Gnus | |
2468 | manual for things you might try to speed the process up. | |
2469 | An other idea would be to byte compile your ~/.gnus (say | |
2470 | @samp{M-x byte-compile-file RET ~/.gnus | |
2471 | RET} to do it). Finally, if you have require | |
2472 | statements in your .gnus, you could replace them with | |
2473 | eval-after-load, which loads the stuff not at startup | |
2474 | time, but when it's needed. Say you've got this in your | |
2475 | ~/.gnus: | |
2476 | ||
6bf7aab6 | 2477 | |
23f87bed MB |
2478 | @example |
2479 | (require 'message) | |
2480 | (add-to-list 'message-syntax-checks '(sender . disabled)) | |
2481 | @end example | |
6bf7aab6 | 2482 | |
23f87bed MB |
2483 | @noindent |
2484 | then as soon as you start Gnus, message.el is loaded. If | |
2485 | you replace it with | |
2486 | ||
6bf7aab6 | 2487 | |
23f87bed MB |
2488 | @example |
2489 | (eval-after-load "message" | |
2490 | '(add-to-list 'message-syntax-checks '(sender . disabled))) | |
2491 | @end example | |
6bf7aab6 | 2492 | |
23f87bed MB |
2493 | @noindent |
2494 | it's loaded when it's needed. | |
2495 | ||
2496 | @ifnottex | |
2497 | @node [9.2], [9.3], [9.1], FAQ 9 - Tuning Gnus | |
2498 | @end ifnottex | |
2499 | @subsubheading Question 9.2: | |
6bf7aab6 | 2500 | |
23f87bed MB |
2501 | How to speed up the process of entering a group? |
2502 | ||
6bf7aab6 | 2503 | |
23f87bed | 2504 | Answer: |
6bf7aab6 | 2505 | |
23f87bed MB |
2506 | A speed killer is setting the variable |
2507 | gnus-fetch-old-headers to anything different from nil, | |
2508 | so don't do this if speed is an issue. To speed up | |
2509 | building of summary say | |
2510 | ||
6bf7aab6 | 2511 | |
23f87bed MB |
2512 | @example |
2513 | (gnus-compile) | |
2514 | @end example | |
6bf7aab6 | 2515 | |
23f87bed MB |
2516 | @noindent |
2517 | at the bottom of your ~/.gnus, this will make gnus | |
2518 | byte-compile things like | |
2519 | gnus-summary-line-format. | |
2520 | then you could increase the value of gc-cons-threshold | |
2521 | by saying something like | |
2522 | ||
6bf7aab6 DL |
2523 | |
2524 | @example | |
23f87bed | 2525 | (setq gc-cons-threshold 3500000) |
6bf7aab6 DL |
2526 | @end example |
2527 | ||
23f87bed MB |
2528 | @noindent |
2529 | in ~/.emacs. If you don't care about width of CJK | |
9b5773bc | 2530 | characters or use Gnus 5.10 or younger together with a |
23f87bed MB |
2531 | recent GNU Emacs, you should say |
2532 | ||
6bf7aab6 | 2533 | |
23f87bed MB |
2534 | @example |
2535 | (setq gnus-use-correct-string-widths nil) | |
2536 | @end example | |
2537 | ||
2538 | ||
2539 | @noindent | |
2540 | in ~/.gnus (thanks to Jesper harder for the last | |
2541 | two suggestions). Finally if you are still using 5.8.8 | |
2542 | or 5.9 and experience speed problems with summary | |
2543 | buffer generation, you definitely should update to | |
9b5773bc | 2544 | 5.10 since there quite some work on improving it has |
23f87bed MB |
2545 | been done. |
2546 | ||
2547 | @ifnottex | |
2548 | @node [9.3], , [9.2], FAQ 9 - Tuning Gnus | |
2549 | @end ifnottex | |
2550 | @subsubheading Question 9.3: | |
2551 | ||
2552 | Sending mail becomes slower and slower, what's up? | |
2553 | ||
2554 | ||
2555 | Answer: | |
2556 | ||
2557 | The reason could be that you told Gnus to archive the | |
2558 | messages you wrote by setting | |
2559 | gnus-message-archive-group. Try to use a nnml group | |
2560 | instead of an archive group, this should bring you back | |
2561 | to normal speed. | |
2562 | ||
2563 | ||
2564 | @ifnottex | |
2565 | @node FAQ - Glossary, , FAQ 9 - Tuning Gnus, Frequently Asked Questions | |
2566 | @end ifnottex | |
2567 | @subsection Glossary | |
2568 | ||
2569 | @table @dfn | |
2570 | ||
2571 | @item ~/.gnus | |
2572 | When the term ~/.gnus is used it just means your Gnus | |
2573 | configuration file. You might as well call it ~/.gnus.el or | |
2574 | specify another name. | |
2575 | ||
2576 | ||
2577 | @item Back End | |
2578 | In Gnus terminology a back end is a virtual server, a layer | |
2579 | between core Gnus and the real NNTP-, POP3-, IMAP- or | |
2580 | whatever-server which offers Gnus a standardized interface | |
2581 | to functions like "get message", "get Headers" etc. | |
2582 | ||
2583 | ||
2584 | @item Emacs | |
2585 | When the term Emacs is used in this FAQ, it means either GNU | |
2586 | Emacs or XEmacs. | |
2587 | ||
2588 | ||
2589 | @item Message | |
2590 | In this FAQ message means a either a mail or a posting to a | |
2591 | Usenet Newsgroup or to some other fancy back end, no matter | |
2592 | of which kind it is. | |
2593 | ||
2594 | ||
2595 | @item MUA | |
2596 | MUA is an acronym for Mail User Agent, it's the program you | |
2597 | use to read and write e-mails. | |
2598 | ||
2599 | ||
2600 | @item NUA | |
2601 | NUA is an acronym for News User Agent, it's the program you | |
2602 | use to read and write Usenet news. | |
2603 | ||
2604 | @end table | |
2605 | ||
2606 | @c @bye | |
6bf7aab6 | 2607 | |
ab5796a9 MB |
2608 | @ignore |
2609 | arch-tag: 64dc5692-edb4-4848-a965-7aa0181acbb8 | |
2610 | @end ignore |