Pregunta

Estoy mirando para poner en práctica multiusuario operativa transformar sólo por cambios basados ??en texto plano en el lado del servidor en un sitio web.

¿Hay una implementación no javascript que se puede recomendar?

¿Fue útil?

Solución

Considere Google-Diff-Match-Patch - bibliotecas de diferencias, del partido y de la corrección de texto sin formato:

"Las bibliotecas de diferencias de partido y el parche ofrecen algoritmos robustos para realizar las operaciones necesarias para la sincronización de texto plano."

Dif:. Comparar dos bloques de texto simple y eficiente devolver una lista de las diferencias

Dif Demostración Coincidir: Dada una cadena de búsqueda, encuentra su mejor coincidencia parcial en un bloque de texto plano. Ponderado por la exactitud y la ubicación.

Partido de demostración Parche: Aplicar una lista de parches en texto plano. Utilizar de mejor esfuerzo para aplicar el parche incluso cuando el texto subyacente no coincide.

Patch Demostración Actualmente disponible en Java, JavaScript, C ++, C #, C Objetivo, Lua y Python. Sin importar el idioma, cada biblioteca cuenta con la misma API y la misma funcionalidad. Todas las versiones también tienen arneses de los ensayos.

Se puede encontrar aquí .

Otros consejos

Considere Py-Infinote.

py-Infinote es un puerto pitón de JInfinote, ofreciendo un protocolo de colaboración de edición de texto (Adoptado) que puede ser usado para escribir multiusuario editores de texto de colaboración. Py-Infinote se utiliza en el proyecto HWIOS.

https://github.com/sveith/jinfinote

Esta es otra aplicación muy interesante la integración de Google de onda operativa transformar con jedit:

https://github.com/djspiewak/cccp

OpenCoweb es una aplicación OT popular. Hay varias implementaciones del servidor escritos en diferentes idiomas.

simple implementación de referencia que voy a estar mejorando próximos meses mediante la adición de cosas más complejas;

Ahora tiene:

  • Las operaciones simples de texto; retener, insertar, eliminar y sus transformaciones uno contra el otro
  • anotaciones sobre el texto y las transformaciones
  • generación de cambios y aplicarlos al texto

https://github.com/slevental/operational-transformation

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top