Detektor nabora znakov
Uganite izvirno kodiranje za popačenim besedilom in ga obnovite.
Detektor nabora znakov
Prilepite besedilo, kjer so se naglašene črke spremenile v nize, kot je »PrĂliš« ali »GrĂ¶ĂŸe«, in to orodje ugane, kaj je šlo narobe. Običajni vzrok je datoteka UTF-8, odprta, shranjena ali posredovana skozi nekaj, kar je prevzelo enobajtno kodno stran - Windows-1250 ali ISO-8859-2 za srednjeevropsko besedilo, Windows-1252 za zahodnoevropsko besedilo. Vsak naglašen znak je bil prvotno dva ali trije bajti UTF-8; berejo en bajt naenkrat pod napačno kodno stranjo, postanejo točno te vrste dvojne smeti.
Detektor deluje tako, da poskusi obrniti za vsako kandidatno kodno stran in preveri, ali je rezultat dobro oblikovan UTF-8 – strukturni test, ki pravilno kodiranega besedila v bistvu nikoli ne prestane po naključju, zato lahko samodejno zaznavanje uporabi popravek z resnično samozavestjo in ne z metom kovanca. Ko najde ujemanje, prikaže ugibano izvirno kodiranje, ugibano napačno prebrano kodiranje in obnovljeno besedilo ter število znakov, ki jih je popravek odstranil (mojibake je vedno daljši od besedila, iz katerega izvira, saj je bilo vsak pokvarjen znak včasih več).
Samodejno zaznavanje samo ugane smer, ki jo je mogoče preveriti — UTF-8, prikazan na napačni kodni strani. Redkejši obratni primer, datoteka Windows-1250 ali ISO-8859-2, ki se bere kot Latin-1, nima enakovrednega strukturnega preverjanja, zato je ponujena kot ročna možnost v spustnem meniju, če že sumite, da se je to zgodilo, namesto da bi tiho ugibali. To je hevristično orodje, ne jamstvo: besedila, ki meša več jezikov ali vsebuje simbole izven obsega ciljne kodne strani, morda ne bo mogoče obnoviti, in piše tako jasno, namesto da bi vrnil zanesljivo napačen odgovor.
Vse se izvaja lokalno v vašem brskalniku z istimi kodirnimi tabelami, ki jih brskalniki uporabljajo za upodabljanje spletnih strani – nič, kar prilepite, ni nikamor naloženo, kar je tukaj pomembnejše od večine orodij, saj popačeno besedilo pogosto izvira iz resničnih zapisov strank, izvoženih baz podatkov ali prijav za podporo.