From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Arthur Miller Newsgroups: gmane.emacs.devel Subject: Re: [External] : Re: Info-mode patch Date: Thu, 29 Jun 2023 18:24:02 +0200 Message-ID: References: <86fs6ertto.fsf@mail.linkov.net> <86wmzpqva6.fsf@mail.linkov.net> <867cropyh3.fsf@mail.linkov.net> <86mt0kulli.fsf@mail.linkov.net> <86wmzmzs1s.fsf@mail.linkov.net> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="35102"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Cc: Juri Linkov , "emacs-devel@gnu.org" To: Drew Adams Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Jun 29 20:06:09 2023 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 1qEw1v-0008yN-UD for ged-emacs-devel@m.gmane-mx.org; Thu, 29 Jun 2023 20:06:09 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qEw14-0003XD-I5; Thu, 29 Jun 2023 14:05:14 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qEuRE-0001oY-RS for emacs-devel@gnu.org; Thu, 29 Jun 2023 12:24:08 -0400 Original-Received: from mail-ve1eur01olkn2044.outbound.protection.outlook.com ([40.92.66.44] helo=EUR01-VE1-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qEuRC-0008Rx-Kw for emacs-devel@gnu.org; Thu, 29 Jun 2023 12:24:08 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VFI+zsw/9dOtc5EaC9lFfvSHb3LY7iR2OKRrPFd0Nb+4QlEXnjoEJfGuF3OqW0iaZxBHVj+u6VhYB5SC7lA3ydBja/kEfJz6UwpK478jLaNf/P06ic6odJPLKlHlUyVf+pf8MvTxT+wsGlMm2f258HZQIIAP8wEc21KD6mbNNmNdi1+Jl/yTT4duYaHK83IqUiIhXHI2x9oTQjTqZlE+z+mAYcmi9Pr8SO3r+zhovN0mup7pKpDdSBeG2QoEk5GL3tofIsVlPx7t6cVnUGXQIeEjHkZ7szlwSOPhhBzIhGuPtuMa+Krkv5JAnmVjyT0quA28n+Cqr995BdPx7hDngQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=hm52d7Ei0ML/KBMvyk1IhEcqL8cRpmI7EicSv66Qr3U=; b=O6D/z2JHMYRGqA/BXATIpaaGTlMsevYiTURq8UqEweQ7PaPlqf3r/SW6vvLyvC7RYB3a8icffOw1NEVK3Q8eQBsQuMHcRO7u4E0pwrWmaPUpYFyUvD+eDrrK9AeORpidocnQQWcsWGXwE7DXSjyPRYZuxxYS3jagBYeg+RoOMO9or2/LQqN9Qd3QJSbjw7HMort3erD56ESDT5KIEhISfTB1B7qV1Qb1R1DjkL5KoK92FiSlh3KWjahtlx/vKSpStqap0ZKKi2YRWP2qb4mNrCEcc9Ro/vQrJ9050JAbXhQO60wDpulhHxU0dYVKwFvXmJaKHXVgBSasXxV5LHMr7Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=live.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hm52d7Ei0ML/KBMvyk1IhEcqL8cRpmI7EicSv66Qr3U=; b=joCTLliFcGzlig/aJlFhtyOTXaiSh7hFvKbTxWcWgRs6mopeEZPRwmMyCrnbSK4kPEX6/SIxrH2ZOb9JMhnFwHUc8iWCR54xfTP+TkUUS8dMmUgxGWYMfl7FHlBTTa1pnjEt2U9V6oSQDSx3FX23UKT8eMf6pIxaqkc4iGL5wlJ0cydmFYPevDJZ45Cyro9RQnqN5e49hyu4utEygXbt33mqXNi28GdX7yuGONwePYadiSIhsPt7n0eU0OVxFXNm0x+T2ajBAnlF39CQBl8EUgLxchNb7mbj9GQRQuOar4/YLvZ/FVkPr/itSHsPpmxc9+Boq4DYtYrIoTi0e6jBEw== Original-Received: from AM9PR09MB4977.eurprd09.prod.outlook.com (2603:10a6:20b:304::20) by DU0PR09MB5952.eurprd09.prod.outlook.com (2603:10a6:10:410::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.26; Thu, 29 Jun 2023 16:24:04 +0000 Original-Received: from AM9PR09MB4977.eurprd09.prod.outlook.com ([fe80::4a5f:42f9:d78f:2021]) by AM9PR09MB4977.eurprd09.prod.outlook.com ([fe80::4a5f:42f9:d78f:2021%4]) with mapi id 15.20.6544.019; Thu, 29 Jun 2023 16:24:04 +0000 In-Reply-To: (Drew Adams's message of "Thu, 29 Jun 2023 15:00:39 +0000") X-TMN: [sRjQpUVbPrUmnHMZwGZq1iVeCFEn1JVj] X-ClientProxiedBy: BE1P281CA0101.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:79::19) To AM9PR09MB4977.eurprd09.prod.outlook.com (2603:10a6:20b:304::20) X-Microsoft-Original-Message-ID: <82edlup78d.fsf@live.com> X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM9PR09MB4977:EE_|DU0PR09MB5952:EE_ X-MS-Office365-Filtering-Correlation-Id: 6155c55d-55e0-49f9-3c2d-08db78bd40cb X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ZZVPiIUA2KJUtuSn7J5VlUnNbFrrfVR5eFXATiepF4UpwhB7wmstgZRF31xUy9YzOLva7VBtkHRYo+QQFCUGiztGsgazzgkyQUV5YiqlUBvefrBCGPLKPvAPBK/EAVzFJxJNrq7S3NwAaTpeAlZ6GJnPig9kSynqilKyaG1Awqv0D+QqR6U4l9A4HHgYiQZZI1HPkD6D0XjRErbc68IQJKXkOuwgnUWBkss9oDsfPtw3Tt29kehsAcScxG7N8DwpZI2/oZLap4+s/+1+jAEbtKwsRxoQL4QIuYvOGsdydzXZBwE+5obgHWCoHqMzJzLpDLdBmfFCKkOBeRM+szTzEKU7l1hRw2+JxU9H2B/LrcVufIm4hWpnVNgoUdRCQfwXXQoCbDxV6knWOySUhJCHDEXtAyRq6gQhiYgkD2moqgvmqb141mNOg8VswXpIymRvkLBAxVyfwwtCtd4jdJWHX7BpvEvtUh4gb/fIRJZhrJp2PqQ2Cb9vDpF0eOFEcRc5QhQoNKZBclOianTxb6Tg3P5ScOopFJg5XSlFBaqa4w6h998Goo4ZYPg6IhLlQltu X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?3MShSt2wQvcclCRWWLiVcb+ZHPQT/30CN5wnWrvMOpwxvVqzgwmj2a1wpkQ7?= =?us-ascii?Q?zbZlpYSiOJsJZC+dfAFzjDMA10vwQsvMGOYauAK9b/OjpZ3Zri2QsRnlTorV?= =?us-ascii?Q?3vEOTR+ExyJFLGj7p0rDV1L6ikO43+zz1/ODdpm49tVZH7GG4BY1LMQfRw0Z?= =?us-ascii?Q?hYGuJfGB6SRCmDWf8GNPlyiUb/fBOxEh10YjuWEmioJgjwkhivu54gHTpmCA?= =?us-ascii?Q?FIIPdjJQnEnkiTqGEGs5cn8gSNUdrLFVgkMBgZlAt+x+DwNQNWumz1qBJhGI?= =?us-ascii?Q?HoYqh29o3yV0NAP/9WzODSZpFSDe+SPC8VtCnsk8yv4iMu+cLcrzgWGjo4Fe?= =?us-ascii?Q?CD+B/myXHZH97IMIltIuAPCvrpUDGE6S4Fhv+H52T9Z+Awofs5vB0z8SBxK1?= =?us-ascii?Q?4rYXHXpIDvSet7iLnvXtJ1JqP5IUxsobqEvKgLiZlmUDXlPOFLADLEtmoDOC?= =?us-ascii?Q?WPhoftHsMlE3CWgzqNOCSquElgY4EYiiFUzG8CSD1xuzxVb1ADOxiJUs+xkc?= =?us-ascii?Q?7cGPKbYKgXOG4V+r+H9+kTssxdJd4gQ5m7MEs0UG19gESEpgINwQRfvKNAnM?= =?us-ascii?Q?JDYxRe87b2emdZOHWoyctgFiiDhbOf53vmA6cOkyxLmS+65EKH+0fjF5V4Tp?= =?us-ascii?Q?XP X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-64da6.templateTenant X-MS-Exchange-CrossTenant-Network-Message-Id: 6155c55d-55e0-49f9-3c2d-08db78bd40cb X-MS-Exchange-CrossTenant-AuthSource: AM9PR09MB4977.eurprd09.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2023 16:24:04.0361 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR09MB5952 Received-SPF: pass client-ip=40.92.66.44; envelope-from=arthur.miller@live.com; helo=EUR01-VE1-obe.outbound.protection.outlook.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, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Thu, 29 Jun 2023 14:05:07 -0400 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 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-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:307299 Archived-At: Drew Adams writes: >> For me it is because I would prefer having less code if >> I don't have to. I assumed you will do something like >> that; and my personal opinion is that I would definitely >> prefer not having foo, and foo-other-window, along with >> foo-mode-map and foo-mode-other-window-map, because I >> see it as a necessary duplication in an environment >> already full with numerous commands and symbols. > > 1. Sincere apologies: I'm not following this thread. > Just a comment on this bit I quoted out of context. > > 2. There are lots of "I" occurrences there. That's > fine, if the result is that something gets changed > in Emacs only for some "I"s who might want to opt > into that change. > > 3. There's an inherent trade-off in benefits, which > means that different users and different code uses > (libraries) can prefer different positions on the > trade-off spectrum. > > I'm referring to this: > > If there is some semi-automatic way of predefining > keys for other-window, other-frame, etc. behavior > for "base" commands, then that might mean some > simplification of some implementation code. And it > could perhaps result in fewer commands. > > But fewer commands and predefining some systematic > scheme for key-binding the window/frame variants is > also _constraining_. > > Users also need to be able to easily bind different > individual commands to whatever keys they like, in > whatever keymaps they like. > > And users can also prefer to have separate commands, > discoverable by name matches etc. I might want to > find an `-other-window' or `-other-frame' version > of a command - both to read its doc and to invoke > it - specifically. > > Tying things up in a tight knot might be useful for > implementers or for some users. But it could tie > the hands of other users and implementers of other > code. > > Having multiple `foo', `foo-other-window', and/or > `foo-other-frame' really bothers some people. Me, > I prefer that - greatly. I don't want to have to > carve out some such behavior from an iron block, > or, in effect, have to define my own variants. > This applies to my use of commands interactively > and in code. > > Again, I'm ignorant of what's being proposed. So > maybe this is just a knee-jerk, alarmist response. > But if it rings a bell, then please make any such > changes 100% optional for users - and opt-in, not > opt-out. I can just suggest you to try the patch. You should be able to use it as-is, as you always did, at least it is my intention, otherwise it is a bug; even with your multiple help buffers. But you can also bind all commands to any keymap you wish, and there is no need to "-other-window" commands at all; with other words, you don't need to neither discover nor search anything. > Emacs is very different things for different users > and use cases. Sweeping changes can break things > for others, without any bad intentions. Of course Drew, we are all aware of the fact. I tried for that explicit reason to be completely backwards compatible. If I have failed in some case, than it is a bug. I am al for automation myself, dispute is that I would pefer future commands in Emacs to be written with some assumptions, so we don't need double set of commands. For that I have already mentioned that we could automate that with something like define-minor-mode, and I do have a small framework idea in mind, but I haven't had time to code it yet. Juris approach is good for the old code so it don't have to be reworked, and if you want some occasional function to run on other window. I think it would be good to have it in Emacs as an option for people to use occaionally with older code. But I don't think it is very good as the only alternative, for all the future use, because I am sure we can avoid the duplication of commands, i.e. "-other-window" commands, and maps as the wrapper approach does. We only need to take care how we write a command, and they would work from everywhere, there is nothing to opt in/out. I have also suggested that we abstract boring details in some macro, something like define-command, that take care of prompting user, choosing a window, dealing with universal prefix etc. As Eli said, the point was to just make Info and help mode commands callable from other widows, which this patch does, so I haven't coded anything general, but I am quite confident it would be relatively simple to do.