Byte order mark. Legitimate as the first character of a file, an artifact elsewhere.
zero-widthinvisibleDie Byte-Reihenfolge-Marke. Ganz am Anfang einer Datei ist sie eine legitime Kodierungsangabe und sagt einem Leser, wie die folgenden Bytes angeordnet sind. An jeder anderen Stelle im Text ist sie ein geschütztes Leerzeichen ohne Breite und ein Artefakt.
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.
Als erstes Zeichen einer Datei ja — und TraceFree erkennt diese Stelle und lässt sie in Ruhe.
Mitten in einem Absatz hat sie nichts zu markieren. Sie ist eine häufige Ursache für eine erste Zeile, die sich nicht auswerten lässt, eine CSV-Kopfzeile, die auf nichts passt, und eine Konfigurationsdatei, die ein Programm nicht lesen will.
| 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+FEFF |
| Rust | \u{FEFF} |
| JavaScript, Python | \uFEFF |
| HTML |   |
| Regex (PCRE, Rust) | \x{FEFF} |