Užitečné komponenty pro Delphi a C++ Builder, díl 46.

Již jste si zvykli, že se v tomto seriálu kromě komponent zabýváme i různými šikovnými aplikacemi, které nám programování usnadňují. Dnes si představíme program pro hledání rozdílů v různých verzích zdrojových kódů.

WinMerge

Sami tu situaci určitě budete znát - pracujete na nějaké aplikaci a v tom množství knihoven se snadno stane to, že máte několik verzí téhož zdrojového kódu. Obzvlášť, pokud na věci pracujete zároveň na různých místech (doma, v zaměstnání či ve škole). Pak nastává problém, který "zdroják" jen ten aktuální a správný, protože ne vždy je to ten větší nebo novější dle data.

Jistě, existuje mnoho osvědčených způsobů a pravidel, pomocí kterých se dá podobným zmatečným situacím zabránit a kterými by se měl každý správný programátor řídit, ale ruku na srdce, kdo to vždycky dělá ? Rovněž řada specializovaných programů, databáze zdrojových kódů či různé synchronizační programy jsou leckdy těžkopádné a zdržují. Celým tímto složitým úvodem jsem se chtěl dostat k tomu, že zkrátka občas nastane situace, kdy je potřeba porovnat dva velmi podobné zdrojové kódy a analyzovat jejich vzájemné rozdíly. Využít k tomu prosté porovnání například pomocí Windows Commanderu by asi nebylo příliš vhodné. Rozdíly bychom určitě bez problému našli, ale následné zpracování kódů by bylo značně nepraktické a nepohodlné. Proto by to chtělo speciální program a přesně o takovém si teď povíme.

Takovým programem je právě WinMerge a bez velkého představování se rovnou vrhneme na ovládání programu, protože jeho hlavní funkce je jasná z poněkud delšího úvodu. Po spuštění se objeví vzhledově poněkud strohé okno, připomínající ještě klasické 16-bitové aplikace. Ihned se intuitivně podíváme do menu Soubor a vybereme položku Otevřít nebo klikneme na odpovídající tlačítko v toolbaru. Otevře se dialog, ve kterém nalistujeme postupně oba soubory, jejichž zdrojové kódy porovnáváme. Vybrané soubory se pak zobrazí do dvou oken vedle sebe a jejich posun je vzájemně synchronizován, takže se vždy díváte na "odpovídající si" úseky kódu. Jednotlivé odlišné části jsou pak barevně zvýrazněny, takže je určitě nepřehlédnete.

Mezi celkem očekávatelné ovládací prvky, které naleznete jak v hlavním menu, tak v toolbaru pro rychlejší přístup, patří možnost skákat v textu rovnou na jednotlivé rozdíly, takže nemusíte složitě hledat v dokumentu. Aktuálně označený řádek (rozdíl) pak máte možnost přesouvat pomocí tlačítek či klávesnice rychle do jednoho či druhého dokumentu nebo provést hromadné přesuny všech odlišností z jednoho souboru do druhého. Pochopitelně je také možné soubory ručně editovat. Pro rychlé porovnání dvou složek můžete také využít možnosti hromadného porovnání souborů, kdy se u jednotlivých dvojic porovnávaných souborů zobrazí krátký popis výsledku porovnání. Dvojklikem na odlišnou dvojici se pak otevře již výše zmíněná dvojice porovnávacích oken a můžete se vrhnout na bližší zkoumání.

A to je co se funkcí programu týče vlastně všechno podstatné. Velmi jednoduché, nicméně funkční a pro rychlé porovnání dvou souborů dostačující. Je zřejmě zbytečné zdůrazňovat obvyklé prvky uživatelského prostředí, jako je možnost zapínat a vypínat zobrazení rozličných prvků či zvolit písmo, použité v textových oknech. Součástí je i jednoduchá nápověda ve formátu HTML, možnost vrácení provedených změn (Undo) a automatické zálohování porovnávaných souborů. Co rovněž potěší je také možnost volby jazyka prostředí, mezi kterými nechybí ani čeština.

Program je to sice velmi jednoduchý, ale věřím, že vám pomůže. Nevím, jestli to bylo z popisu jasné, ale samozřejmě není nutné porovnávat jen zdrojové soubory programů Delphi nebo jiného jazyka, ale prakticky jakékoliv textové soubory, takže se program může hodit třeba i při porovnávání HTML stránek (či spíše skriptů) a podobně. A jak je v našem seriálu dobrým zvykem, nezaplatíte nic, protože program je freeware.

www
verze: 1.7.1
velikost: 514 kB

Diskuze (2) Další článek: Dnes se změní design Živě.cz

Témata článku: , , , , , , , , , , , , , , ,