From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: =?utf-8?B?Sm/Do28gVMOhdm9yYQ==?= Newsgroups: gmane.emacs.devel Subject: Re: BIKESHED: completion faces Date: Wed, 06 Nov 2019 10:25:27 +0000 Message-ID: <87bltp1eug.fsf@gmail.com> References: <4c5631d4-9dfd-04c6-c573-b83c67fcc2fa@yandex.ru> <87pni7p83l.fsf@gmail.com> <87h83ipoi0.fsf@gmail.com> <3f7afc8e-b3d1-07a4-9350-3bfc5775ba21@yandex.ru> <87sgn1yl4b.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="136755"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) Cc: Stefan Monnier , emacs-devel To: Dmitry Gutov Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Nov 06 11:25:46 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.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1iSIVV-000ZND-G4 for ged-emacs-devel@m.gmane.org; Wed, 06 Nov 2019 11:25:45 +0100 Original-Received: from localhost ([::1]:54970 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iSIVU-000493-9a for ged-emacs-devel@m.gmane.org; Wed, 06 Nov 2019 05:25:44 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:43368) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iSIVN-00048t-AW for emacs-devel@gnu.org; Wed, 06 Nov 2019 05:25:38 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iSIVM-0008CB-55 for emacs-devel@gnu.org; Wed, 06 Nov 2019 05:25:37 -0500 Original-Received: from mail-wm1-x32a.google.com ([2a00:1450:4864:20::32a]:55624) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1iSIVL-0008Br-Tm for emacs-devel@gnu.org; Wed, 06 Nov 2019 05:25:36 -0500 Original-Received: by mail-wm1-x32a.google.com with SMTP id m17so2674895wmi.5 for ; Wed, 06 Nov 2019 02:25:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version:content-transfer-encoding; bh=ia3/CHGDuoo84TAlApLlDyYb2Qiyo7fPabLZCN1k4Pg=; b=e9TqpO5XBhGEzber3MfbKcqCcGgeV9w53nn88okUl7QvgkCYDlqV//KM5rvkQAdS+B Ns4vdHEjwyNhPME2o40mWRksP9aAQvd7DtgVqJ4jN52Hki+/2AYfNeoKaPkzbmNmeK7f ShIlT8V3F6LNz/yVJ9pBc2Cpz1PBRrCrK5VqkEMcRPAXZB7yGLD0wmlPNgUXzKBHBvVC hd6pnUMMn50p4S5NZQNXRDeg3M/hWwp5uP5JHv82NAQ2p1wYKcojEKVAmYLDwjsoPKUm jaCwIz3ZcjwWn9R/XigID/Li9oe1mZv9YEgeSLNx6iiWmgq7T0DGnF9ajTK1Tup+3bK7 4+kw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version:content-transfer-encoding; bh=ia3/CHGDuoo84TAlApLlDyYb2Qiyo7fPabLZCN1k4Pg=; b=Xd/0cdVVFeeZqUvugC61oAh5Opj80PO6kZimItUj9tVqs27LQ7d5UvahoSa39TPXIT MH+8Ga49X/m3Lc278mAOcKWtEZBx0KeAesoqQ5T7/+S2RjNCrZDRY22zhwC5CMfVrG+W h40FmAXLBBVjp5fLi9LFvCgf81T8abpPKzrOKSno1Ye09PTRk8Z590Nd2Mc3NXUykNz1 48S8Dfn5aL4f00KDLBdbRy5V2pxrq2EdA8qcH8xUF8QpOc2V2KVYV+mOfUP+G8p59DLf cQtr9glQg5EGD5uARF+i9xmY022iBWjG4K/QKGz08O8A82WxdD8Qv75GDJImLN1bXAaL BP0w== X-Gm-Message-State: APjAAAVsqqrrJ8tu+6oDR8R1Utwumv88mvnZWX9H7jWFi+EBGVpwPHjK 2j+q9yuHe11r0QukS1YM/GHEYFI2 X-Google-Smtp-Source: APXvYqyb2jctBmcvrg5NG3WTQt+SJDE7ZaWfJUQAoHhLIScFHJDDZPEbtm6RfKxmGAgvmIDhKHMmfw== X-Received: by 2002:a1c:23c1:: with SMTP id j184mr1657351wmj.83.1573035933982; Wed, 06 Nov 2019 02:25:33 -0800 (PST) Original-Received: from lolita.yourcompany.com ([2001:818:d820:9500:1ebb:afd8:ab26:f0f6]) by smtp.gmail.com with ESMTPSA id j22sm32820299wrd.41.2019.11.06.02.25.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 06 Nov 2019 02:25:29 -0800 (PST) In-Reply-To: (Dmitry Gutov's message of "Wed, 6 Nov 2019 10:18:42 +0200") X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::32a 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.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:241846 Archived-At: Dmitry Gutov writes: >> Yes, but much more controlled. This particular change in defaults >> so is >> done so that the explanatory part that people (presumably) like about >> the current 'basic' match highlighting is still preserved. > I might have missed what you are referring to here exactly. And I missed this comment in my last reply. Let me summarize, if I can. My proposal has two parts, the second one is optional. I propose: Part 1: Face renaming so that each completion style is relatively free to emphasize the things that it decides need emphasizing. completions-first-difference is renamed completions-emphasis and completions-common is renamed completions-secondary-emphasis. Default values absolutely unchanged. completion-pcm--hilit-commonality starts using completions-emphasis. Current users of 'basic' would see no difference whatsoever. Current users of pcm-based styles would see a defaults change, but there are not that many, I think. If I'm wrong, we restrict this change just to 'flex' by changing just completion-flex-all-completions. Part 2: A "controlled" defaults change whereby the 'basic' style starts usi= ng completions-emphasis where it used to use completions-common. And completions-emphasis-secondary where it used to use completions-first-difference. This second steps yields a moderate gain in "consistency" to other editors that also use prefix-matching somehow. >> Possibly/probably by using delayed evaluation techniques. > My limiting the number of completions, most likely. I also want to review my previous comment to this. I said those editors "suck", but that is totally gratuitous since I have no idea exactly what they do. If limiting yields performance increaase, then of course we should do it. In fact I use this in SLY, when I have to send completions through the wire. But I don't in any way limit the set of symbols from which completions can be collected. This set has to be explored fully, because the "best" match might lurk at the very boundaries or the set. Jo=C3=A3o