From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.devel Subject: RE: new-flex-completion-style (was: [Emacs-diffs] scratch/ 2c75775 2/2: Score, sort and annotate flex-style completions according to match tightness) Date: Mon, 11 Feb 2019 14:57:53 -0800 (PST) Message-ID: References: <20190202232827.27331.87300@vcs0.savannah.gnu.org> <20190202232828.4AE452159A@vcs0.savannah.gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="204725"; mail-complaints-to="usenet@blaine.gmane.org" Cc: emacs-devel@gnu.org To: Stefan Monnier , =?iso-8859-1?B?Sm/jbyBU4XZvcmE=?= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Feb 11 23:58:18 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1gtKWn-000r1O-Pu for ged-emacs-devel@m.gmane.org; Mon, 11 Feb 2019 23:58:17 +0100 Original-Received: from localhost ([127.0.0.1]:57584 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gtKWm-00021Y-QU for ged-emacs-devel@m.gmane.org; Mon, 11 Feb 2019 17:58:16 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:39893) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gtKWf-00021S-So for emacs-devel@gnu.org; Mon, 11 Feb 2019 17:58:11 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gtKWe-0000Xv-Lt for emacs-devel@gnu.org; Mon, 11 Feb 2019 17:58:09 -0500 Original-Received: from userp2120.oracle.com ([156.151.31.85]:54612) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gtKWc-0000PK-HD for emacs-devel@gnu.org; Mon, 11 Feb 2019 17:58:08 -0500 Original-Received: from pps.filterd (userp2120.oracle.com [127.0.0.1]) by userp2120.oracle.com (8.16.0.27/8.16.0.27) with SMTP id x1BMscLA087365; Mon, 11 Feb 2019 22:57:58 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=mime-version : message-id : date : from : sender : to : cc : subject : references : in-reply-to : content-type : content-transfer-encoding; s=corp-2018-07-02; bh=slV3Gq+rDwTrNQZoHyo2GdFC8RIQkXXAUHmtVAYqH34=; b=Ii1qRiORm2ju4LLs9ccAueS30QS24hCU+N//wXy48fNIqCkaIi1DhLEEX02a5WVjo2lU kBO52mOh99mMDJ9/i7vTsjbgEzExEM0Sc22Pa+SHz7rtNNiI7ncb8XlrmlTPCqUDivEN XgkmQXz9rgZWtw33qkIc2vSUtlGCdG45fNTN1XYkae6C63lB7HTu5sd3K17WnaTs+l14 Cn2PpTM3/fE6LC2ScgU2GV5A04ED4YdDNiLNet8VXWir9E2I9dpqUccnbiBto8TyLIPR qkd12l//lwZW18Fj1X06LK9O9hTXYtbY7Bi0J4n8Va2kK3h1yia58cNsGyMpWYc8mRL4 1w== Original-Received: from aserv0021.oracle.com (aserv0021.oracle.com [141.146.126.233]) by userp2120.oracle.com with ESMTP id 2qhredrs4p-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 11 Feb 2019 22:57:58 +0000 Original-Received: from aserv0122.oracle.com (aserv0122.oracle.com [141.146.126.236]) by aserv0021.oracle.com (8.14.4/8.14.4) with ESMTP id x1BMvtJ7013550 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 11 Feb 2019 22:57:55 GMT Original-Received: from abhmp0019.oracle.com (abhmp0019.oracle.com [141.146.116.25]) by aserv0122.oracle.com (8.14.4/8.14.4) with ESMTP id x1BMvs0x021407; Mon, 11 Feb 2019 22:57:54 GMT In-Reply-To: X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9.1 (1003210) [OL 16.0.4810.0 (x86)] X-Proofpoint-Virus-Version: vendor=nai engine=5900 definitions=9164 signatures=668683 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1810050000 definitions=main-1902110163 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [generic] X-Received-From: 156.151.31.85 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.devel:233237 Archived-At: FWIW - I guess you're arguing for an ability to sort completion candidates at mult= iple places/levels, including far upstream from interactive use. My concern/interest is more about interactive use, where sorting can useful= ly interact with progressive filtering. I like late binding. ;-) In my context (Icicles) users can filter completion candidates incrementall= y in various ways, and sorting can act either on "raw" completion candidate= s (e.g. alist entries, including their cdrs) or on displayed candidates (e.= g. text in *Completions*). Unlike vanilla Emacs, the same sort order applies (intentionally) for displ= aying matching completions and for cycling among those candidates. Users can switch among any number of sort orders (predicates) interactively= . The default set of sort orders available for this switching is defined by a= user option. But the code context (e.g. code that calls `completing-read'= ) can change this set. So different commands can make different sets of so= rt orders available. Users can define new sort orders with a macro, which adds them to those mad= e available by the user option. Maybe some such capabilities would be relevant to your context; dunno. https://www.emacswiki.org/emacs/Icicles_-_Sorting_Candidates