Preskoči na glavni sadržaj

Usporedba teksta — besplatno

Usporedite dva bloka teksta i vidite točno što se promijenilo. Razlika redak po redak s dodanim, uklonjenim i nepromijenjenim recima.

Radi offline nakon učitavanja
Kontekst:
+3 dodano−2 uklonjeno2 nepromijenjeno
Razlika
+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.

Uobičajene namjene

  • Usporedite isječke kodaPronađite točno što se promijenilo između dvije verzije isječka koda, konfiguracije ili skripte.
  • Usporedite nacrti dokumenataPronađite svaku promjenu između dva nacrta dokumenta, ugovora ili članka — red po red.
  • Usporedite podatke i CSV datotekePronađite razlike između dvije verzije izvezenih podataka, CSV-a, logova ili konfiguracije.
  • Usporedite verzije prijevodaPogledajte što se promijenilo između dviju verzija prevedenog dokumenta, datoteke podnaslova ili niza lokalizacije.
  • Pratite izmjene u revizijama sadržajaUsporedite originalne i urađene verzije članka, blog objave ili marketinške kopije da pregledate što se promijenilo.

Kako funkcionira

Text Diff koristi ručno napisan algoritam Najduljeg zajedničkog podniza (LCS) implementiran izravno u ovom alatu — bez vanjske biblioteke diffa. Sve radi u pregledniku; vaš tekst se nikad ne šalje poslužitelju.

  1. 1
    Tekst se dijeli u retke
    Sadržaj svakog tekstualnog polja dijeli se na znakovima novog reda u niz redaka. Opcionalna normalizacija (mala slova, sažimanje bjelina) primjenjuje se na kopiju tih nizova prije usporedbe, dok se izvornici čuvaju za prikaz.
  2. 2
    LCS tablica izračunata u Uint32Array
    Tablica dinamičkog programiranja odozdo-prema-gore gradi se u tipiziranom Uint32Array — O(m×n) i po vremenu i po memoriji. Za unose čiji bi kombinirani broj ćelija premašio 4 milijuna (oko 16 MB), algoritam se automatski prebacuje na grublji blok diff tako da stranica ostane responzivna.
  3. 3
    Isticanje na razini riječi na promijenjenim recima
    Kada je obrisani redak odmah praćen umetnutim retkom, drugi LCS prolaz radi na tokeniziranim riječima tog para (podijeljeno po bjelinama). Ovo proizvodi ugrađene istaknute segmente koji pokazuju točno koje su se riječi promijenile unutar retka, ne samo koji su se retci promijenili.
  4. 4
    Prikaz jedinstvenog diffa sa sažimanjem konteksta
    Popis operacija renderira se kao jedinstveni diff s +/− prefiksima i kodiranjem boja. Nepromijenjeni retci izvan konfigurabilnog prozora konteksta (zadano: 3 retka) sažimaju se iza tri točke. Cijeli rezultat može se kopirati u međuspremnik ili preuzeti kao .txt datoteka običnog teksta.

Srodni alati

Često postavljana pitanja