Verwarrende Tekens Markeerder
Markeer visueel gelijkende tekens zoals l/I/1, O/0, rn/m en meer om de leesbaarheid van tekst te verbeteren en dubbelzinnigheden op te sporen
Invoer
Uitvoer
Readme
Wat zijn verwarrende karakters?
Verwarrende karakters zijn letters, cijfers en symbolen die in veel lettertypen bijna identiek lijken, maar eigenlijk verschillende karakters zijn. Een kleine "l" (el), een hoofdletter "I" (oog), het cijfer "1" en het pipe-symbool "|" kunnen bijvoorbeeld bijna niet te onderscheiden zijn in schreefloze lettertypen zoals Arial of Helvetica. Op dezelfde manier worden de hoofdletter "O" en het cijfer "0" vaak verward.
Deze visuele ambiguïteiten veroorzaken echte problemen. In programmering leidt het gebruik van een 0 (nul) in plaats van een O in een variabelenaam tot bugs die extreem moeilijk op te sporen zijn. In beveiligingscontexten misbruiken aanvallers verwarrende karakters om misleidende URL's, gebruikersnamen of wachtwoorden te maken. In alledaags schrijven kunnen lezers woorden of codes verkeerd interpreteren wanneer vergelijkbare karakters worden verwisseld.
In tegenstelling tot homogliefen — waarbij karakters uit verschillende scripts betrokken zijn (zoals een Cyrillisch "а" dat een Latijnse "a" nabootst) — bestaan verwarrende karakters binnen dezelfde ASCII-set. Ze maken deel uit van uw dagelijkse toetsenbord, waardoor ze nog gemakkelijker over het hoofd kunnen worden gezien.
Gereedschapbeschrijving
Dit gereedschap scant uw tekst en markeert elk karakter dat tot een verwarrende groep behoort met kleurgecodeerde onderstreping. Elke groep vergelijkbare karakters krijgt zijn eigen kleur, waardoor u potentiële ambiguïteiten in één oogopslag kunt opspotten. Beweeg uw muis over een gemarkeerd karakter om de exacte identiteit ervan te zien, inclusief de volledige naam en Unicode-codepunt.
U kunt selecteren welke verwarrende groepen u wilt markeren met behulp van de vervolgkeuzelijst met meervoudige selectie, zodat u zich kunt concentreren op de specifieke ambiguïteiten die voor uw use case van belang zijn.
Voorbeelden
Invoer:
Il1|egal passw0rd: S5Z2B8Wat wordt gemarkeerd:
I,l,1,|— gemarkeerd in rood (l / I / 1 / | groep)0— gemarkeerd in blauw (O / 0 groep)S,5— gemarkeerd in paars (S / 5 groep)Z,2— gemarkeerd in oranje (Z / 2 groep)B,8— gemarkeerd in tealblauw (B / 8 groep)
Voorbeeld van tooltip bij aanwijzen:
Als u de muis over l beweegt, ziet u: Lowercase L (U+006C)
Als u de muis over I beweegt, ziet u: Uppercase I (U+0049)
Functies
- Kleurgecodeerde markering voor 14 verwarrende karaktergroepen
- Tooltips bij aanwijzen met exacte karakternaam en Unicode-codepunt
- Selecteerbare groepen om u te concentreren op specifieke ambiguïteiten
- Realtime markering terwijl u typt
- Samenvattingspaneel met gedetecteerde groepen en tellingen van voorkomen
Ondersteunde groepen
| Groep | Karakters | Veelvoorkomende verwarring |
|---|---|---|
| l / I / 1 / | | kleine l, hoofdletter I, cijfer 1, pipe | Meest voorkomend in schreefloze lettertypen |
| O / 0 | hoofdletter O, cijfer 0 | Frequent in codes en wachtwoorden |
| rn / m | r, n, m | "rn" lijkt op "m" in veel lettertypen |
| S / 5 | hoofdletter S, cijfer 5 | Vergelijkbare bochten |
| Z / 2 | hoofdletter Z, cijfer 2 | Gelijkenis in diagonale streek |
| B / 8 | hoofdletter B, cijfer 8 | Gelijkenis in dubbele lus |
| G / 6 | hoofdletter G, cijfer 6 | Overlap in gebogen vorm |
| D / O / 0 | hoofdletter D | Lijkt op O en 0 in afgeronde lettertypen |
| q / g | kleine q, kleine g | Verwarring in onderlengtes |
| cl / d | kleine c, kleine d | "cl" lijkt op "d" bij strakke letterspatiëring |
| vv / w | kleine v, kleine w | "vv" lijkt op "w" |
| ` / ' | grave accent, apostrof | Bijna identiek in de meeste lettertypen |
| ; / : | puntkomma, dubbele punt | Verschillen alleen in een punt versus komma |
| - / – / — | koppelteken, en-streepje, em-streepje | Verschillende streepjeslengtes |
Use cases
- Code review: Vang onopzettelijk gebruik van
Oin plaats van0oflin plaats van1in variabelenamen, API-sleutels of configuratiewaarden - Beveiligingsaudit: Detecteer mogelijk misleidende tekst in URL's, e-mailadressen of door gebruikers gegenereerde inhoud waarbij verwarrende karakters kunnen worden gebruikt voor phishing of spoofing
- Typografie en proeflezen: Controleer of de juiste karakters worden gebruikt in serienummers, licentiesleutels of andere tekst waarbij nauwkeurigheid van belang is
Tips
- Gebruik een monospaced lettertype in uw editor om visuele ambiguïteit tijdens het schrijven van code te verminderen
- Als u zich alleen zorgen maakt over een specifieke verwarring (bijvoorbeeld l versus 1), deselecteer dan alle andere groepen om ruis te verminderen
- Beweeg uw muis over een gemarkeerd karakter om de exacte identiteit ervan via de tooltip te bevestigen