From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Stefan Kangas Newsgroups: gmane.emacs.bugs Subject: bug#45379: 28.0.50; Degraded Performance of describe-buffer-bindings Date: Sat, 18 Sep 2021 05:34:08 -0700 Message-ID: References: <02f717c6-dc96-4ba0-9117-2ef079ac556f@www.fastmail.com> <83o8df0wrl.fsf@gnu.org> <83r1e0nroj.fsf@gnu.org> <8335q26uey.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="14813"; mail-complaints-to="usenet@ciao.gmane.io" Cc: styang@fastmail.com, 45379@debbugs.gnu.org, juri@linkov.net, handa@gnu.org, monnier@iro.umontreal.ca, Lars Ingebrigtsen , stephen.berman@gmx.net To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Sep 18 14:35:16 2021 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 1mRZYo-0003a4-2b for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 18 Sep 2021 14:35:14 +0200 Original-Received: from localhost ([::1]:48290 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mRZYm-0005Yb-2n for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 18 Sep 2021 08:35:12 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:35984) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mRZYc-0005Wd-Iu for bug-gnu-emacs@gnu.org; Sat, 18 Sep 2021 08:35:04 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:50475) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mRZYc-0007OD-Bt for bug-gnu-emacs@gnu.org; Sat, 18 Sep 2021 08:35:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1mRZYc-0008N9-9e for bug-gnu-emacs@gnu.org; Sat, 18 Sep 2021 08:35:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Stefan Kangas Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 18 Sep 2021 12:35:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45379 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch confirmed Original-Received: via spool by 45379-submit@debbugs.gnu.org id=B45379.163196845932128 (code B ref 45379); Sat, 18 Sep 2021 12:35:02 +0000 Original-Received: (at 45379) by debbugs.gnu.org; 18 Sep 2021 12:34:19 +0000 Original-Received: from localhost ([127.0.0.1]:33788 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mRZXv-0008M8-C9 for submit@debbugs.gnu.org; Sat, 18 Sep 2021 08:34:19 -0400 Original-Received: from mail-pf1-f180.google.com ([209.85.210.180]:36370) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mRZXr-0008Lq-Vg for 45379@debbugs.gnu.org; Sat, 18 Sep 2021 08:34:18 -0400 Original-Received: by mail-pf1-f180.google.com with SMTP id m26so11819253pff.3 for <45379@debbugs.gnu.org>; Sat, 18 Sep 2021 05:34:15 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:in-reply-to:references:mime-version:date :message-id:subject:to:cc:content-transfer-encoding; bh=fyGe9LD6yW99rCD9SeuIznNjW+CaR6erJnZlspGpxEM=; b=oaxU26UnNvQ0rhaSxAHhdkiBTq+8Pn54eUSx4tdQJHEzwGgHxzKQZ4sphYDS80AMJ2 hWN0qP5p1A/NSjpAoy3vX+WjRJ4kLJA01JCjA+iwOSfOK/dN9bwLtk7WqlKYTLlBpRCH VCCWYdVuF1TP/OboX2DlCRIAMo2UdvbhBhSt1j7s69Udt0CqQ3sU+S4/pqxkpsjebY7n DCWTiPr7LGjkErcpEr1FJkKglupIDhsULOJCHqCnVeVCY1SIGfSebhMFq8fa+CEoXn2/ cSxL7bpSt+Jrzshbc5PK4Xf01uI6+AK4T0f594/I5ivALYp9SnOOdhzfW0Wf4uqwdP/A g3Bg== X-Gm-Message-State: AOAM532DN6g3Lf6nS4GOapk1FHjljJYNVwYVF6LYUcyk1FxPLwqMxm4t fEgvm8YrZbdcVqdCTRwC9i9T6FTNfVQHrCMEYiQ= X-Google-Smtp-Source: ABdhPJyYSN0gCP0DlEgjwTtCSXDP4ibz6N5EkMYN6uH6eth4uPlNNcwJ7yEmmxYdk0D/4K176iWJYO9PFUPdVkJYUX8= X-Received: by 2002:aa7:9e90:0:b0:43f:2abb:a504 with SMTP id p16-20020aa79e90000000b0043f2abba504mr16000620pfq.35.1631968450146; Sat, 18 Sep 2021 05:34:10 -0700 (PDT) Original-Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Sat, 18 Sep 2021 05:34:08 -0700 In-Reply-To: <8335q26uey.fsf@gnu.org> 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:214623 Archived-At: Eli Zaretskii writes: >> Date: Tue, 07 Sep 2021 21:53:16 +0300 >> From: Eli Zaretskii >> Cc: stephen.berman@gmx.net, handa@gnu.org, juri@linkov.net, styang@fastm= ail.com, >> monnier@iro.umontreal.ca, 45379@debbugs.gnu.org >> >> Ping! Stefan, can we please resolve this issue? I think we cannot >> release Emacs 28 without fixing this regression. > > Since we are close to cutting the emacs-28 release branch, and this > bug didn't see any loving care for a long time, I went ahead and fixed > this performance degradation myself, based on patches by Stefan Kangas > and their discussions in this bug report. Thanks, I appreciate the help. [I had intended to get to it this weekend based on your recent ping; for me this stuff (as opposed to ELisp shenanigans) requires a decent chunk of time to sit down and properly focus.] > The feature whereby we check whether shadowing of consecutive keys is > by the same command, which AFAIU is what caused the regression, is now > optional, by default off. There's a new variable, > 'describe-bindings-check-shadowing-in-ranges', which can be used to > turn it on, and an optional value of that variable, > 'ignore-self-insert', which provides some partial testing of shadowing > in these cases by trading accuracy for performance. OK. The bug doesn't directly affect me, but now people who are affected can enable the bug fix. > And I have a question about this whole "shadowing detection" feature. > If I repeat the recipe of bug#9293, which started all this, i.e. > > emacs -Q > C-x C-f some-tarball-file.tar.gz RET > M-x view-mode RET > C-h m > > then the *Help* buffer shows this at its start: > > key binding > --- ------- > > 0 .. 9 digit-argument > e tar-extract (currently shadowed by =E2=80=98View-exit=E2=80=99) > f tar-extract > > C-d tar-flag-deleted > RET tar-extract > (this binding is currently shadowed) > C-n tar-next-line > C-p tar-previous-line > SPC tar-next-line > (this binding is currently shadowed) > C tar-copy > (this binding is currently shadowed) > > Note how the shadowing of 'e' is described with the command that > shadows it, but the shadowing of RET, SPC, and 'C' isn't. Why is > that? Is that a separate bug? It is a separate bug, I think. The "currently shadowed part" is new in commit fb9326b45c76, but it was never fixed for the second case. Which of the two messages is shown has to do with whether or not this is a regular keymap or a sparse keymap. They were always handled slightly differently, but now we have the changed message for one of them that makes this visible. > for some reason bug#9293 discussed only a small part of the *Help* > display and never looked beyond that. I overlooked the case you mention, indeed.