Especiales | |
---|---|
Rango | U+FFF0..U+FFFF (16 puntos de código) |
Avión | BMP |
Guiones | Común |
Asignado | 5 puntos de código |
No usado | 9 puntos de código reservados 2 no caracteres |
Historial de versiones de Unicode | |
1.0.0 (1991) | 1 (+1) |
2.1 (1998) | 2 (+1) |
3.0 (1999) | 5 (+3) |
Documentación Unicode | |
Cuadro de códigos ∣ Página web | |
Nota : [1] [2] |
Specials es un bloque corto de caracteres Unicode ubicado al final del plano multilingüe básico , en U+FFF0–FFFF, que contiene estos puntos de código :
U+FFFE <no carácter- FFFE> y U+FFFF <no carácter- FFFF> son caracteres no válidos , lo que significa que están reservados pero no causan texto Unicode mal formado. Las versiones del estándar Unicode desde la 3.1.0 a la 6.3.0 afirmaban que estos caracteres nunca deberían intercambiarse, lo que llevó a algunas aplicaciones a utilizarlos para adivinar la codificación del texto interpretando la presencia de cualquiera de ellos como una señal de que el texto no es Unicode. Sin embargo, la Corrigendum #9 especificó posteriormente que los caracteres no válidos no son ilegales y, por lo tanto, este método de verificación de la codificación del texto es incorrecto. [3] Un ejemplo de un uso interno de U+FFFE es el algoritmo CLDR ; este algoritmo Unicode extendido asigna el carácter no válido a un peso primario mínimo y único. [4]
El carácter U+FEFF ESPACIO DE ANCHO CERO SIN INTERRUPCIÓN de Unicode se puede insertar al comienzo de un texto Unicode para indicar su orden de bytes : un programa que lea dicho texto y encuentre 0xFFFE sabría entonces que debe cambiar el orden de bytes para todos los caracteres siguientes.
Su nombre de bloque en Unicode 1.0 era Special . [5]
El carácter de reemplazo � (que suele aparecer como un rombo negro con un signo de interrogación blanco) es un símbolo que se encuentra en el estándar Unicode en el punto de código U+FFFD de la tabla Specials . Se utiliza para indicar problemas cuando un sistema no puede representar un flujo de datos con los símbolos correctos. [6]
Por ejemplo, un archivo de texto codificado en ISO 8859-1 que contiene la palabra alemana für contiene los bytes 0x66 0xFC 0x72
. Si este archivo se abre con un editor de texto que asume que la entrada es UTF-8 , el primer y tercer byte son codificaciones UTF-8 válidas de ASCII , pero el segundo byte ( 0xFC
) no es válido en UTF-8. El editor de texto podría reemplazar este byte con el carácter de reemplazo para producir una cadena válida de puntos de código Unicode para mostrar, de modo que el usuario vea "für".
Un editor de texto mal implementado puede eliminar el carácter de reemplazo cuando el usuario guarda el archivo; los datos del archivo se convertirán en 0x66 0xEF 0xBF 0xBD 0x72
. Si el archivo se vuelve a abrir utilizando ISO 8859-1, mostrará "f�r" (esto se llama mojibake ). Dado que el reemplazo es el mismo para todos los errores, es imposible recuperar el carácter original. Un diseño que es mejor (pero más difícil de implementar) es preservar los bytes originales, incluidos los errores, y solo convertir al reemplazo cuando se muestra el texto. Esto permitirá que el editor de texto guarde la secuencia de bytes original, mientras sigue mostrando una indicación de error al usuario.
En un tiempo, el carácter de reemplazo se usaba a menudo cuando no había un glifo disponible en una fuente para ese carácter, como en la sustitución de fuentes . Sin embargo, la mayoría de los sistemas de representación de texto modernos usan en su lugar el carácter .notdef de una fuente , que en la mayoría de los casos es un cuadro vacío, o "?" o "X" en un cuadro [7] (este navegador muestra �), a veces llamado " tofu ". No existe un punto de código Unicode para este símbolo.
Por lo tanto, el carácter de reemplazo ahora solo se ve en caso de errores de codificación. Algunos programas de software traducen bytes UTF-8 no válidos a caracteres coincidentes en Windows-1252 (ya que esa es la fuente más común de estos errores), de modo que el carácter de reemplazo nunca se ve.
Especiales [1] [2] [3] Tabla de códigos oficiales del Consorcio Unicode (PDF) | ||||||||||||||||
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | do | D | mi | F | |
U+FFFx | Asociación Internacional de Automatización (IAA) | IAS | IAT |  | � | |||||||||||
Notas
|
Los siguientes documentos relacionados con Unicode registran el propósito y el proceso de definición de caracteres específicos en el bloque Especiales:
Versión | Puntos de código finales [a] | Contar | Identificación UTC | Identificación L2 | Identificación del GT2 | Documento |
---|---|---|---|---|---|---|
1.0.0 | U+FFFD | 1 | (por determinar) | |||
U+FFFE..FFFF | 2 | (por determinar) | ||||
L2/01-295R | Moore, Lisa (6 de noviembre de 2001), "Moción 88-M2", Actas de la reunión UTC/L2 n.° 88 | |||||
L2/01-355 | N2369 (html, doc) | Davis, Mark (26 de septiembre de 2001), Solicitud para permitir FFFF, FFFE en UTF-8 en el texto de ISO/IEC 10646 | ||||
L2/02-154 | N2403 | Umamaheswaran, VS (22 de abril de 2002), "9.3 Permitir FFFF y FFFE en UTF-8", Borrador de las actas de la reunión 41 del GT 2, Hotel Phoenix, Singapur, 15 de octubre de 2001/19 | ||||
2.1 | U+FFFC | 1 | UTC/1995-056 | Sargent, Murray (1995-12-06), Recomendación para codificar un carácter WCH_EMBEDDING | ||
UTC/1996-002 | Aliprand, Joan; Hart, Edwin; Greenfield, Steve (5 de marzo de 1996), "Objetos incrustados", UTC #67 Minutes | |||||
N1365 | Sargent, Murray (18 de marzo de 1996), Resumen de la propuesta: Carácter de reemplazo de objetos | |||||
N1353 | Umamaheswaran, VS; Ksar, Mike (25 de junio de 1996), "8.14", Proyecto de acta de la reunión nº 30 del GT2 de Copenhague | |||||
L2/97-288 | N1603 | Umamaheswaran, VS (24 de octubre de 1997), "7.3", Actas de reunión no confirmadas, reunión nº 33 del GT 2, Heraklion, Creta, Grecia, 20 de junio – 4 de julio de 1997 | ||||
L2/98-004R | N1681 | Texto de la norma ISO 10646 – AMD 18 para el registro PDAM y la votación FPDAM , 1997-12-22 | ||||
L2/98-070 | Aliprand, Joan; Winkler, Arnold, "Comentarios adicionales sobre 2.1", Actas de la reunión conjunta de UTC y L2 de la reunión en Cupertino, 25-27 de febrero de 1998 | |||||
L2/98-318 | Número 1894 | Texto revisado de 10646-1/FPDAM 18, ENMIENDA 18: Símbolos y otros , 1998-10-22 | ||||
3.0 | U+FFF9..FFFB | 3 | L2/97-255R | Aliprand, Joan (1997-12-03), "Propuesta 3.D para notación en línea (ruby)", Actas aprobadas – Reunión conjunta UTC #73 y L2 #170, Palo Alto, CA – 4 y 5 de agosto de 1997 | ||
L2/98-055 | Freytag, Asmus (22 de febrero de 1998), Soporte para la implementación de anotaciones en línea e interlineales | |||||
L2/98-070 | Aliprand, Joan; Winkler, Arnold, "3.C.5. Soporte para la implementación de anotaciones interlineales y en línea", Actas de la reunión conjunta de UTC y L2 de la reunión en Cupertino, 25-27 de febrero de 1998 | |||||
L2/98-099 | N1727 | Freytag, Asmus (18 de marzo de 1998), Apoyo a la implementación de anotaciones interlineales tal como se utilizan en la tipografía del este de Asia | ||||
L2/98-158 | Aliprand, Joan; Winkler, Arnold (26 de mayo de 1998), "Anotaciones interlineales y en línea", borrador de las actas de la reunión conjunta UTC #76 y NCITS Subgroup L2 #173, Tredyffrin, Pensilvania, 20-22 de abril de 1998 | |||||
L2/98-286 | N1703 | Umamaheswaran, VS; Ksar, Mike (2 de julio de 1998), "8.14", Actas de reunión no confirmadas, reunión nº 34 del GT 2, Redmond, WA, EE.UU.; 16-20 de marzo de 1998 | ||||
L2/98-270 | Hiura, Hideki; Kobayashi, Tatsuo (1998-07-29), Sugerencia para la propuesta de anotación en línea e interlineal | |||||
L2/98-281R (pdf, html) | Aliprand, Joan (1998-07-31), "Anotación interlineal y en línea (III.C.1.c)", Actas no confirmadas – Reunión conjunta UTC #77 y NCITS Subgroup L2 #174, Redmond, WA – 29-31 de julio de 1998 | |||||
L2/98-363 | Número 1861 | Sato, TK (1 de septiembre de 1998), Marcadores de rubí | ||||
L2/98-372 | N1884R2 (pdf, documento) | Whistler, Ken; et al. (1998-09-22), Caracteres adicionales para el UCS | ||||
L2/98-416 | N1882.zip | Soporte para la implementación de anotaciones interlineales , 23 de septiembre de 1998 | ||||
L2/98-329 | Año 1920 | Votación combinada de registro y consideración de PDAM sobre WD para ISO/IEC 10646-1/Amd. 30, ENMIENDA 30: Caracteres latinos adicionales y otros caracteres , 1998-10-28 | ||||
L2/98-421R | Suignard, Michel; Hiura, Hideki (1998-12-04), Notas sobre los caracteres de anotación interlineal PDAM 30 | |||||
L2/99-010 | N1903 (pdf, html, doc) | Umamaheswaran, VS (30 de diciembre de 1998), "8.2.15", Actas de la reunión 35 del GT 2, Londres, Reino Unido; 21-25 de septiembre de 1998 | ||||
L2/98-419 (pdf, doc) | Aliprand, Joan (5 de febrero de 1999), "Caracteres de anotación interlineal", Actas aprobadas de la reunión conjunta UTC n.° 78 y NCITS Subgroup L2 n.° 175, San José, California, 1 al 4 de diciembre de 1998 | |||||
UTC/1999-021 | Duerst, Martín; Bosak, Jon (8 de junio de 1999), Declaración XML CG del W3C sobre caracteres de anotación | |||||
L2/99-176R | Moore, Lisa (4 de noviembre de 1999), "Declaración de enlace del W3C sobre caracteres de anotación", Actas de la reunión conjunta UTC/L2 en Seattle, 8-10 de junio de 1999 | |||||
L2/01-301 | Whistler, Ken (1 de agosto de 2001), "E. Indicado como "fuertemente desaconsejado" para el intercambio de texto sin formato", Análisis de la desaprobación de caracteres en el estándar Unicode | |||||
|