2010-11-15 16 views

Répondre

2

Tenez compte Google-Diff-Match-Patch - Diff, Match et bibliothèques Patch pour Plain Text:

« Le Diff Match et les bibliothèques de Patch offrent des algorithmes robustes pour effectuer les opérations nécessaires pour la synchronisation simple texte." Diff: Comparez deux blocs de texte brut et renvoyez efficacement une liste de différences.

Diff Demo Correspondance: Dans le cas d'une chaîne de recherche, trouver sa meilleure correspondance floue dans un bloc de texte brut. Pondéré pour l'exactitude et l'emplacement.

Correspondance de démonstration Patch: applique une liste de correctifs sur du texte brut. Utilisez le mieux possible pour appliquer le correctif même lorsque le texte sous-jacent ne correspond pas. Patch Actuellement disponible en Java, JavaScript, C++, C#, Objective C, Lua et Python. Quelle que soit la langue, chaque bibliothèque dispose de la même API et des mêmes fonctionnalités. Toutes les versions disposent également de harnais de test complets. Vous pouvez le trouver here.

0

Considérons Py-infinote. Py-infinote est un port python de JInfinote, offrant un protocole d'édition de texte collaboratif (adOPTed) qui peut être utilisé pour écrire des éditeurs de texte collaboratifs multi-utilisateurs. Py-infinote est utilisé dans le projet HWIOS.

https://github.com/sveith/jinfinote

0

OpenCoweb est une implémentation OT populaire. Plusieurs implémentations de serveur sont écrites dans des langues différentes.

0

Implémentation de référence simple que je vais améliorer dans quelques mois en ajoutant des choses plus complexes;

Maintenant, il a:

  • opérations simples de texte; conserver, insérer, supprimer et leurs transformations les uns contre les autres
  • annotations sur le texte et les transformations
  • génération de changements et de les appliquer au texte

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