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: [ELPA] New package: vertico Date: Sat, 10 Apr 2021 01:23:04 +0200 Message-ID: References: <87im4vglwv.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="13173"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel@gnu.org To: Tassilo Horn Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Apr 10 01:23:57 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 1lV0Tl-0003L5-K9 for ged-emacs-devel@m.gmane-mx.org; Sat, 10 Apr 2021 01:23:57 +0200 Original-Received: from localhost ([::1]:59648 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lV0Tk-0007Cw-Lv for ged-emacs-devel@m.gmane-mx.org; Fri, 09 Apr 2021 19:23:56 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:35186) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lV0T3-0006o1-P9 for emacs-devel@gnu.org; Fri, 09 Apr 2021 19:23:13 -0400 Original-Received: from server.qxqx.de ([2a01:4f8:121:346::180]:40955 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 1lV0T0-0004RB-3V; Fri, 09 Apr 2021 19:23:13 -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=ojOfnC7PVW6urs1EwG613FxppeYBGsb13n829oM4TbY=; b=bwAUHwZ7QJSybzeTzF+4foCkVb 8w2bpbFC2FyQSjNuWURC/qYAaBr1GQknIniCBsWJNi9X71M/UYNOCZ9f7TX9pTHyxomno+MAL8QFq 9oTVzyEcGW8ghqIZQomlGtWByuGtj7keMA3OKt0oMQXO4xZEcxbFTpQxN6f7WUJJ/olM=; In-Reply-To: <87im4vglwv.fsf@gnu.org> 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:267757 Archived-At: Hi Tassilo! > I've tried and liked it and I've also worked on my aggressive-completion > package to make it usable with vertico. aggressive-completion basically > hits TAB for you during minibuffer completion in order to release stress > from your pinky. That's an interesting idea. I've seen your package before, but didn't read through the whole thread. > Right now, I'm using aggressive-completion-mode together with vertico > using this configuration: I will give this a try! > Now I have two questions: > > 1. Shouldn't there be a command like `th/vertico-complete' which > completes the common part of the candidates? Vertico follows the design where you put less importance on the prefix/TAB completion but instead excepts the user to enter more text for narrowing, which works well with the orderless completion style. But note that Vertico is fully compatible with default completion, so as you observed you can just use `minibuffer-complete`. If you bind `minibuffer-complete` to the `vertico-map` it will work. See https://github.com/minad/vertico#keymap. Is that good enough or do you have something else in mind? > 2. One annoying effect with the above command and vertico is that the > typical completion messages such as "Next char not unique" bump point > to the right, i.e., with stock minibuffer completion you have > > my-input| [Next char not unique] > > whereas with vertico you have > > my-input [Next char not unique]| > > where | indicates point. Why is that? Yes, I've also observed issues with minibuffer messages appearing at the wrong place. Vertico uses overlays to display the candidate count and the candidate list, similar to Icomplete. Icomplete however removes the overlay in the pre-command-hook and puts the overlay back in the post-command-hook. I am not doing that. I just move the overlay to the end but it seems this solution is not good enough. Since I have not yet understood fully what the problem is I haven't done anything yet to fix the issue. Besides, my recommendation would be to deactivate those messages. I think they are pretty annoying. I suspect even more so in combination with aggressive-completion. (advice-add #'vertico--setup :after (lambda (&rest _) (setq-local completion-auto-help nil completion-show-inline-help nil))) > Thanks for the nice package! Thank you! Daniel Mendler