From mboxrd@z Thu Jan  1 00:00:00 1970
Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail
From: Drew Adams <drew.adams@oracle.com>
Newsgroups: gmane.emacs.devel
Subject: RE: [External] : Re: Updating *Completions* as you type
Date: Mon, 16 Oct 2023 03:19:30 +0000
Message-ID: <SJ0PR10MB548885D70337C0EA247EB069F3D7A@SJ0PR10MB5488.namprd10.prod.outlook.com>
References: <87bkd3z9bi.fsf@catern.com> <86cyxjyr1y.fsf@mail.linkov.net>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214";
	logging-data="27277"; mail-complaints-to="usenet@ciao.gmane.io"
Cc: "emacs-devel@gnu.org" <emacs-devel@gnu.org>
To: Juri Linkov <juri@linkov.net>, "sbaugh@catern.com" <sbaugh@catern.com>
Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon Oct 16 05:20:16 2023
Return-path: <emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org>
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 <emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org>)
	id 1qsE9Q-0006tK-3K
	for ged-emacs-devel@m.gmane-mx.org; Mon, 16 Oct 2023 05:20:16 +0200
Original-Received: from localhost ([::1] helo=lists1p.gnu.org)
	by lists.gnu.org with esmtp (Exim 4.90_1)
	(envelope-from <emacs-devel-bounces@gnu.org>)
	id 1qsE8u-0005t4-FM; Sun, 15 Oct 2023 23:19:44 -0400
Original-Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <drew.adams@oracle.com>)
 id 1qsE8t-0005sq-QQ
 for emacs-devel@gnu.org; Sun, 15 Oct 2023 23:19:43 -0400
Original-Received: from mx0b-00069f02.pphosted.com ([205.220.177.32])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <drew.adams@oracle.com>)
 id 1qsE8r-0001HI-4n
 for emacs-devel@gnu.org; Sun, 15 Oct 2023 23:19:43 -0400
Original-Received: from pps.filterd (m0333520.ppops.net [127.0.0.1])
 by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id
 39G1i9Ka005510; Mon, 16 Oct 2023 03:19:38 GMT
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com;
 h=from : to : cc :
 subject : date : message-id : references : in-reply-to : content-type :
 content-transfer-encoding : mime-version; s=corp-2023-03-30;
 bh=x5NV6xurVrQRSPk8hTGYvOpy4OfnFWtV+NngMc04o5E=;
 b=grKPdXeSS3Pq1Qn8EXcGYu54IPQeU2c6t9Cl8PmZ8rrJccAtSiurKAFzOeyLcqsiJCp0
 oRG7FZR6X6bV5wWcE4DBO57xIx3dHslKP3vjPWxQodk6qctKMo/z8wlQg+UpTEvpwRCS
 oAiHrhe8WFfv/QTKo62W3tpN+NjB4Fzh+Hs3+T5xaKMxivNBeLbqY4njT2qSqkMVfxjR
 BMQkquLEuGH+FXyYkrfX6oLV9ultsHKRxT65ur4QMrRZLwo5DosZHRrbkJy6dV71SVDC
 5/lvr+hrEXB/o3XiY3ePg1SlqXtyK08XnBi+IjBlGiTz7/j9f6YiBrxKflcsyJRo5sU+ rA== 
Original-Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com
 (phxpaimrmta01.appoci.oracle.com [138.1.114.2])
 by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3tqk1c9rps-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Mon, 16 Oct 2023 03:19:37 +0000
Original-Received: from pps.filterd
 (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1])
 by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19)
 with ESMTP id 39FNxwoV028528; Mon, 16 Oct 2023 03:19:37 GMT
Original-Received: from nam04-bn8-obe.outbound.protection.outlook.com
 (mail-bn8nam04lp2041.outbound.protection.outlook.com [104.47.74.41])
 by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id
 3trfy1hf6v-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Mon, 16 Oct 2023 03:19:36 +0000
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=hMFcaD35K3EnEh1vFHN/Gi5qYkysvA91xOeginhlbidD710FAgagPws2cV9bt2obp3vpaI9EQqqlxnfXAyYBDQ31llRStfsrhVhvJBJLQbBDLmeMvoIDFj2g2q0jlmbVOVItxf+0NLUO8Q6FMZ0DC0OwgxLDZAjvluIKBfNIU2yMcPitlIJjBx+hgI/ANfZbRT7odecp68y75Nas46tXj/mfBgGtyZb4CjwzRRWV+Hv/V9SktDlGq7Kagpn0qBsEzL2OMAZfVK6jEp4Kk3TsgW4z5+YLrvC6LL2jMHQyGQykCjHToLiwEKMiodHZb2d+5mnTsZcJCmbnrN4UvehYyg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=x5NV6xurVrQRSPk8hTGYvOpy4OfnFWtV+NngMc04o5E=;
 b=iLMoAmLx6+YA3I2u16LCVrXL3oZaRDM75JCfxRR0LYiKTMFJ3SxMc9Op24i/u8yd/2Ycxm8B+csakmZsb2vFweVmK5d2HQxCego7U2VoqTSJY0WGewd8oMXaJhzRftBQcr51BhRIKw/H6RL5DCfgnRReOCflIvzPE9nAhcyHlhaQPBGjfOBTHR8L67hDqK2DghxA3g+Oy4WXtHfDRKKGr6z1hKm//q1VYvFg6gt2Q2Cx1mSigCssLHD7E0NXVzZ3qtAXTWuWzTMjdpp+CMxIxKoz0KToCmpAwGLx9x3c8RMQSEkcF1j67XweNA8TEAEoNUqwSJvUgerAQfLJAX7JwQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com;
 dkim=pass header.d=oracle.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=x5NV6xurVrQRSPk8hTGYvOpy4OfnFWtV+NngMc04o5E=;
 b=Aaat5npJY+kiz7cNQMn85A3z0dDjUPa0cMJgkfZvPFM5YgLxUtTrG/2czur/lWU8Ru9yEwafOojLKyBKG+C73xr4DFJpS/SRVI0xZSUmJ4gndov11/rcfYOY0iehi3Zn1cvOU5SOqRBmS9t5UP9+rbXlPe4BV7hooIZDkk3XDOc=
Original-Received: from SJ0PR10MB5488.namprd10.prod.outlook.com (2603:10b6:a03:37e::19)
 by BN0PR10MB4919.namprd10.prod.outlook.com (2603:10b6:408:129::9)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct
 2023 03:19:31 +0000
Original-Received: from SJ0PR10MB5488.namprd10.prod.outlook.com
 ([fe80::adae:506b:e9a0:529f]) by SJ0PR10MB5488.namprd10.prod.outlook.com
 ([fe80::adae:506b:e9a0:529f%6]) with mapi id 15.20.6886.034; Mon, 16 Oct 2023
 03:19:30 +0000
Thread-Topic: [External] : Re: Updating *Completions* as you type
Thread-Index: AQHZ/9+S9sxuIUZt3EqEQlidmuCYkg==
In-Reply-To: <86cyxjyr1y.fsf@mail.linkov.net>
Accept-Language: en-US
Content-Language: en-US
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SJ0PR10MB5488:EE_|BN0PR10MB4919:EE_
x-ms-office365-filtering-correlation-id: 4deb5efc-ccec-4011-6612-08dbcdf6b625
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: I9QyJnV2JNHE8Pls7pzevteXRPhJUQ48gJNEeorCJpkqXSIYNld84iIRktJV7hwnQiDcO5SXP44UycPIAO4AX+DQLI17PM0Hw13g7+1BqR5g5PCyv/snIZ6KGaGuhMYcpm/v80pRy7FDKZ+4AemEec4m1ic3KwTs/B4P2++3wge+39QLQc4e0YU9AiQsMpSMv8cMIh7ET/Dxc6MpE9FaMxLrmHRXW8BIr/d18eO1n/xNYI16AluTs7uothbhkaHLVkPQN8z6aJA7zIavCLYOHt/J1OQ9RrVNhCRoyFYMRUSlvGEyVU+659p5YLZzf+1z67dzd4Mnf9aTmXjEakzyvfYlUZE6sBfTnMrQwPB7JJgIWO0ICusoaZbgpQuf1uzaaNlvVrnJeqxDRYmHFDmPAu++IlxAzHbxRZZxcPWudRy8lqiW7F75RISittNBUnKT3wfbomv9NQV0Kqw3UGwwb8YBJyQuBJZ85EO2vvA9gJ+Soc8pZKVsovcglFILBSLM3vsMBj9Y+BKZq0VfMK8Q4x5bUN+ibyh/GD8nDoMGdq9bviI2x60aNvoBemR1YdPgl0QPtWmbXeI9FpkvOPztBjx8kjmayQCr9m6UZ8dEWQc=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:SJ0PR10MB5488.namprd10.prod.outlook.com; PTR:; CAT:NONE;
 SFS:(13230031)(366004)(376002)(39860400002)(396003)(136003)(346002)(230922051799003)(451199024)(64100799003)(1800799009)(186009)(2906002)(4744005)(71200400001)(5660300002)(44832011)(41300700001)(52536014)(8936002)(4326008)(8676002)(316002)(66946007)(110136005)(76116006)(55016003)(478600001)(966005)(6506007)(7696005)(83380400001)(38070700005)(64756008)(66446008)(66556008)(66476007)(26005)(33656002)(86362001)(9686003)(38100700002)(122000001);
 DIR:OUT; SFP:1101; 
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?4apo3nGoln7rHySjb3YBBPv5i8Lqxo5pFI2hSc5AxfkO3j6/SCNJtCiY6lig?=
 =?us-ascii?Q?WCIJ1frSWXsMgIm7bVtGR1DQgadPX/pTR7MCS/bhUGBR0rwpyfPKhXHemm5+?=
 =?us-ascii?Q?gDDPHa0E8zXdYQ4wknNjibU794qKzldg8jJHnQbDN6CcqYW1Fsr/WLdmwtCS?=
 =?us-ascii?Q?cddqGvktPw0z/L42ZEKaYZp+7NYpoEzF5dDIGB3SDvY4YXBluSp1Usb1QyOP?=
 =?us-ascii?Q?VaNu8zlU9aAPmgBIFyQ7Wkq6sRUJAugnOyilaaTCQakRsdGh4qTPYK5rkds0?=
 =?us-ascii?Q?gVjG3wWfVJe9byRD3FmHVIYIqXw+c8241zGo5HVlP0yggDgvaq6jZ0/ADqQU?=
 =?us-ascii?Q?XzYqjlWH82cvZog3N4AOrAiOACkUbkOTyhpTTchdaZ0MWy9Au/I8EhJ/+j4q?=
 =?us-ascii?Q?69jg+hV48r/EzkEBOGyzFu/92r0gixkjY+P7qcWws1ikSlXujLnJYPYSOW9u?=
 =?us-ascii?Q?3GxZMy2kmn3SGe4In9gnfr8KrM/dPploIvFuWcxHQO/Rfl/bRxyEN6GG/DsD?=
 =?us-ascii?Q?EFlhp3y5IiV3Kydph44tTU/+QKtg4S000J3bySivXTAE0MREJ5pFU7WJFwiH?=
 =?us-ascii?Q?xKytoJX9C/iub4DkqwJUQjYsfAywOVzIBSix5MXI+Gu7UNs9YmkOAtZBfm0H?=
 =?us-ascii?Q?Sv 
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: UMyCH1SGSRbPqJduCEo9/BxrL2/TOlv/A8ygy3mpWHT7OeqZzXrBCUsA8aKErn29jxSn5ZAeLTW1CoZhpjeu0G2PknPgto/+aOMV1AywAFx9KVxbuOsThGv1yOCHg5PFrYVYfHQiFKfCBpWJoOU7wxDzu1aQnIP53/6Lf4Z7kp9r7xM1q7plgAnV5bDIeE27u15xn2+Fw/ZYj9v40w00Innb5L6QIidwiMQO/gLcXfA33EjSERLJYM0XRH+40UisqZQ+U//78xCaGf7aUXg+tbPmLZvA2XXyo/qZPpXAx9HpbEV/M/5jzrk2AiGZPDlozhLJ0MqCS0UraQEw2rRYroWZ/MFhe71CLfnJnAlsVGzHf7WAW1KdSTrde5nS1WsjDPmeQ74FK5hXWETaX07ynTvnUCY0QNMX7Bq5OazqkD5o16Ec2Xy02HPotMh3KT1W+InMLFBQhE/WIyB6wbXW4de5Zh1+DuqWPN3ue1E0ehRWeQ9NaSOF+Z/e+y8TlqrJ9yTan8AQ+NagTpDKz/dIaoHxPZWipSifKLXrrkTwG3OYX85r8HuaN/bUw3PbyhIScfN9jOYKlzm2aHtEmUHfq6sVRxY3hzsb1YTC6xQOgNQ8ieaONtqEW3BA42EjcIVotWMrlbr87xVhUE6sw7LDh/9c/Bha5IEo4Izi1CqB74CLXSvEf3ul6WbumuWmzcYcZuUikwjJsfgZbC/R/k45bjNcONAUh9mkkSdse0PdbK+Np+
 G6KB0pasOzYexc7HNxWRZkTQekLN9xOVT0R2vMLSnH9xx3hMiiI0Zwq9LyMX0=
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR10MB5488.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4deb5efc-ccec-4011-6612-08dbcdf6b625
X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Oct 2023 03:19:30.4087 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: NwyH5lrAfWmiicfkxgL9hfZ/PSij6qne513Njhw1IXbqIIohYgKwjqXe4aYnA7I+J5yDlFgPCeq9ku1gj7NSKw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR10MB4919
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.272,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26
 definitions=2023-10-15_09,2023-10-12_01,2023-05-22_02
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0
 adultscore=0 phishscore=0
 mlxlogscore=999 mlxscore=0 suspectscore=0 malwarescore=0 spamscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2309180000
 definitions=main-2310160028
X-Proofpoint-ORIG-GUID: OETkKWDHuM-wGJzLAFSBCUJ8qpMsHQ9z
X-Proofpoint-GUID: OETkKWDHuM-wGJzLAFSBCUJ8qpMsHQ9z
Received-SPF: pass client-ip=205.220.177.32;
 envelope-from=drew.adams@oracle.com; helo=mx0b-00069f02.pphosted.com
X-Spam_score_int: -27
X-Spam_score: -2.8
X-Spam_bar: --
X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H5=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.29
Precedence: list
List-Id: "Emacs development discussions." <emacs-devel.gnu.org>
List-Unsubscribe: <https://lists.gnu.org/mailman/options/emacs-devel>,
 <mailto:emacs-devel-request@gnu.org?subject=unsubscribe>
List-Archive: <https://lists.gnu.org/archive/html/emacs-devel>
List-Post: <mailto:emacs-devel@gnu.org>
List-Help: <mailto:emacs-devel-request@gnu.org?subject=help>
List-Subscribe: <https://lists.gnu.org/mailman/listinfo/emacs-devel>,
 <mailto:emacs-devel-request@gnu.org?subject=subscribe>
Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org
Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org
Xref: news.gmane.io gmane.emacs.devel:311508
Archived-At: <http://permalink.gmane.org/gmane.emacs.devel/311508>

> Maybe a new function should allow any sorting order?

FWIW:

Icicles lets a caller of a function such as
`completing-read' specify a set of sort functions
and the initial one to use.

And users can change among those sort functions
on the fly - by cycling them or inputting the name
(with completion of course).  Reverse the current
sort order with a numeric prefix arg.

User switching of sort order is _very_ useful, IMO.
(And yes, incremental updating of *Completions"
needs to automatically re-sort.)
___

https://www.emacswiki.org/emacs/Icicles_-_Sorting_Candidates

______________________________________________

FWIW2:

In library `sortie.el' I implemented the same thing,=20
without Icicles, using only vanilla Emacs completion
metadata entries `display-sort-function' and
`cycle-sort-function'.

[I don't know of another library (besides Icicles)
that provides interactive changing of sort order -
but maybe there is one now.]
___

https://www.emacswiki.org/emacs/Sortie