Sháním dobrý program na následující úkol:
Stručně :Mám asi 5 souborů, které chci sloučit do jednoho, co řádek, to záznam, nechci duplicity a chci detekovat "podobné" záznamy (například ignorovat interpunkce a porovnávat jen slova složená z písmen, a substringy těchto písmen).
životní cyklus souboru je, že se postupně k němu přidávají řádky (v tomto ohledu to připomíná log),. ale zároveň mohou být záznamy upravovány (drobně, například odmazání části, nahrazení něčeho hvězdičkou - ve smyslu zobecnění-upřesnění, něco jako regulerní výrazy účelem, ne až tak syntaxí), mazány
Zároveň mezi soubory může být vazba, že druhý soubor vznikl zkopírováním prvního a od té doby si oba žijí vlastním životem (bylo k nim přidáváno dle odstavce výše, občas něco smazáno nebo upraveno, občas něco vloženo ne na konec, ale doprostřed)
kde na každém řádku je záznam (případně nad každým řádkem je nepovinně komentář, který nemá nosnou informaci, ale poslouží jako reference, jak záznam vznikl, dá se říct něco jako unikátní klíč ; ale pozor, samotný hlavní řádek mohl být upraven
Jedná se o 5-7 souborů, každý o 400-1500 záznamech ( na řádky přepočteno = přibližně krát 3 : záznam + komentář + prázdný řádek)
Hledám nějaký program, (diff vážně ne), ve kterém by se toto dalo analyzovat, najít odlišné části, společné části, téměř společné části, a vyznačit je, prostě usnadnit kompilaci do jednoho výsledného souboru. Myslím tím nějaké "textové studio", hlavní funkce je
-porovnat 2 soubory (napadá mě, že základem workflow je vždy dvojice souborů, porovnávat trojici a víc by bylo otrocké)
-vyznačit ty části, které jsou stejné, odlišné podobné
-skrýt společné řádky
-najít společné řádky ( i na přeskáčku)
- najít podobnosti například /var/salamandr a ^salamandr/*
- nalezení "nejmenšího společného násobku" - nalezení společných částí ne jen v dané dvojici, ale postupně i v trojici až ve všech zkoumaných souborech
Duplicity (plus "podobnosti") v cílovém souboru nejsou vyloženě na škodu, ale nechtěl bych, aby tam půlka záznamů
byla 4x.
Případně jak to dělat ručně a s jakými existujícími nástroji a jakým workflow.