From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.devel Subject: RE: handling many matches Date: Sat, 2 May 2020 11:21:36 -0700 (PDT) Message-ID: References: <<119c0543-387d-4fad-b7fe-b4e07a7be4f8@default>> <> <<837dxuvohj.fsf@gnu.org>> <> <<83wo5usaui.fsf@gnu.org>> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="84061"; mail-complaints-to="usenet@ciao.gmane.io" Cc: jonas@bernoul.li, emacs-devel@gnu.org, monnier@iro.umontreal.ca, adam@alphapapa.net, kyle@kyleam.com, drew.adams@oracle.com To: Eli Zaretskii , Dmitry Gutov Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat May 02 20:22:34 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 1jUwmW-000Lj6-AK for ged-emacs-devel@m.gmane-mx.org; Sat, 02 May 2020 20:22:32 +0200 Original-Received: from localhost ([::1]:49810 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jUwmV-00016p-8h for ged-emacs-devel@m.gmane-mx.org; Sat, 02 May 2020 14:22:31 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:55196) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jUwlt-0000YU-JJ for emacs-devel@gnu.org; Sat, 02 May 2020 14:21:53 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.90_1) (envelope-from ) id 1jUwls-0004Rt-QY for emacs-devel@gnu.org; Sat, 02 May 2020 14:21:53 -0400 Original-Received: from userp2120.oracle.com ([156.151.31.85]:59386) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jUwlq-0004R8-IK; Sat, 02 May 2020 14:21:50 -0400 Original-Received: from pps.filterd (userp2120.oracle.com [127.0.0.1]) by userp2120.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 042IIU50081759; Sat, 2 May 2020 18:21:43 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-2020-01-29; bh=acKH3jNm61Hw4A+vbog2C2fZ1LJF4K49WeVqnbDazfw=; b=TYNxmlH5bvjp4WGcn6vVnk9Q9Z3UQroGkr7AAF6Ys9FD88vKrPEqrldqy6pPy9EUlIOc OICq1dubbsMwv6WgV6Ft1U77KxudipJzSNK0gyAQgi5vFeR57hjYVCdsT58+yCM4xIz5 f7UTY0J5vpKQdiN0vN/m/RARCwIsMVw7YuC1vkVRW8r6flK11wKeFs3VkX2ewQ+Wb+nt HvZ26+kkM2gnuQU7FzILZT1c12jh3mqhnfB46YosE+LcWru3kdkmxBc5zbI6+EZu8TZA TIYSj60QL+LmZSLLE5htCDLZuezShWF8iak73ps2txN0itsRexMy0VYjOLpoqvAMcnfT kg== Original-Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70]) by userp2120.oracle.com with ESMTP id 30s1gmsg06-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sat, 02 May 2020 18:21:42 +0000 Original-Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1]) by aserp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 042ID6K8020634; Sat, 2 May 2020 18:21:42 GMT Original-Received: from userv0121.oracle.com (userv0121.oracle.com [156.151.31.72]) by aserp3020.oracle.com with ESMTP id 30s913jbgs-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sat, 02 May 2020 18:21:42 +0000 Original-Received: from abhmp0014.oracle.com (abhmp0014.oracle.com [141.146.116.20]) by userv0121.oracle.com (8.14.4/8.13.8) with ESMTP id 042ILbZb008424; Sat, 2 May 2020 18:21:37 GMT In-Reply-To: <<83wo5usaui.fsf@gnu.org>> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9.1 (1003210) [OL 16.0.4993.0 (x86)] X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9609 signatures=668687 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 adultscore=0 mlxscore=0 bulkscore=0 suspectscore=18 malwarescore=0 mlxlogscore=999 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2003020000 definitions=main-2005020162 X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9609 signatures=668687 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 suspectscore=18 mlxscore=0 spamscore=0 clxscore=1015 priorityscore=1501 bulkscore=0 phishscore=0 impostorscore=0 malwarescore=0 lowpriorityscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2003020000 definitions=main-2005020162 Received-SPF: pass client-ip=156.151.31.85; envelope-from=drew.adams@oracle.com; helo=userp2120.oracle.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/05/02 13:11:05 X-ACL-Warn: Detected OS = Linux 3.x [generic] [fuzzy] X-Received-From: 156.151.31.85 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:248521 Archived-At: > We need scoring that "learns" from what I do/did recently, > and from my habits.... >=20 > Compare with the Internet search: it almost always brings me hundreds > of hits, but I normally find what I was after among the first dozen. Relatively little of that power/accuracy comes from it learning from your habits (your previous searches etc.). It mostly comes from back links, i.e., how many links a URL has from other URLs. Of course, links among web pages in turn reflect user use patterns (including searches). But not just your own use patterns. But yes, your and my search of the same words will return different hits. There is some input from our individual past uses of the internet and the search engine. > Even more spectacularly, when I type a search phrase into the search > box, it guesses what my search phrase will be, and the guesses are > almost always very accurate,... Some of the candidates are based > on my previous search phrases, and the ones I typed are always ready=20 > to be reused, with a special indication to let me know I recently > used them. Yes. All of that can be food for thought for Emacs. We already incorporate something similar with things like dabbrev and library `completion.el'. And even minibuffer completion incorporates it in some cases, promoting recent input history. > It is this kind of powerful scoring that I think we need to develop if > we are going to handle many dozens of completion candidates. Yes and no. Frequency of use and recency of use are two (different) scoring criteria. There are _lots_ of different ways to score and sort. So then you have the problem of how to tell Emacs, in any given completion context, just what to favor. All of this is good to have. And we need good ways to choose among such possibilities, including on the fly.