Whitespace -Charakter

Im Computerprogrammierung, Whitespace ist jeder Charakter oder eine Reihe von Zeichen, die horizontal oder vertikal darstellen Platz in Typografie. Bei der Renderung entspricht ein Whitespace -Charakter nicht einer sichtbaren Marke, sondern belegt normalerweise einen Bereich auf einer Seite. Zum Beispiel das gemeinsame Whitespace -Symbol U+0020   PLATZ (Auch ASCII 32) repräsentiert a Leerstelle Interpunktionscharakter im Text, verwendet als Wortteiler in westlichen Skripte.

Überblick

Relative Breiten verschiedener Räume in Unicode

Bei vielen Tastaturlayouts kann ein Whitespace -Charakter durch Drücken eingegeben werden Raummarkte. Horizontales Whitespace kann auch auf vielen Tastaturen mit dem eingegeben werden Tab ↹ Schlüssel, obwohl die Länge des Raums variieren kann. Vertikale Weißespace kann durch Eingabe eingegeben werden ↵ Geben Sie ein, was in den meisten Programmen eine Codesequenz "Newline" erstellt. Auf älteren Tastaturen kann dieser Schlüssel stattdessen beschriftet werden Zurückkehren, ein Übertrag der Kutschtasten der Schreibmaschinen -Tastaturen, die eine elektromechanische Rückkehr zum linken Stopp erzeugte (Unicode -Zeichen U+000D) und eine Bewegung zur nächsten Zeile (U+000A). Viele frühe Computerspiele verwendeten Whitespace -Zeichen, um einen Bildschirm zu zeichnen (z. Königreich von Kroz) und Textverarbeitungssoftware verwendete sie, um gedruckte Effekte wie mutig, zu unterstreichen und Streifen.

Der Begriff "Whitespace" basiert auf dem Erscheinungsbild der Zeichen auf gewöhnlich Papier. In einer Anwendung können jedoch Whitespace -Zeichen auf die gleiche Weise verarbeitet werden, wie jeder andere Charaktercode und verschiedene Programme ihre eigene Semantik für die Charaktere definieren können.

Unicode

In der folgenden Tabelle werden die fünfundzwanzig Zeichen aufgeführt, die als Whitespace ("Wspace = y", "WS") definiert sind Unicode Charakterdatenbank.[1] Siebzehn verwenden eine Definition von Whitespace, die mit dem Algorithmus übereinstimmt Bidirektionales Schreiben ("Bidirektionaler Zeichenstyp = WS") und sind als "Bidi-WS" -Scharaktere bekannt. Die verbleibenden Zeichen können auch verwendet werden, sind jedoch nicht von diesem "Bidi" -Typ.

HINWEIS: Abhängig vom Browser und den Schriftarten, mit denen die folgende Tabelle angezeigt wird, können nicht alle Räume ordnungsgemäß angezeigt werden.

Name Codepunkt Breitenbox Kann brechen? Im
Idn?
Skript Block Allgemein
Kategorie
Anmerkungen
Charakter Tabelle U+0009 9 Ja Nein Verbreitet Grundlatein Sonstiges,
Kontrolle
HT, Horizontale Registerkarte. HTML/XML genannte Entität: 	, Latex: '\ tab', c Escape: '\ T'
Zeilenvorschub U+000A 10 Ist ein Zeilenaufbruch Verbreitet Grundlatein Sonstiges,
Kontrolle
Lf, Zeilenvorschub. HTML/XML namens Entity: &Neue Zeile;, C Escape: '\ n'
Zeilentabelle U+000B 11 Ist ein Zeilenaufbruch Verbreitet Grundlatein Sonstiges,
Kontrolle
VT, Vertikale Registerkarte. C Escape: '\ V'
Formfutter U+000C 12 Ist ein Zeilenaufbruch Verbreitet Grundlatein Sonstiges,
Kontrolle
Ff, Formfutter. C Escape: '\ f'
Kutschenrückkehr U+000D 13 Ist ein Zeilenaufbruch Verbreitet Grundlatein Sonstiges,
Kontrolle
CR, CR, Kutschenrückkehr. C Escape: '\ r'
Platz U+0020 32 Ja Nein Verbreitet Grundlatein Separator,
Platz
Am häufigsten (normaler ASCII -Raum)
nächste Zeile U+0085 133 Ist ein Zeilenaufbruch Verbreitet Latein-1
Ergänzung
Sonstiges,
Kontrolle
Nel, Nächste Zeile
No-Break-Raum U+00A0 160   Nein Nein Verbreitet Latein-1
Ergänzung
Separator,
Platz
Nicht bahnbrechender Raum: identisch mit U+0020, aber kein Punkt, an dem eine Linie gebrochen werden kann. HTML/XML namens Entity:  , & Nonbreakingspace; Latex: '\'
Ogham Space Mark U+1680 5760 Ja Nein Ogham Ogham Separator,
Platz
Benutzt für Interword -Trennung in Ogham Text. Normalerweise eine vertikale Linie im vertikalen Text oder eine horizontale Linie im horizontalen Text, kann aber auch ein leerer Raum in "stammlosen" Schriftarten sein. Benötigt eine Ogham -Schriftart.
en quad U+2000 8192   Ja Nein Verbreitet Allgemein
Interpunktion
Separator,
Platz
Breite eines en. U+2002 entspricht kanonisch diesem Charakter; U+2002 wird bevorzugt.
Em Quad U+2001 8193 Ja Nein Verbreitet Allgemein
Interpunktion
Separator,
Platz
Auch als "Mutton Quad" bekannt. Breite eines em. U+2003 entspricht kanonisch diesem Charakter; U+2003 wird bevorzugt.
en Raum U+2002 8194 Ja Nein Verbreitet Allgemein
Interpunktion
Separator,
Platz
Auch als "Nuss" bekannt. Breite eines en. U+2000 EN Quad entspricht kanonisch zu diesem Charakter; U+2002 wird bevorzugt. HTML/XML namens Entity: , Latex: '\ Enspace'
EM Raum U+2003 8195 Ja Nein Verbreitet Allgemein
Interpunktion
Separator,
Platz
Auch als "Hammelmut" bekannt. Breite eines em. U+2001 Em Quad entspricht kanonisch zu diesem Charakter; U+2003 wird bevorzugt. HTML/XML namens Entity: , Latex: '\ Quad'
Drei-pro-EM-Raum U+2004 8196 Ja Nein Verbreitet Allgemein
Interpunktion
Separator,
Platz
Auch als "dicker Raum" bekannt. Ein Drittel eines EM breit. HTML/XML namens Entity: & emsp13;
Vier-pro-EM-Raum U+2005 8197 Ja Nein Verbreitet Allgemein
Interpunktion
Separator,
Platz
Auch als "Mid Space" bekannt. Ein Viertel eines EM breit. HTML/XML namens Entity: & emsp14;
Sechs-per-E-Raum U+2006 8198 Ja Nein Verbreitet Allgemein
Interpunktion
Separator,
Platz
Ein Sechstel eines EM breit. In der Computertypographie, manchmal mit U+2009 gleichgesetzt.
Figurenraum U+2007 8199 Nein Nein Verbreitet Allgemein
Interpunktion
Separator,
Platz
Figurenraum. In Schriftarten mit Monospaced -Ziffern, gleich der Breite einer Ziffer. HTML/XML namens Entity: & numsp;
Interpunktionsraum U+2008 8200 Ja Nein Verbreitet Allgemein
Interpunktion
Separator,
Platz
So breit wie die schmale Interpunktion in einer Schriftart, d. H. Die Vorausbreite des Zeitraums oder des Kommas.[2] HTML/XML namens Entity: & puncsp;
dünner Raum U+2009 8201 Ja Nein Verbreitet Allgemein
Interpunktion
Separator,
Platz
Dünner Raum; Ein Fünftel (manchmal ein Sechstel) eines EM breit. Empfohlen für die Verwendung als Tausendertrennzeichen für Maßnahmen mit SI-Einheiten. Im Gegensatz zu U+2002 bis U+2008 kann die Breite beim Typensatz angepasst werden.[3] HTML/XML namens Entity: , & Thinspace, Latex: '\,'
Haarraum U+200a 8202 Ja Nein Verbreitet Allgemein
Interpunktion
Separator,
Platz
Dünner als ein dünner Raum. HTML/XML namens Entity: & hairsp; & Sehr (funktioniert nicht in allen Browsern)
Zeilenabscheider U+2028 8232 Ist ein Zeilenaufbruch Verbreitet Allgemein
Interpunktion
Separator,
Linie
Absatzabscheider U+2029 8233 Ist ein Zeilenaufbruch Verbreitet Allgemein
Interpunktion
Separator,
Absatz
enger Raum ohne Break U+202f 8239 Nein Nein Verbreitet Allgemein
Interpunktion
Separator,
Platz
Enger Raum ohne Break. Ähnlich in der Funktion wie U+00A0 No-Break-Raum. Bei der Verwendung mit mongolisch ist die Breite normalerweise ein Drittel des normalen Raums; In einem anderen Kontext ähnelt seine Breite manchmal der der der Dünner Raum (U+2009).
mittlerer mathematischer Raum U+205f 8287 Ja Nein Verbreitet Allgemein
Interpunktion
Separator,
Platz
MMSP. Verwendet in mathematischen Formeln. Vierhaut eines EMs.[4] In der mathematischen Typografie werden die Räumenbreiten normalerweise in integralen Vielfachen eines achtzehnten EM angegeben, und 4/18 EM können in mehreren Situationen verwendet werden, beispielsweise zwischen dem a und die + und zwischen dem + und die b im Ausdruck a+b.[5] HTML/XML namens Entity: & Mittelpreis;
ideografischer Raum U+3000 12288   Ja Nein Verbreitet CJK -Symbole
und
Interpunktion
Separator,
Platz
So breit wie CJK Charakterzelle (Gesamtbreite). Zum Beispiel in verwendet in Tai tou.
Name Codepunkt Breitenbox Kann brechen? Im
Idn?
Skript Block Allgemein
Kategorie
Anmerkungen
mongolischer Vokalabscheider U+180e 6158 Ja Nein mongolisch mongolisch Sonstiges,
Format
MVS. Ein schmaler Weltraumcharakter, der auf mongolisch verwendet wird, um die letzten beiden Zeichen eines Wortes unterschiedliche Formen anzunehmen.[6] Es wird in Unicode 6.3.0 nicht mehr als Weltraumcharakter (d. H. In ZS -Kategorie) klassifiziert, obwohl es in früheren Versionen des Standards war.
Null Breite Platz U+200b 8203 Ja Nein ? Allgemein
Interpunktion
Sonstiges,
Format
ZwSP, Null-Breitenraum. Wird verwendet, um Word -Grenzen für Textverarbeitungssysteme anzuzeigen, wenn Skripte verwendet werden, die keinen expliziten Abstand verwenden. Es ähnelt dem weicher Bindestrich, mit dem Unterschied, dass letzteres verwendet wird, um Silbengrenzen anzuzeigen, und sollte einen sichtbaren Bindestrich anzeigen, wenn die Linie darin bricht. HTML/XML genannte Entität: & ZerowidthSpace;[7][c]
Null Breite Nicht-Joiner U+200c 8204 Ja Kontext abhängig[12] ? Allgemein
Interpunktion
Sonstiges,
Format
Zwnj, Null-Width-Nicht-Joiner. Wenn ein Zwnj zwischen zwei Zeichen platziert wird, die ansonsten miteinander verbunden würden, werden sie in ihren endgültigen bzw. anfänglichen Formen gedruckt. HTML/XML namens Entity:
Null -Breiten -Tischler U+200d 8205 Ja Kontext abhängig[13] ? Allgemein
Interpunktion
Sonstiges,
Format
Zwj, Null-Breiten-Tischler. Wenn ein ZwJ zwischen zwei Zeichen platziert wird, die sonst nicht verbunden würden, werden sie in ihren verbundenen Formen gedruckt. Kann auch verwendet werden, um Verbindungsformen isoliert anzuzeigen. Je nachdem, ob eine Ligatur oder eine Konjunktion standardmäßig erwartet wird, kann entweder (als in Emoji und in singhala) oder unterdrücken (wie in Devanagari) Substitution durch eine einzelne Glyphe, während sie dennoch die Verwendung einzelner Verbindungsformen (im Gegensatz zu ZWNJ) ermöglichen. HTML/XML namens Entity:
Wort Joiner U+2060 8288 Nein Nein ? Allgemein
Interpunktion
Sonstiges,
Format
W J, Wort Joiner. Ähnlich wie U+200b, aber kein Punkt, an dem eine Linie gebrochen werden kann. HTML/XML namens Entity: &Keine Pause;
Null Breite nicht bahnbrechender Raum U+feff 65279  Nein Nein ? Arabisch
Präsentation
Formen-b
Sonstiges,
Format
Null-Breiten-nicht-bahnbrechender Raum. In erster Linie als Byte -Bestellmarke. Die Verwendung als Hinweis auf Nichtbrechung wird als Unicode 3.2 veraltet; Sehen Sie stattdessen U+2060.
  1. ^ White_space ist eine binäre Unicode -Eigenschaft.[14]
  2. ^ "Unicode 14.0 UCD: propList.txt". 2021-08-12. Abgerufen 2021-09-15.
  3. ^ Obwohl & ZerowidthSpace; ist ein HTML5 -namentlicher Entität für U+200b, die zusätzlichen Namen Negativemediumspace, Negativethickspace, Negativethinspace und Negativverspätung (die Namen sind in der verwendeten Wolfram Sprache für negative Räume, die es dem ordnungsgemäß Privatnutzungsbereich)[8][9][10][11] sind auch definiert von HTML5 als Aliase für U+200b (z. & Negativemediumspace;).[7]

Ersatzbilder

Unicode bietet auch einige sichtbare Zeichen, mit denen verschiedene Whitespace -Zeichen in Kontexten dargestellt werden können, in denen ein sichtbares Symbol angezeigt werden muss:

Unicode-Raum-Illustrating-Charaktere (sichtbar)
Code Dezimal Name Block Anzeige Beschreibung
U+00B7 183 Mittelpunkt Latein-1-Ergänzung · Interpunkt
Genannte Entität: ·
U+21A1 8609 Nach unten zwei Köpfe Pfeil Pfeile Ecma-17 / ISO 2047 Symbol für Formfutter (Seitenunterbrechung)[15]
U+2261 8810 Identisch mit Mathematisch
Betreiber
Unter anderem ist das ECMA-17 / ISO 2047-Symbol für Linienfutter[15]
U+237d 9085 Schulter -Open Box Verschiedenes technisches Verwendet, um a anzuzeigen NBSP
U+23ce 9166 Rückgabesymbol Verschiedenes technisches Symbol für a Eingabetaste, was in eine Linienpause eintritt
U+2409 9225 Symbol für die horizontale Tabelle Kontrollbilder Ersatz für einen Registerkartenzeichen
U+240a 9226 Symbol für Linienfutter Kontrollbilder Ersatz für eine Linienfutter
U+240b 9227 Symbol für die vertikale Tabelle Kontrollbilder Ersetzte eine vertikale Registerkarte (Registerkarte "Zeile)
U+240c 9228 Symbol für Formfutter Kontrollbilder Ersatz für einen Formfutter (Seitenunterbrechung)
U+240d 9229 Symbol für die Kutschenrendite Kontrollbilder Ersatz für eine Beförderungsrendite
U+2420 9248 Symbol für den Raum Kontrollbilder Ersatz für einen ASCII -Raum
U+2422 9250 Leeres Symbol Kontrollbilder AKA "Ersatz leer",[16] benutzt in BCDIC,[16] Ebcdic,[16] ASCII-1963[16][17] usw. als Symbol für die Wortabscheider
U+2423 9251 Offene Box Kontrollbilder Benutzt in Blockbuchstaben Handschrift mindestens seit den 1980er Jahren, wenn es notwendig ist, die Anzahl der Raumzeichen explizit anzugeben (z. B. beim Programmieren mit Stift und Papier). Wird in einem Lehrbuch (veröffentlicht 1982, 1984, 1985, 1988 von Springer-Verlag) auf Modula-2,[18] Eine Programmiersprache, bei der Raumcodes explizite Indikation erfordern. Auch in der Tastatur verwendet[n 1] des Texas Instruments 'Ti-8x Serie von Grafikrechner.
Genannte Entität: &leer;
U+2424 9252 Symbol für Newline Kontrollbilder Ersatz für eine Linienpause
U+25b3 9651 Weißes Dreieck Geometrische Formen Unter anderem ist das Symbol ECMA-17 / ISO 2047 für den ASCII-Raum[15]
U+2A5B 10843 Logisch oder mit mittlerem Stiel Ergänzend
Mathematisch
Betreiber
Unter anderem ist das Symbol für vertikale Registerkarte ECMA-17 / ISO 2047 (Registerkarte "Zeile)[15]
U+2aaa 10922 Kleiner als Ergänzend
Mathematisch
Betreiber
Unter anderem ist das ECMA-17 / ISO 2047-Symbol für die Kutschenrendite[15]
U+2aab 10923 Größer als Ergänzend
Mathematisch
Betreiber
Unter anderem ist das Symbol für ECMA-17 / ISO 2047 für das Registerkartenzeichen[15]
U+3037 12343 Ideografische Telegraphenlinie -Feed
Separatorsymbol
CJK -Symbole
und Zeichensetzung
Grafik verwendet für Code 9999 in Chinesischer Telegraphencodedarstellen einen Linien -Feed
  1. ^ Über der Null "0" oder negativ "( -)" Schlüssel.
Genauer Raum
  • Das Cambridge Z88 Bereitstellung eines speziellen "exakten Raums" (Codepunkt 160 AKA 0xa0) (durch wichtige Verknüpfung aufgerufen +PLATZ[19]), angezeigt als "..." vom Display -Treiber des Betriebssystems.[20][21] Es war daher auch als "Punktraum" in Verbindung mit BBC Basic.[20][21]
  • Unter dem Codepunkt 224 (0xe0) stellte der Computer auch ein spezielles Drei-Charakter-Zell-Breite-Raum-Symbol zur Verfügung "SPC" (Analog zu einem einzelzellweiten U+2420 von Unicode).[20][21]

Nicht-Raum-Leerzeichen

  • Das Braille -Muster Unicode -Block enthält U+2800 Braille -Muster leer, a Blindenschrift Muster ohne angesprochene Punkte. Einige Schriftarten zeigen das Zeichen als eine feste Blindfläche an. Der Unicode-Standard gibt jedoch ausdrücklich an, dass er nicht als Raum fungiert.[22]
  • Unicode's Berichterstattung über die koreanisches Alphabet Enthält mehrere Codepunkte, die das Fehlen eines schriftlichen Briefes darstellen und daher keine Glyphe anzeigen:
    • Unicode enthält a Hangulfüller Charakter in der Hangul -Kompatibilität Jamo Block ( U+3164 Hangulfüller). Dies wird als Buchstaben eingestuft, aber als leerer Raum angezeigt, wie ein Hangul -Block, der keinen Jamo enthält. Es wird in verwendet KS x 1001 Hangul kombiniert Sequenzen, um sie einzuführen oder das Fehlen eines Buchstabens in einer Position zu bezeichnen, jedoch nicht in Unicode's kombiniertes Jamo -System.[23]
    • Das Kombinieren von Unicode, das Jamo -System kombiniert, verwendet ähnliche Hangul -Auswahlfüller und Hangul Jungseong Füllstofffiguren, um das Fehlen eines Buchstabens in der anfänglichen oder medialen Position in einem Silbenblock zu bezeichnen, der in den enthalten ist Hangul Jamo Block ( U+115f Hangul wählte den Füllstoff aus, U+1160 Hangul Jungseong Füllstoff).[24]
    • Zusätzlich a Halbbreite Hangul Füllstoff ist in der enthalten Halbbreiten- und Vollbreitenformen ( U+ffa0 Halbbreite Hangul Füllstoff), die bei der Zuordnung von Codierungen verwendet wird, die Zeichen aus beiden enthalten Johab (oder Wansung) und N-Byte Hangul (oder es Ebcdic Gegenstück) wie IBM-933, zu dem sowohl Johab- als auch Ebcdic-Füllstoffe gehören.[25][26]

Whitespace und digitale Typografie

Bildschirmanzeige

Textredakteure, Textverarbeitungen, und Desktop Publishing -Software Unterscheiden Sie sich in der Art und Weise, wie sie Whitespace auf dem Bildschirm darstellen und wie sie Räume an den Enden der Linien darstellen, die länger als die Bildschirm- oder Spaltenbreite sind. In einigen Fällen werden Leerzeichen einfach als leerer Raum angezeigt. In anderen Fällen können sie durch eine dargestellt werden Interpunkt oder andere Symbole. Viele verschiedene Zeichen (unten beschrieben) könnten zur Herstellung von Räumen verwendet werden, und Nicht-Charakter-Funktionen (wie Ränder und TAB-Einstellungen) können sich auch auf die Whitespace auswirken.

Variable-Breiten-Allzweckraum

Im Computer Charaktercodierungen, Es gibt einen normalen Allzweckraum (Unicode -Zeichen U+0020), dessen Breite je nach Design der Schrift variiert. Typische Werte reichen von 1/5 em bis 1/3 em (in der digitalen Typografie ein em ist gleich der nominalen Größe der Schriftart, so dass für eine 10-Punkte-Schriftart der Raum wahrscheinlich zwischen 2 und 3,3 Punkten liegen wird. Anspruchsvolle Schriftarten können unterschiedlich große Räume für mutige, kursive und kleine Caps-Gesichter haben, und häufig passt Komponenten die Breite des Raums je nach Größe und Bekanntheit des Textes manuell an.

Zusätzlich zu diesem allgemeinen Raum ist es möglich, einen Raum einer bestimmten Breite zu codieren. Eine vollständige Liste finden Sie in der Tabelle unten.

Haarräume um Striche

Em Striche als Klammern verwendet, und als Klammern und EN -Striche Wenn sie als Word -Tischler verwendet werden, werden normalerweise mit dem Text kontinuierlich eingestellt.[27] Ein solches Armaturenbrett kann jedoch optional von a umgeben sein Haarraum, U+200a, oder dünner Raum, U+2009. Der Haarraum kann in HTML geschrieben werden, indem Sie die verwenden Numerische Charakterreferenzen oder , oder die benannte Entität & hairsp;, wird aber bis 2016 noch nicht allgemein in den Browsern unterstützt.[die?] Das dünner Raum wird als Entität bezeichnet und numerische Referenzen oder . Diese Räume sind viel dünner als ein normaler Raum (außer in a monospatisierte (nicht proportionale) Schriftart), wobei der Haarraum der dünnere der beiden ist.

Normaler Raum gegen Haare und dünne Räume (wie von Ihrem Browser gerendert)
Normaler Raum mit Em Dash links rechts
Dünner Raum mit Em Dash linksRechts
Haarraum mit Em Dash links rechts
Kein Platz mit Em Dash links rechts

Computeranwendungen

Programmiersprachen

Im Programmiersprache Syntax, Räume werden häufig verwendet, um explizit zu trennen Token. In den meisten Sprachen werden mehrere Whitespace -Zeichen genauso behandelt wie ein einzelner Whitespace -Charakter (außerhalb der zitierten Zeichenfolgen); Solche Sprachen werden genannt Freiform. In einigen Sprachen, einschließlich Haskell, occam, ABC, und Python, Whitespace und Einkerbung werden für syntaktische Zwecke verwendet. In der satirischen Sprache genannt WhitespaceWhitespace -Zeichen sind die einzigen gültigen Zeichen für das Programmieren, während andere Zeichen ignoriert werden.

Übermäßiger Gebrauch von Whitespace, besonders Nachfolger weiß Am Ende der Linien gilt als störend. Die korrekte Verwendung von Whitespace kann jedoch den Code leichter zu lesen und gruppenbezogene Logik zu helfen.

Die meisten Sprachen erkennen ASCII -Zeichen nur als Whitespace oder in einigen Fällen auch Unicode -Newlines, aber nicht die meisten der oben aufgeführten Zeichen. Das C Sprache Definiert Whitespace-Zeichen als "Platz, horizontaler Registerkarte, Newline, vertikale Registerkarte und Formfutter".[28] Das Http Das Netzwerkprotokoll erfordert verschiedene Arten von Weißespace, um in verschiedenen Teilen des Protokolls zu verwenden, wie z. Status Linie, CRLF am Ende einer Linie und "lineare Whitespace" in den Header -Werten.[29]

Befehlszeilen Benutzeroberflächen

In Befehlen verarbeitet von BefehlsprozessorenIn den Skripten und eingetippt, kann das Raumzeichen Probleme verursachen, da er zwei mögliche Funktionen hat: als Teil eines Befehls oder Parameters oder als Parameter oder Name Separator. Ambiguität kann entweder durch Verbot von eingebetteten Räumen oder durch Einschließen eines Namens mit eingebetteten Räumen zwischen Zitatzeichen verhindert werden.

Markup -Sprachen

Einige Markup -Sprachen, wie z. SGML, wie geschrieben die Whitespace aufbewahren.

Web -Markup -Sprachen wie z. Xml und Html Behandeln Sie Whitespace -Charaktere speziell, einschließlich Raumfiguren, für die Bequemlichkeit der Programmierer. Ein oder mehrere Space-Zeichen, die durch die Konformen des Display-Zeitprozessoren von diesen gelesen wurden Markup -Sprachen werden je nach semantischem Kontext auf 0 oder 1 Raum zusammengebrochen. Beispielsweise werden doppelte (oder mehr) Leerzeichen innerhalb des Textes an einem einzigen Raum zusammengebrochen, und Räume, die auf beiden Seiten der "erscheinen"="Das trennt einen Attributnamen von seinem Wert, hat keinen Einfluss auf die Interpretation des Dokuments. Element-End-Tags können nachfolgende Räume enthalten, und Leerelement-Tags in XML können Leerzeichen vor dem enthalten."/>". In diesen Sprachen erhöht unnötige Weißespace die Dateigröße und kann daher die Netzwerkübertragung verlangsamen. Andererseits kann unnötiges Whitespace auch unauffällig Code markieren, ähnlich wie jedoch weniger offensichtlich als Kommentare in Code. Dies kann wünschenswert sein, um zu beweisen, zu beweisen. ein Verletzung von Lizenz oder Urheberrecht, das von begangen wurde von Kopieren und Einfügen.

In XML -Attributwerten werden Sequenzen von Whitespace -Zeichen als einzelner Raum behandelt, wenn das Dokument von einem Parser gelesen wird.[30] WhiteSpace in XML -Elementinhalten wird auf diese Weise vom Parser nicht geändert, aber eine Anwendung, die Informationen vom Parser erhält, kann sich entscheiden, ähnliche Regeln für Elementinhalte anzuwenden. Ein XML -Dokumentautor kann die verwenden XML: Space = "Preserve" Attribut auf einem Element, um den Parser zu unterweisen, die nachgeschaltete Anwendung davon abzuhalten, die Whitespace im Inhalt dieses Elements zu ändern.

In den meisten HTML -ElementeEine Abfolge von Whitespace -Zeichen wird als einzeln behandelt Inter-Wort-Separator, was sich als einzelner Raumcharakter manifestieren kann, wenn Text in einer Sprache rendert, die normalerweise einen solchen Raum zwischen Wörtern einfügt.[31] Die konformen HTML -Renderer sind erforderlich, um eine wörtlichere Behandlung von Whitespace innerhalb weniger vorgeschriebener Elemente anzuwenden, wie die Vor Tag und jedes Element, für das CSS wurde verwendet, um sich zu bewerben Vor-ähnliche Whitespace -Verarbeitung. In solchen Elementen werden Weltraumfiguren nicht in Trennzeichen zwischen den Wörtern "zusammengebrochen".

Sowohl in XML als auch in HTML, die Nicht bahnbrechender Raum Der Charakter zusammen mit anderen nicht "Standard" -Räumen wird nicht als zusammenklappbar "Whitespace" behandelt, sodass er nicht den oben genannten Regeln unterliegt.

Dateinamen

Eine solche Verwendung ähnelt den Multi -Wort -Dateinamen, die für Betriebssysteme und Anwendungen geschrieben wurden, die durch eingebettete Speicherplatzcodes verwirrt sind. unterstreichen (_) als Worttrennzeichen, as_in_this_phrase.

Ein anderes solches Symbol war U+2422 Leeres Symbol. Dies wurde in den frühen Jahren der Computerprogrammierung beim Schreiben über Codierungsformulare verwendet. Tastatur Die Betreiber erkannten das Symbol sofort als "expliziten Raum".[16] Es wurde in verwendet BCDIC,[16] Ebcdic,[16] und ASCII-1963.[16]

Siehe auch

Verweise

  1. ^ "Der Unicode -Standard". Unicode -Konsortium.
  2. ^ "Charakterdesignstandards - Space Charaktere". Charakterdesignstandards. Microsoft. 1998–1999. Archiviert von das Original am 23. August 2000. Abgerufen 2009-05-18.
  3. ^ Der Unicode Standard 5.0, Printed Edition, S.205
  4. ^ "Allgemeine Zeichensetzung" (PDF). Der Unicode Standard 5.1. Unicode Inc. 1991–2008. Abgerufen 2009-05-13.
  5. ^ Sargent, Murray III (2006-08-29). "Unicode Fast einfacher Textcodierung der Mathematik (Version 2)". Unicode Technische Note #28. Unicode Inc. S. 19–20. Abgerufen 2009-05-19.
  6. ^ Gillam, Richard (2002). Unicode entmystifiziert: Ein praktischer Programmierhandbuch zum Codierungsstandard. Addison-Wesley. ISBN 0-201-70052-2.
  7. ^ a b Hickson, Ian. "12.5 Namens Charakterreferenzen". HTML Standard. Waswg.
  8. ^ Wolfram. "\ [Negativethickspace]". Wolfram -Sprachdokumentation.
  9. ^ Wolfram. "\ [Negativemediumspace]". Wolfram -Sprachdokumentation.
  10. ^ Wolfram. "\ [Negativethinspace]". Wolfram -Sprachdokumentation.
  11. ^ Wolfram. "\ [Negativverythinspace]". Wolfram -Sprachdokumentation.
  12. ^ Faltstrom, P., ed. (August 2010). "Null Breite Nicht-Joiner". Die Unicode -Codepunkte und internationalisierten Domainnamen für Anwendungen (IDNA). Ietf. Sek. A.1. doi:10.17487/rfc5892. RFC 5892. Abgerufen 4. September, 2019.
  13. ^ Faltstrom, P., ed. (August 2010). "Zero Width Joiner". Die Unicode -Codepunkte und internationalisierten Domainnamen für Anwendungen (IDNA). Ietf. Sek. A.2. doi:10.17487/rfc5892. RFC 5892. Abgerufen 4. September, 2019.
  14. ^ "Unicode Standard Anhang #44, Unicode -Zeichendatenbank".
  15. ^ a b c d e f Europäische Computerherstellervereinigung (1968-11-28). Grafische Darstellung der Kontrollzeichen des 7-Bit-Coded-Zeichens für Informationsaustausch des ECMA-7-Bit-Zeichens (PDF). ECMA-17.
  16. ^ a b c d e f g h Mackenzie, Charles E. (1980). Codierte Zeichensätze, Geschichte und Entwicklung. Die Systems -Programmierreihen (1 ed.). Addison-Wesley Publishing Company, Inc. S. 41, 47, 52, 102–103, 117, 119, 130, 132, 141, 148, 150–151, 212, 424. ISBN 978-0-201-14460-4. Lccn 77-90165. Abgerufen 2016-05-22. [1]
  17. ^ "Amerikanischer Standardcode für Informationsaustausch, ASA X3.4-1963". American Standards Association (ALS EIN). 1963-06-17.
  18. ^ Niklaus Wirth, Programmierung in Modula-2
  19. ^ "Cambridge Z88 Benutzerhandbuch". 4.7 (4. Aufl.). Cambridge Computer Limited. 2016 [1987]. Grundlegende Konzepte - Die Tastatur. Archiviert vom Original am 2016-12-12. Abgerufen 2016-12-12.
  20. ^ a b c "Cambridge Z88 Benutzerhandbuch". 4.0 (4. Aufl.). Cambridge Computer Limited. 1987. Anhang D. Archiviert vom Original am 2016-12-12. Abgerufen 2016-12-12.
  21. ^ a b c "Cambridge Z88 Benutzerhandbuch". 4.7 (4. Aufl.). Cambridge Computer Limited. 2015 [1987]. Anhang D. Archiviert vom Original am 2016-12-12. Abgerufen 2016-12-12.
  22. ^ Unicode -Diagramm U+2800Braille -Muster
  23. ^ Chung, Jaemin (2017-03-30). Vorschlag, u+3164 Hangul Füllstoff einen informativen Hinweis hinzuzufügen (PDF). Unicode -Konsortium. UTC L2/17-081.
  24. ^ Hangul Jamo (PDF). Unicode -Konsortium. 2020-10-25.
  25. ^ "IBM-933_P110-1995". ICU -Demonstration - Konverter -Explorer. Internationale Komponenten für Unicode.
  26. ^ "IBM-933_P110-1995 (Lead-Bytes 0E84)". ICU -Demonstration - Konverter -Explorer. Internationale Komponenten für Unicode.
  27. ^ Die Verwendung der verschiedenen Armaturenbretttypen wird z. B. in dargestellt Das Chicago -Handbuch des Stils§§ 6.80, 6.83–6.86
  28. ^ http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1548.pdf Abschnitt 6.4, Absatz 3
  29. ^ Fielding, R.; et al. (Juni 1999), "2.2 Grundregeln", Hypertext -Transferprotokoll - HTTP/1.1, RFC 2616
  30. ^ "3.3.3 Attributwertnormalisierung". Extensible Markup Language (XML) 1.0 (fünfte Ausgabe). World Wide Web Konsortium.
  31. ^ "9.1 Whitespace". W3CHTML 4.01 -Spezifikation. World Wide Web Konsortium.

Externe Links