U+ UnicodeFYI
गुणधर्म

नाम उपनाम

वर्णों के लिए वैकल्पिक नाम, क्योंकि Unicode नाम स्थिरता नीति के अनुसार नहीं बदले जा सकते। सुधार, संक्षिप्ताक्षर और figments के लिए उपयोग किए जाते हैं।

· अपडेट किया गया

What Are Name Aliases?

A Name Alias is an alternate, officially recognized name for a Unicode character. While every assigned character has a formal Name property (or a generated name like <CJK UNIFIED IDEOGRAPH-4E2D>), some characters have additional aliases for several reasons:

  • Correction: The formal name contains a historical error that cannot be changed (Unicode names are immutable once published), so a corrected name is provided as a Correction alias.
  • Control code names: Characters in the C0 and C1 control ranges (U+0000–U+001F, U+007F–U+009F) have formal names like NULL or no readable name at all; their familiar abbreviations (NUL, LF, CR, DEL) are registered as Control aliases.
  • Abbreviations: Widely used short names like ZWSP (for ZERO WIDTH SPACE) or BOM (for BYTE ORDER MARK).
  • Figments: Names that appeared in published Unicode data due to errors and were then retracted.

The BOM Case Study

One of the most instructive examples is U+FEFF:

  • Formal name: ZERO WIDTH NO-BREAK SPACE
  • Name alias (Abbreviation): ZWNBSP
  • Name alias (Alternate): BYTE ORDER MARK
  • Name alias (Abbreviation): BOM

The name ZERO WIDTH NO-BREAK SPACE is the historical, immutable name. The BOM function—indicating byte order in UTF-16/UTF-32 streams—was added later, but Unicode names cannot be changed. The alias BYTE ORDER MARK documents the actual common use.

import unicodedata

# unicodedata.name() returns the formal name only
print(unicodedata.name("\uFEFF"))
# ZERO WIDTH NO-BREAK SPACE

# unicodedata.lookup() works with both formal names and aliases
bom_by_alias = unicodedata.lookup("BYTE ORDER MARK")
print(f"U+{ord(bom_by_alias):04X}")
# U+FEFF

# Control character aliases
nul = unicodedata.lookup("NUL")          # U+0000
cr  = unicodedata.lookup("CARRIAGE RETURN")  # U+000D
lf  = unicodedata.lookup("LINE FEED")    # U+000A
print(ord(nul), ord(cr), ord(lf))
# 0 13 10

Alias Types

The Unicode Standard defines five alias types:

Type Description Example
correction Fixes a published name error U+FE18 → correct name
control C0/C1 familiar abbreviation U+0009 → TAB
figment Erroneous name, retracted U+E000 entry
alternate Alternative widely-used name U+FEFF → BYTE ORDER MARK
abbreviation Short form of the name U+FEFF → BOM

Quick Facts

Property Value
Unicode property name Name_Alias
Short alias na1 (for first alias)
Python unicodedata.lookup() Supports aliases since Python 3.x
Python unicodedata.name() Returns formal name only
Immutability of formal Name Names cannot change; aliases provide corrections
Spec reference Unicode Standard Annex #44, NameAliases.txt

संबंधित शब्द

गुणधर्म में और

East Asian Width

Unicode property (UAX#11) classifying characters as Narrow, Wide, Fullwidth, Halfwidth, Ambiguous, or …

Joining Type

Unicode property controlling how Arabic and Syriac characters connect to adjacent characters. …

Script Extensions

Unicode property listing all scripts that use a character, broader than the …

केस मैपिंग

वर्णों को uppercase, lowercase, और titlecase के बीच परिवर्तित करने के नियम। …

ग्राफीम क्लस्टर

उपयोगकर्ता द्वारा अनुभव किया गया 'वर्ण' — जो एक एकल इकाई के …

डिफ़ॉल्ट रूप से अनदेखा

वर्ण जिनका कोई दृश्य प्रभाव नहीं होना चाहिए और उन प्रक्रियाओं द्वारा …

दर्पण गुणधर्म

वे वर्ण जिनकी glyph को RTL संदर्भ में क्षैतिज रूप से प्रतिबिंबित …

द्विदिशीय श्रेणी

प्रॉपर्टी जो द्विदिशात्मक पाठ (LTR, RTL, weak, neutral) में वर्ण के व्यवहार …

ब्लॉक

कोड पॉइंट्स की एक नामित सन्निकट श्रृंखला (जैसे, Basic Latin = U+0000–U+007F)। …

लिपि

वह लिपि जिससे वर्ण संबंधित है (जैसे, Latin, Cyrillic, Han)। Unicode 16.0 …