Preskočiť na obsah

Porovnanie i18n kľúčov

Porovnajte dva lokalizačné JSON súbory a zistite, ktoré prekladové kľúče v ktorom chýbajú.

Vstup
JSON B (preložený súbor)
Výstup

Porovnanie i18n kľúčov

Vložte základný lokalizačný súbor ako JSON A a preloženú verziu ako JSON B — nástroj oba rozbalí na cesty v bodkovej notácii ("nav.home", "errors.notFound") a presne ukáže, kde sa od seba líšia. Hodí sa presne vtedy, keď prekladový súbor zaostáva za zdrojom: nová obrazovka pridá pár reťazcov, niekto upraví anglický text priamo v kóde, alebo bol jazyk strojovo preložený pred mesiacmi a odvtedy sa k nemu nikto nevrátil.

Vyberte si, čo chcete vidieť: kľúče chýbajúce v B (pribudli v zdroji, ale nikdy sa nepreložili), kľúče chýbajúce v A (zvyšné reťazce po odstránenej funkcii) alebo oboje naraz. Štvrtý režim, „Pravdepodobne nepreložené“, vypíše kľúče, ktoré existujú v oboch súboroch s bajtovo identickou hodnotou — silný signál, že sa reťazec len skopíroval a nepreložil, keďže skutočný preklad sa so zdrojom zhoduje len náhodou. Vnorené objekty sa prechádzajú rekurzívne bez ohľadu na hĺbku súboru; polia sa porovnávajú ako celé hodnoty a neindexujú sa, pretože reálne lokalizačné súbory sa vnárajú cez objekty a polia používajú ako neprehľadné dáta (množné tvary, zoradené zoznamy), nie ako číslované kľúče.

Výstup je buď jednoduchý zoznam, jeden zápis na riadok, alebo JSON pripravený na skript či CI kontrolu, ktorá zhodí build, keď preklady začnú zaostávať. Prehľad nad výstupom vždy zobrazuje celkový obraz bez ohľadu na zvolený režim — koľko kľúčov je v A, koľko v B a koľko ich na jednej či druhej strane chýba —, takže rozdiely odhalíte na prvý pohľad ešte predtým, ako si prečítate detail. Neplatný JSON v ktoromkoľvek súbore sa nahlási menovite, s citáciou pôvodnej chybovej hlášky parsera, takže hneď viete, ktorý súbor opraviť.

Všetko beží lokálne vo vašom prehliadači: oba súbory sa parsujú a porovnávajú priamo na vašom zariadení a nikam sa nenahrávajú, čo je dôležité, keďže lokalizačné súbory pred vydaním často obsahujú nezverejnené názvy funkcií a internú terminológiu. Použite ho na kontrolu prekladateľovho pull requestu, audit jazyka pred vydaním alebo na nájdenie každého reťazca, ktorý refaktoring nenápadne odstránil.

Časté otázky

Čo sa počíta ako „kľúč“ pri porovnávaní?
Každá listová hodnota v JSON, adresovaná plnou bodkovou cestou — vnorený objekt ako {"nav":{"home":"Domov"}} vytvorí kľúč "nav.home". Polia sa porovnávajú ako celé hodnoty, nie rozdelené na indexované kľúče.
Čo presne odhaľuje režim „Pravdepodobne nepreložené“?
Kľúče, ktoré existujú v oboch súboroch s identickou hodnotou. Označí pravdepodobne nepreložené reťazce, ale objaví sa aj krátka hodnota, ktorá je v oboch jazykoch legitímne rovnaká (názov značky, číslo) — berte to ako podnet na kontrolu, nie ako istotu chyby.
Čo sa stane, keď kľúč v jednom súbore drží objekt a v druhom obyčajný reťazec?
Každá strana sa rozbaľuje nezávisle, takže tento nesúlad sa prejaví prirodzene: vlastné vnorené kľúče objektu sa zobrazia ako chýbajúce na strane s reťazcom a kľúč reťazca ako chýbajúci na strane s objektom.
Existuje limit na veľkosť súboru?
Žiadny pevný limit okrem 10 MB stropu na výstup, ktorý zdieľa väčšina nástrojov. Spracovanie beží na vašom zariadení, takže aj rozsiahle katalógy s tisíckami kľúčov sa porovnajú za milisekundy.
Nahrávajú sa moje lokalizačné súbory niekam?
Nie. JSON A aj JSON B sa parsujú a porovnávajú výhradne vo vašom prehliadači — ani jeden súbor neopustí vaše zariadenie.