From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.devel Subject: RE: [External] : Re: [PATCH] Re: Other details about completion. Date: Fri, 8 Apr 2022 16:20:08 +0000 Message-ID: References: <20220406181339.iubahj6fviq3fyqv@Ergus> <86o81eawnv.fsf@mail.linkov.net> <91135A5B-17B9-4B1A-AFB9-40D2656313DE@aol.com> <86ee29pawb.fsf@mail.linkov.net> <20220407090845.rvjzos3pp6f77qrz@Ergus> <867d80c00z.fsf@mail.linkov.net> <20220407172201.qwggexthtersxi7x@Ergus> <86y20g93pe.fsf@mail.linkov.net> <20220407182701.qzv7iknz7prjv5fw@Ergus> <868rsgggr7.fsf@mail.linkov.net> <20220408084635.hytfsozajd5he654@Ergus> 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="10211"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Philip Kaludercic , "emacs-devel@gnu.org" To: Ergus , Juri Linkov Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Fri Apr 08 18:21:47 2022 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 1ncrMp-0002Sl-4h for ged-emacs-devel@m.gmane-mx.org; Fri, 08 Apr 2022 18:21:47 +0200 Original-Received: from localhost ([::1]:43710 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ncrMo-0006dW-30 for ged-emacs-devel@m.gmane-mx.org; Fri, 08 Apr 2022 12:21:46 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:45228) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ncrLY-00051K-7O for emacs-devel@gnu.org; Fri, 08 Apr 2022 12:20:29 -0400 Original-Received: from mx0a-00069f02.pphosted.com ([205.220.165.32]:50592) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ncrLS-0007cO-Ne for emacs-devel@gnu.org; Fri, 08 Apr 2022 12:20:27 -0400 Original-Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 238Eb8YI014737; Fri, 8 Apr 2022 16:20:17 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-2021-07-09; bh=+Vq+zS9dMHMv6zbqd6xOwl5cuHOiv2EWROiIqMax6fw=; b=vxpbrXJ1qKN4SZZkCRZNnvlQXDrcSnB9LXxKarw7jXERjVPG0ishepmvdTxmeAFor01l spK555Wh6C5PYNLfjiBDNb3YdZXxVjGXiCnkniDHAjkRFuLkXhGEFGXgbTXDmU+a7/h9 h4eoQWP8LaB46TExUAtlLevfG711j3YCpdaNoBY6LIbQXbuPokudkjaz5xVtCl4yGiHY pRItP8zUtHmNWUo0Ouz4F46JHSGiwGlE5jZ8yxe1u9kjA7QRXaipPR8JVMg2KoRhz7ss 86I5Q9UOrVDIjuliGAsdDF2+WeR8T1Ju40theSPLVweu1ErOGc4bIbyGvsiD4rYTFoC1 MQ== Original-Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com with ESMTP id 3f6ec9y6u5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 08 Apr 2022 16:20:14 +0000 Original-Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.16.1.2/8.16.1.2) with SMTP id 238GAWeP011361; Fri, 8 Apr 2022 16:20:11 GMT Original-Received: from nam10-dm6-obe.outbound.protection.outlook.com (mail-dm6nam10lp2105.outbound.protection.outlook.com [104.47.58.105]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com with ESMTP id 3f97wspsc6-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 08 Apr 2022 16:20:11 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YPcTkLaeZbKcelaEEWQ+ghWMWYmWvQj7K1Kmn9f6qzpJgzH4MsfZ/rC3cRVHMY8qERWpz3HCK4Pf8xAqfwZcg9UjK9SxUoZyD+9jzbdA2GPTw1gcCQG0/NwBsz1BCILSRCZyEferMBTJNFh+a/VBP3kDicwW4yC1iKBITy4nBiJMLYDUJ2c5jWz8xSVKAXIoJFLcUZS8pdOcUvLBKfppUyhEDGHmIV+hBDhCStTqlw9sJWxjprzeSX8qSylWsZspNjY8ra94V9cW242Iq/M3juqQ/B7uyk1qEFKZogXKsqVaXmk2/fdpxD1+/wqU8WhQo00zI5N17tUmw91tHN74zw== 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=+Vq+zS9dMHMv6zbqd6xOwl5cuHOiv2EWROiIqMax6fw=; b=dum1YKSNTnfYlLQxEAy/mIm+Q2JqizHaU3CwwkIx0XSiLpv9jcHyjA0GJqNm1OacjkBRzSdOPgDdgFweps7txJH34S8skKFnWDhRIGWI5B9tORiQZPXBWkzB81vu5LoU+8aZVET5LJxRsJe0bOyPiJjNUJZRGlh2V+yyKXYw9UmTIPVPDWmmkyHlcTXTmDIWQXe0tzD1IcwfYKDOp7IWR7FAB39hbykOIsnbtse6Gc/1XR/4QQrzF281MZpbTx5+bCc0/R3RUcbTp9GH9KagHpIPl4TOrRy/t9kb7iGLPJTDyAUprohmsSFL437EKArWVU7HFWuhsDsW9mFBTg3Xcw== 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=+Vq+zS9dMHMv6zbqd6xOwl5cuHOiv2EWROiIqMax6fw=; b=Hfnj0CjlsDACvJOahynpmsCfUX7XP+O8nsQ8eE/PFEHsE8VOs1pfYot+O4RgW20r+RWQdqEl/KdWr80hxMXRv/OYcPjk8EkYI5+ly9HrIo7T+SADwtpKUv8oybFGx/64tcOb1et23oAu98HhEJKN0VHmTs0UvAzlKtuIcOIVsWE= Original-Received: from SJ0PR10MB5488.namprd10.prod.outlook.com (2603:10b6:a03:37e::19) by MW4PR10MB5840.namprd10.prod.outlook.com (2603:10b6:303:18e::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5123.31; Fri, 8 Apr 2022 16:20:08 +0000 Original-Received: from SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::39f8:f93:8642:216d]) by SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::39f8:f93:8642:216d%6]) with mapi id 15.20.5144.027; Fri, 8 Apr 2022 16:20:08 +0000 Thread-Topic: [External] : Re: [PATCH] Re: Other details about completion. Thread-Index: AQHYSyUy+yTssCjgQEOB8ba29jApGKzmH/JQ In-Reply-To: <20220408084635.hytfsozajd5he654@Ergus> Accept-Language: en-US Content-Language: en-US x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: abce0bda-c4d8-45f8-13f9-08da197ba603 x-ms-traffictypediagnostic: MW4PR10MB5840:EE_ x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 8YhW4WkP0Iono54cVqlr9GAr8G4qQkViwCDCO7R63v8o0zE0iYFgB/KJ8Mw9BoAHhMyseoNx9YfYzYDnzzPZjwMzzjuTgA4ceXfQf4UMAFp65iy8ShCLYkenU4j1czoR8OQopLaezd2SptUldu9170b14PPaGYX8evjFL4Qn2RS1n4rwduqjrdDl4hM2OV4R1Bz23O5wk4B2dlyDBZY4XWtZoFIUmr/E8s7Y9Ww+eIPzLwLsvxzyuHi1bLqB3d1Ot7NZv0NqNsDdw+fjTV2HXzsRS0QG4BgUwpdbTJ7A+IMdzDLW98piOBorXCnH/PI7PUMx3oiT/9CyRWLlnI6+piSJdxgnSzGFF+C+WwPx3LWzUrqE7Qi8IQGr/eQ8IPeIvSoxRtWzUgTb110ksWt7Qx6ATmAAbvgo48Tyfis26EzzBb3zwYSEdM+5CyPi/zNFcVYStjgb+5m+RkPNd4IQD+hmsb9xudPK1OZz0+ql5gae5CPyc9Tg03bdqM/Xuzy+T3XRj4dxygrpOnMdpAp/tWmAN6IRYvQaYfTfAerYJ13e6DIAbA087xJrSq0jD1CNeYCLCr4S+NYlZQmbtQg68ZDWXYGZQaQm9gxvZp5aFdaGoySp2EDs0vH8ein5pfve3BZvPT1BsNkkWvyqaVs+KQ0Uremf/N4+U56rnFgw1Y969zl/kwHxwljM5z0Sm1lG+kREvBWt20m7Lmp+rBO13gciIRxEBN6PdLDouU1hCS3ELw4T1BvDdvXOOP43l kOgEK/ZXsCXeQwJwu19Ir8xU62jJrPpgvhvdRHuYNmGkts= 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:(13230001)(366004)(5660300002)(52536014)(7696005)(9686003)(86362001)(8936002)(26005)(44832011)(186003)(508600001)(55016003)(966005)(38070700005)(64756008)(4326008)(66556008)(83380400001)(316002)(76116006)(6506007)(33656002)(8676002)(66476007)(66446008)(66946007)(110136005)(38100700002)(122000001)(2906002)(71200400001)(54906003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?EPN5hO2Pb3DGX+eSpu6anAhBSIxre3O/qhxHqEBeHF+E+7ogq5+G8lFxEJ/C?= =?us-ascii?Q?hTrq+0Yqo3rUlWFCwVHRXKPxkySRgpsKgtK0xwQ9eV0JUvL5xOiv+JFUfHCs?= =?us-ascii?Q?pKEPwcDd7uCR0SCcFEfkK4Vu7A4/V21Ojor5v1sdSSVqDoRKOZUnkhzc79HI?= =?us-ascii?Q?0PF6rYGEpr4pAvsQkO4QW4pGJMx8bmB1x2B7PszuVJoT6qmSkrE60uK1hLG+?= =?us-ascii?Q?fvTtqAtaaIeueJ58Vm8hE8eTnltOOU5UscP7F2sHSVa/tPrrsx2EYsFpWrGO?= =?us-ascii?Q?0lsRDkxK8795y+gRkFwTstVeN2iy5aEujMDWQtizY6Vuhl/mGKfBx74wJvHD?= =?us-ascii?Q?lSdYh7uTn7E9SwjY8Hg05Ui7wJe+8u3r+gV011Wr/MEopPt6R96Tx5Gri0eP?= =?us-ascii?Q?VQlC8/VyhkfnzEUgg8sYgL/92dxgRM78eAsPY9nWMhRpV6oXJLkfWRJcl3RT?= =?us-ascii?Q?qbVB1Hk6Y2wk1MOOLMVXSIbD+edYdbAh7zAFd/0y2+UiElPgHnAfj49ScP6D?= =?us-ascii?Q?3T6EIH/e6eAQsVo4yXvLpHF21idSBFwcB45J+q7OssUqZZ8fS2fjAGaQhR33?= =?us-ascii?Q?Xmve6s7SH2i0zaj5MW7V2g5GBjLwfJI0DmszMFYLIv2QjsED2cZwIpVYiLKY?= =?us-ascii?Q?Fb 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: abce0bda-c4d8-45f8-13f9-08da197ba603 X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Apr 2022 16:20:08.1831 (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: 4Gzvcf4ycxBdT4Cg9O5bWAjdeqEJSKHxXe9ffiG5YKaX0WhVmSWXbHYP9U3AbgJcG2TFCYZf5ExDdrNgCP8yeA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR10MB5840 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.425, 18.0.858 definitions=2022-04-08_05:2022-04-08, 2022-04-08 signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 suspectscore=0 phishscore=0 mlxscore=0 mlxlogscore=904 adultscore=0 spamscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2202240000 definitions=main-2204080082 X-Proofpoint-GUID: 9-xnABrAI7uLp41dyqS1UWmv13_1Mnm_ X-Proofpoint-ORIG-GUID: 9-xnABrAI7uLp41dyqS1UWmv13_1Mnm_ Received-SPF: pass client-ip=205.220.165.32; envelope-from=drew.adams@oracle.com; helo=mx0a-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, T_SCC_BODY_TEXT_LINE=-0.01 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." 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:287971 Archived-At: > >So we have two possible cases: selecting a completion candidate > >when the Completions buffer is the current buffer, and the second > >case is when the minibuffer is current. The first case now works fine, > >and we need to improve the second case. The new mode zcomplete-mode > >will help to do this. >=20 > The advantage of using the minibuffer for everything as icomplete does > is that there is no context switching, so it is a single case, single > map etc...=20 For every action, yes. But Icomplete (like Ido) also uses the minibuffer to display candidates. A better model is the standard Emacs one (also Icicles): show in *Completions*, act in the minibuffer. > The only limitation we have there then is that completins are > not shown on demand, but automatically; but I am not sure if that is > actually a bad or good thing... It's both a good and a bad thing (should be obvious). IOW, such a choice should be available to users at preference-configuration time, or even on the fly, not decided by Emacs designers at Emacs design time. Icicles gives users the choice: https://www.emacswiki.org/emacs/Icicles_-_Icompletion#IncrementalCompletion 1. An option for whether *Completions* is updated incrementally as you type. 2. Two options control the delay before automatic incremental completion takes effect: # of seconds to wait, which takes effect only when there are at least N candidates. This lets you type ahead, before an candidate redisplay occurs. #1 provides several possibilities (cycle with `C-#'): `t': Update *Completions* only if already displayed. `nil': Never update *Completions* automatically. Do so only on demand. Other non-nil: Show and update *Completions* whenever there's more than one candidate. `t' is the default: show *Completions* on demand, but once shown, automatically update it. When there's only one candidate, remove it. 3. Another option says whether to show *Completions* even before you type any minibuffer input. Useful in some contexts where it makes sense to show you the possibilities at the outset, like a menu. Some users like this behavior all the time. 4. You can turn off incremental completion for a given command, by putting a non-nil property on its symbol (property `icicle-turn-off-incremental-completion'). 5. Besides incremental completion in *Completions*, there's whether or not input is completed/expanded in the minibuffer. (Cycle with `C-M-"'.) ___ Expansion (#5) is to the longest common match for all candidates: a substring common to all candidates matched by your input, but a substring that also matches your input. It's described here: https://www.emacswiki.org/emacs/Icicles_-_Expanded-Common-Match_Completion 0 - Never expand (similar to Ido). Just look to *Completions* for the completions. Fits well with non-nil & non-t value for #1, above. 1 - Expand only on demand, when you ask to complete. 2 - Like 1, but also expand when only one match. 3 - Like 4, but don't expand for regexp completion. 4 - Expand whenever completed in *Completions*. 3 & 4 are the most useful, I think. Cycle with `C-"'.