Invention Grant
- Patent Title: Text editor buffering implementation with offsets management
-
Application No.: US16035648Application Date: 2018-07-15
-
Publication No.: US11243745B2Publication Date: 2022-02-08
- Inventor: Peng Lyu , Alexandru Ioan Dima
- Applicant: Microsoft Technology Licensing, LLC
- Applicant Address: US WA Redmond
- Assignee: Microsoft Technology Licensing, LLC
- Current Assignee: Microsoft Technology Licensing, LLC
- Current Assignee Address: US WA Redmond
- Agency: Oglivie Law Firm
- Main IPC: G06F8/33
- IPC: G06F8/33 ; G06F16/22 ; G06F40/166

Abstract:
A family of piece tree data structures and related algorithms are described, for buffering editable text in a digital memory. A piece tree includes one or more string buffers and a tree, such as a balanced binary tree. Tree nodes identify respective substrings in the buffer(s), and correspond to edits of the content loaded into a text editor. Specific changes in data structures and the impact of those changes on performance relative to other buffering structures are discussed, including reduced memory usage, faster file loading, and the impact of accumulated edit operations. Offsets of text items such as line breaks are tracked, permitting optimizations for locating them in a text. Benchmark testing results are presented. Source code editors provide examples, but the piece tree buffering structures and their related traversal, (re)configuration, and other algorithms can be part of text editors in a variety of application or subject matter areas.
Public/Granted literature
- US20200019384A1 TEXT EDITOR BUFFERING IMPLEMENTATION WITH OFFSETS MANAGEMENT Public/Granted day:2020-01-16
Information query