From unknown Tue Jun 17 01:49:35 2025 X-Loop: help-debbugs@gnu.org Subject: bug#66147: 28.2; Doc of completion functions: (elisp) `Basic Completion' Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 21 Sep 2023 21:47:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 66147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 66147@debbugs.gnu.org X-Debbugs-Original-To: "bug-gnu-emacs@gnu.org" Received: via spool by submit@debbugs.gnu.org id=B.16953327648144 (code B ref -1); Thu, 21 Sep 2023 21:47:01 +0000 Received: (at submit) by debbugs.gnu.org; 21 Sep 2023 21:46:04 +0000 Received: from localhost ([127.0.0.1]:34935 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qjRUp-00027H-Hy for submit@debbugs.gnu.org; Thu, 21 Sep 2023 17:46:04 -0400 Received: from lists.gnu.org ([2001:470:142::17]:40740) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qjRUk-00026k-So for submit@debbugs.gnu.org; Thu, 21 Sep 2023 17:46:02 -0400 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 ) id 1qjRUU-0004Tz-7I for bug-gnu-emacs@gnu.org; Thu, 21 Sep 2023 17:45:43 -0400 Received: from mx0a-00069f02.pphosted.com ([205.220.165.32]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qjRUQ-00005o-Nu for bug-gnu-emacs@gnu.org; Thu, 21 Sep 2023 17:45:41 -0400 Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 38LIsttU013433 for ; Thu, 21 Sep 2023 21:45:36 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : subject : date : message-id : content-type : content-transfer-encoding : mime-version; s=corp-2023-03-30; bh=6hlVKcrlPShfy13kQiEOuPKcwcP4HuXTsoqHJfZfjDI=; b=PP2WFiPScfM3Uc+KRUz5PsQzbrKYarSpiJ18ts1E9dDfn4VVXFnydNutNbx8nzf7d+eo tKR335OExxRIsG93k9s2PP2lf4z1Nne40Q9dcSBfcMz4jtxtehGfEyDvCcUJJa3mJYzn Acg3ptl/lS+ZvZTkeKYvl9p+eh1CKmL3GmsAdAQ94jo4QJHkT2LS4YS1kSZRQg0FwUCX uEY9qZhxyOtQWwQXa0viiy4PaOn5dei9ImQJ+qJXEE3XlJgM05qv3LyKKz2pX6zEiI4H Ub0o9aPmNSre+BuS1ojmhNMN25qJ0fXqCSl4vMxKls3w++4+YjFtnsX0S7zpPm702bve pQ== Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3t8tt1gcp9-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Thu, 21 Sep 2023 21:45:35 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 38LKDxfU015849 for ; Thu, 21 Sep 2023 21:45:35 GMT Received: from nam04-bn8-obe.outbound.protection.outlook.com (mail-bn8nam04lp2041.outbound.protection.outlook.com [104.47.74.41]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3t8u0u6x85-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Thu, 21 Sep 2023 21:45:35 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=h4qotc1mbqjsVbo6ievRNpbdr97xtUgYOJ24cWL8252cVinV+Hkg+pfzb8lVd6T9Cm74wbBi1sEzzGmvysEtIcAHL31NkElWZ6PtYXatEmYT7f0yjoR5B8Vg4mAPFboQ9q739jyysc6kMN68ZyFGS3IJZBYD+d34caJmk0JtnOZwvEqGLfqIGqDzUy0up82KGHhDtMJjCofxC6UzeXEUpVoFZBmR4VNvpLXk2ZA7Zs7fq5Na5OEuJEepfV+iEgrrF8PbGWGqJWjX63ZHr6o88Kr6H5s2BUXebLYyMcIJqvOVoINdpFJkJ4KB4HrLwHezzPP7COh6D/6u/SOWZo/3jg== 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=6hlVKcrlPShfy13kQiEOuPKcwcP4HuXTsoqHJfZfjDI=; b=X6u8gLLxyDlcVwJtMy2XzfvMBfZHBJcT3+fFP3iFeD1ThHL4rIc4F1OkuXS6038tqhnDCVdazCGtWxGw3CBd4Mydzta4yTZ5fEjzZaxqEo7ZQWD13dItodBSPUwtjK2XPrIULKNkGdcWewKzi6C+5YShD9S769GrdT2J6SWUiX1mVx/eNmMeB+s3gc+geMAorex+MEFftjltoA0SPMq7cUqYCATmy993TbTozsrIt4pwt/myMLqq+GfUsrfenTSd7cZhbeFuNJIVks9J4Wb6hJ9NEQ1VGpiwHYH/2QrxF559qrVVA7GOH46mzz6ll0BA/fX560Gw8sua9xzejfWEFw== 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=6hlVKcrlPShfy13kQiEOuPKcwcP4HuXTsoqHJfZfjDI=; b=XSR6aKRO5PEw55iypXIYfStD/yuqzkXOlLRGMpV7gJBhytfftBw2TUrYDgRzY5Rqi8ph1grzJy7k3QTKpjkaVFlec1EjZKdigXawf6QceoyKNO5wEbPjgIt/oMx3923ctavm32zC//WwgQlf68H5QEhd1JcrL6UaL97cLO5wCkE= Received: from SJ0PR10MB5488.namprd10.prod.outlook.com (2603:10b6:a03:37e::19) by BN0PR10MB5013.namprd10.prod.outlook.com (2603:10b6:408:120::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.20; Thu, 21 Sep 2023 21:45:32 +0000 Received: from SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::7c3b:c5a0:5222:69a4]) by SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::7c3b:c5a0:5222:69a4%7]) with mapi id 15.20.6792.026; Thu, 21 Sep 2023 21:45:32 +0000 From: Drew Adams Thread-Topic: 28.2; Doc of completion functions: (elisp) `Basic Completion' Thread-Index: Adns1OkKGilCt3/LQR+dGRXEprpamw== Date: Thu, 21 Sep 2023 21:45:32 +0000 Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SJ0PR10MB5488:EE_|BN0PR10MB5013:EE_ x-ms-office365-filtering-correlation-id: a63a6660-03fc-4db8-45ac-08dbbaec1477 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: /mSqUfQe2em1JOOF3FC97rDO84Xx+8iqGNDMmfihdB9K2sEC+gZLP3IC3c/K2y8mqPgFK/IQPx0huP2mZkhFsCDqEr0k/FZCwOVVfOZSK4OC8SNxAHyTJmHtxy/RoxEJ0Ox0V5NZKk2+eZJ9kv0ZlTCCdppAR0tuHnpkmLUSxpK37ZV0souR5d4P5/ZwyzH70eHtspQsDhJ3rhr0CUvxm3FHFUh1bEMsWo/HoDEZUfotuztLjUzIO8btrNoLLBWFydtmpbEH7iW88QD7YKBVqfCHIFQbYbSSv6RG2OSQ1Tq8UEdgdIlAtwEMbinlNX/1wX08mrW5z/wAKb1VnO/LNYRQ1Up6r/tdDAQ1FqhT7Njc2j5L1kAYV+FuhT6VeGjx6rJURquQ2/MDrQdAZtlqw2oTe7/G2Twf4E8cAnvKl4I0PYDIbUldKYCvGHWSyEIu8lcUI30NFk6+QWN4oc6wpjNogGz2Ti5Vn2tWy6/OJfZeFJo6jZwKet0dWpBTdA6Fc5DV2u2Mm+lMaLrOWh/EtT+50xaSZkzFniiYevRCtMShVyN7YLcF9h4WKGCyhPCqjtzRRJqjT1mDaVWJnSpH7j9Wflg1HleJYRVX5qjFMeh2H03rsuVpDaV9VoCTqcnXuPdnjNEo1+Dt413A5ObBGQ== 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)(39860400002)(366004)(136003)(346002)(396003)(376002)(451199024)(186009)(1800799009)(2906002)(5660300002)(52536014)(8936002)(8676002)(6916009)(41300700001)(316002)(64756008)(66476007)(76116006)(66556008)(66446008)(66946007)(478600001)(45080400002)(44832011)(71200400001)(6506007)(7696005)(9686003)(26005)(83380400001)(86362001)(38100700002)(38070700005)(55016003)(122000001)(33656002)(81973001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: O2No6Ufv1Zbm8bkdLjnpATrqXG7k5wKGRyWe5GKktPLbzN9kRRZJcLeh2cn5y+bXbcJxk70qQ0XGjIYOVbe3krq9NAR+zMlLCCQ8jIZ2fafrkwDEq6SWXoRtxB5/fTDeKQeWL+gKXlUPpB0QVKWbNyTPaYeNgWJq0M6lxCh1hA1aeymlQfzql3pP+3GjRRYOYQUFU1OVaFRUlzfh+MROC8o3xQFpYgSpyh/Ww7vyzC2MEyTDk79DqHW1lvWP5xT+YUWlYWu4HTQUuBofkc/o8h5DZcwUf6P9YbjtoHLLggHdeyM+Gp34uX30z0T8hWuA2YiFFkNVR4hpNOu6U2AxqSX3EtTW60bEOA4htrMdn1ll4ELdzDlT/NBQ3+Opp4Z8BHUTWARhHxnbUQmYPwHcQbyfosr4I6abtoJpVjiUHUf6t0z8kEyH8VK8KL0cmkXAU6ahBXhYD5A0yCCLdjH0woT9Go1Z2TRsZw825tckXMJ0dbPwqLN31AVqxLxOecZguNolQIrAwjGPwlN2lO8cA4eaM9Gd/paHIdbFr95GSVaFboiGHoW95jWMpjPsGPZMWO98KiORIoAbMeb7ONm5qM2pPql9ABhiSwpUlIR8bZeTzgcMzE+YwNlhI8spBJ68bz2If3IT9LOSpWWN+I3DsRHIYj+3hO64DuU3PlFFH57RiH7kbd67BTrBRoRrglOHSAsK1AX9klpAUvpvW3nNK0xA/ZFzbgLP6PIQqgEobvWMSakqhxYJaUgTyzO2FpeVTL+zhO83wzanNc+2KoTW3iiWbO7Vnbdxx59VbExhlssUtheHcfMAmGiCUu6b/TQJdnLdn6v8ASTaAV4jTPGbkK8HmxA3+G+9NSq6+t3RvtCm6tSgvC60K2zGCBAefRuDX5pl+tvZ00GWXBSojFDweNhFELP5D8V2vtXL1QQZ5fwYqLPAKONoYm5DkVQgX/hkqLOXD0Vmd2oziqo+mLg4goaqX3U4NdmfmUrZ5SztuuysRBlCKN7WIrZrrfSbJiGvp/NKaZ0ibPXzQVJ9v4YduKx25pi9cmXH97yFxNxrlua2SAYFCfowxUp4+O8LJgUCvPk8tOm7xa2UiJ3/uEVlBCuX4UKcnI1NtlBAchHixn1FedPkmGAFV3ThbKu3x936hubkLM2GPePpixS2l0zWP9lvRJtJ/UxiiIiSnVJbBSircqSyC5Cy5bX7WCoqznoVTKrS33hFhEebt76m4RuSnWYOIBGmDFP7ukSR3OftyIUJCDBfT6N12SlI8cfWykiTufwDW73lIWlX8cUeiI8DTvprOwsAnfq0ry1ApEKJrG/DEWQh5PrGFGnDkN17P4bG469H9pXanISUhg8dcY6m+VaTcWgeN5KgUCzh8ZvR6M8H5JJoa/MMPPLg2TjOz2ISLw6re/oulwWJqF8vLPHYxGbFp3nWNbkBN6BWbPTGLMf1YW8JOE9KSpp8XhOP0+1Hf1eSuCSDV+2sGztYXtGL9Zd7hLXhW300uzW1MMP5Lr/GcbZQ3n99MMmNuQf7NjaxEk7Yln5Rm3niMFEJoX3fPl1fOAE6sEgRIEqOYatrgR4InMWIEfoRFFEq5OT9hw+L Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: RWzN777EXoK4oVl9VuTeoRDSygqO8/lO182h+UsI8C/F6nHpZvbbUPPa1lL1R41BlZigcJ9nD42brHtKDR6w5QW01DjzQLBBQItyLKwH2Q4bZe+MGOELMzvzw5L67rP47IKU1BhSDqjn6aklGO8Cate6JO93FkNXI/7dWh51APQ3JeacsooXbagvoqCrm5/IfeOMfkTiGPJMaSXSSdeSJnsU9HqH3l532la/PFJl2TbOq2LnEKQYQL/WTXR+xtBkkUVVQMjyC6Zs8gPuU6F8RySxAQVq5xBZ5qXiiBnre1+esKGKCdOrPyP1xKBKqhZgrjDQ9pG+4HeFNfD4gHw9eTOE5A55s97qrjko+bM0IKr7YmlOCRLIaZ4p/GtSqjOUXRkXeL58mt8nvJ6VjvfV3HjXfI5WvNH6NhN67As0416DUXbCWqdw0MM1SpUZI1BdgTwQ7aiULiKv+TPu3UXopeVFpxDbd9EgC+S4XSOSu5tJKpJtVtFp1PilnLIP09Gu158Qd2sQf7iyIvfBwD6mShFCZc4++TNnvbq8UssCwjx0WMaf7yPEhqUm9tbyAvOrdKJASkJj9zxzyUqXawZYraIejVOUkjWYRNUs7jBqIgY0Vf8JAHIeDjUWX2BjVD/6n4wf2a+MlSe4C/g724k8V/CVOCMu6lIrB/ElHZqFrlfiu0fRMi17ra2uzo5yOFa0wQdCe/L1RSOQH3VXqQR0WWWYMbWUsHAhEjRbF1I2G6ssirtl/wnDqFICD6ALhwva 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: a63a6660-03fc-4db8-45ac-08dbbaec1477 X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Sep 2023 21:45:32.1446 (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: v9ZpeFqLDP67pUZiX8elwCGnNnLIvA1dWOqebHX8K4t4ha0yfP/NLedcODutUJKbr6oLnSF9UhbaRZP+ZcFwlQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR10MB5013 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-09-21_19,2023-09-21_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 mlxscore=0 mlxlogscore=997 suspectscore=0 phishscore=0 bulkscore=0 malwarescore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2309180000 definitions=main-2309210188 X-Proofpoint-GUID: UmXqFAflGk-u9JtrQ4-SXcMAau3Su-so X-Proofpoint-ORIG-GUID: UmXqFAflGk-u9JtrQ4-SXcMAau3Su-so 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 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 1.0 (+) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) What seems missing from this doc (and likewise from the relevant doc strings) is any description of what it means for a string to _match_ entries in the completion table. (To be included in an `all-completions' result, or for `try-completion' or `test-completion' to succeed, successful matches _also_ need to satisfy the regexps in `completion-regexp-list' and satisfy the PREDICATE arg. But those additional, optional conditions are well enough described - not a problem.) The information I think is missing is that the basic _matching_ is literal-prefix completion, that is, string equality between the input STRING and a prefix of a COLLECTION element (with symbols being treated as their names etc.). This should be explicitly pointed out, I think. There's no regexp matching, and no substring matching, for example -- nothing but comparison of the INPUT string literally against the prefixes of the candidates. IOW (I think), the matching is this: (string-match-p (format "\\`%s" (regexp-quote STRING)) CANDIDATE) Whether or not that's exactly the matching used, the point is that whatever kind of matching is used is _not described/specified_. It needs to be, for users to understand how these "basic completion functions" behave. (One could even mistakenly guess that these functions are sensitive to the value of `completion-style', so that if that's `substring' then substring matching would be used.) In the beginning, Emacs completion used _only_ such literal-prefix completion, so maybe back then not specifying how an input string is matched against a completion candidate might not have been so important. But nowadays users encounter all kinds of matching when completing: from substring to flex to regexp,... They're familiar with that interactively, as Emacs users, typically long before they encounter programming with the completion functions described here. In GNU Emacs 28.2 (build 2, x86_64-w64-mingw32) of 2022-09-13 built on AVALON Windowing system distributor 'Microsoft Corp.', version 10.0.19045 System Description: Microsoft Windows 10 Pro (v10.0.2009.19045.3324) Configured using: 'configure --with-modules --without-dbus --with-native-compilation --without-compress-install CFLAGS=3D-O2' Configured features: ACL GIF GMP GNUTLS HARFBUZZ JPEG JSON LCMS2 LIBXML2 MODULES NATIVE_COMP NOTIFY W32NOTIFY PDUMPER PNG RSVG SOUND THREADS TIFF TOOLKIT_SCROLL_BARS XPM ZLIB (NATIVE_COMP present but libgccjit not available) From unknown Tue Jun 17 01:49:35 2025 X-Loop: help-debbugs@gnu.org Subject: bug#66147: 28.2; Doc of completion functions: (elisp) `Basic Completion' Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 22 Sep 2023 06:08:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Drew Adams Cc: 66147@debbugs.gnu.org Received: via spool by 66147-submit@debbugs.gnu.org id=B66147.169536283026555 (code B ref 66147); Fri, 22 Sep 2023 06:08:02 +0000 Received: (at 66147) by debbugs.gnu.org; 22 Sep 2023 06:07:10 +0000 Received: from localhost ([127.0.0.1]:35156 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qjZJl-0006uD-Eb for submit@debbugs.gnu.org; Fri, 22 Sep 2023 02:07:09 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:46630) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qjZJe-0006te-RR for 66147@debbugs.gnu.org; Fri, 22 Sep 2023 02:07:06 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qjZJO-0003lm-F1; Fri, 22 Sep 2023 02:06:46 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=wEjQXL1HlLT+CYLdQxaXpy0696RDDc+LbzW2eSg7VRY=; b=IsEgX3jPyZ5d s0XuYErvMgK+hVG9kmCu1pu2lSswEpnYBe7XvDicUmnncB+lPdZmR53gxmNQwCktI2P6zuXiXZJsW GNpDLqiejVkpb1JYkbiBC0eVTYTYgq0CRpjqWr1J8WvmmXng2JzeXW4FnC+00BlEsgebkIEWQ/MCs oLd5s61WXwrATE5NXMQN7x2rJl9vllwYbSKYvwVPZP9sQMxhm40Xt8BZbjGQ6gTUgttgnZLAoXxAZ HSAMuZjGiuGhhM4KbEoLaPdOOVVVYdTYfr0HeTjfFBxug1CS5bmN1orra2KFTsBC7gFv83my/VzGf JU4NaG6EXkPPe6UjtbuQ+w==; Date: Fri, 22 Sep 2023 09:06:47 +0300 Message-Id: <837coi91xk.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: (message from Drew Adams on Thu, 21 Sep 2023 21:45:32 +0000) References: X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Drew Adams > Date: Thu, 21 Sep 2023 21:45:32 +0000 > > What seems missing from this doc (and likewise from the relevant doc > strings) is any description of what it means for a string to _match_ > entries in the completion table. "Basic Completion" is a subsection of "Completion". The parent section explains what it means to match, by describing what does it mean to "complete" something. So I think you are looking for a problem where there is none, by taking a single word (which generally has many different meanings in Emacs) and trying to interpret it by looking at the manual through a loophole, instead of taking the broader view by going to the beginning of the section and reading from there. IOW, if someone reads on "Basic Completion", he or she needs to understand the terminology already; otherwise, they should start from the parent section. > In the beginning, Emacs completion used _only_ such literal-prefix > completion, so maybe back then not specifying how an input string is > matched against a completion candidate might not have been so > important. But nowadays users encounter all kinds of matching when > completing: from substring to flex to regexp,... They're familiar with > that interactively, as Emacs users, typically long before they encounter > programming with the completion functions described here. This seems to talk about something other than basic completion, so is not relevant here. And when a completion style does something other than the simple prefix matching, the style's documentation should state that (and it does). So I don't think we should do anything here that we haven't already done. From unknown Tue Jun 17 01:49:35 2025 X-Loop: help-debbugs@gnu.org Subject: bug#66147: 28.2; Doc of completion functions: (elisp) `Basic Completion' Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 22 Sep 2023 16:05:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii Cc: "66147@debbugs.gnu.org" <66147@debbugs.gnu.org> Received: via spool by 66147-submit@debbugs.gnu.org id=B66147.169539865420415 (code B ref 66147); Fri, 22 Sep 2023 16:05:01 +0000 Received: (at 66147) by debbugs.gnu.org; 22 Sep 2023 16:04:14 +0000 Received: from localhost ([127.0.0.1]:37176 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qjidZ-0005JC-GT for submit@debbugs.gnu.org; Fri, 22 Sep 2023 12:04:13 -0400 Received: from mx0b-00069f02.pphosted.com ([205.220.177.32]:60210) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qjidW-0005J3-7B for 66147@debbugs.gnu.org; Fri, 22 Sep 2023 12:04:12 -0400 Received: from pps.filterd (m0246632.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 38MFwvM0021278; Fri, 22 Sep 2023 16:03:58 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=+jhcpBM6h9HhcxMDdVjHk6XeYY5kUxuce7iicNCOtGo=; b=O0mO7YXA902mmG+qIGJLD7iPOTMBe7zLNZVtlySOtiWMH3pI0HWjFDfmr4jJlZqtV3M0 kCZe6PEwiVoFz9/h4JwReB/hNMTvnjhu716W+QDJwuV/Mx3zX3R4MT7Nuvv9rZdn+EqW lqpMxyvKOYd9HrgmSr4yg7CL7mfuq4gwSlWaiC0wQE3N0Mhr2gQn4bSefO5m7tAk0NSx QG9fs715OTaL/zs1xZLCj3Q8JXXF1LTpNcTq6m/9qielUHm2VB4JjzRe3u2/2rJcA2AF eZyv9TQ+0Zysn+thTvXBVASuAqm9CWj6lnE3QBVfO0gg3XAKbLG2ToLQe8KM0R3MszeB Xg== Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3t8tt026kd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 22 Sep 2023 16:03:58 +0000 Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 38MFUqEi007665; Fri, 22 Sep 2023 16:03:57 GMT Received: from nam02-sn1-obe.outbound.protection.outlook.com (mail-sn1nam02lp2040.outbound.protection.outlook.com [104.47.57.40]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3t8uhcxv4y-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 22 Sep 2023 16:03:56 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=N7dX9JxnTsqB5Kb93qlRewkxUgyCnHByn3jSRjSIakXcRCvE2rTaXUeuXzOUo/FjjcaHei7wbDUq11+rGcIDz9HvXtiMj4fjCW3J1/PKQl4JTw8lCGMeUzH1iZPbfv631fKLTNiVN31ZBTlNo/SSLvOIrCXNy6ZS9hLkw0kfyVZCPufKkNDVxUTLKDpuw5dgrOAdvQSIaQG6oAKYaDAfti5VKbyrFTDLgPLvroUVNEyRRdcQsCFkssFDHaNxI6SagaQ6uNFINJU7aUZhU2T5XO99il/+yNiLgdFNFU0kqyPUOdNTKbA9vt2KngkI36XgU4Si15lHfU8e7AUPw/YWQw== 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=+jhcpBM6h9HhcxMDdVjHk6XeYY5kUxuce7iicNCOtGo=; b=SgCY5Vi4O1MTkcr7KjPnLB1TyjTYH+DS0btQuwyDzLU2CphE4fky3GiNvrtOuu59ft+pfV9TXZ/B2JLDjj6SlK47+Fr4acHtlmb60c204Ea63eVnz7K5oef8UO9bcgKGkxPVps2NpaITUHMHMQKY67A6fLsECNdeFWzLMiTMGKFzEK4nU8et5frVbfMh4qwcw6mCdjlcE+S5CeAS+2belMWLr1uA3YpHZXPi/EXxUzqc1denFfYm0AvqtFn1vLnWNy5SlOGr4d2dZiIOPl+PylE1l4g0htv/Ew6+XBZAZ5FPKhAR0MXzM57ffcw+1MaHrfzqGq3g28oAH0XIOJTztA== 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=+jhcpBM6h9HhcxMDdVjHk6XeYY5kUxuce7iicNCOtGo=; b=fqeJ/7bzDB2fM1DR0sA5yNgjsr2uJgI53mpSi6KYeT3KLvOGB+UyEFvWfOMMJZTCRwo3BPNQLG/HNM3FIEIlmqVuDsUPMjObZjy6HSL/U482pkENE2UT2/AsRttqdhDNuiTQNBvuUlBHMFKIoNHBbf30socKtvJSd5F/cjnb/bU= Received: from SJ0PR10MB5488.namprd10.prod.outlook.com (2603:10b6:a03:37e::19) by MW4PR10MB6346.namprd10.prod.outlook.com (2603:10b6:303:1ec::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.28; Fri, 22 Sep 2023 16:03:39 +0000 Received: from SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::7c3b:c5a0:5222:69a4]) by SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::7c3b:c5a0:5222:69a4%7]) with mapi id 15.20.6792.026; Fri, 22 Sep 2023 16:03:39 +0000 From: Drew Adams Thread-Topic: [External] : Re: bug#66147: 28.2; Doc of completion functions: (elisp) `Basic Completion' Thread-Index: Adns1OkKGilCt3/LQR+dGRXEprpamwARhJ8cABLlp7A= Date: Fri, 22 Sep 2023 16:03:39 +0000 Message-ID: References: <837coi91xk.fsf@gnu.org> In-Reply-To: <837coi91xk.fsf@gnu.org> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SJ0PR10MB5488:EE_|MW4PR10MB6346:EE_ x-ms-office365-filtering-correlation-id: 05c9f743-574a-4060-01b9-08dbbb857c21 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: e/P9MfraWdqQ9tufZ28LFgb8YluFGP2dQjUuD4HKaUCyibjStW+efCJQDS4Jc6X2/rrm3MgK08Qs698WfKUX2nrPHP0zDNrDjC/saPS3mu2vbFL+3SPY5hzSjlN/viA8HdUlL7j3LBeeNJdZFtwPr+ZGl8VMJGnBzzB93AD99w+1xNpJOLqEBLe0ZOj0T/tyECRzuDO9HNKQrapPIW19MHSu3j6pYSJoxoVfPrdSYBnPVZGPtPOZBrsml2zyyHacZ1Nx9r23MpvNzyuQaHYSUXL8BmcvDaSduR1QYIuwUvVC3nQrxxFL5on+az+/J0TKrTLHpx9msF9enAt7ioA75PyrLtMsEurMgDwE9UZf0GDZyxKeqW2DhgfjPBgDognmVIr2MZMFfD+P+mwGjIiVOjFA2vXaBw/99hrAonKyqt+H4xIr9XwRvHOmCVYVgsMffaLF0DacLBtz0lu27y2wxtH2HfoTBULT8s3MpU2BXODaoojvcVsNaRc42IDSgsh/IU842UqpWf6RkhXpFhXyW8oruiMm/bLJuJPZwr0N7F+aBFM+b9eTNNa4l4Bi+wYrFmEqi3j6Yns+Q8bTxkuwmBsHKMKtx02ESP+KA1udeu+Q9mIf5SoGU5dIqwoYeIjWji8UiGNc8wbyawnsgxtDZA== 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)(39860400002)(136003)(346002)(376002)(366004)(396003)(186009)(451199024)(1800799009)(7696005)(6506007)(55016003)(38100700002)(86362001)(38070700005)(122000001)(33656002)(52536014)(5660300002)(2906002)(4326008)(478600001)(71200400001)(9686003)(83380400001)(26005)(8676002)(76116006)(41300700001)(44832011)(6916009)(66946007)(316002)(8936002)(66476007)(66556008)(66446008)(64756008)(81973001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: uBl5Ibwbb4imFZ8SNbxFODojH7hJAiVVEyVCRbDDTElpYQ2IZkZGtmzV66Vw9WGxrh5uWgjHQDyhuU5tCBVptstRybl8HOkKDOLX8YoT6zvJyWptrFqrPtECKZcNNUFpGy25KcGGzlrfD35hZLsDGccgIecSNs/d1yMHQw9ByernrTo35ADQBQnPdB61lQUUalDCVwIpFQaLE7ZYau5x8i393KiHJKtfql1J9Ox8FTv9hEfyR+KGFDRaHyVJ8To8mCT4HSQGJvYA2uqB3/oPMJm1xVcwlh7SfzmfGgS0v22HCTeQTe4yBVyXYOiLSWsd1lrwIPtcvK3wGMGQkCMLwHQqgG2ghoUMI6bpV1QIDTRPtX7VSHBR5wZdIMl4jYQqp1HhjsMQKiRriexuKhv/m2WM4IkKJANq1fz7kiRrwsrwGAAIeBzgnwYwaEVu2ZQnazNac/rs61FCkaqepf69Ei4KFt2dEoMuZkQ05j1mTNcKuiW7iMjMjEwOKTZoaGjXUG0zIp7mnCJHGhjJ3D6Hlh5ZmkR8I3eDtkhuNcBFwTWpZdxaj/yxkr2naluw4x7ORMVYdGZ3Kh04TXQk7JaPGaXy2xbEPqIxQ67nFQ9JH5+58qDry4GD9nPiD5p0AvZleZu7d/7Ws9NKryoHHE9Z6riavKWmGEGsdqrDtfleJOt+w5dTnyFzpx/vA9BM5ZyR66gmaROKYutNvDK/9qkK2qfG6Q50PF6xzPpQ05D+gCGkYIjXfgLz0Zp21dJYY19gWL/4Oow9g/c4FRDnONoqIPG28XjMrdmRnaQVHQ++XHtGziNzFp6pH/iwpG/PxTlbq8TCS9l/XZ5Vjw45lfYRi+BjvtO8X4CM5jxNupg/bnst6JWmawsHZ3GHCe2Swd6HQ43Sl/+AmU48Oi5IRm2xVmZellK4ZDUbySg2gA2rD9p33aSfwiK4u++/k3iJLGSWB8MfkOxb69Ps1L/1Dv6FxGGepDFMR4vnd2FQjXrHXYP8Y3rdOo9RHwHuMvL7zV5cSyrZ2NVD5RDzt/kawd87HTtRLURNssJhG5d0Tz/d2PdX5Gil+eWigyanVREMameoLIEeW2fPxcFpHx67HmCn7cx/xuzhx7umDIs6Vw5hp6rs69+jvJrp6P53Xrsqe+ndLIMcjuN5ELNXv/2j+Xi1qWFkHwuo+nXbMJFv/gIhT309WNOtSfiSYKaTbwoTUpE/KlrtLzmP+5mPMAPGJzjq1pbcCSryfxhildK1iro3r3rlOnBTyvgy/Ao8o2Mje+uBAHpApMd3hL0AaNuQBlw+t77GsyYf7mGuU5iYaZHaaHTSazkemqCrCAlY14ImU73UMw4fg5N6nNsmN/0R87lP0rBiPZUCsVokGFgJqGHGfZPyduyo98mCtwSqgIqYJ2U4o87WtX9fWQ3opA1PZBQGv4ow3BYFQnaWatfT1hYQSv+7aiIS9elVXAKKwks/tP/BA3djf+aTvXvTeY5Iuh3NDNk5KkpXHWaivufURF3MuMCeIwXB175v2ivjYN+xHtVg528qJ9KsU7Ke9vm3MYXLGvWd73D7lkWmShmDq4TeNIv0+tI7TUEFfO1Ow3LprfBM Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: xt4vmw+psBG9zNEWJvzewlingAccbCJHz6riKcone9Zt1IMFXrG1mpJwMaPB10DBdkxyWkfJa+4A+3biFWZ3ctRexil6oiKVRBCqlqCD7KXuZEPgKGLteluvqPGKHPyiLGRloYjaa+xmJIjufm+lgpADTNGEZNYFV3ZqqWD+qNbn6H2ivvapdqaxOQbL+umHaLhJExhAlkf3+enEsYaxAI/Soh5bztM8obRDEAbh1hAYOCRTXY4LSzA94Kq3Z6SIApUv0yS3LHoPsxk7qVEzJCN2By/M5bfHI5ti9Qb+1zk2W+Ftp67SWQDBQoMTPWFbyXu1xJ7r/T1F297rNuRQULTqhdZ6eKhzQ/tRu9tAZk4YUIDLs/Dsbe0dh10aGnygBDQ5sPBPej8PFziTBAN3Vvi/0DxiHSd/qqZ+lkNO+0+oJ2uYvSjhKfzT3ncKQ+8qgMItwpDcS0Rt+zMPRqg7o97L1bJ29qECDAhZ3XSR+YiRaGMAzvzJJz1q5aka1C5ETRbMx5dNPDbHzggIeRh+Vg0vgYJB2G8y4vMdBS03YbqdC3M+2C/LgkfhNJ90iqu1wGRRLReA358jCVjIxNOTTUeF91sEw12JfEbiLdlrkb4cR3s4JmlpjuVbOSbYI3XrpT3yoidokwV/INqCnS7SzDPEQrgzEB6939ywaEul2ID6CPFN5HbC2dMy4ds4eAupFaKzoHcKkCxEvipfab8GRh59+QuCrWLxOkQvtr/UEKk7z1wz/CNafPwXRs656bL3Brwy2i8b9qv4sCjUu48gzOp87xHZTUzT/oYPXpufImo= 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: 05c9f743-574a-4060-01b9-08dbbb857c21 X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Sep 2023 16:03:39.0488 (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: OZK4ox5zZvtpOazJcdkUTq5USD2BYPIc5OHuH1kO2ZJMPS+1EOGg/oNYRAPxUk7O4WK9zRPMYezfpCO1WylLUA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR10MB6346 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-09-22_14,2023-09-21_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 malwarescore=0 mlxscore=0 bulkscore=0 mlxlogscore=999 phishscore=0 suspectscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2309180000 definitions=main-2309220139 X-Proofpoint-GUID: mw-75WPjsO7pzsVsc12Gw5V-2kyvcsYR X-Proofpoint-ORIG-GUID: mw-75WPjsO7pzsVsc12Gw5V-2kyvcsYR X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) > > What seems missing from this doc (and likewise from the relevant doc > > strings) is any description of what it means for a string to _match_ > > entries in the completion table. >=20 > "Basic Completion" is a subsection of "Completion". The parent > section explains what it means to match, by describing what does it > mean to "complete" something. I disagree that node `Completion' in any way describes, specifies, or even suggests what matching means for completion, in particular for basic completion: literal-string prefix matching. And if it did, then that would be the wrong place to do so, IMO. Completion can involve any number of ways to match (and then complete) some input pattern. IMO, `Basic Completion' is the right place to specify what the "basic matching" is that's then used for basic completion. And no, it's not yet described anywhere, AFAICS. This, e.g., doesn't cut the mustard: "Completion" is a feature that fills in the rest of a name starting from an abbreviation for it. That might be OK as an intro to describing completion, but it certainly doesn't prescribe literal-string prefix completion or matching. It simply says that completion takes a pattern and uses it to somehow come up with a string that's more "complete". (And "fills in" isn't necessarily the case. But it's maybe OK for the first sentence of an intro.) Likewise: Completion works by comparing the user's input ... and determining how much of the name is determined uniquely by what the user has typed. says nothing about how the determination is made, i.e., just _what kind of matching_ is involved. Not to mention that "name" isn't clear here. The user provides some text as input, not necessarily a "name". And that text/string is somehow matched against a set of other texts/strings. Matched how? "Basic matching" - but just what is that? This maybe comes a bit closer: returns the longest determined completion of a given initial string, with a given set of strings to match against. but only by accident/confusion. The "initial string" really means just "input string", and says nothing about the fact that that string is taken _literally_ and matched _as a prefix_ against candidates. "Initial", here, isn't about "prefix". There really is nothing in node `Completion' that suggests, let alone declares/specifies that the basic matching it assumes later is literal-string matching as a prefix. > So I think you are looking for a problem where there is none, by > taking a single word (which generally has many different meanings in > Emacs) and trying to interpret it by looking at the manual through a > loophole, instead of taking the broader view by going to the beginning > of the section and reading from there. What single word are you thinking of? "Match"? The kind of matching used for what's called "basic completion" is pretty important to understand, I think. And no, it's not obvious. There are a zillion-zillion ways to match a pattern against text candidates. > IOW, if someone reads on "Basic Completion", he or she needs to > understand the terminology already; otherwise, they should start from > the parent section. "Needs to understand the terminology" is what this bug report is about. It's about the terminology for "basic completion", and that starts with an understanding of the "basic matching" that's used. > > In the beginning, Emacs completion used _only_ such literal-prefix > > completion, so maybe back then not specifying how an input string is > > matched against a completion candidate might not have been so > > important. But nowadays users encounter all kinds of matching when > > completing: from substring to flex to regexp,... They're familiar with > > that interactively, as Emacs users, typically long before they encounte= r > > programming with the completion functions described here. >=20 > This seems to talk about something other than basic completion, so is > not relevant here. No, it's talking exactly about basic completion. In fact, literal-string prefix completion is exactly the `completion-style' named `basic'. And yes, it was all we had, to start with - back almost when this Info section was first written. Back in Emacs 20, we said (more clearly than now): If you type `M-x au ', the looks for alternatives (in this case, command names) that start with `au'. ^^^^^^^^^^^^^^^ > And when a completion style does something other > than the simple prefix matching, the style's > documentation should state that (and it does). I think you misunderstood the reason I mentioned completion styles etc. It was to excuse the text as having been written when all Emacs had was "basic" (aka literal-prefix) completion. And to point out that this is no longer the case, so it's even more important now to make clear what the "basic" completion is: literal-string prefix matching, and then replacing (or doing something else) with a given match. IOW, the text might have been excusable when written, but there's no longer any excuse for not saying what kind matching we're talking about. > So I don't think we should do anything here that > we haven't already done. Please consider thinking about it some more.