Glosario Unicode

150 términos esenciales de Unicode explicados — desde los fundamentos de codificación de caracteres hasta conceptos de seguridad.

Codificación (17)

ASCII

Código Estándar Americano para el Intercambio de Información. Codificación de 7 bits que cubre 128 caracteres (0–127): caracteres de control, …

ASCII Art

Visual art created from text characters, originally limited to the 95 printable ASCII characters. Unicode expands the palette with box-drawing …

Base64

Binary-to-text encoding that represents binary data using 64 ASCII characters (A–Z, a–z, 0–9, +, /). Used for embedding binary data …

Big5

Codificación de caracteres chinos tradicionales utilizada principalmente en Taiwán y Hong Kong, que codifica aproximadamente 13.000 caracteres CJK.

Codificación de caracteres

Sistema que asigna caracteres a secuencias de bytes para su almacenamiento y transmisión digital. Cada archivo de texto tiene una …

Conjunto de caracteres IANA

Registro oficial de nombres de codificaciones de caracteres mantenido por la IANA, utilizado en cabeceras HTTP Content-Type y MIME (por …

EBCDIC

Código Extendido de Intercambio Decimal Codificado en Binario. Codificación de mainframes IBM con rangos de letras no contiguos, aún usada …

EUC-KR

Codificación de caracteres coreanos basada en KS X 1001, que mapea sílabas Hangul y Hanja a secuencias de doble byte.

GB2312 / GB18030

Familia de codificaciones de caracteres chinos simplificados: GB2312 (6.763 caracteres) evolucionó a GBK y luego a GB18030, el estándar nacional …

ISO 8859

Familia de codificaciones de un solo byte de 8 bits para diferentes grupos de idiomas. ISO 8859-1 (Latin-1) fue la …

Marca de orden de bytes

U+FEFF colocado al inicio de un flujo de texto para indicar el orden de bytes y la codificación. Esencial para …

Shift JIS

Codificación de caracteres japoneses que combina ASCII/JIS Roman de un solo byte con kanji JIS X 0208 de doble byte. …

UCS-2

Codificación obsoleta de longitud fija de 2 bytes que cubre solo el BMP (U+0000–U+FFFF). Predecesor de UTF-16 que no puede …

UTF-16

Codificación Unicode de longitud variable que usa 2 o 4 bytes (1 o 2 unidades de código de 16 bits). …

UTF-32

Codificación Unicode de longitud fija que usa exactamente 4 bytes por carácter. Simple pero poco eficiente en espacio; usada internamente …

UTF-8

Codificación Unicode de longitud variable que usa de 1 a 4 bytes por carácter. Es la codificación dominante en la …

Windows-1252

Superconjunto de ISO 8859-1 de Microsoft, que añade comillas tipográficas, guión largo y signo del euro en el rango 0x80–0x9F. …

Estándar Unicode (25)

Basic Multilingual Plane (BMP)

Plano 0 (U+0000–U+FFFF), que contiene los caracteres más utilizados: Latin, Griego, Cirílico, CJK, Árabe y la mayoría de símbolos. Los …

Carácter abstracto

Unidad de información usada para organizar, controlar o representar datos textuales — la entidad conceptual antes de recibir un punto …

Carácter asignado

Punto de código al que se le ha asignado un carácter en una versión de Unicode. A partir de Unicode …

CJK

Chino, Japonés y Coreano — el término colectivo para el bloque de ideogramas Han unificados y los alfabetos relacionados en …

Consorcio Unicode

Organización sin fines de lucro que desarrolla y mantiene el Estándar Unicode. Sus miembros incluyen Apple, Google, Microsoft, Meta y …

Espacio de código

El rango completo de posibles puntos de código Unicode: U+0000 a U+10FFFF (1.114.112 en total), dividido en 17 planos de …

Han Unification

The process of mapping Chinese, Japanese, and Korean ideographs that share a common historical origin to a single Unicode code …

Hangul Jamo

The individual consonant and vowel components (jamo) of the Korean Hangul writing system. Unicode encodes both precomposed Hangul syllables (U+AC00–U+D7A3) …

ISO 10646 / Universal Character Set

Estándar internacional (ISO/IEC 10646) sincronizado con Unicode, que define el mismo repertorio de caracteres y puntos de código, pero sin …

No carácter

Puntos de código reservados permanentemente para uso interno (66 en total): U+FDD0–U+FDEF y U+nFFFE/U+nFFFF para cada plano. Válidos en texto …

Plano

Un bloque contiguo de 65.536 puntos de código. Unicode tiene 17 planos (0–16): el Plano 0 es el BMP, el …

Plano suplementario

Planos 1–16 (U+10000–U+10FFFF), que contienen emoji, escrituras históricas, extensiones CJK y notación musical. Requiere pares sustitutos en UTF-16.

Política de estabilidad Unicode

Garantía de que una vez asignado un carácter, su punto de código y nombre nunca cambian. Las propiedades pueden refinarse, …

Punto de código

Valor numérico en el espacio de código Unicode (U+0000 a U+10FFFF), escrito como U+XXXX. No todos los puntos de código …

Punto de código no asignado

Punto de código aún no asignado a ningún carácter en ninguna versión de Unicode, categorizado como Cn (No asignado). Puede …

Punto de código reservado

Punto de código reservado para futura estandarización, distinto de los no-caracteres (reservados permanentemente) y las áreas de uso privado (asignables …

Sustituto

Puntos de código U+D800–U+DFFF reservados exclusivamente para pares sustitutos en UTF-16. No son valores escalares Unicode válidos y nunca deben …

Unicode

Estándar universal de codificación de caracteres que asigna un número único (punto de código) a cada carácter de todos los …

Unicode Character Database (UCD)

Colección legible por máquina de archivos de datos que define todas las propiedades de los caracteres Unicode, incluidos UnicodeData.txt, Blocks.txt, …

Unicode Standard Annex (UAX)

Normative or informative documents that are integral parts of the Unicode Standard. UAX#9 (Bidi Algorithm), UAX#11 (East Asian Width), UAX#15 …

Unicode Technical Report (UTR)

Informational documents published by the Unicode Consortium covering specific topics like security mechanisms (UTR#39), text segmentation (UTR#29), and line breaking …

Unidad de código

La unidad mínima de codificación: un byte de 8 bits en UTF-8, una palabra de 16 bits en UTF-16, una …

Valor escalar Unicode

Cualquier punto de código excepto los sustitutos (U+D800–U+DFFF). El conjunto válido de valores que pueden representar caracteres reales, con un …

Versión Unicode

Versiones principales del Estándar Unicode, cada una añade nuevos caracteres, escrituras y características. La versión actual es Unicode 16.0 (septiembre …

Área de uso privado

Rangos reservados donde las organizaciones pueden asignar sus propios caracteres: PUA del BMP (U+E000–U+F8FF) más PUAs suplementarias en los Planos …

Propiedades (19)

Alias de nombre

Nombres alternativos para los caracteres, ya que los nombres de Unicode no pueden cambiar según la política de estabilidad. Se …

Bloque

Rango contiguo de puntos de código con nombre (por ejemplo, Basic Latin = U+0000–U+007F). Unicode 16.0 define 336 bloques; cada …

Categoría bidireccional

Propiedad que determina cómo se comporta un carácter en texto bidireccional (LTR, RTL, débil, neutro). Utilizada por el Algoritmo Bidireccional …

Categoría general

Clasificación de cada punto de código en una de 30 categorías (Lu, Ll, Nd, So, etc.) agrupadas en 7 clases …

Clase de combinación

Valor numérico (0–254) que controla el orden de los signos combinantes durante la descomposición canónica, determinando qué signos combinantes pueden …

Clúster de grafemas

El «carácter» percibido por el usuario: lo que parece una sola unidad. Puede constar de varios puntos de código (base …

Conversión de mayúsculas y minúsculas

Reglas para convertir caracteres entre mayúsculas, minúsculas y versalitas. Puede depender del idioma (problema de la I turca) y ser …

Descomposición

La descomposición de un carácter en sus partes componentes. La descomposición canónica preserva el significado (é → e + ́); …

East Asian Width

Unicode property (UAX#11) classifying characters as Narrow, Wide, Fullwidth, Halfwidth, Ambiguous, or Neutral. Wide characters (CJK ideographs, katakana) occupy two …

Equivalencia canónica

Dos secuencias de caracteres que son semánticamente idénticas y deben tratarse como iguales. Ejemplo: é (U+00E9) ≡ e + ◌́ …

Equivalencia de compatibilidad

Dos secuencias de caracteres con el mismo contenido abstracto que pueden diferir en apariencia. Más amplio que la equivalencia canónica. …

Ignorable por defecto

Caracteres que no deben tener ningún efecto visible y pueden ser ignorados por los procesos que no los admiten, incluidos …

Joining Type

Unicode property controlling how Arabic and Syriac characters connect to adjacent characters. Types include Right_Joining, Left_Joining, Dual_Joining, and Non_Joining.

Propiedad de espejo

Caracteres cuyo glifo debe reflejarse horizontalmente en contexto RTL. Ejemplos: ( → ), [ → ], { → }, « …

Propiedad de versión

La versión de Unicode en la que se asignó un carácter por primera vez. Útil para determinar la compatibilidad de …

Puntuación

Caracteres utilizados para organizar y aclarar el lenguaje escrito: puntos, comas, guiones, comillas y más. La categoría general P de …

Script Extensions

Unicode property listing all scripts that use a character, broader than the single-valued Script property. Common characters like digits have …

Sistema de escritura

El sistema de escritura al que pertenece un carácter (por ejemplo, Latin, Cyrillic, Han). Unicode 16.0 define 168 scripts; la …

Valor numérico

La interpretación numérica de un carácter, si existe: valor de dígito (0–9), valor decimal o valor numérico general (por ejemplo, …

Algoritmos (15)

Algoritmo bidireccional

Algoritmo que determina el orden de visualización de los caracteres en texto con dirección mixta (por ejemplo, inglés + árabe), …

Algoritmo de cotejo

Algoritmo estándar para comparar y ordenar cadenas Unicode mediante comparación multinivel: carácter base → tildes → mayúsculas/minúsculas → desempate. Personalizable …

Algoritmo de salto de línea

Reglas para determinar dónde puede dividirse el texto para pasar a la siguiente línea, teniendo en cuenta las propiedades de …

Case Folding

Mapping characters to a common case form for case-insensitive comparison. More comprehensive than lowercasing: German ß → ss, Turkish İ …

Exclusión de composición

Caracteres excluidos de la composición canónica (NFC) para evitar la descomposición no inicial y garantizar la estabilidad algorítmica. Listados en …

Grapheme Cluster Boundary

Rules (UAX#29) for determining where one user-perceived character ends and another begins. Critical for cursor movement, text selection, and correctly …

Límite de oración

La posición entre oraciones según las reglas de Unicode. Más complejo que dividir por puntos — maneja abreviaturas (Sr.), puntos …

Límite de palabra

La posición entre palabras según las reglas de separación de palabras de Unicode. No es una simple división por espacios …

NFC (Canonical Composition)

Forma de Normalización C: descomponer y luego recomponer canónicamente, produciendo la forma más corta. Recomendada para almacenamiento e intercambio de …

NFD (Canonical Decomposition)

Forma de Normalización D: descomposición total sin recomponer. Usada por el sistema de archivos HFS+ de macOS. é (U+00E9) → …

NFKC (Compatibility Composition)

Forma de Normalización KC: descomposición de compatibilidad seguida de composición canónica. Fusiona caracteres visualmente similares (fi→fi, ²→2, Ⅳ→IV). Usada para …

NFKD (Compatibility Decomposition)

Forma de Normalización KD: descomposición de compatibilidad sin recomponer. La normalización más agresiva, que pierde la mayor cantidad de información …

Normalización

Proceso de convertir texto Unicode a una forma canónica estándar. Cuatro formas: NFC (compuesta), NFD (descompuesta), NFKC (compatibilidad compuesta), NFKD …

Segmentación de texto

Algoritmos para encontrar límites en el texto: límites de clúster de grafemas, palabras y oraciones. Fundamental para el movimiento del …

String Comparison

Comparing Unicode strings requires normalization (NFC/NFD) and optionally collation (locale-aware sorting). Binary comparison of code points alone gives incorrect results …

Tipografía (19)

Carácter de anchura cero

Caracteres con anchura de avance cero — invisibles en la renderización pero que afectan el comportamiento del texto. Incluye ZWSP …

Carácter de combinación

Un carácter que se adjunta al carácter base anterior para modificarlo. Categoría general: Mn (sin espacio), Mc (combinación con espacio), …

Carácter de espacio en blanco

Caracteres que representan espacio horizontal o vertical pero no tienen glifo visible. Unicode define más de 17 caracteres de espacio …

Comilla

Signos de puntuación emparejados que encierran discurso directo o citas. Unicode incluye comillas rectas (""), tipográficas (""), comillas angulares (« …

CSS unicode-range

CSS @font-face descriptor specifying which Unicode code points a font should cover. Enables downloading only the font subset needed for …

Em / En (Unidades tipográficas)

Em: una anchura igual al tamaño de la fuente. En: la mitad de un em. Se usan para definir el …

Espacio de no separación

U+00A0. Un espacio que impide el salto de línea en su posición. HTML:  . Se utiliza entre números y unidades …

Font Fallback

The mechanism by which a rendering engine substitutes glyphs from a secondary font when the primary font lacks coverage for …

Fuente tipográfica

Una implementación específica de un tipo de letra en un tamaño, peso y estilo determinados. En tipografía digital, un archivo …

Glifo

La representación visual de un carácter tal como lo renderiza una fuente tipográfica. Un carácter puede tener múltiples glifos (ligaduras, …

Guión

Signos de puntuación utilizados para separar partes de una oración o indicar rangos. Unicode define múltiples guiones: guión (‐), guión …

Interletraje

Ajuste del espaciado entre pares de caracteres específicos para lograr armonía visual (p. ej., AV, To, LT). Es una característica …

Ligadura

Dos o más caracteres unidos en un único glifo. Pueden ser tipográficas (fi → fi mediante OpenType) o caracteres Unicode …

OpenType

Modern font format developed by Microsoft and Adobe supporting up to 65,535 glyphs, advanced typographic features (ligatures, alternates, kerning), and …

Puntos suspensivos

U+2026 PUNTOS SUSPENSIVOS HORIZONTALES (…). Un carácter único que reemplaza tres puntos, tipográficamente correcto y que cuenta como 1 carácter …

RTL (Right-to-Left)

Direccionalidad del texto donde los caracteres fluyen de derecha a izquierda. Utilizada por el árabe, el hebreo, el thaana y …

Signo diacrítico

Una marca añadida a una letra para cambiar su pronunciación o significado. Puede ser precompuesta (é U+00E9) o combinada (e …

Versalitas

Letras mayúsculas con la altura de las letras minúsculas. CSS: font-variant: small-caps. Unicode también incluye letras en versalitas reales en …

Web Fonts

Fonts downloaded by the browser to render text, declared via CSS @font-face. WOFF2 is the standard format. Unicode subsetting and …

Métodos de entrada (9)

Character Palette

A system-level tool for browsing and inserting Unicode characters. macOS Character Viewer (Ctrl+Cmd+Space), Windows Character Map (charmap.exe), and Linux gucharmap …

Código Alt

Método de entrada de Windows que usa Alt + dígitos del teclado numérico para escribir caracteres según su número de …

Entrada hexadecimal

Entrada directa de puntos de código Unicode tecleando el valor hexadecimal. Mac: mantener Option + hex + soltar. Windows: escribir …

Input Method Editor (IME)

Componente de software que permite introducir caracteres complejos (CJK, coreano, etc.) mediante un teclado estándar, convirtiendo secuencias de teclas en …

Mapa de caracteres

Utilidad gráfica para explorar e insertar caracteres Unicode. Windows: charmap.exe. Mac: Visualizador de caracteres (Control+Comando+Espacio). Linux: gucharmap.

Método de entrada Unicode

Cualquier método para introducir caracteres por su punto de código Unicode: entrada hexadecimal (Mac), entrada U+XXXX mediante Ctrl+Shift+U (Linux) o …

Selector de caracteres

Componente de interfaz de usuario (nativo o basado en web) para explorar y seleccionar caracteres visualmente. Los selectores de emoji …

Tecla Compose

Una tecla (generalmente Alt derecho o asignada personalmente) que inicia una secuencia de composición de múltiples teclas. Función de Linux/Unix: …

Tecla muerta

Una tecla que no produce salida inmediata pero modifica la siguiente pulsación. Se usa para diacríticos: presionar ` y luego …

Web y HTML (16)

Codificación porcentual (codificación URL)

Codificación de caracteres no ASCII y reservados en URLs reemplazando cada byte con %XX. Se usa UTF-8 primero y luego …

CSS Text Direction

CSS properties (direction, writing-mode, unicode-bidi) controlling text layout direction. Works with Unicode Bidi Algorithm for mixed LTR/RTL content in web …

Entidad HTML

Una representación textual de un carácter en HTML. Tres formas: con nombre (&), decimal (&) y hexadecimal (&). Esencial para …

Internationalized Domain Name (IDN)

Nombres de dominio que contienen caracteres Unicode no ASCII, almacenados internamente como Punycode (xn--...) pero mostrados en Unicode a los …

JavaScript Intl API

ECMAScript Internationalization API providing locale-aware string comparison (Collator), number formatting (NumberFormat), date formatting (DateTimeFormat), and segmentation (Segmenter).

Juego de caracteres Content-Type

Parámetro de encabezado HTTP que declara la codificación de caracteres de una respuesta (Content-Type: text/html; charset=utf-8). Anula cualquier declaración de …

Presentación de emoji

Renderizado de un carácter con un glifo de emoji en color, normalmente usando el Selector de variación 16 (U+FE0F). Algunos …

Presentación de texto

Renderizado de un carácter con un glifo de texto monocromo plano en lugar de un emoji en color, normalmente usando …

Propiedad CSS content

Propiedad CSS que inserta contenido generado mediante los pseudoelementos ::before y ::after usando secuencias de escape Unicode: content: "\2713" inserta …

Punycode

Codificación compatible con ASCII de nombres de dominio Unicode, convirtiendo etiquetas internacionalizadas en cadenas ASCII con prefijo xn--. münchen.de → …

Referencia de carácter con nombre

Entidad HTML que utiliza un nombre legible por humanos: © → ©, — → —. HTML5 define 2 231 referencias …

Referencia de carácter numérica

Entidad HTML que utiliza el número de punto de código Unicode: decimal (© → ©) o hexadecimal (© → ©). …

Referencia de carácter XML

La versión XML de las referencias de caracteres numéricas: ✓ o ✓. XML solo tiene 5 entidades con nombre (& …

Selector de variación

Caracteres (U+FE00–U+FE0F, U+E0100–U+E01EF) que seleccionan una variante de glifo específica. VS15 (U+FE0E) = presentación de texto, VS16 (U+FE0F) = presentación …

Unicode in CSS

CSS supports Unicode via escape sequences (\2713 for ✓), the content property for generated text, unicode-range for font subsetting, and …

Unidor de palabras

U+2060. Un carácter de anchura cero que impide el salto de línea. Es el reemplazo moderno de U+FEFF (BOM) como …

Programación y desarrollo (13)

Ambigüedad de longitud de cadena

La "longitud" de una cadena Unicode depende de la unidad: unidades de código (JavaScript .length), puntos de código (Python len()), …

Cadena de texto

Una secuencia de caracteres en un lenguaje de programación. La representación interna varía: UTF-8 (Go, Rust, nuevas versiones de Python), …

Carácter de reemplazo

U+FFFD (�). Se muestra cuando un decodificador encuentra secuencias de bytes no válidas — el símbolo universal de 'algo salió …

Carácter invisible

Cualquier carácter sin glifo visible: espacio en blanco, caracteres de anchura cero, caracteres de control y caracteres de formato. Puede …

Carácter nulo

U+0000 (NUL). El primer carácter Unicode/ASCII, usado como terminador de cadenas en C/C++. Riesgo de seguridad: la inyección de bytes …

Codificación / Decodificación

La codificación convierte caracteres en bytes (str.encode('utf-8')); la decodificación convierte bytes en caracteres (bytes.decode('utf-8')). Hacerlo correctamente previene el mojibake.

Expresión regular Unicode

Patrones de expresiones regulares que usan propiedades Unicode: \p{L} (cualquier letra), \p{Script=Greek} (script griego), \p{Emoji}. El soporte varía según el …

Java Unicode

Java strings use UTF-16 internally. char is 16-bit (only BMP). For supplementary characters, use codePointAt() and Character.toChars(). Java's \uXXXX escapes …

Mojibake

Texto ilegible resultado de decodificar bytes con la codificación incorrecta. Término japonés (文字化け). Ejemplo: 'café' almacenado como UTF-8 pero leído …

Par sustituto

Dos unidades de código de 16 bits (un sustituto alto U+D800–U+DBFF + sustituto bajo U+DC00–U+DFFF) que juntos codifican un carácter …

Python Unicode

Python 3 uses Unicode strings by default (str = UTF-8 internally via PEP 393). Key features: \N{name} escapes, unicodedata module, …

Rust Unicode

Rust strings (str/String) are guaranteed valid UTF-8. char type represents a Unicode scalar value (4 bytes). Iteration via .chars() yields …

Secuencia de escape Unicode

Sintaxis para representar caracteres Unicode en el código fuente. Varía según el lenguaje: \u2713 (Python/Java/JS), \u{2713} (JS/Ruby/Rust), \U00012345 (Python/C).

Seguridad (10)

Ataque de anulación bidireccional

Uso de caracteres de anulación bidireccional Unicode (U+202A–U+202E, U+2066–U+2069) para disfrazar nombres de archivos o código malicioso. 'readme‮fdp.exe' se muestra …

Ataque de homógrafos IDN

Uso de caracteres Unicode visualmente similares en nombres de dominio para suplantar sitios legítimos. аpple.com (а cirílico) parece apple.com. Los …

Bidi Text Attack

Exploiting Unicode bidirectional control characters to disguise malicious code or filenames. The 'Trojan Source' attack (CVE-2021-42574) uses bidi overrides to …

Carácter confundible

El término oficial de Unicode para pares de caracteres que pueden confundirse visualmente, definidos en confusables.txt (UCD). Más amplio que …

Detección de scripts mixtos

Identificación de texto que mezcla caracteres de diferentes alfabetos (p. ej., latino + cirílico). Es la principal defensa contra los …

Homoglifo

Caracteres de diferentes alfabetos que se ven idénticos o muy similares, como la 'a' latina y la 'а' cirílica. Se …

Normalization Attack

Exploiting Unicode normalization to bypass security filters. Input validated before normalization may change form after: 'fi' (U+FB01) normalizes to 'fi', …

Suplantación Unicode

Uso de características Unicode para engañar a los usuarios: homoglifos para dominios falsos, anulaciones bidi para extensiones de archivo falsas, …

Zero Width Joiner (ZWJ)

U+200D. Solicita que los caracteres adyacentes se unan. Fundamental para las secuencias de emoji (👩+ZWJ+💻=👩‍💻). En los alfabetos índicos, solicita …

Zero Width Non-Joiner (ZWNJ)

U+200C. Impide la unión de caracteres adyacentes. Esencial en persa y árabe para las formas correctas de las letras, y …

Emoji (6)

Miscelánea (1)