From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Gregory Heytings Newsgroups: gmane.emacs.bugs Subject: bug#56682: Fix the long lines font locking related slowdowns Date: Wed, 10 Aug 2022 10:34:32 +0000 Message-ID: References: <83r11uzs8n.fsf@gnu.org> <14845631-c2ef-8371-8606-c858092e3192@yandex.ru> <83mtcizov2.fsf@gnu.org> <83h72qzheq.fsf@gnu.org> <25717d84-3411-a93a-3620-e04fe0571aff@yandex.ru> <83edxuzemr.fsf@gnu.org> <83a68hzz0a.fsf@gnu.org> <6ae35c93062c589b2e02@heytings.org> <7b7fbad7-55ac-49b8-840f-7f89a7e8771a@yandex.ru> <6ae35c93064b3588974c@heytings.org> <6ae35c9306c515f420d8@heytings.org> <87k07gwkjq.fsf@gmx.net> <87fsi4wiel.fsf@gmx.net> Mime-Version: 1.0 Content-Type: text/plain; format=flowed; charset=us-ascii Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="30934"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 56682@debbugs.gnu.org, Eli Zaretskii , monnier@iro.umontreal.ca, Dmitry Gutov To: Stephen Berman Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Wed Aug 10 12:36:40 2022 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 1oLj4p-0007qn-Im for geb-bug-gnu-emacs@m.gmane-mx.org; Wed, 10 Aug 2022 12:36:39 +0200 Original-Received: from localhost ([::1]:37698 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oLj4n-0005p5-53 for geb-bug-gnu-emacs@m.gmane-mx.org; Wed, 10 Aug 2022 06:36:37 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:41038) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oLj3G-0005nW-BC for bug-gnu-emacs@gnu.org; Wed, 10 Aug 2022 06:35:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:56460) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oLj3F-0005l5-WC for bug-gnu-emacs@gnu.org; Wed, 10 Aug 2022 06:35:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oLj3F-0002Z2-QU for bug-gnu-emacs@gnu.org; Wed, 10 Aug 2022 06:35:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Gregory Heytings Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 10 Aug 2022 10:35:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 56682 X-GNU-PR-Package: emacs Original-Received: via spool by 56682-submit@debbugs.gnu.org id=B56682.16601276779814 (code B ref 56682); Wed, 10 Aug 2022 10:35:01 +0000 Original-Received: (at 56682) by debbugs.gnu.org; 10 Aug 2022 10:34:37 +0000 Original-Received: from localhost ([127.0.0.1]:46207 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oLj2q-0002YD-RI for submit@debbugs.gnu.org; Wed, 10 Aug 2022 06:34:37 -0400 Original-Received: from heytings.org ([95.142.160.155]:47016) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oLj2o-0002Y4-M2 for 56682@debbugs.gnu.org; Wed, 10 Aug 2022 06:34:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=heytings.org; s=20220101; t=1660127673; bh=393a8NX3uFWsmV37WjruzzrfjVtRd6azigE3hgRm27Y=; h=Date:From:To:cc:Subject:In-Reply-To:Message-ID:References:From; b=IFjv9QTusDLKqdJmP1gSLLboV3+5mOMDAZ7h8VTbGhi8HCAHFtFNjRtsuJHNKQu5Z fgH5VQ9NMt+b4yBB/s6ztIDQQwuX/agBzVI9T8yM9QnYOaliTHmnvtEggrAsb4zP+Y DZABDun++1r36K8OJ7GDSkuNMO/g040kl3qcUHBPfvS/2lRZZLgsn+CJ4bo6Cds8Rc 0Zzw8ImlwzInuvaTfmDGjd6LeeG3zJbp6iybKjSYxDmwqwa7u/eCxg4MZ+/POuS2Mf 2380aYjgSRo92T+fFafcXkelKaaYpv9JS6YZZFrXn2NET9Nj+1Ed7oeXfcXr/H8I9U n/Eha6KUIu4Ow== In-Reply-To: <87fsi4wiel.fsf@gmx.net> 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:239260 Archived-At: >> That's not expected, no, and rather surprising because it would >> contradict what we've seen so far. Can you post that file somewhere? > > It contains nothing particularly personal, so I've attached it. > Thanks. A last question: what CPU does your computer use? I do see a (very slight) stuttering here, certainly not "several seconds". Anyway, this file is too small for you to see the effect/benefits of long line optimizations. The cause of the delays you see is the "Bidirectional Parentheses Algorithm" which is used by Emacs, and which you can disable by setting bidi-inhibit-bpa to t. It makes C-n and C-p an order of magnitude slower in that file. On my computer and in that file, they take 50 ms with bidi-inhibit-bpa nil and 5 ms with bidi-inhibit-bpa t. So far I don't think these delays are annoying enough to disable that algorithm by default in files with long lines. Another option might be to add some limits to the algorithm in buffers with long lines, without disabling it completely.