1 % Reference Card for (ding) Gnus
2 % To be processed with latex 2.09
3 \def\author{Vladimir Alexiev $<$vladimir@cs.ualberta.ca$>$}
4 \def\progver{0.98}\def\refver{0.3} % program and refcard versions
5 \def\date{1 August 1995}
6 \documentstyle{article}
7 \textwidth 7.5in \textheight 10in \topmargin -1.0in
8 % the same settings work for A4, although there is a bit of space at the
10 \oddsidemargin -0.5in \evensidemargin -0.5in
12 \twocolumn\scriptsize\pagestyle{empty}
13 \raggedbottom\raggedright
15 \newenvironment{keys}[1] % #1 is the widest key
17 \settowidth{\mywidth}{#1}
18 \addtolength{\mywidth}{\tabcolsep}
19 \addtolength{\mywidth}{-\columnwidth}
20 \begin{tabular}{@{}l@{\hspace{\tabcolsep}}p{-\mywidth}@{}}}
22 \catcode`\^=12 % allow ^ to be typed literally
25 {\bf\LARGE (ding) Gnus \progver\ Reference Card\\}
26 {\normalsize Refcard version \refver}
30 \centerline{(Gnus logo goes here)}
34 \subsection*{Group Subscribedness Levels}
35 \begin{tabular}{|r|c|l|}
41 5 & default list level & \\
53 \begin{keys}{C-c M-C-x}
54 RET & (=) Select this group. [Prefix: how many (read) articles to fetch.
55 Positive: newest articles, negative: oldest ones.]\\
56 SPC & Select this group and display the first unread article. [Same
58 ? & Give a very short help message.\\
59 $<$ & Go to the beginning of the Group buffer.\\
60 $>$ & Go to the end of the Group buffer.\\
61 , & Jump to the lowest-level group with unread articles.\\
62 . & Jump to the first group with unread articles.\\
63 ^ & Enter the Server buffer mode.\\
64 a & Post an article to a group.\\
65 b & Find bogus groups and delete them.\\
66 c & Mark all unticked articles in this group as read (catchup). [p/p]\\
67 g & Check the server for new articles. [level]\\
68 j & Jump to a group.\\
69 m & Mail a message to someone.\\
70 n & Go to the next group with unread articles. [distance]\\
71 p & (DEL) Go to the previous group with unread articles. [distance]\\
73 r & Read the init file.\\
74 s & Save the `.newsrc.eld' file (and `.newsrc' if
75 `gnus-save-newsrc-file').\\
76 z & Suspend (kill all buffers of) Gnus.\\
77 B & Browse a foreign server.\\
78 C & Mark all articles in this group as read (catchup). [p/p]\\
79 F & Find new groups and process them.\\
80 N & Go to the next group. [distance]\\
81 P & Go to the previous group. [distance]\\
82 Q & Quit Gnus without saving any startup (.newsrc) files.\\
84 V & Display the Gnus version number.\\
85 Z & Clear the dribble buffer.\\
86 C-c C-d & Show the description of this group. [Prefix: re-read it from the
88 C-c C-s & Sort the groups by name, number of unread articles, or level
89 (depending on `gnus-group-sort-function').\\
90 C-c C-x & Run all expirable articles in this group through the expiry
92 C-c M-C-x & Run all articles in all groups through the expiry process.\\
93 C-x C-t & Transpose two groups.\\
94 M-d & Describe ALL groups. [Prefix: re-read the description from the
96 M-f & Fetch this group's FAQ (using ange-ftp).\\
97 M-g & Check the server for new articles in this group. [p/p]\\
98 M-n & Go to the previous unread group on the same or lower level.
100 M-p & Go to the next unread group on the same or lower level. [distance]\\
105 \subsubsection*{Notes}
106 Gnus is complex. Currently it has some 346 interactive (user-callable)
107 functions. Of these 279 are in the two major modes (Group and
108 Summary/Article). Many of these functions have more than one binding, some
109 have 3 or even 4 bindings. The total number of keybindings is 389. So in
110 order to save 40\% space, every function is listed only once on this
111 refcard, under the ``more logical'' binding. Alternative bindings are given
112 in parentheses in the beginning of the description.
114 Many Gnus commands are affected by the numeric prefix. Normally you enter a
115 prefix by holding the Meta key and typing a number, but in most Gnus modes
116 you don't need to use Meta since the digits are not self-inserting. The
117 prefixed behavior of commands is given in [brackets]. Often the prefix is
120 \quad [distance] How many objects to move the point over.
122 \quad [scope] How many objects to operate on (including the current one).
124 \quad [p/p] The ``Process/Prefix Convention'': If a prefix is given then it
125 determines how many objects to operate on. Else if there are some objects
126 marked with the process mark \#, these are operated on. Else only the
127 current object is affected.
129 \quad [level] A group subscribedness level. Only groups with a lower or
130 equal level will be affected by the operation. If no prefix is given,
131 `gnus-group-default-list-level' is used. If
132 `gnus-group-use-permanent-levels', then a prefix to the `g' and `l'
133 commands will also set the default level.
135 \quad [score] An article score. If no prefix is given,
136 `gnus-summary-default-score' is used.
137 %Some functions were not yet documented at the time of creating this
138 %reference card and are clearly indicated as such.
140 \begin{keys}{C-c C-i}
141 C-c C-i & Go to the Gnus online info.\\
142 C-c C-b & Send a Gnus bug report.\\
146 \subsection*{List Groups}
148 A a & (C-c C-a) List all groups whose names match a regexp (apropos).\\
149 A d & List all groups whose names or descriptions match a regexp.\\
150 A k & (C-c C-l) List all killed groups.\\
151 A m & List groups that match a regexp and have unread articles. [level]\\
152 A s & (l) List groups with unread articles. [level]\\
153 A u & (L) List all groups. [If no prefix is given, level 7 is the
155 A z & List the zombie groups.\\
156 A M & List groups that match a regexp.\\
159 \subsection*{Create/Edit Foreign Groups}
160 The select methods are indicated in parentheses.\\*
162 G a & Make the Gnus list archive group. (nndir over ange-ftp)\\
163 G d & Make a directory group (every file must be a posting and files
164 must have numeric names). (nndir)\\
165 G e & (M-e) Edit this group's select method.\\
166 G f & Make a group based on a file. (nndoc)\\
167 G h & Make the (ding) Gnus help (documentation) group. (nndoc)\\
168 G k & Make a kiboze group. (nnkiboze)\\
169 G m & Make a new group.\\
170 G p & Edit this group's parameters.\\
171 G v & Add this group to a virtual group. [p/p]\\
172 G D & Enter a directory as a (temporary) group. (nneething without
173 recording articles read.)\\
174 G E & Edit this group's info (select method, articles read, etc).\\
175 G V & Make a new empty virtual group. (nnvirtual)\\
177 You can also create mail-groups and read your mail with Gnus (very useful
178 if you are subscribed to any mailing lists), using one of the methods
179 nnmbox, nnbabyl, nnml, nnmh, or nnfolder. Read about it in the online info
180 (C-c C-i g Reading Mail RET).
182 %\subsubsection*{Soup Commands}
184 %G s b & gnus-group-brew-soup: not documented.\\
185 %G s p & gnus-soup-pack-packet: not documented.\\
186 %G s r & nnsoup-pack-replies: not documented.\\
187 %G s s & gnus-soup-send-replies: not documented.\\
188 %G s w & gnus-soup-save-areas: not documented.\\
191 \subsection*{Mark Groups}
193 M m & (\#) Set the process mark on this group. [scope]\\
194 M u & (M-\#) Remove the process mark from this group. [scope]\\
195 M w & Mark all groups in the current region.\\
198 \subsection*{Unsubscribe, Kill and Yank Groups}
200 S k & (C-k) Kill this group.\\
201 S l & Set the level of this group. [p/p]\\
202 S s & (U) Prompt for a group and toggle its subscription.\\
203 S t & (u) Toggle subscription to this group. [p/p]\\
204 S w & (C-w) Kill all groups in the region.\\
205 S y & (C-y) Yank the last killed group.\\
206 S z & Kill all zombie groups.\\
211 \section*{Summary and Article Modes}
213 SPC & (A SPC, A n) Select an article, scroll it one page, move to the
215 DEL & (A DEL, A p, b) Scroll this article one page back. [distance]\\
216 RET & Scroll this article one line forward. [distance]\\
217 $<$ & (A $<$, A b) Scroll to the beginning of this article.\\
218 $>$ & (A $>$, A e) Scroll to the end of this article.\\
219 j & (G g) Ask for an article number and then go to that summary line.\\
220 M-n & (G M-n) Go to the next summary line of an unread article.
222 M-p & (G M-p) Go to the previous summary line of an unread article.
226 \subsection*{Article Buffer Commands}
228 A c & (C-c C-r) Do a Caesar rotate (rot13) on the article buffer.\\
229 A g & (g) (Re)fetch this article. [Prefix: just show the article.]\\
230 A m & Toggle MIME processing.\\
231 A r & (^, A^) Go to the parent of this article (the References header).\\
232 A s & (s) Perform an isearch in the article buffer.\\
233 A t & (t) Toggle the displaying of all headers.\\
234 A w & (w) Remove page breaks (^L) from this article.\\
237 \subsection*{Mail-Group Commands}
238 These commands (B c) are only valid in a mail group.\\*
239 \begin{keys}{B M-C-e}
240 B DEL & Delete the mail article from disk (!). [p/p]\\
241 B c & Copy this article from any group to a mail group. [p/p]\\
242 B e & Expire all expirable articles in this group. [p/p]\\
243 B i & Import a random file into this group.\\
244 B m & Move the article from one mail group to another. [p/p]\\
245 B q & Where will the article go during fancy splitting?\\
246 B r & Respool this mail article. [p/p]\\
247 B w & (e) Edit this article.\\
248 B M-C-e & Expunge (delete from disk) all expirable articles in this group
252 \subsection*{Select Articles}
253 These commands select the target article. They do not understand the prefix.\\*
255 G b & (,) Go to the best article (the one with highest score).\\
256 G f & (.) Go to the first unread article.\\
257 G l & (l) Go to the last article read.\\
258 G n & (n) Go to the next unread article.\\
259 p & Go to the previous unread article.\\
260 G p & Pop an article off the summary history and go to it.\\
261 G N & (N) Go to the next article.\\
262 G P & (P) Go to the previous article.\\
263 G C-n & (M-C-n) Go to the next article with the same subject.\\
264 G C-p & (M-C-p) Go to the previous article with the same subject.\\
267 \subsection*{Help Commands}
269 H d & (C-c C-d) Describe this group. [Prefix: re-read the description
271 H f & Try to fetch the FAQ for this group using ange-ftp.\\
272 H h & Give a very short help message.\\
273 H i & (C-c C-i) Go to the Gnus online info.\\
274 H v & Display the Gnus version number.\\
277 \subsection*{Thread Commands}
279 T \# & Mark this thread with the process mark.\\
280 T d & Move to the next article in this thread (down). [distance]\\
281 T h & Hide this (sub)thread.\\
282 T i & Increase the score of this thread.\\
283 T k & (M-C-k) Mark the current (sub)thread as read. [Negative prefix:
284 tick it, positive prefix: unmark it.]\\
285 T l & (M-C-l) Lower the score of this thread.\\
286 T n & Go to the next thread. [distance]\\
287 T p & Go to the previous thread. [distance]\\
288 T s & Show the thread hidden under this article.\\
289 T u & Move to the previous article in this thread (up). [distance]\\
290 T H & Hide all threads.\\
291 T S & Show all hidden threads.\\
292 T T & (M-C-t) Toggle threading.\\
295 \subsection*{Mark Articles}
296 \begin{keys}{M M-C-r}
297 d & (M d, M r) Mark this article as read and move to the next one.
299 D & Mark this article as read and move to the previous one. [scope]\\
300 u & (!, M !, M t) Tick this article (mark it as interesting) and move
301 to the next one. [scope]\\
302 U & Tick this article and move to the previous one. [scope]\\
303 M-u & (M SPC, M c) Clear all marks from this article and move to the next
305 M-U & Clear all marks from this article and move to the previous one.
307 M ? & (?) Mark this article as dormant (only followups are
308 interesting). [scope]\\
309 M b & Set a bookmark in this article.\\
310 M e & (E, M x) Mark this article as expirable. [scope]\\
311 M k & (k) Kill all articles with the same subject then select the next
313 M B & Remove the bookmark from this article.\\
314 M C & Catchup the articles that are not marked as unread.\\
315 M D & Show all dormant articles (normally they are hidden unless they
316 have any followups).\\
317 M H & Catchup (mark read) this group to point.\\
318 M K & (C-k) Kill all articles with the same subject as this one.\\
319 C-w & Mark all articles between point and mark as read.\\
320 M S & (C-c M-C-s) Show all expunged articles.\\
321 M C-c & Catchup all articles in this group.\\
322 M M-r & (x) Expunge all read articles from this group.\\
323 M M-D & Hide all dormant articles.\\
324 M M-C-r & Expunge all articles having a given mark.\\
327 \subsubsection*{The Process Mark}
328 {\samepage These commands set and remove the process mark \#. You only need
329 to use it if the set of articles you want to operate on is
330 non-contiguous. Else use a numeric prefix.} \\*
332 M p a & Mark all articles (in series order).\\
333 M p p & (\#, M \#) Mark this article.\\
334 M p r & Mark all articles in the region.\\
335 M p s & Mark all articles in the current series.\\
336 M p t & Mark all articles in this (sub)thread.\\
337 M p u & (M-\#, M M-\#) Unmark this article.\\
338 M p R & Mark all articles matching a regexp.\\
339 M p S & Mark all series that already contain a marked article.\\
340 M p U & Unmark all articles.\\
343 \subsubsection*{Mark Based on Score}
345 M s c & Clear all marks from all high-scored articles. [score]\\
346 M s k & Kill all low-scored articles. [score]\\
347 M s m & Mark all high-scored articles with a given mark. [score]\\
348 M s u & Mark all high-scored articles as interesting (tick them). [score]\\
351 \subsection*{Output Articles}
353 O f & Save this article in plain file format. [p/p]\\
354 O h & Save this article in mh folder format. [p/p]\\
355 O m & Save this article in mail format. [p/p]\\
356 O o & (o) Save this article using the default article saver. [p/p]\\
357 O p & ($\mid$) Pipe this article to a shell command. [p/p]\\
358 O r & Save this article in rmail format. [p/p]\\
359 O v & Save this article in vm format. [p/p]\\
362 \subsection*{Wash the Article Buffer}
364 W a & Hide unwanted parts of the article. Calls W h, W s, W C-c.\\
365 W b & Make external references in the article (Message-IDs and URLs) to
366 mouse-clickable buttons.\\
367 W c & Hide article citation.\\
368 W d & Remove extra CRs from the article.\\
369 W f & Look for and display any X-Face headers.\\
370 W h & Hide article headers.\\
371 W o & Treat overstrike or underline in the article.\\
372 W q & Treat quoted-printable in the article.\\
373 W s & Hide article signature.\\
374 W t & Convert the article timestamp to UTC (GMT).\\
375 W w & Do word wrap in the article.\\
376 W A & Highlight this article. Calls W b, W C, W H, W S.\\
377 W C & Highlight article citation.\\
378 W H & Highlight article headers.\\
379 W S & Highlight article signature.\\
380 W T & Convert the article timestamp to time lapsed since sent.\\
381 W C-c & Hide article citation using a more intelligent algorithm.\\
382 W C-t & Convert the article timestamp to the local timezone.\\
385 \subsection*{Post, Followup, Reply, Forward, Cancel}
386 \samepage{These commands put you in a separate post or mail buffer. After
387 editing the article, send it by pressing C-c C-c. If you are in a
388 foreign group and want to post the article using the foreign server, give
389 a prefix to C-c C-c.} \\*
391 S b & Both post a followup to this article, and send a reply.\\
392 S c & (C) Cancel this article (only works if it is your own).\\
393 S f & (f) Post a followup to this article.\\
394 S m & (m) Send a mail to some other person.\\
395 S o m & (C-c C-f) Forward this article by mail to a person.\\
396 S o p & Forward this article to a newsgroup.\\
397 S p & (a) Post an article to this group.\\
398 S r & (r) Mail a reply to the author of this article.\\
399 S s & Supersede this article with a new one (only for own articles).\\
400 S u & Uuencode a file and post it as a series.\\
401 S B & Post a followup, send a reply, and include the original. [p/p]\\
402 S F & (F) Post a followup and include the original. [p/p]\\
403 S O m & Digest these series and forward by mail. [p/p]\\
404 S O p & Digest these series and forward to a newsgroup.\\
405 S R & (R) Mail a reply and include the original. [p/p]\\
407 If you want to cancel or supersede an article you just posted (before it
408 has appeared on the server), go to the *post-news* buffer, change
409 `Message-ID' to `Cancel' or `Supersedes' and send it again with C-c C-c.
411 \subsection*{Extract Series (Uudecode etc)}
412 Gnus recognizes if the current article is part of a series (multipart
413 posting whose parts are identified by numbers in their subjects, e.g.{}
414 1/10\dots10/10) and processes the series accordingly. You can mark and
415 process more than one series at a time. If the posting contains any
416 archives, they are expanded and gathered in a new group.\\*
418 X b & Un-{\bf b}inhex these series. [p/p]\\
419 X o & Simply {\bf o}utput these series (no decoding). [p/p]\\
420 X p & Unpack these {\bf p}ostscript series. [p/p]\\
421 X s & Un-{\bf s}har these series. [p/p]\\
422 X u & {\bf U}udecode these series. [p/p]\\
425 Each one of these commands has four variants:\\*
426 \begin{keys}{X v \bf Z}
427 X \bf z & Decode these series. [p/p]\\
428 X \bf Z & Decode and save these series. [p/p]\\
429 X v \bf z & Decode and view these series. [p/p]\\
430 X v \bf Z & Decode, save and view these series. [p/p]\\
432 where {\bf z} or {\bf Z} identifies the decoding method (b, o, p, s, u).
434 An alternative binding for the most-often used of these commands is\\*
435 \begin{keys}{C-c C-v C-v}
436 C-c C-v C-v & (X v u) Uudecode and view these series. [p/p]\\
439 \subsection*{Exit the Current Group}
441 Z c & (c) Mark all unticked articles as read and exit.\\
442 Z n & Mark all articles as read and go to the next group.\\
443 Z C & Mark all articles as read and exit.\\
444 Z E & (Q) Exit without updating the group information.\\
445 Z G & (M-g) Check for new articles in this group.\\
446 Z N & Exit and go to the next group.\\
447 Z P & Exit and go to the previous group.\\
448 Z R & Exit this group, and then enter it again. [Prefix: select all
449 articles, read and unread.]\\
450 Z Z & (q, Z Q) Exit this group.\\
453 \subsection*{Various Group Commands}
455 V \& & (\&) Execute a command on all articles matching a regexp.
456 [Prefix: move backwards.]\\
457 V e & (=) Expand the Summary window. [Prefix: shrink it to display the
459 V k & (M-k) Edit this group's kill file.\\
460 V r & (M-^) Fetch the article with a given Message-ID.\\
461 V u & Execute a command on all articles having the process mark.\\
462 V D & (C-d) Undigestify this article into a separate group.\\
463 V K & (M-K) Edit the general kill file.\\
464 V T & (C-t) Toggle truncation of summary lines.\\
465 V C-r & Search through all previous articles for a regexp.\\
466 V C-s & Search through all subsequent articles for a regexp.\\
469 \subsubsection*{Sort the Summary Buffer}
471 V s a & (C-c C-s C-a) Sort the summary by author.\\
472 V s d & (C-c C-s C-d) Sort the summary by date.\\
473 V s i & (C-c C-s C-i) Sort the summary by article score.\\
474 V s n & (C-c C-s C-n) Sort the summary by article number.\\
475 V s s & (C-c C-s C-s) Sort the summary by subject.\\
478 \subsubsection*{Score Commands}
479 Read about Adaptive Scoring in the online info.
480 \newcommand{\B}[1]{{\bf#1})} % bold l)etter
481 \begin{keys}{\bf A p m l}
482 V S a & Add a new score entry, specifying all elements.\\
483 V S c & Specify a new score file as current.\\
484 V S e & Edit the current score alist.\\
485 V S f & Edit a score file and make it the current one.\\
486 V S m & Mark all articles below a given score as read.\\
487 V S s & Set the score of this article.\\
488 V S t & Display all score rules applied to this article.\\
489 V S x & Expunge all low-scored articles. [score]\\
490 V S C & Customize the current score file through a user-friendly interface.\\
491 V S S & Display the score of this article.\\
492 \bf A p m l& Make a scoring entry based on this article.\\
496 The four letters stand for:\\*
497 \quad \B{A}ction: I)ncrease, L)ower;\\*
498 \quad \B{p}art: a)utor (from), s)ubject, x)refs (cross-posting), d)ate, l)ines,
499 message-i)d, t)references (parent), f)ollowup, b)ody, h)ead (all headers);\\*
500 \quad \B{m}atch type:\\*
501 \qquad string: s)ubstring, e)xact, r)egexp, f)uzzy,\\*
502 \qquad date: b)efore, a)t, n)this,\\*
503 \qquad number: $<$, =, $>$;\\*
504 \quad \B{l}ifetime: t)emporary, p)ermanent, i)mmediate.
506 If you type the second letter in uppercase, the remaining two are assumed
507 to be s)ubstring and t)emporary.
508 If you type the third letter in uppercase, the last one is assumed to be
511 \quad Extra keys for manual editing of a score file:\\*
512 \begin{keys}{C-c C-c}
513 C-c C-c & Finish editing the score file.\\
514 C-c C-d & Insert the current date as number of days.\\
518 \section*{Article Mode}
519 All keys for Summary mode also work in Article mode.
520 The normal navigation keys work in Article mode.
521 Some additional keys are:\\*
522 \begin{keys}{C-c C-m}
523 RET & (mouse-2 (middle button)) Activate the button at point (to follow
525 TAB & Move the point to the next button.\\
526 C-c ^ & Get the article with the Message-ID near point.\\
527 C-c C-m & Send reply to the address near point and include the original.\\
528 h & Go to the header line of the article in the summary buffer.\\
531 \section*{Server Mode}
532 To enter this mode, press `^' while in Group mode.\\*
534 SPC & (RET) Browse this server.\\
535 a & Add a new server.\\
536 c & Copy this server.\\
538 k & Kill this server. [scope]\\
539 l & List all servers.\\
540 q & Return to the group buffer.\\
541 y & Yank the previously killed server.\\
544 \section*{Browse Server Mode}
545 To enter this mode, press `B' while in Group mode.\\*
547 RET & Enter the current group.\\
548 SPC & Enter the current group and display the first article.\\
549 ? & Give a very short help message.\\
550 n & Go to the next group. [distance]\\
551 p & Go to the previous group. [distance]\\
552 q & (l) Exit browse mode.\\
553 u & Subscribe to the current group. [scope]\\
558 Copyright \copyright\ 1987 Free Software Foundation, Inc.\\*
559 Copyright \copyright\ 1995 \author.\\*
560 Created from the Gnus manual Copyright \copyright\ 1994 Lars Magne
562 and the Emacs Help Bindings feature (C-h b).\\*
565 Permission is granted to make and distribute copies of this reference card
566 provided the copyright notice and this permission are preserved on all
568 Please send corrections, additions and suggestions to the above email
569 address. Refcard version \refver. \hfill \date