From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Juri Linkov Newsgroups: gmane.emacs.devel Subject: Re: [PATCH] (icomplete-vertical-mode): Add support for affixations and, annotations Date: Tue, 25 May 2021 00:52:00 +0300 Organization: LINKOV.NET Message-ID: <87im37ss57.fsf@mail.linkov.net> References: <87zgwlb4xc.fsf@gmail.com> <87eedxrqz4.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="40673"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) Cc: Daniel Mendler , =?iso-8859-1?Q?Jo=E3o_T=E1vora?= , emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Tue May 25 00:13:46 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 1llIpV-000AQX-0P for ged-emacs-devel@m.gmane-mx.org; Tue, 25 May 2021 00:13:45 +0200 Original-Received: from localhost ([::1]:38074 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1llIpU-0001jy-2U for ged-emacs-devel@m.gmane-mx.org; Mon, 24 May 2021 18:13:44 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:56224) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1llIov-0000WF-9A for emacs-devel@gnu.org; Mon, 24 May 2021 18:13:09 -0400 Original-Received: from relay7-d.mail.gandi.net ([217.70.183.200]:37551) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1llIos-0003qY-MU for emacs-devel@gnu.org; Mon, 24 May 2021 18:13:09 -0400 Original-Received: (Authenticated sender: juri@linkov.net) by relay7-d.mail.gandi.net (Postfix) with ESMTPSA id 4682020002; Mon, 24 May 2021 22:13:00 +0000 (UTC) In-Reply-To: (Stefan Monnier's message of "Sun, 23 May 2021 23:23:36 -0400") Received-SPF: pass client-ip=217.70.183.200; envelope-from=juri@linkov.net; helo=relay7-d.mail.gandi.net X-Spam_score_int: -25 X-Spam_score: -2.6 X-Spam_bar: -- X-Spam_report: (-2.6 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, 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:269812 Archived-At: > Why does the function use `with-selected-window`? I can't see why it > would need to mess with windows. As for switching buffer, the only > reason I can see to switch buffer is for `where-is-internal`, which > could be fixed by pre-computing the set of keymaps (see patch below) > which also makes sure we use the right buffer whereas > `minibuffer-selected-window` could theoretically return another active > minibuffer than "ours". >[...] > + (let ((keymaps (current-active-maps overriding-local-map))) > + `(metadata > + (affixation-function > + . ,(lambda (arg) > + (read-extended-command--affixation keymaps arg))) I tried it out, but it doesn't work, because the above code is executed in the minibuffer instead of the original buffer. It doesn't need to select another window indeed, but still needs to switch buffers, maybe current-active-maps in the above wrapped with something like (with-current-buffer (window-buffer (minibuffer-selected-window)) (current-active-maps ...))