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: feature/completions-highlight-modifications e3c5b99 3/6: Add completions-highlight-mode initial implementation. Date: Wed, 25 Nov 2020 10:49:06 +0200 Organization: LINKOV.NET Message-ID: <87mtz5g6t9.fsf@mail.linkov.net> References: <20201116102729.ywubtda6cqdzc45z@Ergus> <87d00acuh3.fsf@mail.linkov.net> <20201119032519.lpa53ixezgpdppze@Ergus> <87d009kfmf.fsf@mail.linkov.net> <20201119105052.kfichqojkhfwwsiz@Ergus> <87k0ugfirt.fsf@mail.linkov.net> <20201120145248.wmbv2zgbvs7bg25i@Ergus> <871rgmwt6e.fsf@mail.linkov.net> <20201122230956.mai3i6ckqymzvyvb@Ergus> <87pn44juyg.fsf@mail.linkov.net> <20201123114620.6htiapgjp4oykvib@Ergus> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="31528"; 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: Stefan Monnier , Drew Adams , emacs-devel@gnu.org To: Ergus Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Nov 25 09:50:51 2020 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 1khqVn-00086x-2O for ged-emacs-devel@m.gmane-mx.org; Wed, 25 Nov 2020 09:50:51 +0100 Original-Received: from localhost ([::1]:53354 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1khqVm-0004H0-4P for ged-emacs-devel@m.gmane-mx.org; Wed, 25 Nov 2020 03:50:50 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:48370) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1khqV8-0003kq-NJ for emacs-devel@gnu.org; Wed, 25 Nov 2020 03:50:11 -0500 Original-Received: from relay3-d.mail.gandi.net ([217.70.183.195]:47443) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1khqV6-0007pC-58 for emacs-devel@gnu.org; Wed, 25 Nov 2020 03:50:10 -0500 X-Originating-IP: 91.129.99.98 Original-Received: from mail.gandi.net (m91-129-99-98.cust.tele2.ee [91.129.99.98]) (Authenticated sender: juri@linkov.net) by relay3-d.mail.gandi.net (Postfix) with ESMTPSA id C76EC60016; Wed, 25 Nov 2020 08:50:01 +0000 (UTC) In-Reply-To: <20201123114620.6htiapgjp4oykvib@Ergus> (Ergus's message of "Mon, 23 Nov 2020 12:46:20 +0100") Received-SPF: pass client-ip=217.70.183.195; envelope-from=juri@linkov.net; helo=relay3-d.mail.gandi.net X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, 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:259773 Archived-At: > I would actually prefer to remove features from this one if there is > a chance to add some of these improvements to the default completion > system (after the expected war of course). Maybe making it less > "zsh-ich" and just improving a bit the Completions interaction may be > possible?? There are already features in your branch that would be useful in the default completion system. Please see a new API developed on emacs-devel with subject "on helm substantial differences" that allows adding a prefix to completions. When the option 'completions-detailed' is enabled, then e.g. 'C-h o' adds a prefix to completions. The problem is that the natural thing to do is to move point down to the needed completion in the *Completions* buffer and type RET. But currently it raises an error: Debugger entered--Lisp error: (error "No completion here") signal(error ("No completion here")) error("No completion here") choose-completion(13) funcall-interactively(choose-completion 13) call-interactively(choose-completion nil nil) command-execute(choose-completion) This is because currently 'choose-completion' is too limited. It doesn't accept the selected completion when point is on its prefix. Your function 'zcomplete-select-near' could help in this case. Could you please move it from your branch to minibuffer.el. > If the changes we do are conservative enough (maybe just like the > first version I proposed: add tabs, arrows interaction and highlight > after an extra tab) It may not bother old users while the new will > find the more interactive behavior after the extra tab very handy. To be able to enable this mode by default, it should be less invasive. Maybe it should be activated by pressing some key other than TAB TAB? Or some option could be added to choose how it should be activated?