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@gmail.com>
Cc: 35453@debbugs.gnu.org
Subject: bug#35453: 26.1; Poor performance of vertical-motion in large org buffer
Date: Sun, 05 May 2019 18:58:52 +0300	[thread overview]
Message-ID: <834l68lwoz.fsf@gnu.org> (raw)
In-Reply-To: <87k1f5ww0l.fsf@yantar92-laptop.i-did-not-set--mail-host-address--so-tickle-me> (message from Ihor Radchenko on Sun, 05 May 2019 09:05:46 +0800)

> From: Ihor Radchenko <yantar92@gmail.com>
> Cc: 35453@debbugs.gnu.org
> Date: Sun, 05 May 2019 09:05:46 +0800
> 
>   > Of course, if someone comes up with ideas how to speed up
>   > vertical-motion without changing what Org does with overlays and/or
>   > how overlays are implemented, such ideas will be most welcome.
> 
>   Rather dumb idea.
>   Currently, vertical-motion just loops over all the intervals in the
>   buffer. What if we optimise next-single-char-property-change and use it
>   in vertical-motion? Say, the interval data structure can extended. In
>   addition to the currently available pointers to next and previous
>   intervals, each (or just 'invisible') property of the interval might
>   also contain a pointer to next/previous interval with different property
>   value. Then, by increasing the structure size a bit, we can
>   significantly speed up the buffer motion commands.

There are no intervals in this story.  The way overlays are
implemented, they don't use intervals (if by that you mean the
facilities in intervals.c).  Someone was working on making overlays
more efficient by changing the low-level implementation details, but
that work is yet unfinished.





  parent reply	other threads:[~2019-05-05 15:58 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-25  6:23 bug#35453: 26.1; Poor performance of vertical-motion in large org buffer 'Ihor Radchenko'
2019-04-28 15:20 ` Eli Zaretskii
2019-05-05  1:05   ` Ihor Radchenko
2019-05-05  1:05   ` Ihor Radchenko
2019-05-05 15:58     ` Eli Zaretskii
2019-05-05 15:58     ` Eli Zaretskii [this message]
2019-05-18 10:36       ` Ihor Radchenko
2019-05-18 10:36       ` Ihor Radchenko
2022-10-29  9:02         ` Ihor Radchenko
2022-10-29 10:42           ` Eli Zaretskii
2022-10-29 13:31             ` Stefan Kangas

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=834l68lwoz.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=35453@debbugs.gnu.org \
    --cc=yantar92@gmail.com \
    /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.