From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Yuri Khan Newsgroups: gmane.emacs.devel Subject: Re: Experimentally unbind M-o on the trunk Date: Thu, 11 Feb 2021 23:08:53 +0700 Message-ID: References: <8ed9b43502ae1480e06b@heytings.org> <83r1lohqoc.fsf@gnu.org> <834kiiitxn.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="23259"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Jean Louis , "Alfred M. Szmidt" , Emacs developers , Gregory Heytings , Matt Armstrong , Lars Magne Ingebrigtsen To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Feb 11 17:13:28 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 1lAEat-0005uQ-Eg for ged-emacs-devel@m.gmane-mx.org; Thu, 11 Feb 2021 17:13:27 +0100 Original-Received: from localhost ([::1]:57830 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lAEas-0003p3-Gd for ged-emacs-devel@m.gmane-mx.org; Thu, 11 Feb 2021 11:13:26 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:57934) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lAEXA-00006X-Rd for emacs-devel@gnu.org; Thu, 11 Feb 2021 11:09:36 -0500 Original-Received: from mail-qt1-x831.google.com ([2607:f8b0:4864:20::831]:44323) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lAEX9-0008KP-6Y; Thu, 11 Feb 2021 11:09:36 -0500 Original-Received: by mail-qt1-x831.google.com with SMTP id h16so4474917qth.11; Thu, 11 Feb 2021 08:09:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=28WYbP58BwVM83lIz07H3bzAjngpM3pDlkkjVjv1VVI=; b=Bq/yBkkZAKKGcugIDVXVIKPyDBDuepjNrGYYcSyBkGii81/bl0+LFs9AcSHAZt0ifi 40Pe2+2BFFtSJuIO2dmSzbITIx3QjQAChGsTUE20HMT7EYiYW9FHFnM4PgLh6FmwJ55q YiTUtRkH2a6GKsehXI+cFIbA1070UR171EpsOG+MGBvL2SMWZ4mRyJqWVoLu2ZpR5Unv fU2RfTQAoExtuuuS3pwQzJA3UFIZ9KfT67AWmKRspuqF4pC5RG+4eszLZu9uZ6Vds2t+ Tfq/QxnE8mkDzWqMrj44s5db+9hbvdxNPLffYnRSsUFGC7+wiibVibrp5bOD1rMTOP9c IyBg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=28WYbP58BwVM83lIz07H3bzAjngpM3pDlkkjVjv1VVI=; b=jJ2EbPbVIdafPprbwR2L3xGBQCP7ItoepGxDm3nJP+wCeMPagfsQQFDTqpby8MRXUX EnZw2k93xLrwJ2M3t4+PEmLVSz/QBGNJfCeDm7vnycqcTGtE6Fm2yN+vAe2ELVOgLs1C 8uX14R0FhJXzOCCet+V9PTSFq2ruaJLNBZrjxragYsJIn3S1b/4scgpD/otgOhAYJhWl JouA4c/BTS6c1HacekBGwqEPoW92koalfbdX1qKF9g/25df/DkA0gYz8QVqnKIFoMWPL 9mq5D+QtdUCzLxi5UpjnFUh3HjmayT+ifOdyxY9o0MmoqDYIZIOeJsBssyB7wYt/tUfr DcZQ== X-Gm-Message-State: AOAM531rAsK9RcOb+TYEMnAv8VAijzk8IWYL5HzHlI4DzCVVP+RDEaRU YAqdoFm2KvnKHNa/k20RFgxX5QDytdlmkKphtR7VQr6N X-Google-Smtp-Source: ABdhPJxz0A2BCmQt0B/83vAsfPi16K7Um+C9U3xVsmmNl79zsTxBMH5i/6uygbo0tdMjiyRizq35afE1dA4AEbIwdzQ= X-Received: by 2002:ac8:47da:: with SMTP id d26mr7912261qtr.28.1613059773276; Thu, 11 Feb 2021 08:09:33 -0800 (PST) In-Reply-To: <834kiiitxn.fsf@gnu.org> Received-SPF: pass client-ip=2607:f8b0:4864:20::831; envelope-from=yurivkhan@gmail.com; helo=mail-qt1-x831.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action 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:264404 Archived-At: On Thu, 11 Feb 2021 at 21:02, Eli Zaretskii wrote: > > > Case in point: if a command isn't bound to a key it doesn't show up i= n > > > help, so there is this pressure to bind everything that could possibl= y > > > be useful to some person some day to some key. What if instead help > > > showed all the interactive commands provided by the mode? What if M-x > > > were smarter about highlighting mode specific commands? > > > > > > Perhaps exploring these kinds of ideas would be useful. > > > > The mechanism you=E2=80=99re describing is called a menu. > > > > Case in point: In almost every GUI program that follows the CUA > > guidelines, you can invoke the File | Open command by pressing Alt+F > > O. > > The original suggestion was to make it easier to discover _unknown_ > commands, whereas your menu analogy talks about invoking a _known_ > command. I don't see how this analogy helps, what did I miss? The discovery scenario is: I don=E2=80=99t know what I=E2=80=99m looking fo= r, but I can progressively narrow down the command space by choosing a submenu at each step. Once I=E2=80=99ve found the command I need, I can execute it right away and be done with it. The next few times I need it, I vaguely know where (spatially) in the menu it is. I then execute it by following the same path through the menu. If I use it frequently, I will notice the key binding displayed in the right margin, memorize it, and switch to using it. At this point, the menu has done its job. However, not all commands have bindings. And a conventional application makes every command quickly accessible via Alt+ =E2=80=A6, or =E2=80=A6, or F10 =E2=80=A6, with all commands in every given submenu having unique mnemonics. As an example, every time I log onto an unfamiliar ssh server and start Midnight Commander, I know to press F9 o c t Enter F9 o p y Enter to configure it to my liking. Being able to execute commands via menu and mnemonics reduces the need to bind commands. I will even go so far as to claim that such Emacs keymaps as C-x v are poor man=E2=80=99s menus =E2=80=94 they let the user e= xecute commands using long key sequences without the benefit of providing discovery and visual reassurance. (Cue Drew pitching Icicles key completion.)