Edición de Texto Colaborativa Eficiente: Una Implementación CRDT

2025-08-20

Este artículo presenta un algoritmo de edición de texto colaborativa basado en CRDTs, similar a los enfoques utilizados en bibliotecas populares como Yjs y Automerge. A cada carácter se le asigna un identificador único (ID del sitio y reloj), y un índice basado en árbol con contadores ordena los caracteres. La eliminación implica agregar el identificador del carácter a un conjunto eliminado (lápidas). La eficiencia se incrementa mediante optimizaciones como la fusión de inserciones sucesivas, el almacenamiento de bloques de forma contigua y el uso de una representación basada en rangos para el conjunto eliminado. Esto asegura el manejo eficiente de grandes pegado de texto y ediciones simultáneas.