Volt
00000000

Anleitung

Unsichtbare Zeichen in einer Textdatei auf dem Mac finden

Eine Zeile, die richtig aussieht und nicht kompiliert, ein Schlüssel, der gleich aussieht und nicht passt, eine CSV-Spalte, die sich nicht sortieren lässt: Sehr oft ist die Ursache ein Zeichen, das man nicht sieht. Hier steht, wie Sie sie auf dem Mac sehen und nur die entfernen, die dort nicht hingehören.

Die üblichen Verdächtigen

  • Geschütztes Leerzeichen (U+00A0) — das hinterlassen Textverarbeitungen und Webseiten in eingesetztem Text. Sieht aus wie ein Leerzeichen, ist aber keines.
  • Nullbreites Leerzeichen (U+200B) und seine Verwandten — auf dem Bildschirm gar nichts, für jedes Programm aber ein anderer String.
  • Bytereihenfolge-Markierung (U+FEFF) — am Anfang einer Datei eine Markierung; mittendrin ein Irrläufer, und in einer .htaccess hält sie den Server an.
  • Bidirektionale Steuerzeichen — sie ordnen um, was ein Leser sieht, ohne zu ändern, was ein Compiler liest. Das ist der „Trojan Source“-Angriff, keine Unordnung.
  • Steuerzeichen — ein NUL, ein BEL, eine Strg-Z-Endmarke aus DOS-Zeiten.
  • Weiche Trennstriche und ungewöhnlich breite Leerzeichen aus dem Satz.

Im Terminal

cat -vet datei.txt macht Steuerzeichen und Zeilenenden sichtbar und zeigt andere Nicht-ASCII-Bytes als M--Folgen, die man von Hand entziffern muss. Das grep auf dem Mac hat kein -P — um nach einem bestimmten unsichtbaren Zeichen zu suchen, müssen Sie es also tippen, und das ist genau das Problem, mit dem Sie angefangen haben.

In Volt

Darstellung ▸ Ein- und ausblenden ▸ Unsichtbare Zeichen einblenden markiert Leerzeichen mit einem Punkt, Tabs mit einem Pfeil über ihre eigene Breite und das Ende einer echten Zeile mit ¬. Die Zeichen, um die man sich sorgen sollte, bekommen eigene Marken in der Farbe von etwas Falschem: ein Leerzeichen, das keines ist, ein nullbreites Zeichen, ein weicher Trennstrich.

Steuerzeichen werden immer gezeigt, egal wie eingestellt, jedes als Bild seines eigenen Namens — ␀, ␇, ␡ —, auf Wunsch mit seiner Nummer darüber.

Zeichen-Info (⌥⌘I) sagt genau, was das Zeichen unter dem Cursor ist: Codepunkt, Name und seine Bytes im Zeichensatz dieser Datei.

Bearbeiten ▸ Text ▸ Dokument aufräumen … (⌥⇧⌘K) listet, was in der Datei ist, das nicht zum Text gehört, mit einem Häkchen für jede Art, und entfernt alles Angehakte als eine einzige Änderung, die ein Widerrufen zurücknimmt. Bidirektionale Steuerzeichen werden als Fehler gemeldet. Und was es nicht entfernt, ist der Punkt: Ein Tab ist Text, ein Seitenvorschub ist eine Seitenmarke, und die nullbreiten Verbinder in 👨‍👩‍👧 machen daraus ein Emoji statt drei Personen.

Bei jedem Sichern, wenn Sie wollen. Einstellungen ▸ Editor kann die unsichtbare Hälfte davon bei jedem Sichern entfernen.

Im ganzen Projekt. Der Projektbericht lässt dieselbe Prüfung über jede Datei laufen und filtert auf Etwas stimmt nicht.

Fragen

Wie zeige ich versteckte Zeichen in einer Textdatei auf dem Mac?

Im Terminal zeigt cat -vet Steuerzeichen und Zeilenenden. In Volt markiert Darstellung ▸ Ein- und ausblenden ▸ Unsichtbare Zeichen einblenden Leerzeichen, Tabs und Zeilenenden und gibt den verdächtigen eigene Marken.

Wie finde ich ein nullbreites Leerzeichen?

„Unsichtbare Zeichen einblenden“ markiert es, die Zeichen-Info (⌥⌘I) nennt es, und „Dokument aufräumen …“ entfernt alle auf einmal, wenn Sie es anhaken.

Was ist der Trojan-Source-Angriff?

Bidirektionale Steuerzeichen, die Code in einer anderen Reihenfolge anzeigen lassen, als ein Compiler ihn liest. Volt meldet sie als Fehler statt als Unordnung.

Macht das Aufräumen Emoji kaputt?

Nein. Die nullbreiten Verbinder in einer Emoji-Folge bleiben, denn sie machen daraus ein Emoji.

Kann er Dateien automatisch bereinigen?

Ja: Einstellungen ▸ Editor kann nullbreite Zeichen, bidirektionale Steuerzeichen, weiche Trennstriche, ungewöhnliche Leerzeichen und Steuerzeichen bei jedem Sichern entfernen.

Finden Sie, was sich in Ihrer Datei versteckt

Volt ist in der kostenlosen Beta. Laden Sie ihn jetzt — ohne Konto, ohne Anmeldung — und probieren Sie ihn an der Datei aus, um die es geht. Jeder Build läuft sieben Tage, und jedes Update gibt weitere sieben.

Volt für Mac laden

macOS 13 oder neuer, Apple Silicon. Etwa 8 MB, signiert und notarisiert. Alle Funktionen · was sich in diesem Build geändert hat.

Verwandte Anleitungen