other languages
other sections
UNICODE(7) | Manual del Programador de Linux | UNICODE(7) |
NOMBRE¶
Unicode - el Conjunto de Caracteres UniversalDESCRIPCIÓN¶
El estándar internacional ISO 10646 define el conjunto de caracteres UCS (Universal Character Set - Conjunto de Caracteres Universal). UCS contiene todos los caracteres de todos los demás estándares de conjuntos de caracteres. También garantiza una compatibilidad de ida y vuelta (round-trip), es decir, se pueden construir tablas de conversión de tal forma que no se pierda ninguna información cuando una cadena se convierta desde cualquier otra codificación a UCS y viceversa.CARACTERES DE COMBINACIÓN¶
Algunos códigos en UCS han sido asignados como caracteres de combinación. Éstos son similares a las teclas de acento en una máquina de escribir. Un carácter de combinación sólo añade un acento al carácter previo. Los caracteres acentuados más importantes tienen códigos propios en UCS, sin embargo, el mecanismo de combinación de caracteres permite añadir acentos y otras marcas diacríticas a cualquier carácter. Los caracteres de combinación siempre siguen al carácter al cual modifican. Por ejemplo, en alemán el carácter Umlaut-A ("A mayúscula con diéresis") puede representarse por el ya compuesto código UCS 0x00c4, o alternativamente como la combinación de una "A mayúscula" normal seguida por una "diéresis de combinación": 0x0041 0x0308. Los caracteres de combinación son esenciales para, por ejemplo, codificar el alfabeto Tai o para tipografía matemática y para usuarios del Alfabeto Fonético Internacional.NIVELES DE IMPLEMENTACIÓN¶
Puesto que no se espera que todos los sistemas soporten mecanismos avanzados tales como los caracteres de combinación, el ISO 10646-1 especifica los siguientes tres grados de implementación del UCS:- Nivel 1
- Los caracteres de combinación y caracteres Hangul Jamo (una codificación especial del coreano, en la que un glifo (glyph) de una sílaba Hangul se codifica como una terna o un par de códigos de vocal/consonante) no están implementados.
- Nivel 2
- Además de los del nivel 1, se permiten caracteres de combinación para algunos idiomas donde resultan esenciales (p.ej., Tai, Lao, hebreo, árabe, Devangari, Malayalam, etc.).
- Nivel 3
- Todos los caracteres de UCS están soportados.
UNICODE EN LINUX¶
Bajo GNU/Linux, el tipo en C wchar_t es un tipo entero de 32 bits con signo. Sus posibles valores son interpretados siempre por la biblioteca C como códigos UCS (en todas las localizaciones), una convención que es notificada por la biblioteca C de GNU a las aplicaciones definiendo la constante __STDC_ISO_10646__ tal como se especifica en el estándar ISO C 99.ÁREA PRIVADA¶
En el BMP, en el rango de 0xe000 a 0xf8ff ningún carácter será nunca asignado por el estándar y dicha zona se reserva para uso privado. Para la comunidad Linux, esta área privada ha sido subdividida aún más en el rango de 0xe000 a 0xefff que puede ser utilizado a nivel particular por cualquier usuario final y la zona Linux en el rango de 0xf000 a 0xf8ff donde las extensiones se coordinan entre todos los usuarios de Linux. El registro de los caracteres asignados a la zona Linux es mantenido actualmente por H. Peter Anvin <Peter.Anvin@linux.org>.LITERATURA¶
- *
- Information technology — Universal Multiple-Octet
Coded Character Set (UCS) — Part 1: Architecture and Basic
Multilingual Plane. International Standard ISO/IEC 10646-1, International
Organization for Standardization, Geneva, 2000.
- *
- The Unicode Standard, Version 3.0. The Unicode Consortium, Addison-Wesley, Reading, MA, 2000, ISBN 0-201-61633-5.
- *
- S. Harbison, G. Steele. C: A Reference Manual. Fourth
edition, Prentice Hall, Englewood Cliffs, 1995, ISBN 0-13-326224-3.
- *
- Unicode Technical Reports.
- *
- Markus Kuhn: UTF-8 and Unicode FAQ for Unix/Linux.
http://www.cl.cam.ac.uk/~mgk25/unicode.html
Proporciona información de suscripción a la lista de correo
linux-utf8, que es el mejor lugar para buscar consejo sobre el uso de
Unicode en Linux.
- *
- Bruno Haible: Unicode HOWTO.
FALLOS¶
Cuando esta página de manual fue revisada por última vez, el soporte de la biblioteca C de GNU para localizaciones UTF-8 estaba ya maduro y el soporte de XFree86 estaba en un estado avanzado, pero sin embargo el desarrollo de aplicaciones (en su mayoría editores) que hicieran un uso adecuado de localizaciones UTF-8 estaba aún completamente en progreso. El soporte general actual de UCS bajo Linux normalmente proporciona caracteres de ancho doble para CJK y algunas veces incluso sencillos caracteres de combinación impactantes ( overstriking), pero normalmente no incluye soporte para alfabetos en los que se escribe de derecha a izquierda o con sustitución de ligaduras como el hebreo, el árabe y el hidú. Estos alfabetos están soportados actualmente sólo por ciertas aplicaciones gráficas (visores HTML, procesadores de texto) con sofisticados motores de visualización de texto.AUTOR¶
Markus Kuhn <mgk25@cl.cam.ac.uk>VÉASE TAMBIÉN¶
utf-8(7), charsets(7), setlocale(3)11 mayo 2001 | GNU |