Vergleich zweier Dateien / Diff tool like repository

ZodiacXP

Erfahrenes Mitglied
Hallo,

ich möchte ein Diff-Tool schreiben und weis noch nicht genau was der beste Weg wäre. Hier ein prozeduraler Ablauf. Entgegen dem könnte das Dokument gleichzeitig von vorn und hinten verglichen werden.

Kann mir jemand sagen was ein guter Algorithmus wäre ?
(für einfachen Text einer lebendigen Sprache)
 

Anhänge

  • ActivityDiagram1.png
    ActivityDiagram1.png
    29,6 KB · Aufrufe: 27

saftmeister

Nutze den Saft!
Diff-Tools sind teilweise ziemlich komplexe Software, da sie nicht zwangsläufig Zeile für Zeile vergleichen sondern auch eingefügten Inhalten entdecken. Daher fehlt mir in dem AD doch der eine oder andere Task. Außer du hast ganz andere Ansprüche. Dann solltest du etwas konkreter werden.
 

ZodiacXP

Erfahrenes Mitglied
Im allgemeinen ist der UseCase: Differenz zweier Texte (ähnlich Wiki).
Es ist hier Reintext mit Tags für Bilder, physischer und logischer Textauszeichnung vorhanden.

Die Eingabe sind also zwei Texte (Beispiel: http://en.wikipedia.org/wiki/Diff#Usage) welche als Delta-Kompression in einer Datenbank gespeichert wird (wobei für die Speicherung schon ein Konzept steht - siehe unten).

Dabei möchte ich auf vorerst auf nativen Code (hier PHP) eine Lösung haben welche mit der Reife zu einer Erweiterung ausgebaut wird.

Gespeichert wird die "sichtbare Version" als Volltext in der Datenbank mit ihren Vorgängern und Nachfolgern als Delta-Kompression. Die aktuelle "ungesichtete Version" (welche erst noch eine Revision benötigt) ist ebenfalls als Volltext vorhanden um Rechenarbeit für das erstellen der aktuellen Version zu ersparen.