From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Lars Ingebrigtsen Newsgroups: gmane.emacs.bugs Subject: bug#29833: icomplete re-build the completion table after each key press Date: Mon, 21 Sep 2020 16:27:38 +0200 Message-ID: <87zh5jmch1.fsf@gnus.org> References: Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="35505"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: 29833@debbugs.gnu.org, Stefan Monnier To: Shuguang Sun Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Mon Sep 21 16:33:54 2020 Return-path: Envelope-to: geb-bug-gnu-emacs@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 1kKMt7-00097f-PV for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 21 Sep 2020 16:33:53 +0200 Original-Received: from localhost ([::1]:37542 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kKMt6-0005I9-Qm for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 21 Sep 2020 10:33:52 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:46378) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kKMnS-0000g6-Hb for bug-gnu-emacs@gnu.org; Mon, 21 Sep 2020 10:28:03 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:44054) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kKMnS-0003UW-8e for bug-gnu-emacs@gnu.org; Mon, 21 Sep 2020 10:28:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kKMnS-0006kj-4Q for bug-gnu-emacs@gnu.org; Mon, 21 Sep 2020 10:28:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Lars Ingebrigtsen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 21 Sep 2020 14:28:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 29833 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 29833-submit@debbugs.gnu.org id=B29833.160069847325937 (code B ref 29833); Mon, 21 Sep 2020 14:28:02 +0000 Original-Received: (at 29833) by debbugs.gnu.org; 21 Sep 2020 14:27:53 +0000 Original-Received: from localhost ([127.0.0.1]:55598 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKMnJ-0006kH-B3 for submit@debbugs.gnu.org; Mon, 21 Sep 2020 10:27:53 -0400 Original-Received: from quimby.gnus.org ([95.216.78.240]:49080) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kKMnG-0006k3-UO for 29833@debbugs.gnu.org; Mon, 21 Sep 2020 10:27:52 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=ku+7S3rq8Uah3LbDNKdUUMbxzcVcoWqLdUuSbiVwjwI=; b=U1jSU34GYZGmJOj5upXllknSG2 3LOWYUdvoyF+1+Vvrb0bfvugleDPd0dAvUGqza4C0dLnwG9oirriZFWD8OZQfe+DLIWQotgiG9izd crefuplxB/Lz9J+tqNMMOv/QBrMJwo9IPopuTi4IzrD1erP4I+NjUNi2VWbk48o8mVp4=; Original-Received: from cm-84.212.202.86.getinternet.no ([84.212.202.86] helo=xo) by quimby with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kKMn6-0005FJ-BI; Mon, 21 Sep 2020 16:27:43 +0200 X-Now-Playing: LCD Soundsystem's _This Is Happening_: "I Can Change" In-Reply-To: (Shuguang Sun's message of "Sat, 6 Jan 2018 15:27:27 +0800") X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:188591 Archived-At: Shuguang Sun writes: > I tired to find out the issues and provide patches to minibuffer.el and icomplete.el. > > What is the issue? > 1. The function completion--flush-all-sorted-completions defined in minibuffer.el is > always called without parameters which make it flush the cached table every > time. > 2. The function completion--flush-all-sorted-completions is added to the hook of > after-change-functions, however, (jit-lock-after-change t) in the hook will trigger > flush every time > 3. The local cached table completion-all-sorted-completions is not used actually. > The minibuffer-completion-table is called in a lot of function which will rebuild the > table instead of the chached table. [...] > The patches try to use the cached table completion-all-sorted-completions-table as > much as possible, and for filename completion, it caches the list of files in the base > directory (file-name-directory). This patch unfortunately got no response when it was posted two years ago, and it no longer applies cleanly to Emacs 28. I'm not very familiar with the completion functions, but I think your changes make conceptual sense, at least. Perhaps Stefan can provide some feedback here? -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no