Wikipedia · einfach zusammengefasst · Stand
Leerraum
Leerraum (fachsprachlich auch englisch Whitespace /'waɪtspeɪs/ „Weißraum“ oder Zwischenraumzeichen) ist in der Informatik eine Bezeichnung für Zeichen in …
Inhalt5 Abschnitte
Bedeutung und Verwendung
Leerraum, fachsprachlich auch Whitespace oder Zwischenraumzeichen, bezeichnet in der Informatik Zeichen, die in Texteditoren und Textverarbeitungsprogrammen normalerweise als leere Flächen erscheinen, aber trotzdem Speicherplatz beanspruchen. Sie dienen vor allem dazu, Wörter voneinander zu trennen, Ziffern zu gruppieren sowie Zeilenumbrüche zu verhindern oder zu ermöglichen. Dazu können unterschiedlich breite Leerzeichen eingesetzt werden.
Welche Zeichen als Leerraum gelten, hängt vom jeweiligen Zusammenhang ab. Fast immer gehören das gewöhnliche Leerzeichen und das Tabulatorzeichen dazu, meistens auch Zeilenumbrüche. Viele Programme können diese unsichtbaren Zeichen durch sichtbare Formatierungssymbole darstellen, etwa ¶ für einen Zeilenumbruch, · für ein Leerzeichen und → oder > für einen Tabulator.
Bei der Zeichenzählung eines Textdokuments wird Leerraum manchmal nicht mitgezählt.
Leerraum in Programmiersprachen
In der Programmierung kann Leerraum wichtige syntaktische Aufgaben übernehmen. Whitespace-Zeichen können beispielsweise geschützte Wörter einer Programmiersprache und Namen von Variablen voneinander trennen. Manche Sprachen verlangen außerdem eine bestimmte Anordnung des Leerraums: In Python kennzeichnet die Einrückung mit Whitespace-Zeichen die Blöcke des Quellcodes.
Abhängig von der Syntax einer Programmiersprache kann es zugleich unerheblich sein, ob ein einzelnes oder mehrere Leerraumzeichen aufeinanderfolgen. Vergleichsprogramme und Vergleichsfunktionen in integrierten Entwicklungsumgebungen (IDE) bieten deshalb häufig die Option „Ignore Whitespace“. Damit können Unterschiede, die nur den Leerraum betreffen, beim Vergleich ausgeblendet werden.
Leerraum in regulären Ausdrücken
Reguläre Ausdrücke sind Suchmuster für Texte. Für die Zeichenklassen \s beziehungsweise [:space:] sind zwei leicht unterschiedliche Definitionen von Leerraum verbreitet.
In Perl-kompatiblen regulären Ausdrücken (PCRE) gehören mindestens folgende Zeichen dazu: das Leerzeichen (U+0020), der Horizontal-Tabulator (U+0009), der Zeilenvorschub (U+000A), der Seitenvorschub (U+000C) und der Wagenrücklauf (U+000D). Nach dem POSIX-Standard wird zusätzlich der Vertikal-Tabulator (U+000B) als Leerraum betrachtet. Bei beiden Definitionen können je nach eingestelltem Locale, also den Sprach- und Regionseinstellungen, weitere Zeichen hinzukommen. Im Japanischen kann dies beispielsweise das ideographische Leerzeichen (U+3000) sein.
Der ECMA-Standard, der auch für JavaScript maßgeblich ist, verwendet eine eigene Festlegung. Sie umfasst unter anderem das geschützte Leerzeichen (U+00A0), die Byte Order Mark (U+FEFF) und alle Zeichen, die im Unicode-Standard Version 3.0 als Leerraum definiert sind.
Kategorien und Eigenschaften in Unicode
Ein Codepoint ist die eindeutige Nummer eines Unicode-Zeichens. Jedem Codepoint sind mehrere Unicode-Eigenschaften zugeordnet. Dazu zählt die allgemeine Kategorie General_Category (gc). Die als Leerraum betrachteten Zeichen verteilen sich dort auf die Kategorie für Steuerzeichen (Cc) sowie auf die Kategorien für Zeilentrenner (Zl), Absatztrenner (Zp) und sonstige Trenner (Zs). Eine eigene allgemeine Kategorie für Leerraum gibt es nicht.
Eine weitere Eigenschaft ist die Bidirektionalitäts-Klasse Bidi_Class (bc), die für den Unicode-Bidi-Algorithmus zur Darstellung von Text mit unterschiedlichen Schreibrichtungen verwendet wird. Dort existiert zwar die Klasse White_Space (WS), sie umfasst jedoch nur verschiedene Leerzeichen. Tabulatorzeichen und Zeilenvorschübe gehören nicht dazu, sondern zu eigenen Klassen für allgemeine Separatoren (CS), Segmenttrenner (S) und Absatztrenner (B).
Mit der Unicode-Eigenschaft White_Space sind insgesamt 25 Zeichen gekennzeichnet:
- Horizontal- und Vertikal-Tabulator (U+0009 und U+000B), Zeilen- und Seitenvorschub (U+000A und U+000C) sowie Wagenrücklauf (U+000D)
- das Leerzeichen (U+0020)
- das Steuerzeichen für die nächste Zeile (U+0085)
- das geschützte Leerzeichen (U+00A0)
- das Ogham-Leerzeichen (U+1680)
- elf schmale Leerzeichen, das Haarspatium und Geviert-Leerzeichen verschiedener Größen (U+2000 bis U+200A)
- Zeilen- und Absatztrenner (U+2028 und U+2029)
- das schmale geschützte Leerzeichen (U+202F)
- das mittlere mathematische Leerzeichen (U+205F)
- das ideographische Leerzeichen (U+3000)
Muster-Leerraum und sichtbare Darstellung
Für die Softwareentwicklung und besonders für Programmiersprachen definiert Unicode außerdem die Eigenschaft Pattern_White_Space, wörtlich „Muster-Leerraum“. Sie enthält nur 11 Zeichen: U+0009 bis U+000D, U+0020, U+0085, U+200E, U+200F, U+2028 und U+2029. Geschützte und sprachspezifische Leerzeichen fehlen dabei insbesondere.
Diese Unicode-Aufzählung ist lediglich eine Empfehlung. Entwickler einer Programmiersprache können die Definition verändern; empfohlen wird jedoch, den Unicode-Standard als Grundlage für eine abweichende Festlegung zu verwenden.
Wenn die Anwesenheit eines oder mehrerer aufeinanderfolgender Leerzeichen ausdrücklich sichtbar gemacht werden soll, kann das Leerzeichensymbol ␣ als Platzhalter dienen. Unicode definiert dafür U+2423 mit der Bezeichnung „Open box“ beziehungsweise „offener Kasten“. In HTML5 und XML ist dafür die Entität ␣ festgelegt.