Slaan oor na hoofinhoud
LibraTool logoLibraTool

Gratis Teksverskil

Vergelyk twee blokke teks en kyk presies wat verander het. Reël-vir-reël verskil met bygevoegde, verwyderde en onveranderde lyne.

Werk vanlyn sodra gelaai
Konteks:
+3 bygevoeg−2 verwyder2 onveranderd
Verskil
+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.

Algemene gebruike

  • Vergelyk kodefragmenteSien presies wat verander tussen twee weergawes van 'n kodefragment, opmaak of skrip.
  • Vergelyk dokumentkonsepeVind elke verandering tussen twee konsepte van 'n dokument, kontrak of artikel - lyn vir lyn.
  • Vergelyk data en CSV-lêersSien verskille tussen twee weergawes van uitvoerdata, CSV's, logge of opmaak.
  • Vergelyk vertaalweergawesSien wat tussen twee weergawes van 'n vertaalde dokument ondertitelêer of lokalisasiestring verander het.
  • Spoor veranderinge in inhoudhersieningVergelyk oorspronklike en geredigeerde weergawes van 'n artikel blogloodsie of markeringskopieer om te sien wat verander het.

Hoe dit werk

Teks-verskil gebruik 'n handgeskrewe Langste-Gemeenskaplike-Subvolgorde- (LCS-) algoritme direk in hierdie nutsprogram geïmplementeer — geen eksterne verskil-biblioteek nie. Alles loop in die blaaier; jou teks word nooit na 'n bediener gestuur nie.

  1. 1
    Teks word in lyne verdeel
    Elke teksarea se inhoud word op nuwe-lyn-karakters in 'n reeks lyne verdeel. Opsionele normalisering (kleinletter maak, spasiëring saamvou) word op 'n kopie van daardie reekse toegepas voor vergelyking, terwyl die oorspronklikes vir vertoning behou word.
  2. 2
    LCS-tabel bereken in 'n Uint32Array
    'n Bo-na-onder-dinamiese-programmering-tabel word in 'n getipeerde Uint32Array gebou — O(m×n) in beide tyd en geheue. Vir toevoere wie se gekombineerde selgetal 4 miljoen sou oorskry (omtrent 16 MB), val die algoritme outomaties terug op 'n growwer blokverskil sodat die bladsy responsief bly.
  3. 3
    Woord-vlak-uitligtings op veranderde lyne
    Wanneer 'n verwyderde lyn onmiddellik deur 'n ingevoegde lyn gevolg word, loop 'n tweede LCS-deurgang op die getokeniseerde woorde van daardie paar (verdeel op spasiëring). Dit produseer inlyn-uitgeligte segmente wat presies wys watter woorde binne die lyn verander het, nie net watter lyne verander het nie.
  4. 4
    Verenigde-verskil-aansig met konteks-samevouing
    Die bewerkingslys word as 'n verenigde verskil gerender met +/−-voorvoegsels en kleurkodering. Onveranderde lyne buite die konfigureerbare kontekssvenster (verstek: 3 lyne) word agter 'n ellips saamgevou. Die volle resultaat kan na die knipbord gekopieer of as 'n gewone-teks-.txt-lêer afgelaai word.

Verwante gereedskap

Gereelde vrae