all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Ihor Radchenko <yantar92@posteo.net>
Cc: 62780@debbugs.gnu.org
Subject: bug#62780: 30.0.50; Redisplay gets slow when using Org tables + show-trailing-whitespace
Date: Tue, 11 Apr 2023 22:25:25 +0300	[thread overview]
Message-ID: <83y1my8bmi.fsf@gnu.org> (raw)
In-Reply-To: <87mt3e8d50.fsf@localhost> (message from Ihor Radchenko on Tue, 11 Apr 2023 18:52:43 +0000)

> From: Ihor Radchenko <yantar92@posteo.net>
> Date: Tue, 11 Apr 2023 18:52:43 +0000
> 
> 1. emacs -Q
> 2. M-x org-mode <RET>
> 3. M-x org-table-create <RET> 30x30 <RET>
> 4. M-: (setq show-trailing-whitespace t) <RET>
> 4. M-x org-table-insert-column <RET> (20x times)
> 5. M-> type something
> 6. Observe significant lag when typing. CPU profiler does not expose much.

show-trailing-whitespace disables quite a few redisplay optimizations,
including even the cursor-motion optimization (when nothing has
changed on display except the position of point).  And full thorough
redisplay becomes slow when you have relatively long lines, because
Emacs is forced to consider all of them.

In addition, org-table seems to put a large number of 'display'
properties (like, 2 per cell?), which also slows down redisplay.

Are you saying there's been a regression in Emacs 30 in this situation
wrt Emacs 29 and Emacs 28?  I don't think I see a regression in my
testing here.





  reply	other threads:[~2023-04-11 19:25 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-04-11 18:52 bug#62780: 30.0.50; Redisplay gets slow when using Org tables + show-trailing-whitespace Ihor Radchenko
2023-04-11 19:25 ` Eli Zaretskii [this message]
2023-04-11 19:41   ` Ihor Radchenko
2023-04-12  7:19     ` Eli Zaretskii
2023-04-12  7:39       ` Ihor Radchenko
2023-04-12  7:58         ` Eli Zaretskii
2023-04-13  9:46       ` Ihor Radchenko
2023-04-13 10:45         ` Eli Zaretskii
2023-04-13 11:15           ` Ihor Radchenko
2023-04-13 14:33             ` Eli Zaretskii
2023-04-14  9:20               ` Ihor Radchenko
2023-04-14 10:37                 ` Eli Zaretskii
2023-04-14 11:36                   ` Ihor Radchenko
2023-04-14 12:06                     ` Eli Zaretskii
2023-04-14 12:23                       ` Eli Zaretskii
2023-04-14 12:52                         ` Ihor Radchenko
2023-04-14 13:51                           ` Eli Zaretskii
2023-04-14 13:56                             ` Ihor Radchenko
2023-04-14 14:47                               ` Eli Zaretskii
2023-04-14 14:56                                 ` Ihor Radchenko
2023-04-14 15:06                                   ` Eli Zaretskii
2023-04-14 15:23                                     ` Ihor Radchenko
2023-04-14 12:28                       ` Ihor Radchenko
2023-04-29  8:57                         ` Eli Zaretskii
2023-04-29 18:03                           ` Ihor Radchenko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=83y1my8bmi.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=62780@debbugs.gnu.org \
    --cc=yantar92@posteo.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.