Secuencias Unicode

Unicode permite definir nuevos caracteres combinando varios caracteres consecutivamente. Estas combinaciones de caracteres se denominan secuencias Unicode. En esta lección se explican las reglas de creación de las secuencias Unicode.

Esta lección es la tercera lección de un grupo de tres lecciones que se recomienda leer en el siguiente orden:

Como complemento a las lecciones anteriores, las páginas siguientes muestran diferentes símbolos Unicode agrupados por temas:

Información contenida en las fichas

Los ejemplos de secuencias Unicode de estas lecciones se muestran en forma de fichas. En cada ficha se muestra:

Secuencias Unicode

Las secuencias Unicode están formadas por varios caracteres Unicode consecutivos, sin espacios intermedios. El número de caracteres que forman las secuencias puede oscilar entre dos y ocho caracteres. Las secuencias permitidas están definidas en la norma Unicode.

Algunas secuencias Unicode combinan varios caracteres que corresponden cada uno de ellos a un emoji, pero la mayoría utiliza también una serie de caracteres especiales: los selectores de presentación VS15 y VS 16, los modificadores Fitzpatrick o el carácter Zero-width Joiner (ZWJ).

Se explican a continuación estos tres tipos de caracteres especiales:

Selectores de presentación VS15 y VS16 (texto/emoji)

Algunos caracteres Unicode tienen varias representaciones gráficas posibles. Para indicar la representación deseada se puede escribir a continuación del carácter Unicode uno de los dieciséis selectores de presentación, sin espacios en blanco intermedios. Los selectores de presentación son los caracteres Unicode desde U+FE00 a U+FE0F, aunque existe otro grupo de 256 selectores de presentación adicionales.

Una de las posibles variaciones en las representaciones gráficas es la variación texto/emoji. Algunos caracteres se pueden representar como texto (suelen ser unos dibujos esquemáticos en blanco y negro) o como emojis (suelen ser dibujos más elaborados y en color). Puede consultar la lista completa de caracteres con representaciones texto/emoji.

La representación como texto se indica con el selector de presentación VS15 (carácter U+FE0E) y la representación como emoji se indica con el selector de presentación VS16 (carácter U+FE0F). Los caracteres que admiten ambas representaciones tienen una representación predeterminada, que puede ser una u otra.


Por ejemplo, los caracteres Unicode U+231A (reloj) y U26F9 (persona con balón) admiten las dos representaciones, pero tienen representaciones predeterminadas distintas:

⌚ + VS15 = ⌚︎

U+231A

Hex: ⌚
Dec: ⌚

watch

U+231A U+FE0E

⌚︎

Hex: ⌚︎
Dec: ⌚︎

watch (TEXTO)

U+231A U+FE0F

⌚️

Hex: ⌚️
Dec: ⌚️

watch (EMOJI)

⛹ + VS16 = ⛹️

U+26F9

Hex: ⛹
Dec: ⛹

person with ball

U+26F9 U+FE0E

⛹︎

Hex: ⛹︎
Dec: ⛹︎

person with ball (TEXTO)

U+26F9 U+FE0F

⛹️

Hex: ⛹️
Dec: ⛹️

person with ball (EMOJI)

Colores de piel (modificadores Fitzpatrick)

Los modificadores Fitzpatrick son cinco caracteres Unicode consecutivos, desde U+1F3FB hasta U+1F3FF, que representan cinco tonalidades de piel, de la más clara a la más oscura.

U+1F3FB

🏻

Hex: 🏻
Dec: 🏻

emoji modifier Fitzpatrick type-1-2

U+1F3FC

🏼

Hex: 🏼
Dec: 🏼

emoji modifier Fitzpatrick type-3

U+1F3FD

🏽

Hex: 🏽
Dec: 🏽

emoji modifier Fitzpatrick type-4

U+1F3FE

🏾

Hex: 🏾
Dec: 🏾

emoji modifier Fitzpatrick type-5

U+1F3FF

🏿

Hex: 🏿
Dec: 🏿

emoji modifier Fitzpatrick type-6

Cuando estos caracteres se escriben a continuación de algunos emojis que representan individuos, los emojis se muestran con el color de piel correspondiente.


Por ejemplo, para mostrar el emoji de una niña con la piel oscura se pueden escribir el carácter correspondiente a una niña (U+1F467) y el modificador Fitzpatrick de tipo 6 (U+1F3FF):

👧 + 🏿 = 👧🏿

U+1F467

👧

Hex: 👧
Dec: 👧

girl

U+1F467 U+1F3FF

👧🏿

Hex: 👧🏿
Dec: 👧🏿

girl: dark skin tone

El ejemplo siguiente muestra el carácter &#x1F467 (chica) seguido de cada uno de los modificadores Fitzpatrick:


<p style="font-size: 3rem; line-height: 1rem;">&#x1F467; + &#x1F3FB; = &#x1F467;&#x1F3FB;</p>

<p style="font-size: 3rem; line-height: 1rem;">&#x1F467; + &#x1F3FC; = &#x1F467;&#x1F3FC;</p>

<p style="font-size: 3rem; line-height: 1rem;">&#x1F467; + &#x1F3FD; = &#x1F467;&#x1F3FD;</p>

<p style="font-size: 3rem; line-height: 1rem;">&#x1F467; + &#x1F3FE; = &#x1F467;&#x1F3FE;</p>

<p style="font-size: 3rem; line-height: 1rem;">&#x1F467; + &#x1F3FF; = &#x1F467;&#x1F3FF;</p>

Enlace externo

Secuencias Zero-width Joiner (ZWJ) de caracteres Unicode

El carácter ZWJ (Zero-Width Joiner, es decir Conector sin anchura) es el carácter Unicode U+200D. Este carácter se introdujo para indicar que dos o más caracteres se deben considerar de forma conjunta y se utiliza de forma habitual en escrituras como la árabe o las indias. El carácter ZWJ se escribe entre los dos caracteres que se quieren agrupar, sin espacios intermedios.

El carácter ZWJ también se utiliza para definir nuevos emojis combinando dos o más emojis simples, como puede verse en el catálogo de secuencias emoji ZWJ.

En algunos casos, los navegadores muestran el resultado aunque se omita el carácter ZWJ, escribiendo los caracteres uno a continuación del otro, sin separación, pero no se recomienda hacerlo.

Por ejemplo, para mostrar el emoji de un perro guía se puede escribir el carácter correspondiente a un perro (U+1F415) y el carácter correspondiente a un chaleco salvavidas (U+1F9BA), intercalando el carácter ZWJ (U+0200D), sin espacios entre ellos:

🐕 + ZWJ + 🦺 = 🐕‍🦺

U+1F415 U+200D U+1F9BA

🐕‍🦺

Hex: &#x1f415;&#x200d;&#x1f9ba;
Dec: &#128021;&#8205;&#129466;

service dog

Tipos de secuencias

Las secuencias Unicode siguen reglas de construcción similares, pero muy variadas. A continuación se explican las distintas reglas.

Géneros (masculino, femenino, neutro)

Las secuencias Unicode correspondientes a profesiones o actividades con personajes masculinos, femeninos o neutros que se muestran en la lección Secuencias: Géneros se pueden clasificar en grupos de acuerdo con el número de caracteres de la secuencia:

Colores de piel

Las secuencias Unicode correspondientes a humanos con colores de piel específicos que se muestran en la lección Secuencias: Colores de piel se pueden clasificar en grupos de acuerdo con el número de caracteres de la secuencia:

Familias

Las secuencias Unicode correspondientes a familias formadas por uno o dos padres o madres y uno o dos hijos o hijas que se muestran en el apartado Familias de la lección Secuencias: Parejas se obtienen combinando los caracteres U+1F468 (hombre, 👨), U+1F469 (mujer, 👩), U+1F466 (niño 👦) y U+1F467 (niña 👧), uniéndolos con caracteres ZWJ (U+200D, Zero-Width Joiner), sin espacios entre ellos. Las únicas restricciones es que los padres deben escribirse antes que los hijos, que si los padres son un hombre y una mujer, el hombre debe escribirse antes que la mujer y que si los hijos son un niño y una niña, la niña debe escribirse antes que el niño.

Por ejemplo:

U+1F468 U+200D U+1F467

👨‍👧

Hex: &#x1f468;&#x200d;&#x1f467;
Dec: &#128104;&#8205;&#128103;

family: man, girl

U+1F469 U+200D U+1F466 U+200D U+1F466

👩‍👦‍👦

Hex: &#x1f469;&#x200d;&#x1f466;&#x200d;&#x1f466;
Dec: &#128105;&#8205;&#128102;&#8205;&#128102;

family: woman, boy, boy

U+1F468 U+200D U+1F469 U+200D U+1F467 U+200D U+1F466

👨‍👩‍👧‍👦

Hex: &#x1f468;&#x200d;&#x1f469;&#x200d;&#x1f467;&#x200d;&#x1f466;
Dec: &#128104;&#8205;&#128105;&#8205;&#128103;&#8205;&#128102;

family: man, woman, girl, boy

Nota: Actualmente (octubre de 2022), Windows 10 muestra emojis aunque no se respeten las restricciones en el orden de los caracteres (es decir, permite escribir la mujer antes del hombre o el niño antes de la niña), pero esas secuencias no están definidas por Unicode.

Incorrecto 👩 + ZWJ + 👨 + ZWJ + 👦 + ZWJ + 👧 = 👩‍👨‍👦‍👧


En Unicode 15.1 (septiembre de 2023) se introdujeron tres secuencias Unicode que definen familias genéricas formadas por uno o dos adultos y uno o dos niños (sin género) que se muestran en el apartado Familias genéricas de la lección Secuencias: Parejas. Estas tres secuencias se obtienen combinando tres o cuatro caracteres U+1F9D1 (adulto, 🧑) y U+1F9D2 (niño neutro 🧒), uniéndolos con caracteres ZWJ (U+200D, Zero-Width Joiner), sin espacios entre ellos.

Por ejemplo, para mostrar una familia genérica formada por un adulto y dos niños se debe escribir la secuencia Adulto + ZWJ + Niño + ZWJ + Niño (U+1F9D1 U+200D U+1F9D2 U+200D U+1F9D2):

🧑 + ZWJ + 🧒 + ZWJ + 🧒 = 🧑‍🧒‍🧒

U+1F9D1 U+200D U+1F9D2 U+200D U+1F9D2

🧑‍🧒‍🧒

Hex: &#x1f9d1;&#x200d;&#x1f9d2;&#x200d;&#x1f9d2;
Dec: &#129489;&#8205;&#129490;&#8205;&#129490;

family: adult, child, child

No disponible en Windows 10

Parejas cogidas de la mano

Las secuencias Unicode correspondientes a parejas cogidas de la mano con colores de piel específicos que se muestran en la lección Secuencias: Parejas se pueden clasificar en grupos de acuerdo con el número de caracteres de la secuencia:

Parejas de rostros de enamorados

Las secuencias Unicode correspondientes a parejas de rostros de enamorados con colores de piel específicos que se muestran en la lección Secuencias: Parejas se pueden clasificar en grupos de acuerdo con el número de caracteres de la secuencia:

Parejas de rostros de enamorados besándose

Las secuencias Unicode correspondientes a parejas de rostros de enamorados besándose con colores de piel específicos que se muestran en la lección Secuencias: Parejas se pueden clasificar en grupos de acuerdo con el número de caracteres de la secuencia:

Banderas

Las secuencias Unicode correspondientes a banderas que se muestran en la lección Secuencias: Banderas se pueden clasificar en grupos de acuerdo con el tipo de bandera representada:

Sentido

En general, los emojis que representan figuras representadas de lado (sean personas, animales o cosas) suelen estar dirigidas hacia la izquierda. En Unicode 15.1 (septiembre de 2023) se ha introducido un mecanismo para definir secuencias que cambian la dirección de la figura para que esté dirigida hacia la derecha y se han definido algunas secuencias que utilizan este mecanismo.

El mecanismo consiste en incluir al final de la secuencia de la figura el carácter Flecha derecha en sus variantes texto (U+27A1, ) o emoji (U+27A1 U+FE0F, ➡️).

Otras secuencias

Las secuencias Unicode que se muestran en la lección Secuencias: otras se pueden clasificar en grupos que no pertenecen a apartados del resto de páginas de secuencias Unicode: