From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.devel Subject: RE: Generic dispatcher Date: Sun, 30 Jun 2013 16:42:57 -0700 (PDT) Message-ID: <2611bec5-a180-4722-b913-328fcfee201a@default> References: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1372635795 3409 80.91.229.3 (30 Jun 2013 23:43:15 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 30 Jun 2013 23:43:15 +0000 (UTC) To: Stefan Monnier , emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Jul 01 01:43:11 2013 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1UtRGs-0001jm-T4 for ged-emacs-devel@m.gmane.org; Mon, 01 Jul 2013 01:43:07 +0200 Original-Received: from localhost ([::1]:59039 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UtRGs-0002uQ-CX for ged-emacs-devel@m.gmane.org; Sun, 30 Jun 2013 19:43:06 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:45531) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UtRGp-0002uG-3k for emacs-devel@gnu.org; Sun, 30 Jun 2013 19:43:04 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UtRGn-000318-Fx for emacs-devel@gnu.org; Sun, 30 Jun 2013 19:43:03 -0400 Original-Received: from userp1040.oracle.com ([156.151.31.81]:41224) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UtRGn-00030s-9u for emacs-devel@gnu.org; Sun, 30 Jun 2013 19:43:01 -0400 Original-Received: from ucsinet22.oracle.com (ucsinet22.oracle.com [156.151.31.94]) by userp1040.oracle.com (Sentrion-MTA-4.3.1/Sentrion-MTA-4.3.1) with ESMTP id r5UNaeAP014019 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sun, 30 Jun 2013 23:36:40 GMT Original-Received: from userz7021.oracle.com (userz7021.oracle.com [156.151.31.85]) by ucsinet22.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id r5UNgxWR002894 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sun, 30 Jun 2013 23:42:59 GMT Original-Received: from abhmt117.oracle.com (abhmt117.oracle.com [141.146.116.69]) by userz7021.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id r5UNgwth019959; Sun, 30 Jun 2013 23:42:59 GMT In-Reply-To: X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.7 (607090) [OL 12.0.6668.5000 (x86)] X-Source-IP: ucsinet22.oracle.com [156.151.31.94] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4.x-2.6.x [generic] X-Received-From: 156.151.31.81 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:161390 Archived-At: > For epa/eww/mhe/... I think we should introduce a generic dispatcher. > The way I see it, it would look like: >=20 > - M-x mail RET runs one of the mail backends. First time around it > prompts the user to choose a MUA, then stores the result in a Custom > var and doesn't prompt any more. This would rely on > a mail-alternatives variable holding various MUAs such as Gnus, MH-E, > ... and third party packages can easily register themselves in this > list via their autoloads. The user can reconsider his choice with C-u > M-x mail RET in which case she gets prompted again. >=20 > - same for M-x irc RET > - same for M-x encrypt RET > - same for M-x browse RET > - we could push this further (e.g. auctex vs tex-mode.el) but I'm not > sure it'd be such a great idea. +1 1. Assuming all of the commands under the same dispatcher do very similar things. And assuming a user really wants to use multiple such, rather than just have a preferred single such (e.g., via customize). 2. As "browsing" can apply (whether this comes to mind or not) to other things besides the web (e.g. repositories, hierarchies, and graphs of all sorts), consider naming your `browse' dispatcher more specifically: `browse-web' or some such. The alternative would be to have all such diverse kinds of browsing/navigating on the same dispatch command, but I think that would defeat the purpose. More generally, I'd suggest keeping this sort of thing for tight groups of closely related commands, not for wide categories of commands.