From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Daniel Mendler Newsgroups: gmane.emacs.devel Subject: Re: [PATCH] (icomplete-vertical-mode): Add support for affixations and, annotations Date: Tue, 1 Jun 2021 14:37:59 +0200 Message-ID: <1b73a130-204c-76fb-2b60-02b814aee0f0@daniel-mendler.de> References: <87zgwlb4xc.fsf@gmail.com> <617d06ca-27bf-2ae8-26eb-1042123499d3@daniel-mendler.de> <87pmxhb1rs.fsf@gmail.com> <23510125-37b9-e87e-3590-5322f44772ce@daniel-mendler.de> <87y2c5nhsr.fsf@mail.linkov.net> <87h7irss50.fsf@mail.linkov.net> <43d1599e-2ba9-2efb-45c3-76c67d29a69d@daniel-mendler.de> <87tumrgqrb.fsf@gmail.com> <87tumq92pe.fsf@mail.linkov.net> <87lf82g10g.fsf@gmail.com> <87y2c24lww.fsf@mail.linkov.net> <871r9t2lsy.fsf@mail.linkov.net> <22880197-6d05-c821-2c58-328ed3cfc02e@daniel-mendler.de> <87eedruui3.fsf@gmail.com> <8dd915fe-fe67-2a45-67ff-8aaa3e9b9aca@daniel-mendler.de> <878s3zuq47.fsf@gmail.com> <09f2a253-84ba-5cfd-552e-0b89109864a5@daniel-mendler.de> <875yyxaoxp.fsf@gmail.com> <871r9laj6a.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="2395"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Juri Linkov , "emacs-devel@gnu.org" , monnier@iro.umontreal.ca, Dmitry Gutov To: =?UTF-8?B?Sm/Do28gVMOhdm9yYQ==?= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Tue Jun 01 14:39:56 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 1lo3ga-0000K9-1u for ged-emacs-devel@m.gmane-mx.org; Tue, 01 Jun 2021 14:39:56 +0200 Original-Received: from localhost ([::1]:44274 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lo3gY-0003Fq-Vb for ged-emacs-devel@m.gmane-mx.org; Tue, 01 Jun 2021 08:39:55 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:60554) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lo3er-0002KH-EO for emacs-devel@gnu.org; Tue, 01 Jun 2021 08:38:09 -0400 Original-Received: from server.qxqx.de ([2a01:4f8:121:346::180]:40791 helo=mail.qxqx.de) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lo3eo-0002cE-PP for emacs-devel@gnu.org; Tue, 01 Jun 2021 08:38:09 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=qxqx.de; s=mail1392553390; h=Content-Transfer-Encoding:Content-Type:In-Reply-To: MIME-Version:Date:Message-ID:From:References:Cc:To:Subject:Sender:Reply-To: 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=gC9sPRjBooeVtXN+HKJQu2wjtWLrH8cCzPzmOGxXjxA=; b=yLOJvnLfgRHPphPm0kjfvWg0PN nH+SvAju3S+4Y2lVuMJgT8amVW3P8eFeShcdLVsdr59yw8822Y+7L1dWmAGbZHBP1mFQxFPSpezkT 6h+XEW7eEla7l/cgjl0la5XlJMsn61d12xWMDkpgDL1YV6q3kzuFjNOpRpvtlnyGjfS4=; In-Reply-To: <871r9laj6a.fsf@gmail.com> Content-Language: en-US Received-SPF: pass client-ip=2a01:4f8:121:346::180; envelope-from=mail@daniel-mendler.de; helo=mail.qxqx.de X-Spam_score_int: -41 X-Spam_score: -4.2 X-Spam_bar: ---- X-Spam_report: (-4.2 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_MED=-2.3, 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:270193 Archived-At: On 6/1/21 2:00 PM, João Távora wrote: >> * I observed an issue with the last candidate with `icomplete-scroll=t` >> - The candidate is one line off the minibuffer screen. > > Hmm, I don't see that problem. Are you sure you're using the version in > master? Else you may be seeing a bug that was in > scratch/icomplete-vertical-mode-improvements (which should now be > scratched, as the name implies). Yes, I am using the newest master version. But the issue seems to be related somehow to my configuration, since I don't see it with emacs -Q. I have to investigate which setting does this. >> * Is it possible to disable the index/count indicator? In Vertico I use >> `vertico-count-format` for that, if nil, the indicator is disabled. > > I normally don't add a knob for things until someone actually requests > it. If you're requesting it, then it can be added (and you can too). I usually take the same stance as you and I also added this only after a request to Vertico. I can add a small patch making this configurable. >> * Do you plan to support the `group-function`? > > Maybe, but nothing in Emacs uses it so I can't test. You can add it > too, of course. There is `read-char-by-name` one can use for testing. Juri added the `group-function` there. > I don't understand one thing about that protocol: why > the extra TRANSFORM argument flag? Why not just have that function > return a tuple with the group title and transformed name? The design of the `group-function` has been extensively discussed. The flag is used instead of a tuple for performance reasons. The computation of the transformed candidate string may require string allocations, which are expensive if performed for every candidate. By using a flag we only have to transform the displayed candidates. There is the function `minibuffer--group-by` which takes the *full* sorted candidate list and groups the candidates. This function invokes the `group-function` with `TRANSFORM=nil` once for each filtered candidate. UIs like Icomplete and Vertico are the main beneficiaries from this API design. It is also nice for default completion of course, but there the optimization does not play such a big role. Daniel