Puntos de código Unicode no asignados intencionalmente
En Unicode , un Área de Uso Privado ( PUA ) es un rango de puntos de código a los que, por definición, el estándar no les asignará caracteres. [1] Se definen tres áreas de uso privado: una en el Plano Multilingüe Básico ( U+E000–U+F8FF ), y una en cada uno de los planos 15 y 16 ( U+F0000–U+FFFFD , U+100000–U+10FFFD ), que prácticamente los cubren. Se dejan intencionalmente sin definir para que terceros puedan asignar sus propios caracteres sin entrar en conflicto con las asignaciones del Consorcio Unicode. Según la Política de estabilidad de Unicode, [2] las Áreas de uso privado permanecerán asignadas para ese propósito en todas las versiones futuras de Unicode.
Las asignaciones a caracteres de Área de Uso Privado no tienen por qué ser "privadas" en el sentido de estrictamente internas a una organización; varias organizaciones han publicado varios esquemas de asignación. Dicha publicación puede incluir una fuente que admita la definición (mostrando los glifos) y software que haga uso de los caracteres de uso privado (por ejemplo, un carácter gráfico para una función de "impresión de documento"). Por definición, varias partes privadas pueden asignar caracteres diferentes al mismo punto de código, con la consecuencia de que un usuario puede ver un carácter privado de una fuente instalada cuando se pretendía otro diferente.
Definición
Según la definición de Unicode, los puntos de código en las áreas de uso privado no son caracteres no asignados, reservados o no asignados. Su categoría es " Other, private use (Co)
" y no se especifican nombres de caracteres. No se proporcionan glifos representativos y la semántica de los caracteres se deja al arbitrio privado.
A los caracteres de uso privado se les asignan puntos de código Unicode cuya interpretación no está especificada en esta norma y cuyo uso puede determinarse mediante un acuerdo privado entre usuarios que cooperan. Estos caracteres están designados para uso privado y no tienen una semántica definida e interpretable, salvo que se acuerde mediante un acuerdo privado. ... No se proporcionan gráficos para caracteres de uso privado, ya que dichos caracteres, por su propia naturaleza, se definen únicamente fuera del contexto de esta norma. [3]
Asignación
En el Plano Básico Multilingüe (plano 0), el bloque denominado Área de Uso Privado tiene 6400 puntos de código.
Los planos 15 y 16 están casi [nota 1] totalmente asignados a otras dos Áreas de Uso Privado, Área de Uso Privado Suplementario-A y Área de Uso Privado Suplementario-B respectivamente. En UTF-16, se utiliza un subconjunto de los sustitutos altos (U+DB80..U+DBFF) para estos y solo estos planos, y se denominan Sustitutos de Uso Privado Alto .
Bloques de PUA de Unicode
Hay tres bloques PUA en Unicode. [3]
Bloque de caracteres Unicode
Bloque de caracteres Unicode
Bloque de caracteres Unicode
Historia
En Unicode 1.0.0, el área de uso privado se extendió desde U+E800 hasta U+FDFF (es decir, no incluía U+E000..E7FF, pero además incluía el rango U+F900..FDFF ahora ocupado por CJK Compatibility Ideographs , Alphabetic Presentation Forms y Arabic Presentation Forms-A ). [7] Esto se cambió a U+E000..F8FF en Unicode 1.0.1, [4] y permaneció así en Unicode 1.1. [8] Contrariamente a la idea errónea, el rango U+D800..DFFF (reservado para sustitutos UTF-16 desde Unicode 2.0) no se incluyó en el rango de uso privado de ninguna versión de Unicode 1.x.
Históricamente, los planos E0 (224) a FF (255) y los grupos 60 (96) a 7F (127) del conjunto de caracteres codificados universales (es decir, U+E00000 a U+FFFFFF y U+60000000 a U+7FFFFFFF) también se designaron como de uso privado. Estos rangos se eliminaron de los rangos de uso privado especificados cuando el UCS se restringió a los diecisiete planos alcanzables en UTF-16. [9]
Uso
La iniciativa de estandarización utiliza
Muchas personas e instituciones han creado colecciones de caracteres para la PUA. Algunos de estos acuerdos de uso privado se publican, por lo que otros implementadores de PUA pueden utilizar puntos de código no utilizados o menos utilizados para evitar superposiciones. Varios caracteres y scripts codificados previamente en acuerdos de uso privado se han codificado completamente en Unicode, lo que hace necesario realizar asignaciones de la PUA a otros puntos de código Unicode.
Uno de los acuerdos PUA más conocidos y ampliamente implementados es el que mantiene el Registro Unicode ConScript (CSUR). El CSUR, que no está oficialmente respaldado ni asociado con el Consorcio Unicode, proporciona una asignación para las escrituras construidas, como la escritura klingon pIqaD y ferengi (Star Trek), Tengwar y Cirth (las escrituras cursivas y rúnicas de JRR Tolkien), el Habla Visible de Alexander Melville Bell y el alfabeto del Dr. Seuss de On Beyond Zebra . El CSUR codificó anteriormente los caracteres no descifrados de Phaistos , así como los alfabetos Shavian y Deseret , que han sido aceptados para la codificación oficial en Unicode.
Otro acuerdo PUA común es el que mantiene la Medieval Unicode Font Initiative (MUFI). Este proyecto intenta admitir todas las abreviaturas, ligaduras, caracteres precompuestos , símbolos y formas de letras alternativas que se encuentran en los textos medievales escritos en el alfabeto latino. El propósito expreso de MUFI es determinar experimentalmente qué caracteres son necesarios para representar estos textos y codificarlos oficialmente en Unicode. A partir de la versión 5.1 de Unicode, se han incorporado 152 caracteres MUFI a la codificación oficial de Unicode. [ necesita actualización ]
Algunas colecciones de caracteres PUA acordadas existen en parte o en su totalidad porque el Consorcio Unicode no tiene prisa por codificarlas. Algunas, como los idiomas no representados, es probable que terminen codificadas en el futuro. Algunos casos inusuales, como los idiomas ficticios, están fuera del alcance habitual de Unicode pero no están explícitamente descartados por los principios de Unicode, y pueden aparecer en algún momento (como los sistemas de escritura de Star Trek y Tolkien). En otros casos, la codificación propuesta viola uno o más principios de Unicode y, por lo tanto, es poco probable que Unicode la reconozca oficialmente alguna vez, principalmente cuando los usuarios desean codificar directamente formas alternativas, ligaduras o combinaciones de carácter base más diacrítico (como el esquema TUNE).
- Emoji es una codificación para caracteres con imágenes o emoticones que se utilizan en mensajes inalámbricos y páginas web japonesas. Con Unicode 6.0 y versiones posteriores, muchos de estos se han codificado en el bloque Símbolos y pictogramas varios y en otras partes del SMP .
- GB/T 20542-2006 ("Extensión A del conjunto de caracteres codificados tibetanos") y GB/T 22238-2008 ("Extensión B del conjunto de caracteres codificados tibetanos") son estándares nacionales chinos que utilizan la PUA para codificar ligaduras tibetanas precompuestas .
- GB 18030 y GBK utilizan la PUA para codificar provisionalmente caracteres que no se encuentran en los estándares Unicode en el momento de la publicación (la mayoría han sido codificados desde entonces).
- El Instituto de la Lengua Estonia utiliza la PUA para codificar caracteres precompuestos latinos y cirílicos [10] que no tienen codificación Unicode.
- El Proyecto de Fuente Libre Tengwar utiliza una asignación diferente del Registro Unicode de ConScript que sigue en gran medida el documento de discusión sobre Tengwar de Michael Everson del 2001-03-07, pero difiere en algunos detalles.
- El estándar MARC 21 utiliza la PUA para codificar caracteres del este asiático presentes en MARC-8 [11] que no tienen codificación Unicode.
- La PUA corporativa SIL utiliza la PUA para codificar caracteres utilizados en idiomas minoritarios que aún no han sido aceptados en Unicode.
- El proyecto STIX Fonts utiliza la PUA para proporcionar un conjunto completo de fuentes de símbolos y alfabetos matemáticos, muchos de los cuales también están disponibles ahora en SMP, por ejemplo, en el bloque Símbolos alfanuméricos matemáticos .
- La nueva codificación Unicode Tamil (TUNE) [12] es un esquema propuesto para codificar el tamil que supera las deficiencias percibidas en la codificación Unicode actual.
Uso del proveedor
De manera informal, el rango de U+F000 a U+F8FF se conoce como Área de Uso Corporativo. Esto se origina en las primeras versiones de Unicode, que definían una "Zona de Usuario Final" que se extendía desde U+E000 hacia arriba y una "Zona de Uso Corporativo" que se extendía desde U+F8FF hacia abajo, sin definir el límite entre las dos. [8]
- La lista de glifos de Adobe solía utilizar la PUA para algunos de sus glifos. [13]
- Apple enumera un rango de 1280 caracteres en su documentación para desarrolladores [14] desde U+F400 hasta U+F8FF dentro de la PUA para uso de Apple. De ellos, solo se utilizan 311, en el rango U+F700–U+F8FF ( NeXT ( NeXTSTEP y OPENSTEP ) y Apple ( macOS AppKit )). [15]
- Uno de ellos es U+F8FF, el logotipo de Apple , generalmente compatible con los conjuntos de 8 bits de Apple.
- WGL4 utiliza la PUA (U+F001 y U+F002) para codificar duplicados de las ligaduras fi (U+FB01) fl (U+FB02). [16]
- La función Servicios para Macintosh de Microsoft , que ya no existe, utilizaba los caracteres U+F001 a U+F029 como reemplazos para caracteres especiales permitidos en HFS pero prohibidos en NTFS , y U+F02A para el logotipo de Apple. [17] [18]
- En versiones anteriores de su componente RichEdit, Microsoft asignaba U+F020–U+F0FF dentro de la PUA a fuentes de símbolos. Para cualquier carácter en este rango, RichEdit mostraba un carácter de una fuente de símbolos en lugar del carácter definido por el usuario final (EUDC) [19] [20]
- AutoCAD [ aclaración necesaria ] utiliza U+F8FC–U+F8FE para ⌀ (signo de diámetro), ± ( signo más–menos ) y ° (signo de grado) respectivamente.
- Algunas fuentes colocan el logotipo de Windows en
U+F000
. - El número
U+F000
es una sucesión numérica que comienza en 13 o 18 en algunos videojuegos como Agar.io. - En Ubuntu ,
U+E0FF
se muestra como el logotipo del "Círculo de amigos" [21] y U+F200
es "ubuntu" en la tipografía Ubuntu con un "Círculo de amigos" en superíndice (este en sí es U+F0FF
). [22] - La fuente 3270 incluye el logotipo de Debian
U+F100
en . - En la fuente Linux Libertine ,
U+E000
se muestra Tux , la mascota de Linux. - La fuente de iconos Font Awesome utiliza PUA para mostrar varios glifos.
- Powerline, un complemento de línea de estado para Vim , utiliza U+E0A0–U+E0A2 y U+E0B0–U+E0B3 para caracteres adicionales de dibujo de cuadros . [23] [24] [25]
- En la tipografía Fira Sans utilizada en Firefox OS ,
U+E003
se muestra el logotipo de Mozilla (la cabeza de dinosaurio). - Lotus Multi-Byte Character Set (LMBCS), la codificación y el conjunto de caracteres utilizados internamente por Lotus / IBM Lotus 1-2-3 , Symphony , SmartSuite , Notes , Domino, así como una serie de productos de terceros como Microsoft Works , utiliza algunos caracteres (
U+F862
- U+F89F
y U+F8FB
- U+F8FE
) en el Área de uso privado para símbolos no definidos en Unicode. De estos, U+F8FB
se sabe que están reservados para un símbolo de moneda de la coronaU+F8FC
("Kr"), y y U+F8FD
se asignaron posteriormente a U+FB02
( fl ) y U+FB01
( fi ) respectivamente. Además, cuando se incorporan códigos UTF-16 en LMBCS, los códigos UTF-16 correspondientes a U+F601
hasta U+F6FF
se sustituyen por códigos UTF-16 que contendrían bytes nulos , ya que LMBCS está diseñado para no contener bytes nulos incorporados. [26] [27] - IBM reservó varios identificadores de página de códigos para las páginas de códigos PUA: página de códigos 1446 para el plano genérico 15, página de códigos 1447 para el plano genérico 16, página de códigos 1448 para la PUA BMP genérica, página de códigos 1445 (IBM AFP PUA No. 1) para el plano 15 con asignaciones IBM en U+FFF00–U+FFFFD, [28] [29] y página de códigos 1449 (IBM PUA predeterminada) para la PUA BMP con asignaciones IBM en U+F83D–U+F8FF. [30] [31]
- El sistema de archivos que se encuentra en Windows utiliza el bloque
U+F000
to U+F0FF
para escapar caracteres especiales . - NetApp traduce caracteres en nombres de archivos que están permitidos en Unix pero no son válidos para clientes SMB a caracteres PUA. [32]
- La fuente Chirp de Twitter
U+E000
proporciona algunos íconos adicionales, como el que corresponde a una flecha hacia abajo izquierda, U+EA00
el que corresponde al pájaro de Twitter y U+F8FF
el que corresponde a un logotipo de Apple, posiblemente para compatibilidad con las fuentes de Apple. [33]
Caracteres de uso privado en otros conjuntos de caracteres
El concepto de reservar puntos de código específicos para uso privado se basa en un uso similar anterior en otros conjuntos de caracteres. En particular, muchos caracteres obsoletos en los alfabetos de Asia oriental siguen utilizándose en nombres específicos u otras situaciones, por lo que algunos conjuntos de caracteres para esos alfabetos permitieron caracteres de uso privado (como los planos definidos por el usuario de CNS 11643 o gaiji en ciertas codificaciones japonesas). El estándar Unicode hace referencia a estos usos bajo el nombre de "Definición de caracteres del usuario final" (EUCD). [3]
Además, el bloque de control C1 contiene dos códigos destinados a "funciones de control" de uso privado por ECMA-48 : 0x91 uso privado uno (PU1) y 0x92 uso privado dos (PU2). [34] [35] Unicode los incluye en U+0091 <control-0091> y U+0092 <control-0092> pero los define como caracteres de control (categoría Cc
), no caracteres de uso privado (categoría Co
). [5] [36]
Las codificaciones que no tienen áreas de uso privado pero tienen áreas más o menos sin usar, como ISO/IEC 8859 y Shift JIS , han visto evolucionar variantes no controladas de estas codificaciones. [37] Para Unicode, las empresas de software pueden usar las áreas de uso privado para las adiciones que deseen.
Notas
- ^ Los dos últimos caracteres de cada plano se definen como no caracteres . Los 65.534 caracteres restantes de cada uno de los planos 15 y 16 se asignan como caracteres de uso privado.
Referencias
- ^ "Glosario de términos Unicode: "Área de uso privado (PUA)"". Consorcio Unicode .
- ^ "Política de estabilidad de la codificación de caracteres Unicode". 2021-11-10 . Consultado el 2022-03-03 .
- ^ abc "Capítulo 23 Áreas especiales y caracteres de formato" (PDF) . Estándar Unicode versión 14.0 - Especificación básica . Caracteres de uso privado.
- ^ ab «Unicode 1.0.1» (PDF) . El estándar Unicode . 1992-11-03. Archivado (PDF) desde el original el 2016-07-02 . Consultado el 2016-07-09 .
- ^ abcd «Base de datos de caracteres Unicode». El estándar Unicode . Consultado el 26 de julio de 2023 .
- ^ abc "Versiones enumeradas del estándar Unicode". El estándar Unicode . Consultado el 26 de julio de 2023 .
- ^ "3.5: Área de uso privado" (PDF) . El estándar Unicode, versión 1.0, volumen 1. Consorcio Unicode . 1991. págs. 118-119. ISBN. 0-201-56788-1. Archivado (PDF) del original el 21 de octubre de 2021. Consultado el 11 de octubre de 2021 .
- ^ ab "2.0: Cambios en Unicode 1.0" (PDF) . El estándar Unicode, versión 1.1 . Consorcio Unicode . págs. 3–4. UTR n.° 4. Archivado (PDF) desde el original el 20 de noviembre de 2021 . Consultado el 11 de octubre de 2021 .
- ^ Whistler, Ken (2000). «Cambios necesarios para la norma ISO/IEC 10646 en relación con la PUA». UTC /00-015. Archivado desde el original el 23 de junio de 2021. Consultado el 30 de enero de 2021 .
- ^ "Base de datos de cartas". Eki.ee. Archivado desde el original el 21 de mayo de 2018. Consultado el 11 de abril de 2013 .
- ^ "Conjuntos de caracteres: caracteres de Asia oriental: asignaciones Unicode alternativas para caracteres MARC 21 asignados al área de uso privado (PUA): especificaciones MARC 21 para estructura de registros, conjuntos de caracteres y medios de intercambio". Biblioteca del Congreso. 2 de septiembre de 2004. Archivado desde el original el 19 de agosto de 2013. Consultado el 11 de abril de 2013 .
- ^ "tunerfc.tn.nic.in". tunerfc.tn.nic.in. Archivado desde el original el 29 de julio de 2010. Consultado el 11 de abril de 2013 .
- ^ "Subárea de uso corporativo de Unicode utilizada por Adobe Systems". 22 de octubre de 1998. Archivado desde el original el 9 de octubre de 2002. Consultado el 12 de mayo de 2021 .
- ^ "NSOpenStepUnicodeReservedBase - Documentación para desarrolladores de Apple". Apple Inc. Archivado desde el original el 6 de noviembre de 2020. Consultado el 16 de octubre de 2020 .
- ^ Apple Computer, Inc. (2005) [1994]. «CORPCHAR.TXT - Registro (versión externa) del uso de caracteres de la zona corporativa de Unicode por parte de Apple». c03. Unicode Inc. Archivado desde el original el 30 de octubre de 2020. Consultado el 16 de octubre de 2020 .
- ^ "Rango Unicode WGL4 U+2013 a U+FB02". Microsoft . Archivado desde el original el 17 de julio de 2014.
- ^ "SFM convierte los nombres de archivo HFS de Macintosh a Unicode NTFS". Soporte técnico de Microsoft . 24 de febrero de 2014. Archivado desde el original el 27 de mayo de 2016.
- ^ "ntfs.util.c". 2008. Archivado desde el original el 7 de agosto de 2018. Consultado el 7 de agosto de 2018. Los
caracteres de nombre de archivo NTFS no válidos se codifican [
sic
] utilizando los caracteres Unicode de uso privado de SFM (Servicios para Macintosh).
- ^ "El rango de caracteres entre U+F020 y U+F0FF en el Área de uso privado de Unicode se asigna a fuentes de símbolos en Richedit 4.1". Microsoft Knowledge Base . Archivado desde el original el 22 de octubre de 2012.
- ^ "Manejo de caracteres PUA en software de Microsoft". SIL International . 2003-04-25. Archivado desde el original el 2015-05-11 . Consultado el 2014-03-04 .
- ^ "Comentario n.° 8: Error n.° 651606 (círculo de amigos): Errores: Familia de fuentes de Ubuntu". Launchpad . 5 de octubre de 2010. Archivado desde el original el 17 de octubre de 2020 . Consultado el 17 de octubre de 2020 .
- ^ "Comentario n.° 2: Error n.° 853855: Errores: Familia de fuentes de Ubuntu". Launchpad . 26 de septiembre de 2011. Archivado desde el original el 17 de octubre de 2020 . Consultado el 17 de octubre de 2020 .
- ^ "Pregunta sobre el complemento de línea de estado de Powerline en Stack Exchange que menciona caracteres de área de uso privado". Archivado desde el original el 12 de marzo de 2015. Consultado el 22 de marzo de 2015 .
- ^ "Imágenes que muestran caracteres de áreas de uso privado en fuentes parcheadas Powerline". Archivado desde el original el 2015-05-11 . Consultado el 2015-03-22 .
- ^ Li, Renzhi (23 de agosto de 2019). "Propuesta para agregar caracteres adicionales al bloque Gráficos para computación heredada del UCS" (PDF) . Consultado el 31 de julio de 2023 .
- ^ "lmb-excp.ucm". GitHub . 10 de febrero de 2000. Archivado desde el original el 25 de enero de 2022 . Consultado el 23 de abril de 2020 .
- ^ "Apéndice 2. El conjunto de caracteres multibyte de Lotus (LMBCS)" [Apéndice 2. El conjunto de caracteres multibyte de Lotus (LMBCS)]. Lotus 1-2-3 versión 3.1 Referenzhandbuch [ Manual de referencia de Lotus 1-2-3 versión 3.1 ] (en alemán) (1.ª ed.). Cambridge, Massachusetts, EE. UU.: Lotus Development Corporation . 1989. págs. A2–1 – A2–13. 302168.
- ^ "CPGID 01445 (gráfico)" (PDF) . REGISTRO: Conjuntos de caracteres gráficos y páginas de códigos . 2012 [2011]. CH 3-3220-050.
El área que se muestra en el gráfico anterior representa solo 254 bytes de la fila FF en el plano 0F.
- ^ "CPGID 01445: IBM AFP PUA No. 1". REGISTRO: Conjuntos de caracteres gráficos y páginas de códigos . 2012 [2011]. CH 3-3220-050.
El área que se muestra en el gráfico anterior representa solo 254 bytes de la fila FF en el plano 0F.
- ^ "CPGID 01449: IBM default PUA". IBM Globalization: Code page identifiers . IBM . Archivado desde el original el 16 de septiembre de 2015.
IBM ha designado 195 posiciones desde U+F83D hasta U+F8FF para su uso como zona corporativa de IBM y tiene la intención de utilizarlas de manera consistente dentro de IBM siempre que sea necesario mantener la integridad de ida y vuelta de los caracteres de IBM.
- ^ IBM (1997). unicode.nam: permite especificar los caracteres Unicode utilizando nombres similares a IBM o PostScript .(Incluido con Borgendale, Ken, OS/2 Codepage y herramientas de visualización del teclado)
- ^ "Configurar la asignación de caracteres para la traducción de nombres de archivos SMB en volúmenes". 9 de diciembre de 2021 . Consultado el 14 de octubre de 2022 .
- ^ "Fuente Twitter Chirp". Copiar y pegar . Consultado el 8 de febrero de 2022 .
- ^ "Norma ECMA-48, quinta edición, junio de 1991" (PDF) . §8.2.14 Funciones de control diversas, §8.3.100, §8.3.101.
- ^ ISO/TC97/SC2 (1983-10-01). Conjunto de caracteres de control C1 de ISO 6429 (PDF) . ITSCJ/ IPSJ . ISO-IR -77.
{{citation}}
: CS1 maint: nombres numéricos: lista de autores ( enlace ) - ^ "Capítulo 4 Propiedades de los caracteres" (PDF) . Estándar Unicode versión 14.0 - Especificación básica . Tabla 4-4.
- ^ "Mapa (versión externa) de la codificación japonesa de Mac OS a Unicode 2.1 y posteriores". Archivado desde el original el 2021-08-31 . Consultado el 2021-10-08 .