Renders as blank width; used to hide data.
zero-widthinvisibleEin Zeichen ohne Breite belegt keinen Platz und zeichnet kein Schriftbild. Im Editor springt der Cursor darüber hinweg, ohne dass sich etwas bewegt; im Textfeld sieht die Zeile genauso aus wie ohne es. Ein Zeichen ist es trotzdem: Es steht in der Datei und wird von jeder Längenfunktion mitgezählt.
Meist von Maschinen, nicht von Menschen. Redaktionssysteme setzen sie, um den Zeilenumbruch zu steuern, Textverarbeitungen lassen sie beim Umfließen von Text zurück, und Text aus einem Sprachmodell trägt sie aus dem Tokenizer mit heraus. Manche kommen mit Absicht: Ein Zeichen ohne Breite ist der einfachste Weg, eine Kopie eines Dokuments zu kennzeichnen, ohne dass die Kennzeichnung zu sehen wäre.
Im Fließtext so gut wie nie. Deshalb steht diese Gruppe voreingestellt auf Entfernen.
Ausnahmen gibt es, und TraceFree kennt sie: Eine Byte-Reihenfolge-Marke ganz am Anfang einer Datei ist eine legitime Kodierungsangabe, und einige dieser Codepoints sind gewöhnlicher Bestandteil der Schriften, zu denen sie gehören.
| Voreinstellung | Verhalten |
|---|---|
conservative | entfernt |
default | entfernt |
report-only | nachgefragt |
strict | entfernt |
Die Kontextprüfungen können eine Bereinigung immer nur vorsichtiger machen, nie schärfer. Eine Regel „immer entfernen“ setzt sie nicht außer Kraft.
In TraceFree den Zwischenablage-Wächter einschalten und den Text kopieren — der Fund erscheint mit einem Vorher-Nachher-Vergleich der betroffenen Zeilen. Für Dateien tut ein überwachter Ordner dasselbe und legt eine Sicherungskopie daneben.
Diese Seite gibt das Zeichen selbst nie aus, nur Schreibweisen dafür. Eine Seite über unsichtbare Zeichen, die unsichtbare Zeichen enthält, wäre nicht prüfbar — und genau das ist das Problem, für das es dieses Programm gibt.
| Schreibweise | Wert |
|---|---|
| Unicode | U+3164 |
| Rust | \u{3164} |
| JavaScript, Python | \u3164 |
| HTML | ㅤ ㅤ |
| Regex (PCRE, Rust) | \x{3164} |