Glossário Unicode
150 termos essenciais Unicode explicados — dos fundamentos de codificação de caracteres aos conceitos de segurança.
Codificação (17)
Código Padrão Americano para o Intercâmbio de Informação. Codificação de 7 bits cobrindo 128 caracteres (0–127): caracteres de controle, dígitos, …
Visual art created from text characters, originally limited to the 95 printable ASCII characters. Unicode expands the palette with box-drawing …
Binary-to-text encoding that represents binary data using 64 ASCII characters (A–Z, a–z, 0–9, +, /). Used for embedding binary data …
Codificação de caracteres chineses tradicionais usada principalmente em Taiwan e Hong Kong, codificando aproximadamente 13.000 caracteres CJK.
Sistema que mapeia caracteres para sequências de bytes para armazenamento e transmissão digital. Todo arquivo de texto tem uma codificação …
Registro oficial de nomes de codificações de caracteres mantido pela IANA, usado em cabeçalhos HTTP Content-Type e MIME (por exemplo, …
Código Estendido de Intercâmbio Decimal Codificado em Binário. Codificação de mainframe IBM com intervalos de letras não contíguos, ainda usada …
Codificação de caracteres coreanos baseada em KS X 1001, mapeando sílabas Hangul e Hanja para sequências de duplo byte.
Família de codificações de caracteres chineses simplificados: GB2312 (6.763 caracteres) evoluiu para GBK e depois GB18030, o padrão nacional chinês …
Família de codificações de byte único de 8 bits para diferentes grupos de idiomas. ISO 8859-1 (Latin-1) foi a base …
U+FEFF colocado no início de um fluxo de texto para indicar a ordem de bytes e a codificação. Essencial para …
Codificação de caracteres japoneses combinando ASCII/JIS Roman de byte único com kanji JIS X 0208 de duplo byte. Ainda utilizada …
Codificação obsoleta de comprimento fixo de 2 bytes cobrindo apenas o BMP (U+0000–U+FFFF). Predecessor do UTF-16 que não pode representar …
Codificação Unicode de comprimento variável usando 2 ou 4 bytes (1 ou 2 unidades de código de 16 bits). Utilizada …
Codificação Unicode de comprimento fixo usando exatamente 4 bytes por caractere. Simples, mas ineficiente em espaço; utilizada internamente pelo Python …
Codificação Unicode de comprimento variável usando de 1 a 4 bytes por caractere. É a codificação dominante na web (mais …
Superconjunto da ISO 8859-1 da Microsoft, adicionando aspas tipográficas, travessão e sinal do euro no intervalo 0x80–0x9F. A codificação legada …
Padrão Unicode (25)
Plano 0 (U+0000–U+FFFF), contendo os caracteres mais usados, incluindo latino, grego, cirílico, CJK, árabe e a maioria dos símbolos. Os …
Unidade de informação usada para organizar, controlar ou representar dados textuais — a entidade conceitual antes de receber um ponto …
Ponto de código ao qual foi atribuída uma designação de caractere em uma versão do Unicode. A partir do Unicode …
Chinês, Japonês e Coreano — o termo coletivo para o bloco de ideogramas Han unificados e escritas relacionadas no Unicode. …
Organização sem fins lucrativos que desenvolve e mantém o Padrão Unicode. Os membros incluem Apple, Google, Microsoft, Meta e muitas …
O intervalo completo de possíveis pontos de código Unicode: U+0000 a U+10FFFF (1.114.112 no total), dividido em 17 planos de …
The process of mapping Chinese, Japanese, and Korean ideographs that share a common historical origin to a single Unicode code …
The individual consonant and vowel components (jamo) of the Korean Hangul writing system. Unicode encodes both precomposed Hangul syllables (U+AC00–U+D7A3) …
Norma internacional (ISO/IEC 10646) sincronizada com o Unicode, definindo o mesmo repertório de caracteres e pontos de código, mas sem …
Pontos de código permanentemente reservados para uso interno (66 no total): U+FDD0–U+FDEF e U+nFFFE/U+nFFFF para cada plano. Válidos em texto, …
Um bloco contíguo de 65.536 pontos de código. O Unicode tem 17 planos (0–16): o Plano 0 é o BMP, …
Planos 1–16 (U+10000–U+10FFFF), contendo emoji, escritas históricas, extensões CJK e notação musical. Requer pares substitutos em UTF-16.
Garantia de que, uma vez atribuído um caractere, seu ponto de código e nome nunca mudam. As propriedades podem ser …
Valor numérico no espaço de código Unicode (U+0000 a U+10FFFF), escrito como U+XXXX. Nem todos os pontos de código são …
Ponto de código ainda não atribuído a um caractere em nenhuma versão do Unicode, categorizado como Cn (Não atribuído). Pode …
Ponto de código reservado para futura padronização, distinto dos não-caracteres (permanentemente reservados) e das áreas de uso privado (atribuíveis pelo …
Pontos de código U+D800–U+DFFF reservados exclusivamente para pares substitutos em UTF-16. Não são valores escalares Unicode válidos e nunca devem …
Padrão universal de codificação de caracteres que atribui um número único (ponto de código) a cada caractere em todos os …
Coleção de arquivos de dados legíveis por máquina que define todas as propriedades dos caracteres Unicode, incluindo UnicodeData.txt, Blocks.txt, Scripts.txt …
Normative or informative documents that are integral parts of the Unicode Standard. UAX#9 (Bidi Algorithm), UAX#11 (East Asian Width), UAX#15 …
Informational documents published by the Unicode Consortium covering specific topics like security mechanisms (UTR#39), text segmentation (UTR#29), and line breaking …
A unidade mínima de codificação: um byte de 8 bits em UTF-8, uma palavra de 16 bits em UTF-16, uma …
Qualquer ponto de código exceto os substitutos (U+D800–U+DFFF). O conjunto válido de valores que podem representar caracteres reais, totalizando 1.112.064.
Versões principais do Padrão Unicode, cada uma adicionando novos caracteres, escritas e recursos. A versão atual é Unicode 16.0 (setembro …
Intervalos reservados onde organizações podem atribuir seus próprios caracteres: PUA do BMP (U+E000–U+F8FF) mais PUAs suplementares nos Planos 15 e …
Propriedades (19)
Nomes alternativos para caracteres, pois os nomes Unicode não podem mudar conforme a política de estabilidade. Usados para correções, abreviações …
Intervalo contíguo nomeado de pontos de código (por exemplo, Basic Latin = U+0000–U+007F). O Unicode 16.0 define 336 blocos; cada …
Propriedade que determina como um caractere se comporta em texto bidirecional (LTR, RTL, fraco, neutro). Utilizada pelo Algoritmo Bidirecional Unicode …
Classificação de cada ponto de código em uma das 30 categorias (Lu, Ll, Nd, So, etc.) agrupadas em 7 classes …
Valor numérico (0–254) que controla a ordenação de marcas de combinação durante a decomposição canônica, determinando quais marcas de combinação …
O mapeamento de um caractere para suas partes componentes. A decomposição canônica preserva o significado (é → e + ́); …
Unicode property (UAX#11) classifying characters as Narrow, Wide, Fullwidth, Halfwidth, Ambiguous, or Neutral. Wide characters (CJK ideographs, katakana) occupy two …
Duas sequências de caracteres que são semanticamente idênticas e devem ser tratadas como iguais. Exemplo: é (U+00E9) ≡ e + …
Duas sequências de caracteres com o mesmo conteúdo abstrato que podem diferir na aparência. Mais amplo que a equivalência canônica. …
O "caractere" percebido pelo usuário — o que parece uma única unidade. Pode consistir em vários pontos de código (base …
Caracteres que não devem ter nenhum efeito visível e podem ser ignorados por processos que não os suportam, incluindo seletores …
Unicode property controlling how Arabic and Syriac characters connect to adjacent characters. Types include Right_Joining, Left_Joining, Dual_Joining, and Non_Joining.
Regras para converter caracteres entre maiúsculas, minúsculas e título. Pode depender do idioma (problema do I turco) e ser de …
Caracteres usados para organizar e clarificar a linguagem escrita: pontos, vírgulas, traços, aspas e mais. A Categoria Geral P do …
A versão do Unicode na qual um caractere foi atribuído pela primeira vez. Útil para determinar a compatibilidade do caractere …
Caracteres cujo glifo deve ser espelhado horizontalmente em contexto RTL. Exemplos: ( → ), [ → ], { → }, …
Unicode property listing all scripts that use a character, broader than the single-valued Script property. Common characters like digits have …
O sistema de escrita ao qual um caractere pertence (por exemplo, Latin, Cyrillic, Han). O Unicode 16.0 define 168 scripts; …
A interpretação numérica de um caractere, se existir: valor de dígito (0–9), valor decimal ou valor numérico geral (por exemplo, …
Algoritmos (15)
Algoritmo que determina a ordem de exibição dos caracteres em texto com direção mista (por exemplo, inglês + árabe), usando …
Algoritmo padrão para comparar e ordenar strings Unicode usando comparação em múltiplos níveis: caractere base → acentos → caixa → …
Regras para determinar onde o texto pode quebrar para a próxima linha, considerando propriedades dos caracteres, limites de palavras CJK …
Mapping characters to a common case form for case-insensitive comparison. More comprehensive than lowercasing: German ß → ss, Turkish İ …
Caracteres excluídos da composição canônica (NFC) para evitar a decomposição de não-iniciadores e garantir estabilidade algorítmica. Listados em CompositionExclusions.txt.
Rules (UAX#29) for determining where one user-perceived character ends and another begins. Critical for cursor movement, text selection, and correctly …
A posição entre sentenças conforme as regras do Unicode. Mais complexo do que simplesmente dividir por pontos — trata abreviações …
A posição entre palavras determinada pelas regras de quebra de palavras do Unicode. Não é uma simples divisão por espaços …
Forma de Normalização C: decompor e depois recompor canonicamente, produzindo a forma mais curta. Recomendada para armazenamento e intercâmbio de …
Forma de Normalização D: decomposição completa sem recomposição. Usada pelo sistema de arquivos HFS+ do macOS. é (U+00E9) → e …
Forma de Normalização KC: decomposição de compatibilidade seguida de composição canônica. Mescla caracteres visualmente similares (fi→fi, ²→2, Ⅳ→IV). Usada para …
Forma de Normalização KD: decomposição de compatibilidade sem recomposição. A normalização mais agressiva, perdendo a maior quantidade de informações de …
Processo de converter texto Unicode para uma forma canônica padrão. Quatro formas: NFC (composta), NFD (decomposta), NFKC (compatibilidade composta), NFKD …
Algoritmos para encontrar limites no texto: limites de cluster de grafemas, palavras e sentenças. Essencial para movimentação do cursor, seleção …
Comparing Unicode strings requires normalization (NFC/NFD) and optionally collation (locale-aware sorting). Binary comparison of code points alone gives incorrect results …
Tipografia (19)
Sinais de pontuação emparelhados que encerram discurso direto ou citações. O Unicode inclui aspas retas (""), tipográficas (""), guillemets (« …
Um caractere que se anexa ao caractere base anterior para modificá-lo. Categoria geral: Mn (sem espaçamento), Mc (combinação com espaçamento), …
Caracteres que representam espaço horizontal ou vertical, mas não têm glifo visível. O Unicode define mais de 17 caracteres de …
Caracteres com largura de avanço zero — invisíveis na renderização, mas que afetam o comportamento do texto. Inclui ZWSP (quebra …
CSS @font-face descriptor specifying which Unicode code points a font should cover. Enables downloading only the font subset needed for …
Em: uma largura igual ao tamanho da fonte. En: metade de um em. Usados para definir a largura do travessão, …
U+00A0. Um espaço que impede a quebra de linha em sua posição. HTML: . Usado entre números e unidades (100 …
The mechanism by which a rendering engine substitutes glyphs from a secondary font when the primary font lacks coverage for …
Uma implementação específica de um tipo de letra em um tamanho, peso e estilo particulares. Na tipografia digital, um arquivo …
A representação visual de um caractere conforme renderizado por uma fonte. Um caractere pode ter múltiplos glifos (ligaduras, formas contextuais); …
Ajuste do espaçamento entre pares de caracteres específicos para harmonia visual (p. ex., AV, To, LT). É uma característica tipográfica, …
Dois ou mais caracteres unidos em um único glifo. Pode ser tipográfica (fi → fi via OpenType) ou um caractere …
Modern font format developed by Microsoft and Adobe supporting up to 65,535 glyphs, advanced typographic features (ligatures, alternates, kerning), and …
U+2026 RETICÊNCIAS HORIZONTAIS (…). Um único caractere que substitui três pontos, tipograficamente correto e contando como 1 caractere em vez …
Direcionalidade do texto onde os caracteres fluem da direita para a esquerda. Usada pelo árabe, hebraico, Thaana e outros alfabetos; …
Uma marca adicionada a uma letra para alterar sua pronúncia ou significado. Pode ser pré-composta (é U+00E9) ou combinada (e …
Sinais de pontuação usados para separar partes de uma frase ou indicar intervalos. O Unicode define múltiplos traços: hífen (‐), …
Formas de letras maiúsculas na altura das letras minúsculas. CSS: font-variant: small-caps. O Unicode também possui letras maiúsculas pequenas reais …
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)
A system-level tool for browsing and inserting Unicode characters. macOS Character Viewer (Ctrl+Cmd+Space), Windows Character Map (charmap.exe), and Linux gucharmap …
Método de entrada do Windows usando Alt + dígitos do teclado numérico para digitar caracteres pelo número da página de …
Entrada direta de pontos de código Unicode digitando o valor hexadecimal. Mac: segurar Option + hex + soltar. Windows: digitar …
Componente de software que permite a entrada de caracteres complexos (CJK, coreano, etc.) usando um teclado padrão, convertendo sequências de …
Utilitário gráfico para navegar e inserir caracteres Unicode. Windows: charmap.exe. Mac: Visualizador de Caracteres (Control+Command+Espaço). Linux: gucharmap.
Qualquer método para inserir caracteres pelo seu ponto de código Unicode: entrada hexadecimal (Mac), entrada U+XXXX via Ctrl+Shift+U (Linux) ou …
Componente de interface de usuário (nativo ou baseado na web) para navegar e selecionar caracteres visualmente. Os seletores de emoji …
Uma tecla (geralmente Alt direito ou mapeada de forma personalizada) que inicia uma sequência de composição de várias teclas. Recurso …
Uma tecla que não produz saída imediata, mas modifica o próximo pressionamento de tecla. Usada para diacríticos: pressionar ` e …
Web e HTML (16)
Renderização de um caractere com um glifo de emoji colorido, normalmente usando o Seletor de Variação 16 (U+FE0F). Alguns caracteres …
Renderização de um caractere com um glifo de texto monocromático simples em vez de um emoji colorido, normalmente usando o …
Codificação de caracteres não ASCII e reservados em URLs substituindo cada byte por %XX. O UTF-8 é usado primeiro, depois …
Parâmetro de cabeçalho HTTP que declara a codificação de caracteres de uma resposta (Content-Type: text/html; charset=utf-8). Substitui qualquer declaração de …
CSS properties (direction, writing-mode, unicode-bidi) controlling text layout direction. Works with Unicode Bidi Algorithm for mixed LTR/RTL content in web …
Uma representação textual de um caractere em HTML. Três formas: por nome (&), decimal (&) e hexadecimal (&). Essencial para …
Nomes de domínio contendo caracteres Unicode não ASCII, armazenados internamente como Punycode (xn--...) mas exibidos em Unicode aos usuários. Risco …
ECMAScript Internationalization API providing locale-aware string comparison (Collator), number formatting (NumberFormat), date formatting (DateTimeFormat), and segmentation (Segmenter).
U+2060. Um caractere de largura zero que impede a quebra de linha. O substituto moderno de U+FEFF (BOM) como espaço …
Propriedade CSS que insere conteúdo gerado via pseudo-elementos ::before e ::after usando escapes Unicode: content: "\2713" insere ✓.
Codificação compatível com ASCII de nomes de domínio Unicode, convertendo rótulos internacionalizados em cadeias ASCII com prefixo xn--. münchen.de → …
Entidade HTML que usa um nome legível por humanos: © → ©, — → —. O HTML5 define 2.231 referências …
Entidade HTML que usa o número do ponto de código Unicode: decimal (© → ©) ou hexadecimal (© → ©). …
A versão XML das referências de caracteres numéricas: ✓ ou ✓. O XML possui apenas 5 entidades nomeadas (& < …
Caracteres (U+FE00–U+FE0F, U+E0100–U+E01EF) que selecionam uma variante específica de glifo. VS15 (U+FE0E) = apresentação de texto, VS16 (U+FE0F) = apresentação …
CSS supports Unicode via escape sequences (\2713 for ✓), the content property for generated text, unicode-range for font subsetting, and …
Programação e desenvolvimento (13)
O "comprimento" de uma string Unicode depende da unidade: unidades de código (JavaScript .length), pontos de código (Python len()), ou …
Uma sequência de caracteres em uma linguagem de programação. A representação interna varia: UTF-8 (Go, Rust, versões mais recentes do …
U+FFFD (�). Exibido quando um decodificador encontra sequências de bytes inválidas — o símbolo universal de 'algo deu errado na …
Qualquer caractere sem glifo visível: espaço em branco, caracteres de largura zero, caracteres de controle e caracteres de formatação. Pode …
U+0000 (NUL). O primeiro caractere Unicode/ASCII, usado como terminador de string em C/C++. Risco de segurança: a injeção de byte …
A codificação converte caracteres em bytes (str.encode('utf-8')); a decodificação converte bytes em caracteres (bytes.decode('utf-8')). Fazer isso corretamente previne o mojibake.
Padrões de regex usando propriedades Unicode: \p{L} (qualquer letra), \p{Script=Greek} (escrita grega), \p{Emoji}. O suporte varia por linguagem e motor …
Java strings use UTF-16 internally. char is 16-bit (only BMP). For supplementary characters, use codePointAt() and Character.toChars(). Java's \uXXXX escapes …
Texto ilegível resultante da decodificação de bytes com a codificação errada. Termo japonês (文字化け). Exemplo: 'café' armazenado como UTF-8 mas …
Duas unidades de código de 16 bits (um substituto alto U+D800–U+DBFF + substituto baixo U+DC00–U+DFFF) que juntas codificam um caractere …
Python 3 uses Unicode strings by default (str = UTF-8 internally via PEP 393). Key features: \N{name} escapes, unicodedata module, …
Rust strings (str/String) are guaranteed valid UTF-8. char type represents a Unicode scalar value (4 bytes). Iteration via .chars() yields …
Sintaxe para representar caracteres Unicode no código-fonte. Varia por linguagem: \u2713 (Python/Java/JS), \u{2713} (JS/Ruby/Rust), \U00012345 (Python/C).
Segurança (10)
Uso de caracteres de substituição bidirecional Unicode (U+202A–U+202E, U+2066–U+2069) para disfarçar nomes de arquivos ou código malicioso. 'readmefdp.exe' é exibido …
Uso de caracteres Unicode visualmente semelhantes em nomes de domínio para se passar por sites legítimos. аpple.com (а cirílico) parece …
Exploiting Unicode bidirectional control characters to disguise malicious code or filenames. The 'Trojan Source' attack (CVE-2021-42574) uses bidi overrides to …
O termo oficial Unicode para pares de caracteres que podem ser confundidos visualmente, definidos em confusables.txt (UCD). Mais amplo que …
Identificação de texto que mistura caracteres de diferentes escritas (p. ex., Latino + Cirílico). Principal defesa contra ataques homográficos; os …
Caracteres de diferentes escritas que parecem idênticos ou muito semelhantes, como 'a' latino e 'а' cirílico. Usados em ataques de …
Exploiting Unicode normalization to bypass security filters. Input validated before normalization may change form after: 'fi' (U+FB01) normalizes to 'fi', …
Uso de recursos Unicode para enganar usuários: homoglifos para domínios falsos, substituições bidi para extensões de arquivo falsas, ou caracteres …
U+200D. Solicita que os caracteres adjacentes sejam unidos. Essencial para sequências de emoji (👩+ZWJ+💻=👩💻). Em scripts índicos, solicita a formação …
U+200C. Impede a junção de caracteres adjacentes. Essencial em persa/árabe para as formas corretas das letras e usado em Devanagari …
Emoji (6)
Caracteres Unicode pictográficos originários de telefones celulares japoneses. Atualmente mais de 3.790 emoji em múltiplos blocos (Emoticons, Símbolos e Pictografias …
Multi-character emoji constructed by combining base emoji with modifiers, ZWJ characters, or variation selectors. Types include keycap sequences (#️⃣), flag …
Five Fitzpatrick scale modifiers (U+1F3FB–U+1F3FF, 🏻–🏿) that change human emoji skin color. Applied by appending the modifier after a base …
26 caracteres (U+1F1E6–U+1F1FF, 🇦–🇿) que se combinam em pares para formar emoji de bandeiras de países com base nos códigos …
Modificadores de tom de pele da escala Fitzpatrick (U+1F3FB–U+1F3FF) que alteram a cor da pele de emoji humanos ao serem …
Emoji construído unindo múltiplos emoji com o Conector de Largura Zero (U+200D). 👨👩👧👦 = Homem + ZWJ + Mulher + …