GNU bug report logs - #30457
26.0.91; bidi-display-reordering makes navigation around melpa/archive-contents slow

Previous Next

Package: emacs;

Reported by: Aaron Jensen <aaronjensen <at> gmail.com>

Date: Wed, 14 Feb 2018 16:51:01 UTC

Severity: normal

Merged with 3219, 4123, 9589, 13675, 15555, 18530, 22143, 24523, 32523, 40007

Found in versions 23.1, 24.2, 24.2.93, 24.3, 24.5, 26.0.91, 27.0.50, 28.0.50

Fixed in version 29.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Eli Zaretskii <eliz <at> gnu.org>
To: Aaron Jensen <aaronjensen <at> gmail.com>
Cc: 30457 <at> debbugs.gnu.org
Subject: bug#30457: 26.0.91; bidi-display-reordering makes navigation around melpa/archive-contents slow
Date: Wed, 14 Feb 2018 20:40:10 +0200
> From: Aaron Jensen <aaronjensen <at> gmail.com>
> Date: Wed, 14 Feb 2018 08:49:58 -0800
> 
> In this thread, Eli asked for a real world repro where
> bidi-display-reordering slows down emacs:
> https://www.reddit.com/r/emacs/comments/7wezb4/how_can_i_make_line_rendering_faster/
> 
> I found that today, so I wanted to report it.
> 
> Download: https://melpa.org/packages/archive-contents
> 
> emacs -Q archive-contents
> 
> Press and hold C-n (I have a very fast key repeat rate)
> 
> On my machine, it takes about 13 seconds to get to the bottom of the
> window (where it first scrolls, not the bottom of the buffer, I don't
> have the patience for that).
> 
> (setq bidi-display-reordering nil)
> 
> Press and hold C-n
> 
> On my machine, it takes about 1 second to get to the bottom of the
> window.

It's a 870K line with multi-level parentheses.  As already mentioned
there, the BPA implementation that is part of the bidi reordering
makes this sluggish due to the many parentheses in such a long line.
(However, it's nowhere near 13 sec on my box.  And going several lines
in one go, as in "C-u 20 C-n", makes it even faster.)

> I hope that this is a compelling enough use-case. I don't believe I have
> a use-case for it to be `t` right now, so I'll be setting it to `nil` by
> default in my config

Beware: the code which is used when bidi-display-reordering is nil is
unsupported since Emacs 24, so you are on your own when using it.  I
urge you to reconsider.




This bug report was last modified 2 years and 299 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.