Specialerbjudanden (Unicode-block)

Specialerbjudanden
Räckvidd
U+FFF0..U+FFFF (16 kodpunkter)
Plan BMP
Manus Allmänning
Tilldelad 5 kodpunkter
Oanvänd
9 reserverade kodpunkter 2 icke-tecken
Unicode versionshistorik
1.0.0 (1991) 1 (+1)
2.1 (1998) 2 (+1)
3,0 (1999) 5 (+3)
Diagramkod
diagram
Obs :

Specials är ett kort Unicode- block med tecken som allokeras i slutet av Basic Multilingual Plane , vid U+FFF0–FFFF. Av dessa 16 kodpunkter har fem tilldelats sedan Unicode 3.0:

  • U+FFF9 INTERLINEAR ANNOTERINGSANKER , markerar början av kommenterad text
  • U+FFFA INTERLINEAR ANNOTERINGSSEPARATOR , markerar början på annoterande tecken(er)
  • U+FFFB INTERLINEAR ANNOTATION TERMINATOR , markerar slutet på anteckningsblocket
  • U+FFFC OBJECT REPLACEMENT CHARACTER , platshållare i texten för ett annat ospecificerat objekt, till exempel i ett sammansatt dokument .
  • REPLACEMENT CHARACTER U+FFFD <a i=2>� ERSÄTTNINGSTECKER används för att ersätta en okänd, okänd eller icke-representerbar karaktär
  • U+FFFE <icke-tecken-FFFE> inte ett tecken.
  • U+FFFF <icke-tecken-FFFF> inte ett tecken.

FFFE och FFFF är inte otilldelade i vanlig mening, men är garanterat inte Unicode-tecken alls . De kan användas för att gissa en texts kodningsschema, eftersom all text som innehåller dessa per definition inte är en korrekt kodad Unicode-text. Unicodes U+FEFF BYTE ORDER MARK- tecken kan infogas i början av en Unicode-text för att signalera dess endianitet : ett program som läser en sådan text och stöter på 0xFFFE skulle då veta att det borde byta byteordning för alla följande tecken.

Dess blocknamn i Unicode 1.0 var Special .

Ersättningskaraktär

Ersättningskaraktär

Ersättningstecknet � (visas ofta som en svart romb med ett vitt frågetecken) är en symbol som finns i Unicode- standarden vid kodpunkten U+FFFD i Specials -tabellen. Den används för att indikera problem när ett system inte kan rendera en dataström till en korrekt symbol. Det ses vanligtvis när data är ogiltig och inte matchar något tecken:

Tänk på en textfil som innehåller det tyska ordet für (som betyder 'för') kodad i ISO-8859-1 ( 0x66 0xFC 0x72 ). Den här filen öppnas nu med en textredigerare som antar att indata är UTF-8 . Den första och sista byten är giltiga UTF-8-kodningar av ASCII, men den mellersta byten ( 0xFC ) är ett fel i UTF-8. En textredigerare skulle kunna ersätta denna byte med ersättningsteckensymbolen för att skapa en giltig sträng av Unicode- kodpunkter för visning, så att användaren ser "f�r".

En dåligt implementerad textredigerare kan spara ersättningstecknet när du skriver ut filen igen; filen blir 0x66 0xEF 0xBF 0xBD 0x72 . Om filen sedan öppnas igen med ISO-8859-1, visar den "f�r" (detta kallas mojibake ). Eftersom ersättningen är densamma för alla fel är det omöjligt att återställa det ursprungliga tecknet. En design som är svårare att implementera är att bevara de ursprungliga byten, inklusive felet, och endast konvertera till ersättningen vid visning texten. Detta gör att textredigeraren kan spara den ursprungliga bytesekvensen, samtidigt som felindikatorn visas för användaren.

En gång användes ofta ersättningstecknet när det inte fanns någon glyf tillgänglig i ett teckensnitt för det tecknet. Men de flesta moderna textrenderingssystem använder istället ett teckensnitts .notdef -tecken, som i de flesta fall är en tom ruta (eller "?" eller "X" i en ruta), ibland kallad " tofu " (denna webbläsare visar �). Det finns ingen Unicode-kodpunkt för denna symbol.

Således är ersättningstecknet nu endast att se för kodningsfel, såsom ogiltig UTF-8. Vissa program försöker dölja detta genom att översätta byten av ogiltiga UTF-8 till matchande tecken i Windows-1252 (eftersom det är den mest troliga källan till dessa fel), så att ersättningstecknet aldrig syns.

Unicode-diagram


Specialerbjudanden Officiellt koddiagram för Unicode Consortium (PDF)
  0 1 2 3 4 5 6 7 8 9 A B C D E F
U+FFFx IAA IAS JAG PÅ
Noteringar
1. ^ Från och med Unicode version 15.0
2. ^ Grå områden indikerar icke-tilldelade kodpunkter
3. ^ Svarta områden indikerar icke-tecken (kodpunkter som garanterat aldrig kommer att tilldelas som kodade tecken i Unicode-standarden)

Historia

Följande Unicode-relaterade dokument registrerar syftet och processen för att definiera specifika tecken i Specials-blocket:

Version Slutliga kodpunkter Räkna UTC -ID L2 ID WG2 ID Dokumentera
1.0.0 U+FFFD 1 (att vara bestämd)
U+FFFE..FFFF 2 (att vara bestämd)
L2/01-295R Moore, Lisa (2001-11-06), "Motion 88-M2", protokoll från UTC/L2 möte #88
L2/01-355 N2369 (html , doc ) Davis, Mark (2001-09-26), Begäran om att tillåta FFFF, FFFE i UTF-8 i texten till ISO/IEC 10646
L2/02-154 N2403 Umamaheswaran, VS (2002-04-22), "9.3 Tillåter FFFF och FFFE i UTF-8", Utkast till protokoll från WG 2 möte 41, Hotel Phoenix, Singapore, 2001-10-15/19
2.1 U+FFFC 1 UTC/1995-056 Sargent, Murray (1995-12-06), rekommendation att koda ett WCH_EMBEDDING-tecken
UTC/1996-002 Aliprand, Joan; Hart, Edwin; Greenfield, Steve (1996-03-05), "Embedded Objects", UTC #67 Minutes
N1365 Sargent, Murray (1996-03-18), Sammanfattning av förslaget – Karaktär för objektersättning
N1353 Umamaheswaran, VS; Ksar, Mike (1996-06-25), "8.14", Utkast till protokoll från WG2 Copenhagen Meeting # 30
L2/97-288 N1603 Umamaheswaran, VS (1997-10-24), "7.3", obekräftade mötesprotokoll, WG 2 Meeting #33, Heraklion, Kreta, Grekland, 20 juni – 4 juli 1997
L2/98-004R N1681 Text av ISO 10646 – AMD 18 för PDAM-registrering och FPDAM-valsedel, 1997-12-22
L2/98-070 Aliprand, Joan; Winkler, Arnold, "Ytterligare kommentarer angående 2.1", protokoll från det gemensamma UTC- och L2-mötet från mötet i Cupertino, 25-27 februari 1998
L2/98-318 N1894 Reviderad text av 10646-1/FPDAM 18, ÄNDRINGSFÖRSLAG 18: Symboler och andra , 1998-10-22
3.0 U+FFF9..FFFB 3 L2/97-255R Aliprand, Joan (1997-12-03), "3.D Proposal for In-Line Notation (ruby)", Godkända protokoll – UTC #73 & L2 #170 gemensamt möte, Palo Alto, CA – 4–5 augusti 1997
L2/98-055 Freytag, Asmus (1998-02-22), Stöd för implementering av inline- och interlinjära anteckningar
L2/98-070 Aliprand, Joan; Winkler, Arnold, "3.C.5. Support for implementing inline and interlinear annotations", Protokoll från det gemensamma UTC- och L2-mötet från mötet i Cupertino, 25-27 februari 1998
L2/98-099 N1727 Freytag, Asmus (1998-03-18), Stöd för implementering av interlinjära anteckningar som används i östasiatisk typografi
L2/98-158 Aliprand, Joan; Winkler, Arnold (1998-05-26), "Inline and Interlinear Annotations", Utkast till protokoll – UTC #76 & NCITS Subgroup L2 #173 gemensamt möte, Tredyffrin, Pennsylvania, 20-22 april 1998
L2/98-286 N1703 Umamaheswaran, VS; Ksar, Mike (1998-07-02), "8.14", obekräftat mötesprotokoll, WG 2 möte #34, Redmond, WA, USA; 1998-03-16--20
L2/98-270 Hiura, Hideki; Kobayashi, Tatsuo (1998-07-29), förslag till inline och interlinjär annoteringsförslag
L2/98-281R (pdf , html ) Aliprand, Joan (1998-07-31), "In-Line and Interlinear Annotation (III.C.1.c)", obekräftade protokoll – UTC #77 & NCITS Subgroup L2 # 174 JOINT MEETING, Redmond, WA -- juli 29-31, 1998
L2/98-363 N1861 Sato, TK (1998-09-01), Rubymarkörer
L2/98-372 N1884R2 (pdf , dokument ) Whistler, Ken; et al. (1998-09-22), Ytterligare karaktärer för UCS
L2/98-416 N1882.zip Stöd för implementering av interlinjära anteckningar, 1998-09-23
L2/98-329 N1920 Kombinerad PDAM-registrering och övervägande omröstning på WD för ISO/IEC 10646-1/Amd. 30, ÄNDRINGSFÖRSLAG 30: Ytterligare latinska tecken och andra tecken, 1998-10-28
L2/98-421R Suignard, Michel; Hiura, Hideki (1998-12-04), Anmärkningar angående PDAM 30 interlinjära anteckningstecken
L2/99-010 N1903 (pdf , html , doc ) Umamaheswaran, VS (1998-12-30), "8.2.15", protokoll från WG 2 möte 35, London, Storbritannien; 1998-09-21--25
L2/98-419 (pdf , doc ) Aliprand, Joan (1999-02-05), "Interlinear Annotation Characters", Godkända protokoll -- UTC #78 & NCITS Subgroup L2 # 175 Joint Meeting, San Jose, CA -- 1-4 december 1998
UTC/1999-021 Duerst, Martin; Bosak, Jon (1999-06-08), W3C XML CG-uttalande om anteckningstecken
L2/99-176R Moore, Lisa (1999-11-04), "W3C Liaison Statement on Annotation Characters", protokoll från det gemensamma UTC/L2-mötet i Seattle, 8-10 juni 1999
L2/01-301 Whistler, Ken (2001-08-01), "E. Indikeras som "starkt avrådd" för utbyte av vanlig text", Analysis of Character Deprecation in the Unicode Standard

Se även