From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: Emacs completion matches selection UI Date: Fri, 03 Jan 2014 22:39:00 -0500 Message-ID: References: <20140103220610.GA7614@c3po> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1388806752 3571 80.91.229.3 (4 Jan 2014 03:39:12 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 4 Jan 2014 03:39:12 +0000 (UTC) Cc: Dmitry Gutov , emacs-devel@gnu.org To: Toby Cubitt Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Jan 04 04:39:18 2014 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1VzI50-0006lK-5h for ged-emacs-devel@m.gmane.org; Sat, 04 Jan 2014 04:39:18 +0100 Original-Received: from localhost ([::1]:53021 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VzI4z-0007vk-Pv for ged-emacs-devel@m.gmane.org; Fri, 03 Jan 2014 22:39:17 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:58354) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VzI4r-0007rW-1z for emacs-devel@gnu.org; Fri, 03 Jan 2014 22:39:16 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VzI4j-0008Al-OR for emacs-devel@gnu.org; Fri, 03 Jan 2014 22:39:08 -0500 Original-Received: from ironport2-out.teksavvy.com ([206.248.154.181]:51410) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VzI4j-0008AH-KY for emacs-devel@gnu.org; Fri, 03 Jan 2014 22:39:01 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Av4EABK/CFG4rwsm/2dsb2JhbABEvw4Xc4IeAQEEAVYjEAsOJhIUGA0kiB4GwS2RCgOIYZwZgV6DFQ X-IPAS-Result: Av4EABK/CFG4rwsm/2dsb2JhbABEvw4Xc4IeAQEEAVYjEAsOJhIUGA0kiB4GwS2RCgOIYZwZgV6DFQ X-IronPort-AV: E=Sophos;i="4.84,565,1355115600"; d="scan'208";a="43946459" Original-Received: from 184-175-11-38.dsl.teksavvy.com (HELO pastel.home) ([184.175.11.38]) by ironport2-out.teksavvy.com with ESMTP/TLS/ADH-AES256-SHA; 03 Jan 2014 22:39:01 -0500 Original-Received: by pastel.home (Postfix, from userid 20848) id CEA0D6063D; Fri, 3 Jan 2014 22:39:00 -0500 (EST) In-Reply-To: <20140103220610.GA7614@c3po> (Toby Cubitt's message of "Fri, 3 Jan 2014 22:06:10 +0000") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 206.248.154.181 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:167248 Archived-At: >> I suspect that :exit-function is "enough", tho it might require some >> ugly unreliable hacks to get at the needed data. Please try it out and >> M-x report-emacs-bug requesting the extra features/data to be able to >> "do it right". > I still don't see how, if by "enough" you mean enough to emulate the > current Predictive functionality without effectively bypassing the > `completion-at-point' mechanism and running Predictive/Completion-UI code > instead. I don't know enough about Predictive to be able to answer. :exit-function is called when the completion ends and gives access to the choice made by the user, so it is sufficient to provide some kind of feedback about which was the right choice. But there might indeed be issues about exactly when the :exit-function is called, for example, or how/when the choices are presented. > `completion-at-point' is designed around "tab-completion", and > that just isn't a good match for predictive completion (or a popup.el > style UI, for that matter). completion-at-point-functions is largely designed for the purpose of completion-at-point, but it is not restricted to that; so do not confuse the two. Stefan