Subject: bug#59996: 30.0.50; Overlays section of Elisp manual still states that overlays scale linearly

From: Ihor Radchenko <[email-masked]>
Date: Tue, 13 Dec 2022 10:42:17 +0000

Eli Zaretskii <[email-masked]> writes:

> I guess that entire section should be audited for inaccuracies now;
> reviews and patches are welcome.

Another part that requires update:

       Emacs stores the overlays of each buffer in two lists, divided around
    an arbitrary center position.  One list extends backwards through the
    buffer from that center position, and the other extends forwards from
    that center position.  The center position can be anywhere in the
    buffer.
    
     -- Function: overlay-recenter pos
         This function recenters the overlays of the current buffer around
         position POS.  That makes overlay lookup faster for positions near
         POS, but slower for positions far away from POS.
    
       A loop that scans the buffer forwards, creating overlays, can run
    faster if you do ‘(overlay-recenter (point-max))’ first.

‘after-string’/‘before-string’ property description might mention that
string are not displayed if the end/beginning of the overlay is not
displayed for some reason.

Also, it might be worth highlighting that unlike text properties,
overlays advance regardless whether insert or insert-and-inherit is used
to insert the buffer text.

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>