Specials es un bloque corto de caracteres Unicode asignado al final del plano multilingüe básico , en U+FFF0 – FFFF, que contiene estos puntos de código :
- U+FFF9 ANCLAJE DE ANOTACIÓN INTERLINEAL , marca el inicio del texto anotado.
- U+FFFA SEPARADOR DE ANOTACIÓN INTERLINEAL , marca el inicio del/de los carácter(es) de anotación.
- U+FFFB TERMINADOR DE ANOTACIÓN INTERLINEAL , marca el final del bloque de anotación.
- U+FFFC  CARÁCTER DE REEMPLAZO DE OBJETO , marcador de posición en el texto para otro objeto no especificado, por ejemplo, en undocumento compuesto.
- U+FFFD – CARÁCTER DE REEMPLAZO utilizado para reemplazar un carácter desconocido, no reconocido o no representable.
- U+FFFE <fffe-no-caracter>no es un personaje.
- U+FFFF <caracter-FFFF no>no es un personaje.
U+FFFE <fffe-no-caracter>y U+FFFF <noncharacter-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 de la 3.1.0 a la 6.3.0 afirmaban que estos caracteres nunca debían intercambiarse, lo que llevó a algunas aplicaciones a usarlos 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 Corrección n.° 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 ZERO WIDTH NO-BREAK SPACE de Unicode se puede insertar al principio de un texto Unicode como una marca de orden de bytes para indicar su endianness : un programa que lee un texto codificado, por ejemplo, en UTF-16 y encuentra U+FFFE <noncharacter-FFFE>De esta forma, sabría que debe cambiar el orden de bytes para todos los caracteres siguientes.
Su nombre de bloque en Unicode 1.0 era Special . [ 5 ]
Personaje de reemplazo

El carácter de reemplazo � ( que a menudo se muestra como un rombo con un signo de interrogación) es un símbolo que se encuentra en el estándar Unicode en el punto de código U+FFFD de la tabla de caracteres especiales . Se utiliza para indicar problemas cuando un sistema no puede representar una secuencia de datos con los símbolos correctos. [ 6 ]
Como ejemplo, un archivo de texto codificado en ISO 8859-1 que contiene la palabra alemana contiene los bytes . Si este archivo se abre con un editor de texto que asume que la entrada es UTF-8 , el primer y el tercer byte son codificaciones UTF-8 válidas de ASCII , pero el segundo byte ( ) 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 su visualización, de modo que el usuario vea .für0x66 0xFC 0x720xFCf�r
Un editor de texto mal implementado podría escribir el carácter de reemplazo ( 0xEF 0xBF 0xBD) cuando el usuario guarda el archivo; los datos en el archivo se convertirán entonces en 0x66 0xEF 0xBF 0xBD 0x72. Si el archivo se vuelve a abrir usando ISO 8859-1, mostrará f�r(esto se llama mojibake ). Como es probable que el editor convierta diferentes errores en el mismo carácter de reemplazo, también es imposible recuperar el texto original.
En el pasado, el carácter de reemplazo se usaba a menudo cuando no había ningún glifo disponible en una fuente para ese carácter, como en la sustitución de fuentes . Sin embargo, la mayoría de los sistemas modernos de representación de texto 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 un o dentro de un cuadro [ 7 ] (este navegador muestra � para U+10FFEE) , a veces llamado " tofu ". No hay un punto de código Unicode para este símbolo.?X
Por lo tanto, el carácter de reemplazo ahora solo se ve en caso de errores de codificación. Algunos programas informáticos traducen los bytes UTF-8 no válidos a caracteres coincidentes en Windows-1252 (ya que esta es la fuente más común de estos errores), de modo que el carácter de reemplazo nunca se ve.
Tabla Unicode
Historia
Los siguientes documentos relacionados con Unicode recogen el propósito y el proceso de definición de caracteres específicos en el bloque de caracteres especiales:
Véase también
Referencias
- ↑ "Base de datos de caracteres Unicode" . El estándar Unicode . Consultado el 26 de julio de 2023 .
- ↑ "Versiones enumeradas del estándar Unicode" . El estándar Unicode . Consultado el 26 de julio de 2023 .
- ↑ "Corrección n.º 9: Aclaración sobre los no caracteres" . El estándar Unicode . Archivado del original el 10 de junio de 2023. Consultado el 7 de junio de 2023 .
- ↑ "Estándar técnico Unicode n.º 35" . Lenguaje de marcado de datos de configuración regional Unicode (LDML) . Consultado el 27 de agosto de 2024 .
- ↑ "3.8: Tablas bloque por bloque" (PDF) . El estándar Unicode . Versión 1.0. Consorcio Unicode . Archivado (PDF) del original el 11 de febrero de 2021. Consultado el 30 de septiembre de 2020 .
- ↑ Wichary, Marcin (29 de septiembre de 2020). "Cuando las fuentes caen" . Figma. Archivado del original el 13 de junio de 2021. Recuperado el 6 de junio de 2021 .
- ↑ "Recomendaciones para fuentes OpenType (OpenType 1.7) - Tipografía" . Microsoft Learn . Archivado del original el 19 de octubre de 2020. Consultado el 18 de octubre de 2020 .
- bloques Unicode