From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Lars Ingebrigtsen Newsgroups: gmane.emacs.devel Subject: Re: The new keymap functions Date: Mon, 15 Nov 2021 17:53:45 +0100 Message-ID: <874k8dz7fq.fsf@gnus.org> References: <87zgq8sfw3.fsf@gnus.org> <8735o0mgj3.fsf@fastmail.fm> <87v90wi7hv.fsf@gnus.org> <43bf1f9b-55ec-67b6-1920-98179a5d6903@yandex.ru> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="26752"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) Cc: Joost Kremers , emacs-devel@gnu.org To: Dmitry Gutov Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon Nov 15 17:54:54 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 1mmfFt-0006kp-R6 for ged-emacs-devel@m.gmane-mx.org; Mon, 15 Nov 2021 17:54:54 +0100 Original-Received: from localhost ([::1]:54402 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mmfFq-0001CS-NC for ged-emacs-devel@m.gmane-mx.org; Mon, 15 Nov 2021 11:54:50 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:57878) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mmfF1-0007VR-1t for emacs-devel@gnu.org; Mon, 15 Nov 2021 11:53:59 -0500 Original-Received: from [2a01:4f9:2b:f0f::2] (port=35424 helo=quimby.gnus.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mmfEy-0007Qt-U4 for emacs-devel@gnu.org; Mon, 15 Nov 2021 11:53:58 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=O1rmn14QZX+j8yU0truzVwN7mOeAPB7VsleP1Hm5p4g=; b=UVbn/q4EJw7+rcBa2t4PcY2hB9 wYjw4CaczJyHvqOVwcr6na0esv3yNNpsqiwdqNGld5idPHvn8CXIw9G22WA5KK5wUpM6PT4Fe9ZTQ R+5CoZEWdYKcnb+9N7Ma1V+b1mPy7YKF1XB4huJ5Q+XAZ3zxrDE4STyekAFxLSYXPrJA=; Original-Received: from [84.212.220.105] (helo=xo) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mmfEs-0006QR-R4; Mon, 15 Nov 2021 17:53:54 +0100 X-Now-Playing: Espen Reinertsen's _Forgaflingspop_: =?utf-8?Q?=22Bj=C3=B8r?= =?utf-8?Q?nens?= sang" In-Reply-To: <43bf1f9b-55ec-67b6-1920-98179a5d6903@yandex.ru> (Dmitry Gutov's message of "Mon, 15 Nov 2021 16:01:28 +0300") X-Host-Lookup-Failed: Reverse DNS lookup failed for 2a01:4f9:2b:f0f::2 (failed) Received-SPF: pass client-ip=2a01:4f9:2b:f0f::2; envelope-from=larsi@gnus.org; helo=quimby.gnus.org X-Spam_score_int: -35 X-Spam_score: -3.6 X-Spam_bar: --- X-Spam_report: (-3.6 / 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, RDNS_NONE=0.793, 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.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" Xref: news.gmane.io gmane.emacs.devel:279508 Archived-At: Dmitry Gutov writes: >>> If they do something different from what `local-unset-key` and >>> `global-unset-key` do, would it perhaps be useful to name them >>> differently as >>> well? Perhaps `unbind` instead of `unset`? >> Or -remove, perhaps? I've decided to keep the old semantics, so -unset is more correct. (But removal will be an option: (defun keymap-local-unset (key &optional remove) ... (interactive (list (key-description (read-key-sequence "Unset key locally: ")) current-prefix-arg)) > And for symmetry with 'remove', we could use 'put' instead of 'set'. > > It would sound more like working with a hashmap/hashtable (which a > keymap is, in a sense). It makes sense, but it feels a bit too... technical. Anyway, I think I'm just about ready to push the changes to the trunk, and I'll do so tomorrow. The changes to the manuals is still a work in progress, but it'll take a few more sweeps over the manual to see what needs to remain and what should be edited out (especially concerning the many key syntaxes, which we want to de-emphasise, but still keep), and I think it makes more sense to hold off on doing that until we've got more experience with the new functions. (But I think the main work has been done in the manuals, too.) After pushing the changes, you'll all have to say "make bootstrap" (or remove all the .elc files first) because of the changes to the syntax in `defvar-keymap'. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no