Onzichtbare tekens viewer
Visualiseer spaties, tabs en regelafbrekingen door onzichtbare tekens in codeweergave weer te geven.
Readme
Wat zijn onzichtbare tekens?
Onzichtbare tekens zijn Unicode-codepunten die geen zichtbare glyph hebben maar toch ruimte innemen in een tekenreeks en beïnvloeden hoe software tekst verwerkt of weergeeft. Ze omvatten besturingstekens (zoals tab en regelovergang), opmaaktekens (zoals nulbreedte-verbinders en richtingsmarkeringen), verschillende witruimtevarianten en speciale markeringen zoals de Byte Order Mark (BOM). Omdat ze onzichtbaar zijn, zijn ze notoir moeilijk op te spotten in een gewone teksteditor en zijn ze een veel voorkomende bron van subtiele bugs, verbroken lay-outs en fouten bij gegevensverwerking.
Hulpprogrammabeschrijving
De Invisible Characters Viewer is een interactieve teksteditor die elk onzichtbaar teken als een zichtbaar symbool weergeeft, ter plekke. Plak of typ tekst en elk verborgen teken wordt onmiddellijk vervangen door een klein symbolisch glyph — tabs verschijnen als →, spaties als ·, nulbreedte-spaties als ·, richtingsmarkeringen als → / ←, BOM als ▯, enzovoort. Als u over een glyph beweegt, verschijnt een tooltip met de volledige naam van het teken en het Unicode-codepunt. Niets verlaat de editor; alle weergave gebeurt lokaal in uw browser.
Voorbeelden
| Invoertekst (onbewerkt) | Wat u in de viewer ziet |
|---|---|
Hello\u200BWorld (nulbreedte-spatie tussen woorden) |
Hello·World met het · glyph dat U+200B markeert |
\u202Eright-to-left override |
→right-to-left override met het richtingsglyph aan het begin |
line one\r\nline two |
Carriage-return en regelovergang-glyphs vóór de regelovergang |
\uFEFFstart of file |
▯start of file met de BOM op positie 0 |
Functies
- Inline-weergave: Onzichtbare tekens worden als glyphs rechtstreeks in de editor weergegeven in plaats van in een apart paneel, zodat u ze in context met de omringende tekst ziet
- Brede tekenondersteuning: Verwerkt C0- en C1-besturingstekens, alle benoemde Unicode-opmaaktekens, Unicode-witruimtevarianten (en-spatie, em-spatie, haarvijne spatie, smalle spatie zonder regelovergang, enz.), richtingsopmaakingtekens, variatiekiezers, tagtekens en BOM
- Tooltips: Als u over een glyph beweegt, worden de volledige Unicode-naam en het codepunt van het teken weergegeven (bijvoorbeeld
Zero Width Space — U+200B) - Standaard witruimtemarkeringen: Normale spaties en tabs worden gemarkeerd met behulp van CodeMirror's ingebouwde witruimtemarkeringen, zodat ze visueel onderscheiden blijven van normale tekst
- Platte-tekstmodus: De editor blijft in platte-tekstmodus zodat speciale tekens nooit opnieuw worden geïnterpreteerd of gewijzigd terwijl u typt
Gebruiksscenario's
- Fouten opsporen in copy-paste-artefacten: Tekst die is gekopieerd van PDF's, webpagina's of tekstverwerkers bevat vaak nulbreedte-spaties, zachte koppeltekens of spaties zonder regelovergang die onjuistheden in tekenreeksvergelijkingen en zoekresultaten veroorzaken
- Gegevensbestanden inspecteren: Plak CSV-, JSON- of loguitvoer om onverwachte besturingstekens (null-bytes, regelterugkeer, BOM) op te sporen voordat u gegevens in een database of parser importeert
- Web- en codefouten opsporen: Controleer door gebruikers geleverde invoer of API-reacties op verborgen richtingsmarkeringen of opmaaktekens die de weergave kunnen verbreken of beveiligingsproblemen kunnen veroorzaken
Hoe het werkt
Het hulpprogramma gebruikt CodeMirror 6 met een aangepaste extensie die over elk teken in de zichtbare viewport van de editor itereert. Voor elk codepunt controleert het een opzoektabel met bekende onzichtbare tekens, test tegen Unicode-eigenschapsklassen \p{Cc} (besturing) en \p{Cf} (opmaak), en detecteert variatiekiezers en tagtekenbereiken. Overeenkomende tekens worden vervangen door inline-decoratiewidgets die het overeenkomstige symboolglyphe weergeven. Normale spaties en tabs worden overgelaten aan CodeMirror's ingebouwde highlightWhitespace-extensie.