KDiff3 käsiraamat
KDiff3 on failide ja kataloogide võrdlemise ja ühendamise vahend, mis
võrdleb ja ühendab kaks või kolm sisendfaili või -kataloogi,
näitab erinevusi rida realt ja sümbol sümbolilt (!),
pakub automaatse ühendamise võimalust,
võimaldab kasutada hõlpsasti ühendamiskonflikte lahendada suutvat redaktorit
pakub tänu KIO moodulitele võrguläbipaistvust
võimaldab esile tõsta või peita tühikute või kommentaaride erinevusi
toetab Unicode'i, UTF-8 ja muid kodeeringuid.
näitab erinevusi,
toetab versioonikontrolli võtmesõnade ja ajaloo ühendamist.
Käesolev käsiraamat kirjeldab KDiff3 versiooni 0.9.92.

Sissejuhatus

Veel üks võrdlemisrakendus?
Teatavasti on olemas üsna mitu graafilist võrdlusrakendust. Miks siis veel KDiff3? Siin ma selgitan veidi selle loomise tagamaid.
KDiff3 nägi ilmavalgust sellepärast, et mul oli raskusi ühendamisega. Ühendamine on hädavajalik, kui mingi projekti failide kallal töötab korraga mitu inimest. Ühendamine peab olema mingil määral automatiseeritud, kui arvestada seda, et ühendamisvahend tegeleb nii uute, muudetud failidega (niinimetatud harudega) kui ka algse failiga (niinimetatud baas). Ühendamisvahend valib automaatselt muudatuse, mis mingis harus on tehtud. Kui mitu arendajat on muutnud üht ja sama rida, tuvastab ühendamisvahend konflikti, mis tuleb lahendada käsitsi.
Ühendamine oli sellisel juhul keeruline, sest üks arendaja muutis hulk asju ja lisaks sellele parandas veel paljudes kohtades näiteks taanet. Samal ajal muutis teine arendaja samuti üsna palju samas failis ja nii tekkiski korraga mitu ühendamiskonflikti.
Vahendid, mida ma toona kasutasin, näitasid ainult muudetud ridu, aga mitte seda, mida neis ridades on muudetud. Ning miski ei viidanud ka sellele, et muudetud on ainult taanet. See muutis ühendamise väikest viisi luupainajaks.
Minu jaoks oli see alguspunkt. Esimene versioon oskas näidata erinevusi rea sees ning erinevusi tühimärkides. Hiljem lisandus veel hulk võimalusi, mis ainult suurendasid rakenduse kasulikkust.
Nii on näiteks võimalik teksti kiireks võrdlemiseks kopeerida see lõikepuhvrisse ja asetada siis mis tahes võrdlusaknasse.
Päris suurt pingutust nõudvaks võimaluseks osutus kataloogide võrdlemine ja ühendamine, mille tulemusena sündis peaaegu juba brauseri mõõtu lisandus.
Ma loodan, et KDiff3 rahuldab ka sinu vajadused. Edu sulle!
Joachim Eibl (2003)

Pildid ja võimalused
See pilt näitab erinevust kahe tekstifaili vahel
(KDiff3 üks varasemaid versioone):
Kolmikühendamine on täielikult toetatud. See on abiks juhul, kui kaks inimest on koodi teineteisest sõltumatult muutnud. Algne fail (baas) võimaldab KDiff3 automaatselt valida korrektsed muudatused. Võrdlusakende all asuv ühendamisredaktor lubab konflikte lahendada ja näitab, milline on sellisel juhul tulemus. Isegi seda tulemust saab kohe edasi redigeerida. See pilt näitab kolme sisendfaili ühendamist:
KDiff3 aitab ka võrrelda ja ühendada terveid katalooge. See pilt näitabki KDiff3 kataloogide ühendamisel:

Veel võimalusi

Võrdlemine rida realt ja märk märgilt
Graafiliselt, värvidega näitab KDiff3 täpselt, milles peituvad erinevused. Kui tegeled palju koodi (ümber)kirjutamisega, on see kindlasti abiks.

Tühimärkide erinevuste näitamine
Tühikute ja tabeldusmärkide erinevused näidatakse otseselt ära. Kui read erinevad ainult tühimärkide arvu poolest, võib seda üheainsa pilguga näha vasakul asuval kokkuvõttetulbal (mis tähendab, et ei pruugi enam pead murda, kui muudetud on kõigest taanet).

Kolmikvõrdlus
Kolme faili analüüs ja nende erinevuste näitamine.
Vasakpoolne, keskmine ja parempoolne aken kannavad vastavalt nimesid A, B ja C ning neid eristab ka värv (sinine, roheline, magenta).
Kui ühes failis on rida sama, teises aga erinev, näitab värv, milline fail on erinev. Punane värv tähendab, et mõlemad ülejäänud failid on erinevustega.

Kahe või kolme sisendfaili hõlpus ühendamine
KDiff3 võib ühendada kaks või kolm sisendfaili, sealjuures võimalikult palju juba automaatselt. Tulemust näidatakse redigeeritavas aknas, kus enamiku konflikte saab lahendada üheainsa hiireklõpsuga: vali nupuribalt A, B või C määramaks, millist allikat kasutada. Valida võib ka enam kui ühe allika. Kuna väljundiaken on samal ajal redaktor, siis saab isegi selliseid konflikte, mille puhul tuleb midagi täiendavalt teha, lahendada ilma mingit muud abivahendit kasutamata.

Ja veel...
Kiire liikumine nuppude abil.
Hiireklõps kokkuvõttetulbal sünkroniseerib kõik aknad ühele positsioonile.
Valimine ja kopeerimine mis tahes aknast ning asetamine ühendamisaknasse.
Ülevaatetulp, mis näitab, kus esineb muudatusi ja konflikte.
Värve saab kohandada just kasutaja maitsele.
Kohandatav tabeldusmärgi suurus.
Võimalus lisada tabeldusmärkide asemel tühikud.
Failide hõlpus avamine dialoogiga või võimalus määrata faile käsureal.
Stringide otsimine kõigis tekstiakendes (Otsi ehk CTRL+F ja Otsi järgmine ehk F3).
Iga rea reanumbri näitamine.
Lõikepuhvri sisu asetamine või teksti lohistamine võrdlemise sisendaknasse.
Võrguläbipaistvus KIO-moodulite vahendusel.
Võimalus kasutada KDevelop3 erinevuste näitajana.
Pikkade ridade murdmine.
Unicode'i, UTF-8 ja muude kodeeringute toetus.
Paremalt vasakule kirjutatavate keelte toetus.
...