Order independent batched updates on a text buffer
AssigneeMicrosoft Corporation
InventorsRandy S. Kimmerly, Vijaye G. Raji
Life of this patent
Estimating the term…
Abstract
The embodiments contemplate a system and method for the application of concurrent edits to the same version of a text. The concurrent edits may occur simultaneously or near simultaneously through collaborative editing schemes, where more than one user, processor, or agent applies edits to the version of the text. The application of the concurrent edits includes modifying or transforming the edits to account for changes made to the version of the text and applying the modified edits to the most recent version of the text. As edits may change the positioning of the text, an evaluation of the changes in the positioning of the text may be part of the modification.
Claims13
A method of applying concurrent edits to text in a collaborative editing scenario, wherein the text is stored in a buffer, the method comprising:
- applying a plurality of concurrent edits to the text in an order-independent manner;
- applying a first edit to a first version of the text to create a second version of the text;
- modifying a second edit, originally to be applied to the first version of the text, by comparing the second version of the text to the first version of the text in order to adjust the second edit with respect to the first edit;
- and
- applying the modified second edit to the second version of the text to create a third version of the text,
- wherein, regardless of the order in which the edits are applied, the same resulting text version is obtained.
An edit processor for applying concurrent edits to text in a collaborative editing scenario, comprising:
- a component for applying a plurality of concurrent edits to the text in an order-independent manner;
- a component for applying a first edit to a first version of the text to create a second version of the text;
- a modification component for modifying a second edit, originally to be applied to the first version of the text, by comparing the second version of the text to the first version of the text in order to adjust the second edit with respect to the first edit;
- and
- a component for applying the modified second edit to the second version of the text to create a third version of the text,
- wherein, regardless of the order in which the edits are applied, the same resulting text version is obtained.
A computer-readable storage medium having computer-executable modules for applying concurrent edits to text in a collaborative editing scenario, comprising:
- a buffer module for storing versions of the text;
- a module for applying a plurality of concurrent edits to the text in an order-independent manner;
- a module for applying a first edit to a first version of the text to create a second version of the text;
- an edit modifier module for modifying a second edit, originally to be applied to the first version of the text, by comparing the second version of the text to the first version of the text in order to adjust the second edit with respect to the first edit;
- and
- a module for applying the modified second edit to the second version of the text to create a third version of the text,
- wherein, regardless of the order in which the edits are applied, the same resulting text version is obtained.
Dependencies are inferred from the claim text.