En Unicode , un Área de Uso Privado ( PUA ) es un rango de puntos de código que, por definición, no recibirán caracteres asignados por el estándar. [ 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 , que los cubren casi por completo ( U+F0000 – U+FFFFD , U+100000 – U+10FFFD ). Se dejan intencionalmente sin definir para que terceros puedan asignar sus propios caracteres sin entrar en conflicto con las asignaciones del Estándar Unicode. Según la Política de Estabilidad de Unicode, las Áreas de Uso Privado permanecerán asignadas para ese propósito en todas las versiones futuras de Unicode. [ 2 ]
Las asignaciones a puntos de código de uso privado no tienen por qué ser «privadas» en el sentido estricto de internas a una organización; varias organizaciones han publicado diversos esquemas de asignación. Dicha publicación puede incluir una fuente tipográfica que admita la definición (mostrando los glifos) y software que utilice los caracteres de uso privado (por ejemplo, un carácter gráfico para la función de «imprimir documento»). Por definición, varias entidades 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 utilizar otro.
Definición
Según la definición de Unicode, los puntos de código en las Áreas de Uso Privado no son caracteres no válidos, reservados ni sin asignar. 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 queda sujeta a acuerdos privados.
A los caracteres de uso privado se les asignan puntos de código Unicode cuya interpretación no está especificada por esta norma y cuyo uso puede determinarse mediante acuerdo privado entre usuarios colaboradores. Estos caracteres están designados para uso privado y no tienen una semántica definida e interpretable, salvo por acuerdo privado. ... No se proporcionan tablas para los caracteres de uso privado, ya que, por su propia naturaleza, dichos caracteres se definen únicamente fuera del contexto de esta norma. [ 3 ]
Bloques
Hay tres bloques PUA en Unicode. [ 3 ] [ 4 ] [ 5 ]
En el Plano Multilingüe Básico (plano 0), el bloque titulado Área de Uso Privado (PUA, por sus siglas en inglés) tiene 6400 puntos de código.
Los planos 15 y 16 están casi [ nota 1 ] completamente asignados a dos áreas de uso privado adicionales: Área de uso privado suplementaria A (SPUA-A) y Área de uso privado suplementaria B (SPUA-B). 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 .
Historia
En Unicode 1.0.0, el Área de uso privado se extendía desde U+E800 hasta U+FDFF [ 6 ] (es decir, no incluía U+E000..E7FF, pero además incluía el rango U+F900..FDFF ahora ocupado por los ideogramas de compatibilidad CJK , las formas de presentación alfabéticas y las formas de presentación árabes-A ). Esto se cambió a U+E000..F8FF en Unicode 1.0.1, [ 7 ] y se mantuvo así en Unicode 1.1. [ 8 ] El rango U+D800..DFFF, utilizado para sustitutos UTF-16 desde Unicode 2.0, no estaba asignado y no formaba parte del Área de uso privado en ninguna versión de Unicode 1.x.
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 cuando el UCS se restringió a los diecisiete planos alcanzables en UTF-16. [ 9 ]
Uso
La iniciativa de estandarización utiliza
Numerosas personas e instituciones han creado colecciones de caracteres para el PUA. Algunos de estos acuerdos de uso privado se publican, lo que permite a otros implementadores del PUA buscar puntos de código no utilizados o menos utilizados para evitar solapamientos. Varios caracteres y sistemas de escritura previamente codificados en acuerdos de uso privado se han codificado completamente en Unicode, lo que requiere la creación de correspondencias entre el PUA y otros puntos de código Unicode.
Uno de los acuerdos PUA más conocidos y ampliamente implementados es el que mantiene el Registro Unicode de ConScript (CSUR). El CSUR, que no cuenta con el respaldo oficial ni está asociado con el Consorcio Unicode, proporciona una correspondencia para escrituras construidas, como el pIqaD klingon y la escritura ferengi (Star Trek), el tengwar y el círth (las escrituras cursiva y rúnica de JRR Tolkien), el Lenguaje Visible de Alexander Melville Bell y el alfabeto del Dr. Seuss de On Beyond Zebra . El CSUR codificó previamente los caracteres Phaistos no descifrados , así como los alfabetos shaviano y deseret , que han sido aceptados para su codificación oficial en Unicode.
Otro acuerdo común de PUA es el que mantiene la Iniciativa de Fuentes Unicode Medievales (MUFI). Este proyecto busca dar soporte a 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 lograr que dichos caracteres se codifiquen oficialmente en Unicode. A partir de la versión 5.1 de Unicode, 152 caracteres de MUFI se han incorporado a la codificación oficial de Unicode.
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, probablemente se codifiquen en el futuro. Algunos casos inusuales, como los idiomas ficticios, quedan fuera del ámbito habitual de Unicode, pero no están explícitamente excluidos por sus principios, y podrían aparecer eventualmente (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 improbable que Unicode la reconozca oficialmente, sobre todo cuando los usuarios desean codificar directamente formas alternativas, ligaduras o combinaciones de caracteres base con diacríticos (como el esquema TUNE).
- Los emojis se definieron originalmente en espacios no utilizados en las codificaciones móviles Shift JIS , y cada operador admitía distintos caracteres emoji. Antes de que los emojis se añadieran al estándar Unicode en Unicode 6.0, Google y los principales operadores telefónicos japoneses definieron sus propias asignaciones de Área de Uso Privado para emojis. Los operadores japoneses definieron sus esquemas de codificación en el Área de Uso Privado del Plano Multilingüe Básico, mientras que Google definió los suyos en el Área de Uso Privado Suplementaria-A. [ 10 ]
- 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 normas nacionales chinas que utilizan el PUA para codificar ligaduras tibetanas precompuestas .
- GBK y versiones anteriores de GB 18030 utilizaban el PUA para codificar provisionalmente caracteres que no se encontraban en los estándares Unicode en el momento de su publicación. En la versión 2022 del estándar (GB 18030-2022), los caracteres se asignan a sus puntos de código Unicode estándar. [ 11 ]
- El Instituto de la Lengua Estonia utiliza el PUA para codificar caracteres precompuestos latinos y cirílicos [ 12 ] que no tienen codificación Unicode.
- El proyecto Free Tengwar Font Project utiliza una asignación diferente a la del ConScript Unicode Registry que sigue en gran medida el documento de debate sobre Tengwar de Michael Everson del 7 de marzo de 2001, pero difiere en algunos detalles.
- El estándar MARC 21 utiliza el PUA para codificar caracteres de Asia Oriental presentes en MARC-8 [ 13 ] que no tienen codificación Unicode.
- El SIL Corporate PUA utiliza el PUA para codificar caracteres utilizados en lenguas minoritarias que aún no han sido aceptadas en Unicode.
- El proyecto STIX Fonts utiliza el PUA para proporcionar un conjunto completo de fuentes de símbolos matemáticos y alfabetos, muchos de los cuales también están disponibles ahora en el SMP, por ejemplo, en el bloque de Símbolos Alfanuméricos Matemáticos .
- El SMuFL utiliza el PUA para codificar nuevos símbolos de notación musical, ampliando el bloque Unicode de símbolos musicales .
- La nueva codificación Unicode para tamil (TUNE) [ 14 ] es un esquema propuesto para codificar el tamil que supera las deficiencias percibidas en la codificación Unicode actual.
Uso por parte del proveedor
De manera informal, el rango U+F000 a U+F8FF se conoce como Área de Uso Corporativo. Esto tiene su origen 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 ambas. [ 8 ]
- La lista de glifos de Adobe solía usar PUA para algunos de sus glifos. [ 15 ]
- Apple enumera un rango de 1280 caracteres en su documentación para desarrolladores [ 16 ] desde U+F400–U+F8FF dentro del 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 )). [ 17 ]
- Uno de ellos es U+F8FF, el logotipo de Apple , generalmente compatible con los conjuntos de 8 bits de Apple.
- WGL4 utiliza el PUA (U+F001 y U+F002) para codificar duplicados de las ligaduras fi (U+FB01) fl (U+FB02). [ 18 ]
- La función extinta de Microsoft , Services For Macintosh, utilizaba 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. [ 19 ] [ 20 ]
- En versiones antiguas de su componente RichEdit , Microsoft asignaba U+F020–U+F0FF dentro del 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). [ 21 ] [ 22 ]
- AutoCAD 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 punto de código
U+F000es una sucesión numérica que comienza en 13 o 18 en algunos videojuegos como Agar.io. - En Ubuntu ,
U+E0FFse muestra como el logotipo "Circle Of Friends" [ 23 ] yU+F200es "ubuntu" en la tipografía de Ubuntu con "Circle Of Friends" en superíndice (esto mismo esU+F0FF). [ 24 ] - La fuente 3270 incluye el logotipo de Debian
U+F100en . - En la fuente Linux Libertine ,
U+E000se 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 . [ 25 ] [ 26 ]
- En la tipografía Fira Sans utilizada en Firefox OS ,
U+E003se muestra como el logotipo de Mozilla (la cabeza del dinosaurio). - El conjunto de caracteres multibyte de Lotus (LMBCS), la codificación y el conjunto de caracteres utilizados internamente por Lotus / IBM Lotus 1-2-3 , Symphony , SmartSuite , Notes , Domino, así como por varios productos de terceros como Microsoft Works , utiliza algunos caracteres (
U+F862-U+F89FyU+F8FB-U+F8FE) en el Área de Uso Privado para símbolos no definidos en Unicode. De estos,U+F8FBse sabe que está reservado para el símbolo de la moneda coronaU+F8FC("Kr"), y yU+F8FDse asignaron posteriormente aU+FB02( fl ) yU+FB01( fi ) respectivamente. Además, cuando se incrustan códigos UTF-16 en LMBCS, los códigos UTF-16 correspondientes aU+F601aU+F6FFse sustituyen por códigos UTF-16 que contendrían bytes nulos , ya que LMBCS está diseñado para no contener bytes nulos incrustados. [ 27 ] [ 28 ] - IBM reservó varios identificadores de página de códigos para 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 el PUA BMP genérico, página de códigos 1445 (IBM AFP PUA n.° 1) para el plano 15 con asignaciones de IBM en U+FFF00–U+FFFFD, [ 29 ] [ 30 ] y página de códigos 1449 (IBM PUA predeterminado) para el PUA BMP con asignaciones de IBM en U+F83D–U+F8FF. [ 31 ] [ 32 ]
- El sistema de archivos que se encuentra en Windows utiliza el
U+F000bloqueU+F0FFpara escapar caracteres especiales . - NetApp traduce los caracteres en los nombres de archivo que están permitidos en Unix pero no son válidos para los clientes SMB a caracteres PUA. [ 33 ]
- La fuente Chirp de Twitter
U+E000proporciona algunos iconos adicionales, como el que corresponde a una flecha hacia abajo a la izquierda,U+EA00el que corresponde al pájaro de Twitter yU+F8FFel que corresponde a un logotipo de Apple, posiblemente para compatibilidad con las fuentes de Apple. [ 34 ]
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 que de otro modo estarían obsoletos en las escrituras de Asia Oriental se siguen utilizando en nombres específicos u otras situaciones, por lo que algunos conjuntos de caracteres para esas escrituras 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 según ECMA-48 : 0x91 uso privado uno (PU1) y 0x92 uso privado dos (PU2). [ 35 ] [ 36 ] Unicode los incluye en U+0091 <control-0091>y U+0092 <control-0092>pero los define como caracteres de control (categoría Cc), no como caracteres de uso privado (categoría Co). [ 4 ] [ 37 ]
Las codificaciones que no tienen áreas de uso privado pero sí áreas más o menos sin usar, como ISO/IEC 8859 y Shift JIS , han visto evolucionar variantes no controladas de estas codificaciones. [ 38 ] 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" . Consorcio Unicode. 10 de noviembre de 2021. Consultado el 3 de marzo de 2022 .
- 1 2 3 "Capítulo 23 Áreas especiales y caracteres de formato" (PDF) . El estándar Unicode versión 14.0 - Especificación principal . Consorcio Unicode. Septiembre de 2021. Caracteres de uso privado. ISBN 978-1-936213-29-0.
- 1 2 "Base de datos de caracteres Unicode" . El estándar Unicode . Consorcio 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 .
- ↑ "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-10-2021 . Recuperado el 11-10-2021 .
- ↑ Unicode 1.0.1 (PDF) . El estándar Unicode. Consorcio Unicode. 3 de noviembre de 1992. Archivado (PDF) del original el 2 de julio de 2016. Consultado el 9 de julio de 2016 .
- 1 2 "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) del original el 20 de noviembre de 2021. Recuperado el 11 de octubre de 2021 .
- ↑ Whistler, Ken (2000). "Cambios necesarios para ISO/IEC 10646 con respecto al PUA" . Unicode . UTC /00-015. Archivado del original el 23 de junio de 2021. Recuperado el 30 de enero de 2021 .
- ↑ Scherer, Markus; Davis, Mark; Momoi, Kat; Tong, Darick; Kida, Yasuo; Edberg, Peter (27 de abril de 2010). "Símbolos de emoji: datos de fondo" (PDF) . Consorcio Unicode. L2/10-132 . Recuperado el 24 de abril de 2025 .
- ^ Lunde, Ken (4 de agosto de 2022). "El estándar GB 18030-2022" . Medio . Consultado el 7 de agosto de 2022 .
- ↑ "Base de datos de cartas" . Eki.ee. Archivado del original el 21/05/2018 . Consultado el 11/04/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 la estructura de registros, conjuntos de caracteres y medios de intercambio" . Biblioteca del Congreso. 2 de septiembre de 2004. Archivado del original el 19 de agosto de 2013. Consultado el 11 de abril de 2013 .
- ↑ "tunerfc.tn.nic.in" . tunerfc.tn.nic.in. Archivado del original el 29/07/2010 . Consultado el 11/04/2013 .
- ↑ "Subárea de uso corporativo de Unicode tal como la usa Adobe Systems" . 22 de octubre de 1998. Archivado del original el 9 de octubre de 2002. Consultado el 12 de mayo de 2021 .
- ↑ "NSOpenStepUnicodeReservedBase - Documentación para desarrolladores de Apple" . Apple Inc. Archivado del 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 Unicode de la zona corporativa por parte de Apple" . c03. Consorcio Unicode . Archivado del original el 30 de octubre de 2020. Consultado el 16 de octubre de 2020 .
- ↑ "Rango Unicode WGL4 U+2013 a U+FB02" . Microsoft . Archivado del original el 17 de julio de 2014.
- ↑ "SFM convierte nombres de archivo HFS de Macintosh a Unicode NTFS" . Soporte técnico de Microsoft . 24 de febrero de 2014. Archivado del original el 27 de mayo de 2016.
- ↑ "ntfs.util.c" . GitHub . 2008.
Los caracteres no válidos de los nombres de archivo NTFS se codifican
[
sic
]
utilizando los caracteres Unicode de uso privado de SFM (Services for 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" . Base de conocimientos de Microsoft . Archivado del original el 22/10/2012.
- ↑ "Manejo de caracteres PUA en software de Microsoft" . SIL International . 25 de abril de 2003. Archivado del original el 11 de mayo de 2015. Consultado el 4 de marzo de 2014 .
- ↑ "Comentario n.º 8 : Error n.º 651606 (círculo de amigos) : Errores : Familia de fuentes de Ubuntu" . Launchpad . 5 de octubre de 2010. Archivado del 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 del original el 17 de octubre de 2020. Consultado el 17 de octubre de 2020 .
- ↑ Li, Renzhi (23 de agosto de 2019). "Propuesta para agregar caracteres adicionales al bloque Gráficos para computación heredada del UCS" (PDF) . Unicode . Recuperado el 31 de julio de 2023 .
- ↑ "Instalación" . Documentación beta de Powerline . Powerline. Instalación de fuentes . Consultado el 21 de abril de 2025.
La aplicación utilizada (por ejemplo, un emulador de terminal) también debe estar configurada para usar fuentes parcheadas (en algunos casos, incluso debe ser compatible porque los glifos personalizados se encuentran en un área de uso privado que algunas aplicaciones se reservan para sí mismas) o debe ser compatible con fontconfig para que Powerline funcione correctamente con los glifos específicos de Powerline.
- ↑ "lmb-excp.ucm" . GitHub . Unicode, Inc. 10 de febrero de 2000. Archivado del original el 25 de enero de 2022. Consultado el 23 de abril de 2020 .
- ↑ "Anhang 2. Der Lotus Multibyte Zeichensatz (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: PUA predeterminado de IBM" . Globalización de IBM: identificadores de página de códigos . IBM . Archivado del 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 forma 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 los de IBM o PostScript .(Incluido con Borgendale, Ken, Herramientas de visualización de teclado y página de códigos OS/2))
- ↑ "Configurar la asignación de caracteres para la traducción de nombres de archivo SMB en volúmenes" . 9 de diciembre de 2021. Consultado el 14 de octubre de 2022 .
- ↑ "Fuente Chirp de Twitter" . Copiar y pegar volcado . Recuperado el 08-02-2022 .
- ↑ "Estándar 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.
- ↑ «Capítulo 4 Propiedades de los caracteres» (PDF) . El estándar Unicode versión 14.0 - Especificación principal . Consorcio Unicode. Septiembre de 2021. Tabla 4-4. ISBN 978-1-936213-29-0.
- ↑ "Mapa (versión externa) de la codificación japonesa de Mac OS a Unicode 2.1 y posteriores" . Consorcio Unicode. Archivado del original el 31 de agosto de 2021. Consultado el 8 de octubre de 2021 .
- bloques Unicode
- Artículos con caracteres de Área de uso privado no compatibles