Specials (Unicode block)

Specials
Bereich U+fff0..u+ffff
(16 Codepunkte)
Ebene Bmp
Skripte Verbreitet
Zugewiesen 5 Codepunkte
Ungebraucht 9 reservierte Codepunkte
2 Nicht-Charakter
Unicode -Versionsgeschichte
1.0.0 (1991) 1 (+1)
2.1 (1998) 2 (+1)
3.0 (1999) 5 (+3)
Diagramm
Codediagramm
Notiz: [1][2]

Specials ist kurz Unicode Zeichenblock Grundlegende mehrsprachige Ebene, bei u+fff0 - FFF. Von diesen 16 Codepunkten wurden seit Unicode 3.0 fünf zugewiesen:

  • U+fff9 Interlinearer Annotationsanker, Markierungen beginnen von Annotierter Text
  • U+FFFA Interlinearer Annotationsabscheider, Markierungen Beginn der Annotierungen für Charaktere (en)
  • U+fffb Interlinearer Annotationsterminator, Markierende Ende des Annotationsblocks
  • U+fffc Objektersatzcharakter, Platzhalter im Text für ein anderes nicht spezifiziertes Objekt, zum Beispiel in a zusammengesetzte Dokument.
  • U+fffd Ersatzcharakter Wird verwendet, um einen unbekannten, unerkannten oder nicht erkennbaren Charakter zu ersetzen
  • U+fffe kein Charakter.
  • U+ffff kein Charakter.

FFFE und FFFF sind im üblichen Sinne nicht nicht zugewiesen, aber garantiert garantiert überhaupt keine Unicode -Zeichen. Sie können verwendet werden, um das Codierungsschema eines Textes zu erraten, da jeder Text, der diesen enthält, per Definition kein korrekt codierter Unicode -Text ist. Unicode U+feff Byte -Bestellmarke Das Zeichen kann am Anfang eines Unicode -Textes eingefügt werden, um es zu signalisieren Endiangess: Ein Programm, das einen solchen Text liest und auf 0xfffe begegnet wird, würde dann wissen, dass es die Byte -Reihenfolge für alle folgenden Zeichen wechseln sollte.

Sein Blockname in Unicode 1.0 war Speziell.[3]

Ersatzcharakter

Ersatzcharakter

Das Ersatzcharakter � (oft als Schwarz angezeigt Rhombus mit einem weißen Fragezeichen) ist ein Symbol in der Unicode Standard am Codepunkt U+FFFD in der Specials Tisch. Es wird verwendet, um Probleme anzuzeigen, wenn ein System keinen Datenstrom in ein korrektes Symbol rendern kann.[4] Es wird normalerweise gesehen, wenn die Daten ungültig sind und kein Zeichen entsprechen:

Betrachten Sie eine Textdatei mit dem deutschen Wort für (bedeutet 'für') in der ISO-8859-1 Codierung (0x66 0xfc 0x72). Diese Datei wird jetzt mit einem Texteditor geöffnet, der davon ausgeht, dass die Eingabe ist UTF-8. Das erste und letzte Byte sind gültige UTF-8-Codierungen von ASCII, aber das mittlere Byte (0xfc) ist kein gültiges Byte in UTF-8. Daher könnte ein Texteditor dieses Byte durch das Ersatzzeichensymbol ersetzen, um eine gültige Unicode -Zeichenfolge zu erstellen Codepunkte. Die gesamte Zeichenfolge zeigt jetzt wie folgt an: "F�r".

Ein schlecht implementierter Texteditor kann den Ersatz in UTF-8-Formular speichern. Die Textdateidaten sehen dann wie folgt aus: 0x66 0xef 0xbf 0xbd 0x72, die in ISO-8859-1 als "feck" angezeigt wird (dies heißt Mojibake). Da der Ersatz für alle Fehler gleich ist, ist es unmöglich, das ursprüngliche Zeichen wiederherzustellen. Ein besseres (aber schwerer zu implementierender) Design besteht darin, die ursprünglichen Bytes einschließlich des Fehlers zu bewahren und nur zum Ersatz umzuwandeln, wenn Anzeige der Text. Auf diese Weise kann der Texteditor die ursprüngliche Byte -Sequenz speichern und gleichzeitig den Fehleranzeigen für den Benutzer angezeigt.

Zu einer Zeit wurde das Ersatzcharakter häufig verwendet, wenn in einer Schriftart für diesen Charakter keine Glyphe erhältlich war. Die meisten modernen Text -Rendering -Systeme verwenden stattdessen stattdessen eine Schriftart .notdef Charakter, der in den meisten Fällen eine leere Box (oder "?" oder "X" in einer Box ist[5]), manchmal als "genannt"Tofu"(Dieser Browser zeigt an). Es gibt keinen Unicode -Codepunkt für dieses Symbol.

Somit ist das Ersatzcharakter nun nur für Codierungsfehler zu sehen, wie z. B. ungültiges UTF-8. Einige Software-Versuche, dies zu verbergen, indem die Bytes von ungültigem UTF-8 in die passenden Zeichen in übersetzt werden Windows-1252 (Da dies die wahrscheinlichste Quelle dieser Fehler ist), so dass der Ersatzcharakter nie gesehen wird.

Unicode -Diagramm

Specials[1][2][3]
Offizielles Unicode -Konsortium -Code -Diagramm (PDF)
  0 1 2 3 4 5 6 7 8 9 A B C D E F
U+fffx Iaa IAS Iat
Anmerkungen
1. ^ Ab der Unicode Version 14.0
2. ^ Graubereiche geben nicht zugewiesene Codepunkte an
3. ^ Schwarze Bereiche geben an Nichtcharakterien (Codepunkte, die garantiert niemals als codierte Zeichen im Unicode -Standard zugewiesen werden.)

Geschichte

In den folgenden Unicode-bezogenen Dokumenten werden den Zweck und der Prozess der Definition bestimmter Zeichen im Specials-Block aufgezeichnet:

Ausführung Endgültige Codepunkte[a] Zählen koordinierte WeltzeitICH WÜRDE L2ICH WÜRDE Wg2ICH WÜRDE Dokumentieren
1.0.0 U+fffd 1 (bestimmt werden)
U+fffe..ffff 2 (bestimmt werden)
L2/01-295R Moore, Lisa (2001-11-06), "Motion 88-m2", Minuten vom UTC/L2 -Meeting #88 entfernt
L2/01-355 N2369 (HTML, Dokument) Davis, Mark (2001-09-26), Anfrage, FFFF, FFFE in UTF-8 im Text von ISO/IEC 10646 zuzulassen
L2/02-154 N2403 Umamaheswaran, V. S. (2002-04-22), "9.3 erlaubt FFFF und FFFE in UTF-8", Entwurfsprotokoll von WG 2 Meeting 41, Hotel Phoenix, Singapur, 2001-10-15/192
2.1 U+fffc 1 UTC/1995-056 Sargent, Murray (1995-12-06), Empfehlung zur Codierung eines wch_embedding -Zeichens
UTC/1996-002 Aliprand, Joan; Hart, Edwin; Greenfield, Steve (1996-03-05), "eingebettete Objekte", UTC #67 Minuten
N1365 Sargent, Murray (1996-03-18), Vorschlag Zusammenfassung - Objektersatzcharakter
N1353 Umamaheswaran, V. S.; Ksar, Mike (1996-06-25), "8.14", Entwurfsprotokoll des WG2 -Kopenhagen -Treffens Nr. 30
L2/97-288 N1603 Umamaheswaran, V. S. (1997-10-24), "7.3", Unbestätigte Sitzungsprotokoll, WG 2 Meeting # 33, Heraklion, Kreta, Griechenland, 20. Juni - 4. Juli 1997
L2/98-004r N1681 Text von ISO 10646 - AMD 18 für PDAM -Registrierung und FPDAM -Stimmzettel, 1997-12-22
L2/98-070 Aliprand, Joan; Winkler, Arnold, "Zusätzliche Kommentare zu 2.1", Protokoll des gemeinsamen UTC- und L2-Treffens des Treffens in Cupertino vom 25. bis 27. Februar 1998
L2/98-318 N1894 Überarbeiteter Text von 10646-1/fpdam 18, Änderung 18: Symbole und andere, 1998-10-22
3.0 U+fff9..FFFB 3 L2/97-255R Aliprand, Joan (1997-12-03), "3.D Vorschlag für Inline-Notation (Ruby)", Genehmigter Protokoll-UTC #73 & L2 #170 Joint Meeting, Palo Alto, CA-4. bis 5. August 1997
L2/98-055 Freytag, Asmus (1998-02-22), Unterstützung für die Implementierung von Inline- und Interlinearen Anmerkungen
L2/98-070 Aliprand, Joan; Winkler, Arnold, "3.C.5. Unterstützung für die Implementierung von Inline- und Interlinearen Anmerkungen", Protokoll des gemeinsamen UTC- und L2-Treffens des Treffens in Cupertino vom 25. bis 27. Februar 1998
L2/98-099 N1727 Freytag, Asmus (1998-03-18), Unterstützung für die Implementierung interlinearer Anmerkungen wie in der ostasiatischen Typografie verwendet
L2/98-158 Aliprand, Joan; Winkler, Arnold (1998-05-26), "Inline und Interlineare Anmerkungen", Entwurfsprotokoll-UTC #76 & NCITS-Untergruppe L2 #173 Joint Meeting, Tredyffrin, Pennsylvania, 20.-22. April 1998
L2/98-286 N1703 Umamaheswaran, V. S.; Ksar, Mike (1998-07-02), "8.14", Unbestätigte Sitzungsprotokoll, WG 2 Meeting #34, Redmond, WA, USA; 1998-03-16--20
L2/98-270 Hiura, Hideki; Kobayashi, Tatsuo (1998-07-29), Vorschlag zum Inline- und Interlinearen Annotationsvorschlag
L2/98-281R (PDF, html) Aliprand, Joan (1998-07-31), "Inline- und Interlineare Annotation (III.C.1.C)", " Unbestätigte Protokolle-UTC # 77 & NCITS-Untergruppe L2 # 174 Joint Meeting, Redmond, WA-29.-31. Juli 1998
L2/98-363 N1861 Sato, T. K. (1998-09-01), Rubinmarkierungen
L2/98-372 N1884R2 (PDF, Dokument) Whistler, Ken; et al. (1998-09-22), Zusätzliche Zeichen für die UCS
L2/98-416 N1882.zip Unterstützung für die Implementierung interlinearer Anmerkungen, 1998-09-23
L2/98-329 N1920 Kombinierte PDAM-Registrierung und Prüfungsstimmung auf WD für ISO/IEC 10646-1/AMD. 30, Änderung 30: Zusätzliche lateinische und andere Charaktere, 1998-10-28
L2/98-421R Suignard, Michel; Hiura, Hideki (1998-12-04), Anmerkungen zu den PDAM 30 Interlinearen Annotationsfiguren
L2/99-010 N1903 (PDF, html, Dokument) Umamaheswaran, V. S. (1998-12-30), "8.2.15", Protokoll von WG 2 Meeting 35, London, Großbritannien; 1998-09-21-25
L2/98-419 (PDF, Dokument) Aliprand, Joan (1999-02-05), "Interlineare Annotation Charaktere", Genehmigtes Protokoll-UTC # 78 & NCITS-Untergruppe L2 # 175 Joint Meeting, San Jose, CA-1. Dezember 1998
UTC/1999-021 Duerst, Martin; Bosak, Jon (1999-06-08), W3C XML CG -Anweisung zu Annotationzeichen
L2/99-176R Moore, Lisa (1999-11-04), "W3C Liaison Statement zu Annotation Charakteren", Minuten vom gemeinsamen UTC/L2-Treffen in Seattle vom 8. bis 10. Juni 1999 entfernt
L2/01-301 Whistler, Ken (2001-08-01), "E. Analyse der Charakterabwertung im Unicode -Standard
  1. ^ Vorgeschlagene Codepunkte und Zeichennamen können sich von den endgültigen Codepunkten und Namen unterscheiden

Siehe auch

Verweise

  1. ^ "Unicode -Zeichendatenbank". Der Unicode -Standard. Archiviert vom Original am 2017-09-25. Abgerufen 2016-07-09.
  2. ^ "Aufzählte Versionen des Unicode -Standards". Der Unicode -Standard. Archiviert vom Original am 2016-06-29. Abgerufen 2016-07-09.
  3. ^ "3.8: Block-by-Block-Diagramme" (PDF). Der Unicode -Standard.Version 1.0. Unicode -Konsortium. Archiviert (PDF) vom Original am 2021-02-11. Abgerufen 2020-09-30.
  4. ^ Wichary, Marcin. "Wenn Schriftarten fallen". Figma. Archiviert vom Original am 13. Juni 2021. Abgerufen 6. Juni 2021.
  5. ^ "Empfehlungen für OpenType -Schriftarten (OpenType 1.7) - Typografie". docs.microsoft.com. Archiviert Aus dem Original am 19. Oktober 2020. Abgerufen 18. Oktober 2020.