From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.devel Subject: RE: [External] : Re: Concern about new binding. Date: Fri, 5 Feb 2021 18:26:38 +0000 Message-ID: References: <87zh0mmr54.fsf@gmail.com> <87y2g5smya.fsf@gmail.com> <4FF55FBF-573D-4A70-B3FC-682CA25B7ECB@gnu.org> <83lfc53whk.fsf@gnu.org> <20210203180142.seu6o3i6u7jhkyrh@Ergus> <83eehx3to5.fsf@gnu.org> <20210203221628.xgvvxjvh56gyswba@Ergus> <20210204070033.pm4ido4hq7a6twif@Ergus> <83sg6brhyg.fsf@gnu.org> <5588fb25805d486be704@heytings.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="10776"; mail-complaints-to="usenet@ciao.gmane.io" To: Gregory Heytings , "emacs-devel@gnu.org" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Fri Feb 05 19:36:51 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 1l85yL-0002fX-Il for ged-emacs-devel@m.gmane-mx.org; Fri, 05 Feb 2021 19:36:49 +0100 Original-Received: from localhost ([::1]:49954 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1l85yK-0002Ru-JE for ged-emacs-devel@m.gmane-mx.org; Fri, 05 Feb 2021 13:36:48 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:35424) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1l85oa-0001yp-H6 for emacs-devel@gnu.org; Fri, 05 Feb 2021 13:26:44 -0500 Original-Received: from userp2120.oracle.com ([156.151.31.85]:36682) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1l85oY-0006Sx-Hd for emacs-devel@gnu.org; Fri, 05 Feb 2021 13:26:44 -0500 Original-Received: from pps.filterd (userp2120.oracle.com [127.0.0.1]) by userp2120.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 115IJKK6001708; Fri, 5 Feb 2021 18:26:41 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=corp-2020-01-29; bh=myPdABOHp87v4XmiDFfZn0gcp7RW8uY7xBoPgwBLLOY=; b=pYl5AmYXiheJImY4X3pzN+5uXRJvDoVyJCc5PsRGJ4LZAMltzGAMslJZLriNX6kxTUHO z45XDNzbXaxMIaHddRJe1Y7l9bVQ5dg1JQm+GzI50WLM+PXv+lw/sDzmzkMCos2HZUVK ogek5mCqesSX4MuKH32XXP75ru0XylITF0EIsS+zM2xYKGb/wAeUs0aERtmKMpfc7f1f P42ZVnyrjGZsXS8IZcrY7TmB9n6pg7zGtP1hPE/ZGPJXQu9EU+O86hT23sinFrFPYavk +cqos0N9n0OHCz7lzGKuk090wGlyG7eiZpOW45XdjgjK6iymh1a0pwmhTBX35SRUzN9m Dg== Original-Received: from aserp3030.oracle.com (aserp3030.oracle.com [141.146.126.71]) by userp2120.oracle.com with ESMTP id 36gfw8tt98-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 05 Feb 2021 18:26:41 +0000 Original-Received: from pps.filterd (aserp3030.oracle.com [127.0.0.1]) by aserp3030.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 115IFgmw009151; Fri, 5 Feb 2021 18:26:40 GMT Original-Received: from nam12-dm6-obe.outbound.protection.outlook.com (mail-dm6nam12lp2175.outbound.protection.outlook.com [104.47.59.175]) by aserp3030.oracle.com with ESMTP id 36dh1uac94-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 05 Feb 2021 18:26:40 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ByANAhT//49R41MtP75LhXnARrkGbxKCr4kL0ZtKdJMFNyqYEYHQ96QFaKiJp3q8yaJVq2UquFwKhlmtV+k0+tciO6Hv5XnHK2PRPXjj7NTePhXaDq6rBwYvmabZKdi5XAkwpbVQ5uaifkB5YMaeZSHCZyc20v1FbCbl9STtD5BdFmtBMVTybJMWR0xVzMS/ybcxuARuFvaNM/aRu1yvOaeXFmNey3Pn8n9LT/in1CHy4BqVnrJK+Ve+C8wo4RFynkecytKsH3MeZj3lV0IxIXisDsLN9WlRGvT0t46alque84s1l8VXtdeJ0V004H2J/GJ3dbRdVr0oGrlbTs3dQA== 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-SenderADCheck; bh=myPdABOHp87v4XmiDFfZn0gcp7RW8uY7xBoPgwBLLOY=; b=VyjfyJ096SpR+iboQh7N6xHR7ACiOMvVajsqDXzMcpifsQTk2rvd8IO7Yn8seCu5LWQ9a2BJ6uCYhosvRUFyUVCaJdAXb1tuTzMtAbgJlIZx0FtD8a4Xekfw8gA9NleYP9+koHxrbb2W3Y8FaMFtiqJsVBdUMGctDb4YzO1hlq9aYNTnstNf8TpDaGyr7CYxE7GNscVPJVbVhnd0yuZ+XfjpJh/oOpRdB+1W9tTbyWKCIN3CG1ixvFRZy/UOOVYXoBkwFt6Vo2P5GUVdsDXcDcSobVdLXAcPCOMqnHJuuU+0MhAHdp6QeALz70TKmQLOXCBc3CH5PvT+FAabActFmw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=myPdABOHp87v4XmiDFfZn0gcp7RW8uY7xBoPgwBLLOY=; b=Y4HX4civ+VqbvuB4N2KYPqqcnOAP+ZxkdECj4TYaVT8/PSPGJUPG1bZgdTOinlE2ibKaXWcr9Q6X6D6D7c5x4dXAsF4KttiAcqiwtjHumszcitA9Edi+el1WBXHbaQVY+oujW3muzgqXEVsZlx5w5Tl/DVWUdotOFn3qJNX+5Y4= Original-Received: from SA2PR10MB4474.namprd10.prod.outlook.com (2603:10b6:806:11b::15) by SN6PR10MB2432.namprd10.prod.outlook.com (2603:10b6:805:46::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3825.17; Fri, 5 Feb 2021 18:26:38 +0000 Original-Received: from SA2PR10MB4474.namprd10.prod.outlook.com ([fe80::dc4d:9cd0:2010:daa2]) by SA2PR10MB4474.namprd10.prod.outlook.com ([fe80::dc4d:9cd0:2010:daa2%7]) with mapi id 15.20.3825.024; Fri, 5 Feb 2021 18:26:38 +0000 Thread-Topic: [External] : Re: Concern about new binding. Thread-Index: AQHW++xw05sLP8G0VkuKLJFk4nC0rw== In-Reply-To: <5588fb25805d486be704@heytings.org> Accept-Language: en-US Content-Language: en-US authentication-results: heytings.org; dkim=none (message not signed) header.d=none;heytings.org; dmarc=none action=none header.from=oracle.com; x-originating-ip: [73.170.83.28] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 21a365bd-ad27-47c0-4ada-08d8ca0393ed x-ms-traffictypediagnostic: SN6PR10MB2432: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: rfVDoCRKxRPAVdKVjbmDEpE3ACvfUQrLNCe1OuXc/OBY1a+yrg6BRwikreBS/GxfIVRbIV3tu1UGPzqCtKdX/NmyPO2N8V76Ed0TgtFiEWI9Dc/HmcQ9Ahhk9Oksd4bf3T0N7MVhRpZ9LoZL5l869h7xcNYy9fk+7UjTM1USOYvxTb7c6Hy4dNiPOD5OXvItAJrJs+lEByrp7oGGk185o9dKKDYbZB7KLRxTl7vdxp4G/5WeNNnKegU6Y3yAn0YHsLOlVUYOXIBknW0hwxHXNeoC+AeVftKC+iPXLzk01dNvWthHnXEq6qMAMbw3J2k6N77xpBKNC8MQ7/XHRR2wFpEPGranyj1XsIlQNfE8HO9c9aySTWkfdQIQSPCsTkhWuhO8e3G+3zh383+uaAcblUXxXeI12hlV1RCfXwBKMeZkbjPG7g0ObD0ur61h4tyiDYPna3KGgYvxGf6MXUlFzBeW8EqaBNdwprcU7CLwZmjXW03/4JWTt+8PORTvWmE+l1CpvdLkTLZlmOTLqLNYzA== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA2PR10MB4474.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(136003)(366004)(39860400002)(346002)(396003)(376002)(33656002)(71200400001)(6506007)(7696005)(8676002)(110136005)(316002)(186003)(26005)(44832011)(52536014)(8936002)(66446008)(64756008)(76116006)(66556008)(66476007)(66946007)(86362001)(5660300002)(9686003)(478600001)(2906002)(83380400001)(55016002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: =?us-ascii?Q?9Ra6tXb0u+pW/R9v65amml+2nQuB3oJVXivy4/wpRszpGEwdtPZdzHUFytCj?= =?us-ascii?Q?vHbFWzuQ+ErH+KdA6fN8sxdjSKNAUg4raymQM3kxzdXJAs2C6VbNra34VSfv?= =?us-ascii?Q?vHGHsJpwivDetWlK7Trk8p55xpy/VbigrFS0BNwi/5Wj14CAuONCCVdn3LYV?= =?us-ascii?Q?dcsBOBqbnF9IWg7zhkpPd3jOaWLue2wE3uKCq0unFSbt1b03aQRrs6aJjE+1?= =?us-ascii?Q?tVl4C0q9mhe2k9U8q+HLvrJqPI5awmYlKfI/aC3iUDemPeXlvpiENouqutdE?= =?us-ascii?Q?WSlGs0bAzqkkilrBQHYhCTtkh5HncKbAtsRplYr3JAG0TK3P694vMt+h1uyA?= =?us-ascii?Q?eHPMMH/yN5p1u8dZ2TiQLRALFmsUSAagdrWB4cTHIrgtTuJj/2XTX3N+hdEr?= =?us-ascii?Q?NxLi/3yK5e6w1nWlIa4VimCZtE0JKHrCotckkg6LmQgOtfLCTo0foph0d1P0?= =?us-ascii?Q?zL1QJJNIoEcFOIDoTx8E7L763PN+hVwymEKiwpFX9GLtV8CvsU/SNA0kGvQd?= =?us-ascii?Q?X5EFeOT/X/EZIHL+zEe9X/wZy3lY56M+yKGedhwkcVnNKTCrouETLjA6+QsY?= =?us-ascii?Q?jvQIod5h8nR73MGnsEeILBdXFk/s7E/skx7ggdPnt7S/L4mxil/eXgOSZFnN?= =?us-ascii?Q?f/xS x-ms-exchange-transport-forked: True X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SA2PR10MB4474.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 21a365bd-ad27-47c0-4ada-08d8ca0393ed X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Feb 2021 18:26:38.7703 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: ol9wIFHQbC/bQGxEACoP3pT+gXoqCHi0/RgZ0u5YO5B4iNV/AztjlECphAZnoXHeLJ4KZ6xojv+PGrZ/ASKmEw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR10MB2432 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9885 signatures=668683 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 spamscore=0 phishscore=0 suspectscore=0 mlxlogscore=999 bulkscore=0 mlxscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2009150000 definitions=main-2102050114 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9885 signatures=668683 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 spamscore=0 bulkscore=0 impostorscore=0 clxscore=1015 mlxscore=0 mlxlogscore=999 malwarescore=0 suspectscore=0 lowpriorityscore=0 priorityscore=1501 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2009150000 definitions=main-2102050114 Received-SPF: pass client-ip=156.151.31.85; envelope-from=drew.adams@oracle.com; helo=userp2120.oracle.com X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 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, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-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:263991 Archived-At: > It seems to me that the root problem of this thread, and similar ones > in > the past months, is the lack of a convention for external packages in > `(elisp) Key Binding Conventions'. There is a convention for users, > there > are conventions for major and minor modes, but there is no convention > for > external packages such as Magit, Drew's packages, and so forth. FWIW, I don't think that's the root problem of this thread. I don't even think it's much of a problem. I, for one, think that it makes sense for 3rd-party libraries to be in the same class as users when it comes to key-binding conventions. I might be convinced otherwise. And yes, there are differences among 3rd-party libraries. Some are huge and have many users. Some are even nearly part of Emacs itself. Others are simply some small bit of code that a user shares with others. I think that, until proven otherwise, we're OK with lumping 3rd-party code with users, when it comes to conventions about key bindings. > Consequently, the only solution for such packages is to use the > currently empty slots, with a sword of Damocles hanging over > them: these empty slots could at any time be reclaimed by Emacs. > I too can sympathize with Drew's (and other's) frustration when > this happens. It's indeed a problem. The same problem can arise if some other 3rd-party library decides to use the same key (e.g. a prefix key) that another library has long used. But I think that such potential conflicts among 3rd-party bindings are less of a problem than Emacs itself grabbing keys. (See above. And again, I could be convinced otherwise.) > A proposal to solve the current problem and future similar problems is > to free one of the keys, and to mention in `(elisp) Key Binding > Conventions' that it is, forever, reserved for external packages. I'm not in favor of that - a single key for all 3rd-party code. > This proposal has two forms: a weak and a strong one. The weak one > would only reserve the control key, the strong one would also > reserve the meta and control-meta keys. I guess you mean not a single key but a single key plus its Control or Control-&-Meta modifiers? I'm not in favor of that either - still too limiting. I favor allowing all keys that are currently allowed for 3rd-party code. And I favor Emacs itself implementing a moratorium on binding any more keys by default. A moratorium that could be overruled in cases deemed to be important, cases that would hopefully be discussed here, and would of course be decided by the maintainers. > The candidate keys for that proposal are "z", "t" and "o". > IOW, one could for example reserve either "C-z" (weak version), or "C- > z" > and "M-z" and "C-M-z" (strong version), for external packages. >=20 > This is a one-time change, which I'm sure will not be an easy one for > everyone, but is a long-term solution that will avoid such repeated > wars. To me, that's too limiting for 3rd-party libraries. I'd prefer what I say above. Emacs itself should keep its hands off new keys. Emacs can instead repurpose some existing key bindings, if it needs new bindings. There are, I think, some existing bindings that might not be all that necessary.