Salt la conținutul principal
LibraTool logoLibraTool

Diferențe Text — gratuit

Compară două blocuri de text și vizualizează exact ce s-a modificat. Diferențe linie cu linie cu linii adăugate, eliminate și nemodificate.

Funcționează offline odată încărcat
Context:
+3 adăugat−2 eliminat2 nemodificat
Diferențe
+The quick brown fox leaps over the lazy dog.
−The quick brown fox jumps over the lazy dog.
Pack my box with five dozen liquor jugs.
+How amazingly quick daft zebras jump!
−How vexingly quick daft zebras jump!
The five boxing wizards jump quickly.
+Now is the time for all good men.

Utilizări frecvente

  • Comparati fragmentele de codVedeti exact ce s-a schimbat intre doua versiuni ale unui fragment de cod, configurare sau script.
  • Comparati proiectele de documenteGasiti fiecare schimbare intre doua proiecte de document, contract sau articol - linie cu linie.
  • Comparati datele si fisierele CSVDiferentele spotului intre doua versiuni ale datelor exportate, fisierele CSV, jurnalele sau configuratia.
  • Comparați versiunile de traducereVedeți ce s-a schimbat între două versiuni ale unui document tradus, fișier cu subtitrări sau șir de localizare.
  • Urmăriți modificările în reviziile conținutuluiComparați versiunile originale și editate ale unui articol, postare pe blog sau copie de marketing pentru a vedea ce s-a schimbat.

Cum funcționează

Text Diff folosește un algoritm Cea Mai Lungă Subsecvență Comună (LCS) scris manual, implementat direct în această unealtă — fără bibliotecă diff externă. Totul rulează în browser; textul tău nu este niciodată trimis către un server.

  1. 1
    Textul este împărțit în linii
    Conținutul fiecărei zone de text este împărțit pe caractere de linie nouă într-un array de linii. Normalizare opțională (minuscule, colaps de spații albe) este aplicată unei copii a acelor array-uri înainte de comparare, în timp ce originalele sunt păstrate pentru afișare.
  2. 2
    Tabelul LCS calculat într-un Uint32Array
    Un tabel de programare dinamică de jos-în-sus este construit într-un Uint32Array tipizat — O(m×n) atât în timp cât și în memorie. Pentru intrări al căror număr combinat de celule ar depăși 4 milioane (aproximativ 16 MB), algoritmul revine automat la un diff pe bloc mai grosier astfel încât pagina rămâne receptivă.
  3. 3
    Evidențieri la nivel de cuvânt pe liniile schimbate
    Când o linie ștearsă este urmată imediat de o linie inserată, o a doua trecere LCS rulează pe cuvintele tokenizate ale acelei perechi (împărțite pe spații albe). Aceasta produce segmente inline evidențiate arătând exact ce cuvinte s-au schimbat în interiorul liniei, nu doar ce linii s-au schimbat.
  4. 4
    Vizualizare diff unificată cu colapsare de context
    Lista de operații este randată ca un diff unificat cu prefixe +/− și codificare de culoare. Liniile neschimbate în afara ferestrei de context configurabile (implicit: 3 linii) sunt colapsate în spatele unei elipse. Rezultatul complet poate fi copiat în clipboard sau descărcat ca fișier .txt text simplu.

Instrumente similare

Întrebări frecvente