Szöveges dokumentumok összehasonlítása

A változások követése egyre több területen válik fontossá és ennek megfelelően egyre több szoftver képes segítséget adni ehhez. Például a Microsoft Word lehetővé teszi két tetszőleges dokumentum összehasonlítását, párhuzamos görgetését, sőt, a két dokumentum egyesítését is. Formázatlan, egyszerű szövegek (plain text) esetén, mint amilyen például egy HTML, CSS vagy JS fájl vagy VisualBasic, Python scriptek szintén rendelkezésre állnak hasonló eszközök.

Leggyakrabban az ilyen egyszerű szövegek kódok szerkesztéséhez a Notepad++ alkalmazást használom, amelynek számos előnyei között szerepel az is, hogy plugin-ek segítségével bővíthető. A Plugins menü, Plugin Manager menüpontjában a Show Plugin Manager-re kattintva megjelenik az elérhető kiegészítések listája.

Notepad++ Plugin Manager

Sajnos a Plugin Manager nem kínál kereső funkciót, ezért ha nem tudjuk, mit is keresünk pontosan, kicsit bogarásznunk kell. Ez esetben azonban pontosan tudjuk, hogy a Compare névre hallgató plugint kell telepíteni, ami a plugin kijelölése után az Install gombra kattintva gyorsan meg is történik.

A sikeres telepítés után a Plugins menün belül elérhetővé válik a Compare menüpont és azon belül a plugin funkciói. Használatukhoz két fájlra lesz szükség, amelyek nagyon hasonlók, de mégsem egyeznek meg teljesen. Legjobb, ha egy fájl két különböző verzióját nyitjuk meg a példámban az egyik webes térképes alkalmazás JS fájljai közül nyitok meg egyet. Az egyik a 0.5 a másik a 0.7 verzióhoz tartozik. Az összehasonlításhoz már az is nagyon sokat segít, ha egymás mellett láthatjuk a két fájlt, ezért az egyiket (én többnyire az újabbat) átmozgatjuk a "másik nézetbe". Ezt legegyszerűbben úgy tudjuk megtenni, ha a mozgatni kívánt állomány fülére jobb egérgombbal kattintunk és kiválasztjuk a Move to Other View menüpontot.

Notepad++ kezelőfelületének megosztása

Ha még nincs "másik nézet", akkor a program ketté osztja a képernyőt és a jobb oldali részre teszi a kiválasztott fájlt. Ez az elrendezés már önmagában is hasznos lehet, de az összehasonlítás még nem történt meg. A Plugins menü, Compare menüpontján belül a Compare parancsot választva (gyorsbillentyű: Ctrl+Alt+C) fogja a program összehasonlítani a két nézet éppen aktív fülein található szövegeket. Nagyon rövid számítás után mindkét szöveget megváltoztatva, erősen kiszínezve kapjuk vissza.

Dokumentumok összehasonlítása a plugin segítségével

Az eredmény értelmezéséhez tudnunk kell, hogy a plugin a bal oldali nézetben található szöveget tekinti réginek, a jobb oldali nézetben találhatót tekinti újnak. Pirossal fogja kiemelni azokat a sorokat, amelyek már nem szerepelnek az új változatban, de a régiben igen. Zölddel azokat, amelyek a régi változatban még nem voltak benne, de az újban már benne vannak. Sárga színnel azokat a sorokat emeli ki, amelyek mindkét verzióban megtalálhatók, de valami változott bennük. Végül, de nem utolsó sorban fehér háttérrel érintetlenül hagyja azokat a sorokat, amelyek mindkettő verzióban egyformán megtalálhatók. Jobb oldalon egy navigációs ablak segít eligazodni, hogy hol, milyen típusú eltérések találhatók a két változatban és hogy éppen melyik részét látjuk a dokumentumnak.

Dokumentumok összehasonlításának eredménye

Ha már nincs szükségünk az összehasonlításra, érdemes kikapcsolni, hogy visszakapjuk a megszokott képét a kódunknak. Ehhez ismét a Plugins menü, Compare menüpontjában kell egy parancsot elindítanunk. Tetszés szerint választhatunk a Clear Active Compare és a Clear All Compares parancsok közül. Az összehasonlítás megszűnésével visszakapjuk a két szöveges dokumentumot úgy, ahogy a Compare parancs kiadása előtt voltak és tetszés szerint tovább tudjuk szerkeszteni őket.

Az összehasonlítás eredményének törlése

Megvan tehát az eszköz, használni is tudjuk, de milyen esetekben lehet hasznos? Általánosságban: az eldugott, apró, szinte észrevehetetlen különbségeket sikerül gyorsan megtalálni a plugin segítségével

Az egyik tipikus eset, amikor egy kód továbbfejlesztése, továbbírása volt a feladatom. Hozzáírtam pár sort, módosítottam pár dolgot, látszólag jó volt, ám valamiért mégsem működött. A régi, működő és az új, nem (vagy nem jól) működő kód összehasonlítása nagyban megkönnyítette a hiba feltárását és aztán javítását.

A másik tipikus eset, amikor két működő változatot kell összehasonlítanom és láthatóan (pl. a webes alkalmazás megtekintésekor) van különbség a kettő működésében, de egyszerűen nem bukkanok rá a kódban, hogy hol tér el egymástól a kettő. Az összehasonlítás feltárja a két változat közötti különbségeket és így már sokkal könnyebb azonosítani azt a kódrészletet is, ami az eltérő működést okozza.

Címkék:
© 2017 AdatTérKép