Operativo Transform attuazione (non JavaScript) [chiuso]
-
10-10-2019 - |
Domanda
Sto cercando di implementare multi-utente operativa trasformare solo per le modifiche di testo semplice basato sul lato server su un sito web.
C'è un'implementazione non JavaScript che si può consigliare?
Soluzione
Si consideri Google-Diff-Match-Patch - Diff, Match e Patch librerie per Plain Text:
"Le librerie Diff Match e Patch offrono algoritmi robusti per eseguire le operazioni necessarie per la sincronizzazione di testo".
Diff:. Confrontare due blocchi di testo normale e tornare in modo efficiente un elenco di differenze
Diff Demo Partita: Data una stringa di ricerca, trovare la sua migliore corrispondenza sfocata in un blocco di testo in chiaro. Ponderata sia per l'accuratezza e la posizione.
Partita Demo Patch: Applicare un elenco delle patch sul testo normale. Utilizzare best-effort per applicare la patch anche quando il testo sottostante non corrisponde.
Patch Demo Attualmente disponibile in Java, JavaScript, C ++, C #, Objective C, Lua e Python. Indipendentemente dalla lingua, ogni libreria presenta la stessa API e le stesse funzionalità. Tutte le versioni hanno anche cablaggi test globale.
Si può trovare qui .
Altri suggerimenti
Si consideri Py-infinote.
py-infinote è un porto di pitone JInfinote, offrendo un protocollo di modifica del testo collaborativo (adottata) che può essere usato per scrivere multiutente editor di testo di collaborazione. PY-infinote viene utilizzato nel progetto HWIOS.
Questo è un altro molto interessante implementazione integrazione di Google Wave operativa trasformare con jedit:
OpenCoweb è un'implementazione OT popolare. Ci sono diverse implementazioni di server scritti in diverse lingue.
implementazione di riferimento semplice che sarò migliorando prossimi mesi con l'aggiunta di cose più complesse;
Ora ha:
- semplici operazioni di testo; mantenere, inserire, cancellare e le loro trasformazioni contro l'altro
- annotazioni sul testo e le trasformazioni
- generazione di cambiamenti e la loro applicazione in testo