From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/88720 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Eric Abrahamsen Newsgroups: gmane.emacs.gnus.general Subject: Proposed new introductory section to the Gnus manual Date: Mon, 19 Aug 2019 07:26:17 +0800 Message-ID: <87o90mm4x2.fsf@ericabrahamsen.net> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="132947"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) To: ding@gnus.org Original-X-From: ding-owner+M36924@lists.math.uh.edu Mon Aug 19 01:27:17 2019 Return-path: Envelope-to: ding-account@gmane.org Original-Received: from lists1.math.uh.edu ([129.7.128.208]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1hzUZx-000YRJ-4Y for ding-account@gmane.org; Mon, 19 Aug 2019 01:27:17 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.math.uh.edu) by lists1.math.uh.edu with smtp (Exim 4.92) (envelope-from ) id 1hzUZG-0004Cv-Li; Sun, 18 Aug 2019 18:26:34 -0500 Original-Received: from mx2.math.uh.edu ([129.7.128.33]) by lists1.math.uh.edu with esmtps (TLSv1.3:TLS_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1hzUZB-0004AI-M2 for ding@lists.math.uh.edu; Sun, 18 Aug 2019 18:26:29 -0500 Original-Received: from quimby.gnus.org ([80.91.231.51]) by mx2.math.uh.edu with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.92) (envelope-from ) id 1hzUZ9-0005aj-UV for ding@lists.math.uh.edu; Sun, 18 Aug 2019 18:26:29 -0500 Original-Received: from 195-159-176-226.customer.powertech.no ([195.159.176.226] helo=blaine.gmane.org) by quimby.gnus.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1hzUZ6-0003RR-2S for ding@gnus.org; Mon, 19 Aug 2019 01:26:26 +0200 Original-Received: from list by blaine.gmane.org with local (Exim 4.89) (envelope-from ) id 1hzUZ5-000XfU-PY for ding@gnus.org; Mon, 19 Aug 2019 01:26:23 +0200 X-Injected-Via-Gmane: http://gmane.org/ Cancel-Lock: sha1:msaScHoURA8WBvnWxwlEz/wol+Y= List-ID: Precedence: bulk Xref: news.gmane.org gmane.emacs.gnus.general:88720 Archived-At: Hi folks, I just filed this bug: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=37078, which proposes a new introductory section to the Gnus manual, called "Don't Panic". It's meant to be a brief orientation, and a crash course in the style of the vim tutorials that start with how to quit vim. If this goes in, we might want to change or remove the existing "Mail in a Newsreader" section of the manual, which covers some of the same ground, but which I find more panic-inducing than not :) Let me know if you have any comments/questions/suggestions! ━━━━━━━━━━━━━ DON’T PANIC ━━━━━━━━━━━━━ Welcome, gentle user, to the Gnus newsreader and email client! Gnus is unlike most clients, in part because of its gross configurability, and in part because of its historical origins. While Gnus is now a fully-featured email client, it began life as a newsreader, and its DNA is still newsreader DNA. Thus it behaves a little differently than most mail clients. The typical assumptions of a newsreader are: 1. The news server offers a potentially enormous number of newsgroups to read. The user may only be interested in some of those groups, and more interested in some than others. 2. Groups probably see a high volume of articles, and the user won’t want to read all of them. Mechanisms are needed for foregrounding interesting articles, and backgrounding uninteresting articles. 3. Once a group has been scanned and dealt with by the user, it’s unlikely to be of further interest until new articles come in. These assumptions lead to certain default Gnus behaviors: 1. Not all interesting groups are equally interesting, thus there are varying degrees of “subscribedness”, with different behavior depending on “how subscribed” a group is. 2. There are a large number of commands and tools for scoring and sorting articles, or otherwise sweeping them under the rug. 3. Gnus will only show you groups with unread or ticked articles; groups with no new articles are hidden. 4. When entering a group, only unread or ticked articles are shown, all other articles are hidden. If this seems draconian, think of it as Enforced Inbox Zero. This is the way Gnus works by default. It is possible to make it work more like an email client (always showing read groups and read messages), but that will take some effort on the part of the user, and Gnus won’t ever really like it. The brief introduction below should be enough to get you off the ground. Servers, Groups, and Articles ═════════════════════════════ The fundamental building blocks of Gnus are servers, groups, and articles. Servers represent stores of articles, either local or remote. A server maintains a list of groups, and those groups contain articles. Because Gnus presents a unified interface to wide variety of servers, the vocabulary doesn’t always quite line up (see XXX for a more complete glossary). Thus a local maildir is referred to as a “server” the same as a Usenet or IMAP server is; “group” might mean an NNTP group, IMAP folder, or local mail directory; and an “article” might elsewhere be known as a message or an email. Gnus employs unified terms for all these things. A Gnus installation is basically just a list of one or more servers, plus the user’s subscribed groups from those servers. Servers can be added and configured in two places: in the user’s gnus.el startup file, using the `gnus-select-method’ and `gnus-secondary-select-methods’ options, or within Gnus itself using commands in the *Server* buffer. See XXX for details. Some servers (including the more mail-like servers) will automatically subscribe the user to all their groups. Other servers (more news-like) will not. In the latter case, it’s necessary to enter the *Server* buffer (with “^”), press return on the server in question, and then subscribe to individual groups using “u”. Getting Mail ════════════ New mail has to come from somewhere. Some servers, such as NNTP or IMAP, are themselves responsible for adding newly-arrived articles. Others, such as maildir or mbox servers, only store articles and don’t fetch them from anywhere. In the second case, Gnus provides for “mail sources”: places where new mail is fetched from. A mail source might be a local spool, or a remote POP server, or some other source of incoming messages. Mail sources are usually configured globally, but can be specified per-group (see XXX for more information). The “g” key is used to update Gnus and fetch new mail. Servers that fetch their own mail will do so; additionally, all the mail sources will be scanned for new mail. That incoming mail will then be split into local servers according to the users splitting rules (see XXX). Viewing Mail ════════════ By default, Gnus’s *Group* buffer only displays groups with unread messages. It is always possible to display all the groups temporarily with “L”, and to configure Gnus to always display some groups (see XXX). The “j” key will prompt for a group name and jump to it, displaying it if necessary. Press “RET” on a group to enter it: by default Gnus will only show unread and ticked articles. It’s possible to see already-read mail, either by giving a prefix argument to “RET” before entering the group, or by pressing “/ o” once the group is open. Articles can be opened and scrolled using “RET” and/or “SPC”, and “n” will select the next message. Sending Mail ════════════ When sending messages, too, Gnus makes a distinction between news-like and mail-like behavior. News servers handle mail delivery themselves, and no additional configuration is necessary. Begin composing a news article using the “a” key in the *Group* buffer, or “f” if you’re in a group and replying to an article. Mail message composition starts with “m” in the *Group* buffer, or “r” if you’re replying to an existing message. Because mail is sent with SMTP, which is an entirely separate process from the mail-reading servers, it must also be configured separately, with the option `message-send-mail-function’ (see XXX).