From unknown Sun Jun 22 11:50:00 2025 X-Loop: help-debbugs@gnu.org Subject: bug#74404: [PATCH] Give Completion Preview bindings higher precedence Resent-From: Eshel Yaron Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 17 Nov 2024 16:31:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 74404 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: 74404@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.17318610569345 (code B ref -1); Sun, 17 Nov 2024 16:31:02 +0000 Received: (at submit) by debbugs.gnu.org; 17 Nov 2024 16:30:56 +0000 Received: from localhost ([127.0.0.1]:58255 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tCiAp-0002Qf-Tv for submit@debbugs.gnu.org; Sun, 17 Nov 2024 11:30:56 -0500 Received: from lists.gnu.org ([209.51.188.17]:32780) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tCiAn-0002QW-OC for submit@debbugs.gnu.org; Sun, 17 Nov 2024 11:30:54 -0500 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 1tCiAn-0003uo-0q for bug-gnu-emacs@gnu.org; Sun, 17 Nov 2024 11:30:53 -0500 Received: from mail.eshelyaron.com ([107.175.124.16] helo=eshelyaron.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tCiAl-0005Yd-JQ for bug-gnu-emacs@gnu.org; Sun, 17 Nov 2024 11:30:52 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=eshelyaron.com; s=mail; t=1731861049; bh=7PDLbA2C0TT6G/s/VJbInWFoC+5IWwIe2M+qJWKvQuE=; h=From:To:Subject:Date:From; b=fZr5YRmnyg1NfMC4eMKDylKNYJER8ypnHt685CLyqYwkbtIT+CrEZp9xrxsMdh98t obJM4qe5dY3TeCFYy5zRlZCnWJX8igpV6moCdWW9RD6HatqyDat2nKx4/h3ozrQBzi U3agy4bQdZEJYAqODxNVmpr8GN1uX3VJiBm7/Yxro4m2Szwxn9e7tYTqe2Y1i+BoPd vKQtOP6LTk44bJ0G2ixH0+LXEvvhe/oGs5gt+jqNKMQmLpel9XSqZxzQjBQv7tFDtl OZ64Tjcejf1SOEKOU3TJjgGsNXTSW2ovmFDau3lrMykaL1Gyyzx6jn5Tcg5ANKgR4T k+3u3aGa7FA8w== From: Eshel Yaron X-Hashcash: 1:20:241117:bug-gnu-emacs@gnu.org::wFlDTZpzQKKrTonm:Btou Date: Sun, 17 Nov 2024 17:30:47 +0100 Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Received-SPF: pass client-ip=107.175.124.16; envelope-from=me@eshelyaron.com; helo=eshelyaron.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, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.4 (--) --=-=-= Content-Type: text/plain Tags: patch Whenever Completion Preview mode shows a completion preview, it also activates keybindings for commands that interact with that preview, most notably TAB is bound to completion-preview-insert, which inserts the suggested completion. This is implemented via a minor mode completion-preview-active-mode whose keymap provides these bindings, and which is enabled when the preview is displayed. This all works well, except for when another minor mode, foo-mode, is enabled, whose keybindings conflict with these active preview bindings. If foo-mode is defined after completion-preview-active-mode, i.e. if foo.el is loaded after completion-preview.el, then foo-mode comes first in minor-mode-map-alist and takes precedence over the bindings in completion-preview-active-mode-map. This happens, for example, with eshell-cmpl-mode, a minor mode that is enabled by default in Eshell, which binds TAB to completion-at-point. So currently Completion Preview mode doesn't work as expected in Eshell: when you try to accept the suggested completion (with TAB), you get completion-at-point instead of completion-preview-insert. To fix this issue, we need to give the active completion preview bindings higher precedence than keymaps of minor modes that where defined after loading completion-preview.el. The patch below does that by using minor-mode-overriding-map-alist. Any thoughts? --=-=-= Content-Type: text/patch Content-Disposition: attachment; filename=0001-Give-Completion-Preview-bindings-higher-precedence.patch >From 951df80d3749b2e82072f397dd7c7b5ce256f36d Mon Sep 17 00:00:00 2001 From: Eshel Yaron Date: Sun, 17 Nov 2024 16:55:30 +0100 Subject: [PATCH] Give Completion Preview bindings higher precedence * lisp/completion-preview.el (completion-preview-active-mode): add keymap to 'minor-mode-overriding-map-alist' so it takes precedence over other minor mode maps that bind TAB, such as 'eshell-cmpl-mode' in Eshell. --- lisp/completion-preview.el | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lisp/completion-preview.el b/lisp/completion-preview.el index 4564812e8a9..e5be3197032 100644 --- a/lisp/completion-preview.el +++ b/lisp/completion-preview.el @@ -322,8 +322,13 @@ completion-preview-active-mode "Mode for when the completion preview is shown." :interactive nil (if completion-preview-active-mode - (add-hook 'window-selection-change-functions - #'completion-preview--window-selection-change nil t) + (progn + (add-hook 'window-selection-change-functions + #'completion-preview--window-selection-change nil t) + ;; Give keymap precedence over other minor mode maps. + (setf (alist-get 'completion-preview-active-mode + minor-mode-overriding-map-alist) + completion-preview-active-mode-map)) (remove-hook 'window-selection-change-functions #'completion-preview--window-selection-change t) (completion-preview-hide))) -- 2.46.2 --=-=-=-- From unknown Sun Jun 22 11:50:00 2025 X-Loop: help-debbugs@gnu.org Subject: bug#74404: [PATCH] Give Completion Preview bindings higher precedence Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 17 Nov 2024 17:05:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 74404 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Eshel Yaron , Stefan Monnier Cc: 74404@debbugs.gnu.org Received: via spool by 74404-submit@debbugs.gnu.org id=B74404.173186308715306 (code B ref 74404); Sun, 17 Nov 2024 17:05:02 +0000 Received: (at 74404) by debbugs.gnu.org; 17 Nov 2024 17:04:47 +0000 Received: from localhost ([127.0.0.1]:58373 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tCiha-0003yo-KR for submit@debbugs.gnu.org; Sun, 17 Nov 2024 12:04:46 -0500 Received: from eggs.gnu.org ([209.51.188.92]:51342) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tCihY-0003yY-Kv for 74404@debbugs.gnu.org; Sun, 17 Nov 2024 12:04:45 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tCihR-00035I-Ne; Sun, 17 Nov 2024 12:04:38 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=ReiN9FsgCGLHAOG1LNt9pMDqZRTgY4iGkxwNN4dLcsM=; b=luak+wpA9b9R KdyRjVOGaB7asObmGmkKuBGA00/YGBZqF2Lp65RXZRPgUe3+1rPmab8cKrg1XxVt9ujxarqWEtDhO RnvYRt3prxZaNJ6+NbfqqdkZ1G01+2YDYDSoxn453utX7FoBJTlRU/o1Cq1GZNivLpfo6aFf9CbAH /6ud13HZkFqcb3vN8Ysf3Q6UGb35YOhobuqUXy0JyaZ7xNiA8sGsikbTBksPFQTV3/4QQL6U4JLOR +LyL7a7JzED9ibIy5qBuggCyPniqmsYzCnV0MCgnRCT2hSpj8HYaoLSDTvyKcwoOcSUfSR+/xWpEV ikxOqjZ0wbWwN+rhItiXgQ==; Date: Sun, 17 Nov 2024 19:04:33 +0200 Message-Id: <86ttc5vljy.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: (bug-gnu-emacs@gnu.org) References: X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Date: Sun, 17 Nov 2024 17:30:47 +0100 > From: Eshel Yaron via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" > > Whenever Completion Preview mode shows a completion preview, it also > activates keybindings for commands that interact with that preview, most > notably TAB is bound to completion-preview-insert, which inserts the > suggested completion. This is implemented via a minor mode > completion-preview-active-mode whose keymap provides these bindings, and > which is enabled when the preview is displayed. > > This all works well, except for when another minor mode, foo-mode, is > enabled, whose keybindings conflict with these active preview bindings. > If foo-mode is defined after completion-preview-active-mode, i.e. if > foo.el is loaded after completion-preview.el, then foo-mode comes first > in minor-mode-map-alist and takes precedence over the bindings in > completion-preview-active-mode-map. > > This happens, for example, with eshell-cmpl-mode, a minor mode that is > enabled by default in Eshell, which binds TAB to completion-at-point. > So currently Completion Preview mode doesn't work as expected in Eshell: > when you try to accept the suggested completion (with TAB), you get > completion-at-point instead of completion-preview-insert. > > To fix this issue, we need to give the active completion preview > bindings higher precedence than keymaps of minor modes that where > defined after loading completion-preview.el. The patch below does that > by using minor-mode-overriding-map-alist. Any thoughts? Can't you instead use the 'keymap' text or overlay property? That would avoid the "arms race" of precedences. Adding Stefan, in case he has comments or suggestions. From unknown Sun Jun 22 11:50:00 2025 X-Loop: help-debbugs@gnu.org Subject: bug#74404: [PATCH] Give Completion Preview bindings higher precedence Resent-From: Stefan Monnier Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 17 Nov 2024 17:17:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 74404 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Eli Zaretskii Cc: 74404@debbugs.gnu.org, Eshel Yaron Received: via spool by 74404-submit@debbugs.gnu.org id=B74404.173186380217666 (code B ref 74404); Sun, 17 Nov 2024 17:17:02 +0000 Received: (at 74404) by debbugs.gnu.org; 17 Nov 2024 17:16:42 +0000 Received: from localhost ([127.0.0.1]:58409 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tCit7-0004as-QI for submit@debbugs.gnu.org; Sun, 17 Nov 2024 12:16:42 -0500 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:48594) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tCit5-0004ae-1J for 74404@debbugs.gnu.org; Sun, 17 Nov 2024 12:16:40 -0500 Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 87639807F5; Sun, 17 Nov 2024 12:16:32 -0500 (EST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1731863791; bh=Ov8C7cRXuJHSB8Z9hjk+eNoydzE2yviGk/IetYe7iY4=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=gTN9hCVE3IVI0fDp+TJ86TwPCDe+ANqhBTpfKT84xDs7L+MIJAmiILsbpGdkswUHt syUuLXVM1mgCE9ON1bGOlv2OCsBuwGsMJ2tKvuPMRKEbYwNV9OhAxeL0Pei9Y6Jsn8 R9nlLAZRD5bbthIpkCn155GoLpiRZBwJYl3CbCRp+jdTPh0J/LTTdYHjWcTrOqw4sQ o/9HA3t5ehkgtnYmz0Z538ndNjIswBCsnhBLi1Wk6hRcvIrfJU+P4iPW7yqFnOxveR 3T8EWfLZVzvrYQVFDzYY8dfZKtlbAbN48gvZLRZ4oCDobdCMIIw421tXG6FebYIM0z ZcFwJ+6iaQLWA== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id B203E80672; Sun, 17 Nov 2024 12:16:31 -0500 (EST) Received: from pastel (104-195-225-43.cpe.teksavvy.com [104.195.225.43]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 155B31203DB; Sun, 17 Nov 2024 12:16:31 -0500 (EST) From: Stefan Monnier In-Reply-To: <86ttc5vljy.fsf@gnu.org> (Eli Zaretskii's message of "Sun, 17 Nov 2024 19:04:33 +0200") Message-ID: References: <86ttc5vljy.fsf@gnu.org> Date: Sun, 17 Nov 2024 12:16:29 -0500 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL 0.006 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) >> To fix this issue, we need to give the active completion preview >> bindings higher precedence than keymaps of minor modes that where >> defined after loading completion-preview.el. The patch below does that >> by using minor-mode-overriding-map-alist. Any thoughts? > > Can't you instead use the 'keymap' text or overlay property? That > would avoid the "arms race" of precedences. > > Adding Stefan, in case he has comments or suggestions. Assuming the minor mode is disabled as soon as point moves away from the completion, I wouldn't have a clear preference between `keymap` and `minor-mode-overriding-map-alist`. BTW, maybe we should add some notion of minor mode precedence since such problems are actually fairly common. We could do something similar to what we do with `add-hook`, so `add-minor-mode` takes care of obeying the ordering constraints. Stefan From unknown Sun Jun 22 11:50:00 2025 X-Loop: help-debbugs@gnu.org Subject: bug#74404: [PATCH] Give Completion Preview bindings higher precedence Resent-From: Eshel Yaron Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 17 Nov 2024 17:32:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 74404 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Stefan Monnier Cc: Eli Zaretskii , 74404@debbugs.gnu.org Received: via spool by 74404-submit@debbugs.gnu.org id=B74404.173186467020326 (code B ref 74404); Sun, 17 Nov 2024 17:32:01 +0000 Received: (at 74404) by debbugs.gnu.org; 17 Nov 2024 17:31:10 +0000 Received: from localhost ([127.0.0.1]:58446 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tCj78-0005Hi-3M for submit@debbugs.gnu.org; Sun, 17 Nov 2024 12:31:10 -0500 Received: from mail.eshelyaron.com ([107.175.124.16]:45166 helo=eshelyaron.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tCj74-0005HY-P5 for 74404@debbugs.gnu.org; Sun, 17 Nov 2024 12:31:09 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=eshelyaron.com; s=mail; t=1731864666; bh=FI3ZreQa9iajvJ3O6IeWvFFGbQSWnFIwjVc0uFpWvvo=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=MGcWAMH4wwU3c3QfeHyYjQenF2wtZqcX4ZQNyY6Oe2fVxkZ8X2NzqmD44+PYDoJha nkEP9DgJhtJGFMpJmpbCEkoRvnCtapomrm8TwWW9bUOt+1H9XQf65WK0LvlwWQKegV KgwYPYyoEZDTlZ/TolEbkudW36MhL5JPKcCpaJyaOv+1upP3mNBci3LIpsV/EnaHe6 fUxS7oyNbQ4P7pHCQJWNhIGGMW7IhZ3ueqmrraAdcWJcyfAadg6onvBxsl1XZ3f2/M 7XyayCaefhPJEEMtyDfsHJndCA7JaPnnkdpAvnWmptXOfDnG7KH23BXmpGXL1Z6XjR AxUBd85EgxzwA== From: Eshel Yaron In-Reply-To: (Stefan Monnier's message of "Sun, 17 Nov 2024 12:16:29 -0500") References: <86ttc5vljy.fsf@gnu.org> Date: Sun, 17 Nov 2024 18:31:03 +0100 Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi, Stefan Monnier writes: >>> To fix this issue, we need to give the active completion preview >>> bindings higher precedence than keymaps of minor modes that where >>> defined after loading completion-preview.el. The patch below does that >>> by using minor-mode-overriding-map-alist. Any thoughts? >> >> Can't you instead use the 'keymap' text or overlay property? That >> would avoid the "arms race" of precedences. I thought about that, but no, we can't easily use that, since the overlay is not necessarily at point: it is generally at the end of the symbol, and point may be at the middle of the symbol. >> Adding Stefan, in case he has comments or suggestions. > > Assuming the minor mode is disabled as soon as point moves away from the > completion, I wouldn't have a clear preference between `keymap` and > `minor-mode-overriding-map-alist`. Indeed, the minor mode is disabled as soon as the completion preview is dismissed for whatever reason, including moving point elsewhere. > BTW, maybe we should add some notion of minor mode precedence since such > problems are actually fairly common. We could do something similar to > what we do with `add-hook`, so `add-minor-mode` takes care of obeying > the ordering constraints. That'd be nice, I think. Thanks, Eshel From unknown Sun Jun 22 11:50:00 2025 X-Loop: help-debbugs@gnu.org Subject: bug#74404: [PATCH] Give Completion Preview bindings higher precedence Resent-From: Sean Whitton Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 22 Nov 2024 10:09:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 74404 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Eli Zaretskii , Stefan Monnier , 74404@debbugs.gnu.org, Eshel Yaron Received: via spool by 74404-submit@debbugs.gnu.org id=B74404.17322701395290 (code B ref 74404); Fri, 22 Nov 2024 10:09:01 +0000 Received: (at 74404) by debbugs.gnu.org; 22 Nov 2024 10:08:59 +0000 Received: from localhost ([127.0.0.1]:53105 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tEQaw-0001NG-LS for submit@debbugs.gnu.org; Fri, 22 Nov 2024 05:08:58 -0500 Received: from sendmail.purelymail.com ([34.202.193.197]:35066) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tEQau-0001Mw-0b for 74404@debbugs.gnu.org; Fri, 22 Nov 2024 05:08:57 -0500 DKIM-Signature: a=rsa-sha256; b=yeEJGu947eHh7U5PnO4DtphC7Kpf+ajF1aJxay7Yf36SZmfcp4sIT+h5odLiTAXaR2OoTzCsqx4lNv8ZULoGQj1jCbdpH5NrSXP21ue005+9jjXUUEWSnaL61xfm3q1q1K7agWvDbI2CE9Hj2mCDjbzeQA44+izVaRotAM5DjamYcNZ06wK27+MNfdqrtZYOk4WT/IQXu+YFqrEXOoFRDnYTk9fBVMSNQ1SYzFXeeyryvVr6FquG1jdKND1iOAQs1t5+pji9dwjm4zwGlAIXCYejVq1cbwhnLAtZFtCgGIg8sdTXpzVSXbyMR0dvqXybXmvQxIJEjNcOcs+LQRWnbA==; s=purelymail3; d=spwhitton.name; v=1; bh=+8GrkYWqain6r8lg81wAw6hDpIfEu1C0L4hIeQXaRso=; h=Received:Received:From:To:Subject:Date; DKIM-Signature: a=rsa-sha256; b=jddjnLZmTIzI3uhNpLM0J6WbDTKTizj4/qu0/A58St66qkC2+yrDYtqscwvGJ7YTHgcXJkya9U9HoD3MdZNxcZvW4jBRzVyoU7nE4sUnQBCnzNfmvqdfQkOYK3AeWJej/t4bUFJXHbZDNWKuDABiBWV+75hqmNkbdbIxv8Otmb/KzUQt2dr0lMxC12nKhgD9spHrdSsgwl1f+6qonRCa2Lg18VHhg4zs83vkVZGC7b7rWsYUcdRg7l68Tse8CpVmh2tZs77wogWMrRUCkTrKGwwRdJLAl5yIJOErS/rRJaexLrW+hl/7pKRV9PYuU/gwIbHlaVGZfPSVEpcA1u0/jw==; s=purelymail3; d=purelymail.com; v=1; bh=+8GrkYWqain6r8lg81wAw6hDpIfEu1C0L4hIeQXaRso=; h=Feedback-ID:Received:Received:From:To:Subject:Date; Feedback-ID: 20115:3760:null:purelymail X-Pm-Original-To: 74404@debbugs.gnu.org Received: by smtp.purelymail.com (Purelymail SMTP) with ESMTPSA id 1054700279; (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Fri, 22 Nov 2024 10:08:49 +0000 (UTC) Received: by melete.silentflame.com (Postfix, from userid 1000) id 234C47E10B1; Fri, 22 Nov 2024 18:08:47 +0800 (CST) From: Sean Whitton In-Reply-To: (Stefan Monnier via's message of "Sun, 17 Nov 2024 12:16:29 -0500") References: <86ttc5vljy.fsf@gnu.org> Date: Fri, 22 Nov 2024 18:08:47 +0800 Message-ID: <87mshry40g.fsf@melete.silentflame.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hello, On Sun 17 Nov 2024 at 12:16pm -05, Stefan Monnier via "Bug reports for GNU Emacs, the Swiss army knife of text editors" wrote: > BTW, maybe we should add some notion of minor mode precedence since such > problems are actually fairly common. We could do something similar to > what we do with `add-hook`, so `add-minor-mode` takes care of obeying > the ordering constraints. We could also have a customisation option that allows the user to override the default priorities. As minor modes are always interned symbols, this would be possible in a way that it isn't for hook priorities. -- Sean Whitton From unknown Sun Jun 22 11:50:00 2025 X-Loop: help-debbugs@gnu.org Subject: bug#74404: [PATCH] Give Completion Preview bindings higher precedence Resent-From: Eshel Yaron Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 23 Nov 2024 14:04:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 74404 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Sean Whitton Cc: Eli Zaretskii , 74404@debbugs.gnu.org, Stefan Monnier Received: via spool by 74404-submit@debbugs.gnu.org id=B74404.1732370583812 (code B ref 74404); Sat, 23 Nov 2024 14:04:01 +0000 Received: (at 74404) by debbugs.gnu.org; 23 Nov 2024 14:03:03 +0000 Received: from localhost ([127.0.0.1]:57216 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tEqj0-0000D1-MA for submit@debbugs.gnu.org; Sat, 23 Nov 2024 09:03:02 -0500 Received: from mail.eshelyaron.com ([107.175.124.16]:59804 helo=eshelyaron.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tEqiy-0000CT-7d; Sat, 23 Nov 2024 09:03:00 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=eshelyaron.com; s=mail; t=1732370579; bh=AHF61jvcCDwEmYO0CpnP047aRB1BAo07fzWm3T8I+/8=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=qS7pNAefzz/w0d0Ua/l1S6DPx+kr5qrzAzCsnExFnaYGgEbRGGaxlU7gUENsRk0ht rrewOVvPzx5FBqfZsjRiBnhq38Ia8d10QZ31DoSn1tc3rNDOjx5WS16sUk8Z0keeXl XJiXz0YEQIy8ij38lTE49ONiRCSaxigoKxyX76bjqBpcgAo93ldTt7NVorc6txNGbS 4yd7jRJRncU1eIC5+DdSFdSXiJTh3Wg7FBb3GYAfl6XL7sYKs514h4Hnfq5U9rn+VR Eu8fVAKAIG57DL5Xi9LkMk9ORb9zcdw7EsjJX/Ddl8xvPR5Zm5EfwxIjzMWKk2PIGE p5vgzT8YKItuw== From: Eshel Yaron In-Reply-To: <87mshry40g.fsf@melete.silentflame.com> (Sean Whitton's message of "Fri, 22 Nov 2024 18:08:47 +0800") References: <86ttc5vljy.fsf@gnu.org> <87mshry40g.fsf@melete.silentflame.com> Date: Sat, 23 Nov 2024 15:02:56 +0100 Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) close 74492 31.1 quit Hi, Sean Whitton writes: > Hello, > > On Sun 17 Nov 2024 at 12:16pm -05, Stefan Monnier via "Bug reports for > GNU Emacs, the Swiss army knife of text editors" wrote: > >> BTW, maybe we should add some notion of minor mode precedence since such >> problems are actually fairly common. We could do something similar to >> what we do with `add-hook`, so `add-minor-mode` takes care of obeying >> the ordering constraints. > > We could also have a customisation option that allows the user to > override the default priorities. As minor modes are always interned > symbols, this would be possible in a way that it isn't for hook > priorities. I've opened bug#74492 to discuss this broader topic of explicit minor mode precedence. For now, I've pushed my patch solving this particular issue with Completion Preview mode to master (commit 30bcba27c8c). With that, I'm closing this bug. Thanks, Eshel From debbugs-submit-bounces@debbugs.gnu.org Wed Jan 01 21:00:22 2025 Received: (at control) by debbugs.gnu.org; 2 Jan 2025 02:00:23 +0000 Received: from localhost ([127.0.0.1]:41386 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tTAVa-0002Om-La for submit@debbugs.gnu.org; Wed, 01 Jan 2025 21:00:22 -0500 Received: from mail-ed1-x52c.google.com ([2a00:1450:4864:20::52c]:48280) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1tTAVY-0002Ob-A1 for control@debbugs.gnu.org; Wed, 01 Jan 2025 21:00:20 -0500 Received: by mail-ed1-x52c.google.com with SMTP id 4fb4d7f45d1cf-5d7e3f1fdafso22341593a12.0 for ; Wed, 01 Jan 2025 18:00:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1735783219; x=1736388019; darn=debbugs.gnu.org; h=to:subject:message-id:date:mime-version:from:from:to:cc:subject :date:message-id:reply-to; bh=/QLhme9wmEKi+Tt4eVA4cYRYeuNqJL9GdOqCg48P63o=; b=Cv/YWpR6n120yYIfvtFvJ5cakFQHCFWxOVN+4CCUvp4F1HKn588EZuhS3NWjWe2lrt c5ckeTbljjxv0jyiwFu8RvvK5aytECWkV34eA6Zoy867iUcenMKDKqzBuJmqeJpHc9v+ Mmr5Wz+4KE95AGq8jIcUsuNPvOcJFDXgDPSn/hcBxEXrhrH2W4TN0S/Vgixlk/4AR93j b73RMGdolYfD/Pt6UstSAFUltxZa3ycE7JOh0dmZpE/Mk6SPvcC6jyMQrkvwIdnU9X5R 66S3r+hrxRhbLK0XlEaRT5XXEssKyWO5tcuqLgJlK6KtgZR+KLQohAp2aWFT5iChcRC3 vsFg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1735783219; x=1736388019; h=to:subject:message-id:date:mime-version:from:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=/QLhme9wmEKi+Tt4eVA4cYRYeuNqJL9GdOqCg48P63o=; b=sq+2mLZEHDGvHozTmgotGRkzv5KJ91SV3mVi1QnyP2IFJcumL5ewypaC0PMDj0popE P/+lokOQAoNW9ttgPvRmes0uK6cj3MoVpZomL1nSNCHyOkihGNSXW1DZSocbPmeRO/hM qQ9ErmDHrbag/m26v+1Z89Noz04KH8tjGMoLUZ+3O89VXPe0SA5l5TjBRJzkfA28cMbH krYRHkXC2PZWUMBgYA0pM7WWRhEg1vUT3ODhrUbYguoCWrokcIGacY73tQVkQGIuGxUn VPm5zIvY5wIfgl7XJIJ+jncySbidab1IzPMRqG+7ZQbeHEaPikcAUFz9IGAD2R2XSmbH yQZg== X-Gm-Message-State: AOJu0YxwP8wMBR9IFzLQDl51KXud4M0l67nLg0HxTho5j7NWUjsekFPQ Q80lS7ViT3x7JU3Aim5q241/yXdPEsQzU9Zxwx5IQbZX839qxj6w9m+7Cbr/rPZlXdJ9v4cjBL0 v6DbZ2ju7evxZJXG0NCyZL4tT9h3qxr4A X-Gm-Gg: ASbGncu4lqSQR2Gqi7hjypdH0mSVOBoSUgRPjtUW0JbfI6Ntk+L/9Q+nrDnTHQpjDs/ eWwOAIoQc+15KTIU4Wd2hDzQmVl7BLJ0CKSm4GT8q X-Google-Smtp-Source: AGHT+IHJy/ax3ob2ZnTbXNid8l7WQaOtAM+PMmSUiyqPiFOtnExTisiMqeuJxnH9GaFJK8GJxV85uFybrurBd5kM3ZM= X-Received: by 2002:a05:6402:210a:b0:5d0:81af:4a43 with SMTP id 4fb4d7f45d1cf-5d81dc797b5mr35870983a12.0.1735783219172; Wed, 01 Jan 2025 18:00:19 -0800 (PST) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Wed, 1 Jan 2025 20:00:18 -0600 From: Stefan Kangas MIME-Version: 1.0 Date: Wed, 1 Jan 2025 20:00:18 -0600 Message-ID: Subject: control message for bug #74404 To: control@debbugs.gnu.org Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) severity 74404 wishlist quit From unknown Sun Jun 22 11:50:00 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Eshel Yaron Subject: bug#74404: closed (Re: bug#74404: [PATCH] Give Completion Preview bindings higher precedence) Message-ID: References: X-Gnu-PR-Message: they-closed 74404 X-Gnu-PR-Package: emacs X-Gnu-PR-Keywords: patch Reply-To: 74404@debbugs.gnu.org Date: Tue, 11 Feb 2025 19:17:02 +0000 Content-Type: multipart/mixed; boundary="----------=_1739301422-12719-1" This is a multi-part message in MIME format... ------------=_1739301422-12719-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #74404: [PATCH] Give Completion Preview bindings higher precedence which was filed against the emacs package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 74404@debbugs.gnu.org. --=20 74404: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D74404 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1739301422-12719-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 74404-close) by debbugs.gnu.org; 11 Feb 2025 19:16:28 +0000 Received: from localhost ([127.0.0.1]:58654 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1thvkB-0003Hy-PG for submit@debbugs.gnu.org; Tue, 11 Feb 2025 14:16:28 -0500 Received: from mail-ed1-x536.google.com ([2a00:1450:4864:20::536]:44341) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1thvk8-0003Hf-Fa for 74404-close@debbugs.gnu.org; Tue, 11 Feb 2025 14:16:25 -0500 Received: by mail-ed1-x536.google.com with SMTP id 4fb4d7f45d1cf-5de63846e56so6644255a12.1 for <74404-close@debbugs.gnu.org>; Tue, 11 Feb 2025 11:16:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739301378; x=1739906178; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:from:to:cc:subject:date:message-id:reply-to; bh=X2RJx/P+KM5z7PqEQj6KDROGgTQf/n32KAXqbQGnu50=; b=Kc7ArqjVoMI8CK/F+8GfKL9OmQ3ktMkBZmlECykLCDPuFuGhxmuaX9pJ0G8y1zWR1X +qaEKqpqLV0gDqMwS84LYqqFTnDCrC1F+wOoPcLNKf5EvZAvTHes+HBwHFDqdPt97Eok U5P424Yo8/g/g2MlUGp+lvFmAx+RUxID5p9fCRRDkFWMPHm1mXDqV19cjbgf22fz3oTw /jpRRRdZ+hdMvUmSx6fQVgxh2guxO+rItRBNY4evFb+GRwmsVOqPVhrJ+ggHeyxprZ7t HIdBMxADgm+nzrviIUJ1Zm6+6pRkSzR9ghKKNROra/3ZqNxq1C51Wq/mjWSqUjJFIFQy 6Ydg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739301378; x=1739906178; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=X2RJx/P+KM5z7PqEQj6KDROGgTQf/n32KAXqbQGnu50=; b=xMDYz4TY98hMIfYRVQWRMmmtLeW84mJJ3H/9hRi2k5UKYCfKAg9wc827otNckBNkAw i6sUyuUVuYaswDbkqHLbf03WSv03yMEIXLwvhG9D59brhGE2Iv3STgslv2cXfU22tLyZ HqmYPeFdfxDS0Sm6xnQSwdAV8nBnMS9r9647nkNb8sCDyNgAFZaW3cGYrEn05wIzFq8U 1vTW6dljayMCfQolKB37Z3kHHgaN1zO6ydYnT8O7t9SHHGy1VNUDAjtftRLfpx/VjNwY QmZHRb5elfBIYBUFS7XWaswqC5xBpOuFuDtlV0U3Rm4EUL+kplSl9Dae9zpRcT6HZQ2X o4Nw== X-Forwarded-Encrypted: i=1; AJvYcCXxW/GvBLoaRzm3ItqO+OxGzYsDhXmD4T5FNylxX3poEeP6kUvBmnAQYrtb8GvTTKuXyGEIEyWYURlOOg==@debbugs.gnu.org X-Gm-Message-State: AOJu0YzH9uhpgPlVUKrWOfPZuPjve5m8oy0If9xHxjaX5etBbrcRq2fp IUrxO+SwUtTINZ0wUFEtZv1Xm3Bp1IZANBMXH7gfnFZA8fbJvP8ribeq7hxub+JQwAdDA4Y1dnV AA+AlR9wJmPUekA14W4KyABOiIqgdXJ+vXQHdSQ== X-Gm-Gg: ASbGnctP8ecP6LwIiApYlCKpFwSBd2Rx+jQNt27AZmG7ClvYGR4XHup2mNBvKTZsyra F7PgRPGf+yTOL5zvNRDNsm1GuLrQArdE5GnLM1aKuiu3Fky1qEG6d2Bpdn1d3W4uPmBfDMW6U/Q == X-Google-Smtp-Source: AGHT+IECdVBQYX43jE4fwJJsn8bakfCD3ZO/lTdChrd/pI6kL8/+TSpK97fDxNw1SL1Efi8+WyvF8SPEMQlnP2d+pIY= X-Received: by 2002:a05:6402:4409:b0:5d0:ed71:3ce4 with SMTP id 4fb4d7f45d1cf-5deadd78174mr361282a12.6.1739301378043; Tue, 11 Feb 2025 11:16:18 -0800 (PST) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Tue, 11 Feb 2025 11:16:16 -0800 From: Stefan Kangas In-Reply-To: References: <86ttc5vljy.fsf@gnu.org> <87mshry40g.fsf@melete.silentflame.com> MIME-Version: 1.0 Date: Tue, 11 Feb 2025 11:16:16 -0800 X-Gm-Features: AWEUYZl9tPGsNPSJnDJEyIEToB-ArCmkCHOtAZfhy-yT1ie_vtl491iNnduHJ9U Message-ID: Subject: Re: bug#74404: [PATCH] Give Completion Preview bindings higher precedence To: Eshel Yaron Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 74404-close Cc: 74404-close@debbugs.gnu.org, Eli Zaretskii , Stefan Monnier , Sean Whitton X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Eshel Yaron writes: > close 74492 31.1 > quit > > Hi, > > Sean Whitton writes: > >> Hello, >> >> On Sun 17 Nov 2024 at 12:16pm -05, Stefan Monnier via "Bug reports for >> GNU Emacs, the Swiss army knife of text editors" wrote: >> >>> BTW, maybe we should add some notion of minor mode precedence since such >>> problems are actually fairly common. We could do something similar to >>> what we do with `add-hook`, so `add-minor-mode` takes care of obeying >>> the ordering constraints. >> >> We could also have a customisation option that allows the user to >> override the default priorities. As minor modes are always interned >> symbols, this would be possible in a way that it isn't for hook >> priorities. > > I've opened bug#74492 to discuss this broader topic of explicit minor > mode precedence. For now, I've pushed my patch solving this particular > issue with Completion Preview mode to master (commit 30bcba27c8c). > > With that, I'm closing this bug. It seems like the bug was not closed, so I'm doing that now. ------------=_1739301422-12719-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 17 Nov 2024 16:30:56 +0000 Received: from localhost ([127.0.0.1]:58255 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tCiAp-0002Qf-Tv for submit@debbugs.gnu.org; Sun, 17 Nov 2024 11:30:56 -0500 Received: from lists.gnu.org ([209.51.188.17]:32780) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tCiAn-0002QW-OC for submit@debbugs.gnu.org; Sun, 17 Nov 2024 11:30:54 -0500 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 1tCiAn-0003uo-0q for bug-gnu-emacs@gnu.org; Sun, 17 Nov 2024 11:30:53 -0500 Received: from mail.eshelyaron.com ([107.175.124.16] helo=eshelyaron.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tCiAl-0005Yd-JQ for bug-gnu-emacs@gnu.org; Sun, 17 Nov 2024 11:30:52 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=eshelyaron.com; s=mail; t=1731861049; bh=7PDLbA2C0TT6G/s/VJbInWFoC+5IWwIe2M+qJWKvQuE=; h=From:To:Subject:Date:From; b=fZr5YRmnyg1NfMC4eMKDylKNYJER8ypnHt685CLyqYwkbtIT+CrEZp9xrxsMdh98t obJM4qe5dY3TeCFYy5zRlZCnWJX8igpV6moCdWW9RD6HatqyDat2nKx4/h3ozrQBzi U3agy4bQdZEJYAqODxNVmpr8GN1uX3VJiBm7/Yxro4m2Szwxn9e7tYTqe2Y1i+BoPd vKQtOP6LTk44bJ0G2ixH0+LXEvvhe/oGs5gt+jqNKMQmLpel9XSqZxzQjBQv7tFDtl OZ64Tjcejf1SOEKOU3TJjgGsNXTSW2ovmFDau3lrMykaL1Gyyzx6jn5Tcg5ANKgR4T k+3u3aGa7FA8w== From: Eshel Yaron To: bug-gnu-emacs@gnu.org Subject: [PATCH] Give Completion Preview bindings higher precedence X-Hashcash: 1:20:241117:bug-gnu-emacs@gnu.org::wFlDTZpzQKKrTonm:Btou Date: Sun, 17 Nov 2024 17:30:47 +0100 Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Received-SPF: pass client-ip=107.175.124.16; envelope-from=me@eshelyaron.com; helo=eshelyaron.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, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.4 (--) --=-=-= Content-Type: text/plain Tags: patch Whenever Completion Preview mode shows a completion preview, it also activates keybindings for commands that interact with that preview, most notably TAB is bound to completion-preview-insert, which inserts the suggested completion. This is implemented via a minor mode completion-preview-active-mode whose keymap provides these bindings, and which is enabled when the preview is displayed. This all works well, except for when another minor mode, foo-mode, is enabled, whose keybindings conflict with these active preview bindings. If foo-mode is defined after completion-preview-active-mode, i.e. if foo.el is loaded after completion-preview.el, then foo-mode comes first in minor-mode-map-alist and takes precedence over the bindings in completion-preview-active-mode-map. This happens, for example, with eshell-cmpl-mode, a minor mode that is enabled by default in Eshell, which binds TAB to completion-at-point. So currently Completion Preview mode doesn't work as expected in Eshell: when you try to accept the suggested completion (with TAB), you get completion-at-point instead of completion-preview-insert. To fix this issue, we need to give the active completion preview bindings higher precedence than keymaps of minor modes that where defined after loading completion-preview.el. The patch below does that by using minor-mode-overriding-map-alist. Any thoughts? --=-=-= Content-Type: text/patch Content-Disposition: attachment; filename=0001-Give-Completion-Preview-bindings-higher-precedence.patch >From 951df80d3749b2e82072f397dd7c7b5ce256f36d Mon Sep 17 00:00:00 2001 From: Eshel Yaron Date: Sun, 17 Nov 2024 16:55:30 +0100 Subject: [PATCH] Give Completion Preview bindings higher precedence * lisp/completion-preview.el (completion-preview-active-mode): add keymap to 'minor-mode-overriding-map-alist' so it takes precedence over other minor mode maps that bind TAB, such as 'eshell-cmpl-mode' in Eshell. --- lisp/completion-preview.el | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lisp/completion-preview.el b/lisp/completion-preview.el index 4564812e8a9..e5be3197032 100644 --- a/lisp/completion-preview.el +++ b/lisp/completion-preview.el @@ -322,8 +322,13 @@ completion-preview-active-mode "Mode for when the completion preview is shown." :interactive nil (if completion-preview-active-mode - (add-hook 'window-selection-change-functions - #'completion-preview--window-selection-change nil t) + (progn + (add-hook 'window-selection-change-functions + #'completion-preview--window-selection-change nil t) + ;; Give keymap precedence over other minor mode maps. + (setf (alist-get 'completion-preview-active-mode + minor-mode-overriding-map-alist) + completion-preview-active-mode-map)) (remove-hook 'window-selection-change-functions #'completion-preview--window-selection-change t) (completion-preview-hide))) -- 2.46.2 --=-=-=-- ------------=_1739301422-12719-1--