Unicode String Models

Hans Åberg via Unicode unicode at unicode.org
Mon Sep 10 11:05:48 CDT 2018

> On 9 Sep 2018, at 21:20, Eli Zaretskii via Unicode <unicode at unicode.org> wrote:
> In Emacs, the gap is always where the text is inserted or deleted, be
> it in the middle of text or at its end.
>> All editors I have seen treat the text as ordered collections of small buffers (these small buffers may still have
>> small gaps), which are occasionnally merged or splitted when needed (merging does not cause any
>> reallocation but may free one of the buffers), some of them being paged out to tempoary files when memory is
>> stressed. There are some heuristics in the editor's code to when mainatenance of the collection is really
>> needed and useful for the performance.
> My point was to say that Emacs is not one of these editors you
> describe.

FYI, gap and rope buffers are described at [1-2]; also see the Emacs manual [3].

1. https://en.wikipedia.org/wiki/Gap_buffer
2. https://en.wikipedia.org/wiki/Rope_(data_structure)
3. https://www.gnu.org/software/emacs/manual/html_node/elisp/Buffer-Gap.html

More information about the Unicode mailing list