From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Current mode command discovery Date: Sun, 21 Feb 2021 17:19:11 +0200 Message-ID: <83mtvxxxcg.fsf@gnu.org> References: <87v9aubm96.fsf@gnus.org> <87r1laomak.fsf@gnus.org> <83im6mzpuk.fsf@gnu.org> <83czwuzo1w.fsf@gnu.org> <835z2mzlyo.fsf@gnu.org> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="5546"; mail-complaints-to="usenet@ciao.gmane.io" Cc: larsi@gnus.org, stefankangas@gmail.com, emacs-devel@gnu.org To: rms@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sun Feb 21 16:20:31 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lDqX8-0001K6-AV for ged-emacs-devel@m.gmane-mx.org; Sun, 21 Feb 2021 16:20:30 +0100 Original-Received: from localhost ([::1]:50590 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lDqX7-0004Ut-Cl for ged-emacs-devel@m.gmane-mx.org; Sun, 21 Feb 2021 10:20:29 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:41054) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lDqWC-0003mq-K6 for emacs-devel@gnu.org; Sun, 21 Feb 2021 10:19:32 -0500 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:36021) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lDqWC-0004Um-Bi; Sun, 21 Feb 2021 10:19:32 -0500 Original-Received: from 84.94.185.95.cable.012.net.il ([84.94.185.95]:3764 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1lDqW4-0008UV-4p; Sun, 21 Feb 2021 10:19:24 -0500 In-Reply-To: (message from Richard Stallman on Sun, 21 Feb 2021 01:18:11 -0500) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 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-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:265393 Archived-At: > From: Richard Stallman > Cc: stefankangas@gmail.com, larsi@gnus.org, emacs-devel@gnu.org > Date: Sun, 21 Feb 2021 01:18:11 -0500 > > > You distinguish between "commands" and "keys"? Emacs doesn't. C-f is > > a _command_, not (just) a key. > > Using our terminology carefully, C-f is not a command. C-f is a key, > and it is bound to the command forward-char. > > I'm often sloppy about this, and I suppose everyone is. But when > these distinctions matter, let's follow the definitions. I never perceived this as a sloppiness. Since the first time I've read the tutorial, the notion of C-f etc. being a kind of command was very clear to me. The tutorial has this all over the place. Here's a typical example, of which there are many: The following commands are useful for viewing screenfuls: C-v Move forward one screenful M-v Move backward one screenful C-l Clear screen and redisplay all the text, It even says right at the beginning: Emacs commands generally involve the CONTROL key (often labeled CTRL) or the META key (usually labeled ALT). Rather than writing that Later it says: * EXTENDING THE COMMAND SET --------------------------- There are many, many more Emacs commands than could possibly be put on all the control and meta characters. Emacs gets around this with the X (eXtend) command. This comes in two flavors: C-x Character eXtend. Followed by one character. M-x Named command eXtend. Followed by a long name. Take away the notion that C-f is a command, not only a key, and the above explanation of "command extension" has no basis, except perhaps as a historical curiosity. So I think we should maintain that C-f etc. is a command as well as a key sequence.