Provided by: manpages-es_4.26.0-1_all bug

NOMBRE

       unicode - conjunto de caracteres universal

DESCRIPCIÓN

       El  estándar  internacional ISO/IEC 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.

       UCS contiene los caracteres necesarios para representar prácticamente todos los lenguajes conocidos. Esto
       incluye no sólo los alfabetos latino, griego, cirílico, árabe, armenio y georgiano  sino  también  chino,
       japones y la variante Han de los ideogramas coreanos además de alfabetos como Hiragana, Katakana, Hangul,
       Devanagari,  Bengali,  Gurmukhi,  Gujarati,  Oriya,  Tamil, Telugu, Kannada, Malayalam, Thai, Lao, Khmer,
       Bopomofo, Tibetan, Runic, Ethiopic, Canadian Syllabics, Cherokee,  Mongolian,  Ogham,  Myanmar,  Sinhala,
       Thaana,  Yi  y  otros.  Para  aquellos  alfabetos  aún  no  cubiertos,  todavía se está investigando cómo
       codificarlos de la mejor manera posible para su uso en  sistemas  informáticos.  Al  final,  esto  podría
       incluir  no  sólo jeroglíficos y varios lenguajes indo-europeos históricos sino incluso algunos alfabetos
       artísticos seleccionados como Tengwar, Cirth y Klingon. UCS abarca también un  gran  número  de  símbolos
       gráficos,  tipográficos,  matemáticos y científicos, que incluyen aquellos provistos por TeX, Postscript,
       APL, MS-DOS, MS-Windows, Macintosh, fuentes OCR, así como varios sistemas de  procesamiento  de  texto  y
       publicación, añadiéndose más cada día.

       El  estándar  UCS  (ISO/IEC  10646)  describe  una arquitectura del conjunto de caracteres de 31 bits que
       consiste en 128 grupos de 24 bits, cada uno dividido en 256 planos de 16 bits formados por 256 filas  con
       256  columnas,  una  por  cada  carácter. La primera parte del estándar (ISO 10646-1) define las primeras
       65534 posiciones de los códigos (0x0000 a 0xfffd), que forman el BMP (Basic Multilingual  Plane  -  Plano
       Multilingüe  Básico),  que es el plano 0 en el grupo 0. La segunda parte del estándar (ISO 10646-2) añade
       caracteres al grupo 0 fuera del BMP en varios planos adicionales en el rango de 0x10000  a  0x10ffff.  No
       hay  intenciones  de  añadir  caracteres  al  estándar más allá de 0x10ffff, por consiguiente, de todo el
       espacio de códigos, solamente una pequeña fracción  del  grupo  0  será  usada  realmente  en  un  futuro
       previsible.  El  BMP contiene todos los caracteres que se encuentran en los otros conjuntos de caracteres
       usados frecuentemente. Los planos adicionales añadidos  por  ISO  10646-2  abarcan  sólo  más  caracteres
       exóticos para necesidades científicas especiales, impresión de diccionarios, industria de la publicación,
       protocolos de más alto nivel y necesidades entusiastas.

       La  representación de cada carácter UCS como una palabra de 2 bytes es referida como la forma UCS-2 (sólo
       para caracteres BMP), mientras que UCS-4 es la representación de cada carácter  como  una  palabra  de  4
       bytes.  Además, existen dos formas de codificación, UTF-8 por compatibilidad hacia atrás con software que
       maneje ASCII y UTF-16 por compatibilidad hacia atrás con software UCS-2 que maneje caracteres  fuera  del
       BMP por debajo de 0x10ffff.

       Los caracteres UCS del 0x0000 al 0x007f son idénticos a los del conjunto de caracteres clásico US-ASCII y
       los  caracteres  en  el  rango  de  0x0000  a  0x00ff  son  idénticos  a  los  del conjunto de caracteres
       ISO/IEC 8859-1 (Latin-1).

   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/IEC 10646-1 especifica los siguientes tres niveles de implementación de 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).

       Nivel 3  Todos los caracteres de UCS están soportados.

       El  estándar  Unicode  3.0  publicado  por el Consorcio Unicode contiene exactamente el Plano Multilingüe
       Básico UCS implementado al nivel 3, según se describe en ISO/IEC 10646:2000. Unicode 3.1 añade los planos
       adicionales de ISO 10646-2. El estándar Unicode y los  informes  técnicos  publicados  por  el  Consorcio
       Unicode  proporcionan  mucha  información  adicional sobre la semántica y los usos recomendados de varios
       caracteres. Proporcionan pautas y algoritmos para editar,  ordenar,  comparar,  normalizar,  convertir  y
       mostrar cadenas Unicode.

   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.

       El estándar UCS/Unicode puede ser utilizado exactamente igual que el ASCII en flujos  de  entrada/salida,
       comunicación  con  la  terminal, ficheros en texto plano, nombres de fichero y variables de entorno en la
       codificación multibyte UTF-8 compatible con ASCII. Para indicar el uso  de  UTF-8  como  codificación  de
       caracteres  a todas las aplicaciones, debe seleccionarse una locale adecuada a través de las variables de
       entorno (p.ej., "LANG=en_GB.UTF-8").

       La función nl_langinfo(CODESET) devuelve  el  nombre  de  la  codificación  escogida.  Pueden  utilizarse
       funciones  de  biblioteca  tales  como  wctomb(3)  y mbsrtowcs(3) para convertir los caracteres y cadenas
       internas wchar_t a la codificación de caracteres del sistema y viceversa, y la  función  wcwidth(3)  para
       averiguar cuantas posiciones (0–2) avanzó el cursor al escribir un carácter.

   Áreas de uso privado (PUA)
       En  el  BMP, 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 LANANA y el
       propio  registro  es  Documentation/admin-guide/unicode.rst   en   le   código   fuente   de   Linux   (o
       Documentation/unicode.txt antes de la versión 4.10 de Linux).

       Dos  planos  más están reservados para uso privado, el plano 15 (Uso adicional Area-A, range de 0xf0000 a
       0xffffd)  y el plano 16 (Uso adicional Area-B, range de 0x100000 a 0x10fffd).

   Literatura
       •  Information technology — Universal Multiple-Octet Coded CharacterSet (UCS) — Part 1: Architecture  and
          Basic   Multilingual  Plane.International  Standard  ISO/IEC  10646-1,  International  Organizationfor
          Standardization, Geneva, 2000.

          Esta es la especificación oficial de UCS. Está disponible en http://www.iso.ch/.

       •  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.

          Una buena referencia sobre el lenguaje de programación C. La cuarta edición abarca la  Enmienda  1  de
          1994  al  estándar  ISO  C  90, que añade un gran número de nuevas funciones a la biblioteca de C para
          manejar codificaciones de caracteres anchos y multibyte, pero que aún no cubre el estándar ISO  C  99,
          que mejoró el soporte para caracteres anchos y multibyte aún más.

       •  Unicode Technical Reports.
          http://www.unicode.org/reports/

       •  Markus Kuhn: UTF-8 and Unicode FAQ for UNIX/Linux.
          http://www.cl.cam.ac.uk/~mgk25/unicode.html

       •  Bruno Haible: Unicode HOWTO.
          http://www.tldp.org/HOWTO/Unicode-HOWTO.html

VÉASE TAMBIÉN

       locale(1), setlocale(3), charsets(7), utf-8(7)

TRADUCCIÓN

       La traducción al español de esta página del manual fue creada por Miguel Pérez Ibars <mpi79470@alu.um.es>
       y Marcos Fouces <marcos@debian.org>

       Esta  traducción  es  documentación  libre;  lea  la GNU General Public License Version 3 o posterior con
       respecto a las condiciones de copyright.  No existe NINGUNA RESPONSABILIDAD.

       Si encuentra algún error en la traducción de esta página  del  manual,  envíe  un  correo  electrónico  a
       debian-l10n-spanish@lists.debian.org.

Páginas de Manual de Linux 6.9.1                   2 Mayo 2024                                        unicode(7)