Duplicate characters in Unicode

Short description: Unicode characters that have been encoded twice

Unicode has a certain amount of duplication of characters. These are pairs of single Unicode code points that are canonically equivalent. The reason for this are compatibility issues with legacy systems.

Unless two characters are canonically equivalent, they are not "duplicate" in the narrow sense. There is, however, room for disagreement on whether two Unicode characters really encode the same grapheme in cases such as the U+00B5 µ MICRO SIGN versus U+03BC μ GREEK SMALL LETTER MU.

This should be clearly distinguished from Unicode characters that are rendered as identical glyphs or near-identical glyphs (homoglyphs), either because they are historically cognate (such as Greek Η vs. Latin H) or because of coincidental similarity (such as Greek Ρ vs. Latin P, or Greek Η vs. Cyrillic Н, or the following homoglyph septuplet: astronomical symbol for "Sun" ☉, "circled dot operator" ⊙, the Gothic letter 𐍈, the IPA symbol for a bilabial click ʘ, the Osage letter 𐓃, the Tifinagh letter ⵙ, and the archaic Cyrillic letter Ꙩ).

## Contents

* 1 Duplicate vs. derived character
* 2 Compatibility issues
* 2.1 CJK fullwidth forms
* 3 Letterlike symbols
* 3.1 Greek
* 3.2 Roman numerals
* 3.3 Arabic presentation forms
* 3.4 Hebrew presentation forms
* 4 List
* 4.1 One-to-one mappings
* 4.2 One-to-two mappings
* 4.3 One-to-three mappings
* 4.4 One-to-four mappings
* 5 See also
* 6 References

## Duplicate vs. derived character

Unicode aims at encoding graphemes, not individual "meanings" ("semantics") of graphemes, and not glyphs. It is a matter of case-by-case judgement whether such characters should receive separate encoding when used in technical contexts, e.g. Greek letters used as mathematical symbols: thus, the choice to have a "micro- sign" µ separate from Greek μ, but not a "Mega sign" separate from Latin M, was a pragmatic decision by The Unicode Consortium for historical reasons (namely, compatibility with Latin-1, which includes a micro sign). Technically µ and μ are not duplicate characters in that the consortium viewed these symbols as distinct characters (while it regarded M for "Mega" and Latin M as one and the same character).

Note that merely having different "meanings" is not sufficient grounds to split a grapheme into several characters. Thus, the acute accent may represent word accent in Welsh or Swedish, it may express vowel quality in French, and it may express vowel length in Hungarian, Icelandic or Irish. Since all these languages are written in the same script, namely Latin script, the acute accent in its various meanings is considered one and the same combining diacritic character U+0301 ́ , and so the accented letter é is the same character in French and Hungarian. There is a separate "combining diacritic acute tone mark" at U+0341 ́ for the romanization of tone languages, one important difference from the acute accent being that in a language like French, the acute accent can replace the dot over the lowercase i, whereas in a language like Vietnamese, the acute tone mark is added above the dot. Diacritic signs for alphabets considered independent may be encoded separately, such as the acute ("tonos") for the Greek alphabet at U+0384 ΄ , and for the Armenian alphabet at U+055B ՛ . Some Cyrillic-based alphabets (such as Russian) also use the acute accent, but there is no "Cyrillic acute" encoded separately and U+0301 should be used for Cyrillic as well as Latin (see Cyrillic characters in Unicode). The point that the same grapheme can have many "meanings" is even more obvious considering e.g. the letter U, which has entirely different phonemic referents in the various languages that use it in their orthographies (English /juː/, /ʊ/, /ʌ/ etc., French /y/, German /uː/, /u/, etc., not to mention various uses of U as a symbol).

## Compatibility issues

### CJK fullwidth forms

In traditional Chinese character encodings, characters usually took either a single byte (known as halfwidth) or two bytes (known as fullwidth). Characters that took a single byte were generally displayed at half the width of those that took two bytes. Some characters such as the Latin alphabet were available in both halfwidth and fullwidth versions. As the halfwidth versions were more commonly used, they were generally the ones mapped to the standard code points for those characters. Therefore a separate section was needed for the fullwidth forms to preserve the distinction.

## Letterlike symbols

Main article: Letterlike Symbols

In some cases, specific graphemes have acquired a specialized symbolic or technical meaning separate from their original function. A prominent example is the Greek letter π which is widely recognized as the symbol for the mathematical constant of a circle's circumference divided by its diameter even by people not literate in Greek.

Several variants of the entire Greek and Latin alphabets specifically for use as mathematical symbols are encoded in the Mathematical Alphanumeric Symbols range. This range disambiguates characters that would usually be considered font variants but are encoded separately because of widespread use of font variants e.g. L vs. "script L" Template:Script/Classical and Medieval Latin vs. "blackletter L" 𝔏 vs. "boldface blackletter L" 𝕷) as distinctive mathematical symbols. It is intended for use only in mathematical or technical notation, not use in non-technical text.[1]

### Greek

Many Greek letters are used as technical symbols. All of the Greek letters are encoded in the Greek section of Unicode but many are encoded a second time under the name of the technical symbol they represent. The "micro sign" (U+00B5 µ ) is obviously inherited from ISO 8859-1, but the origin of the others is less clear.

Other Greek glyph variants encoded as separate characters include the lunate sigma Ϲ ϲ contrasting with Σ σ, final sigma ς (strictly speaking a contextual glyph variant) contrasting with σ, The Qoppa numeral symbol Ϟ ϟ contrasting with the archaic Ϙ ϙ.

Greek letters assigned separate "symbol" codepoints include the Letterlike Symbols ϐ, ϵ, ϑ, ϖ, ϱ, ϒ, and ϕ (contrasting with β, ε, θ, π, ρ, Υ, φ); the Ohm symbol Ω (contrasting with Ω); and the mathematical operators for the product ∏ and sum ∑ (contrasting with Π and Σ).

### Roman numerals

Unicode has a number of characters specifically designated as Roman numerals, as part of the Number Forms range from U+2160 to U+2183. For example, Roman 1988 (MCMLXXXVIII) could alternatively be written as ⅯⅭⅯⅬⅩⅩⅩⅧ. This range includes both uppercase and lowercase numerals, as well as pre-combined glyphs for numbers up to 12 (Ⅻ for XII), mainly intended for clock faces.

The pre-combined glyphs should only be used to represent the individual numbers where the use of individual glyphs is not wanted, and not to replace compounded numbers. For example, one can combine Ⅹ with Ⅰ to produce Roman numeral 11 (ⅩⅠ), so U+216A (Ⅺ) is canonically equivalent to ⅩⅠ. Such characters are also referred to as composite compatibility characters or decomposable compatibility characters. Such characters would not normally have been included within the Unicode standard except for compatibility with other existing encodings (see Unicode compatibility characters). The goal was to accommodate simple translation from existing encodings into Unicode. This makes translations in the opposite direction complicated because multiple Unicode characters may map to a single character in another encoding. Without the compatibility concerns the only characters necessary would be: Ⅰ, Ⅴ, Ⅹ, Ⅼ, Ⅽ, Ⅾ, Ⅿ, ⅰ, ⅴ, ⅹ, ⅼ, ⅽ, ⅾ, ⅿ, ↀ, ↁ, ↂ, ↇ, ↈ, and Ↄ; all other Roman numerals can be composed from these characters.

### Arabic presentation forms

Main articles: Arabic Presentation Forms-A and Arabic Presentation Forms-B

Unicode has encoded compatibility characters for contextual Arabic letter forms where its contextual forms are encoded as separate code points (isolated, final, initial, and medial). For example, Template:Codepoint has its contextual forms encoded at these 4 code points:

* Template:Codepoint
* Template:Codepoint
* Template:Codepoint
* Template:Codepoint

The contextual-form characters are not recommended for general use. There are also compatibility Arabic ligatures encoded such as U+FDF2 ﷲ and U+FDFD ﷽ .

### Hebrew presentation forms

Main article: Alphabetic Presentation Forms

Hebrew presentation forms include ligatures, several precomposed characters and wide variants of Hebrew letters. The aleph-lamed ligature is encoded as a separate character at U+FB4F ﭏ . The wide variants are listed below:

* U+FB21 ﬡ
* U+FB22 ﬢ
* U+FB23 ﬣ
* U+FB24 ﬤ
* U+FB25 ﬥ
* U+FB26 ﬦ
* U+FB27 ﬧ
* U+FB28 ﬨ

These characters are variants of ordinary Hebrew letters encoded for justification of texts written in Hebrew, such as the Torah. Unicode also encodes a stylistic variant of U+05E2 ע at U+FB20 ﬠ .

## List

This list is incomplete; you can help by expanding it.

### One-to-one mappings

* U+00AA ª : U+0061 a
* U+00B5 µ : U+03BC μ GREEK SMALL LETTER MU
* U+00BA º : U+006F o
* U+017F ſ : U+0073 s
* U+0340 ◌̀ : U+0300 ◌̀
* U+0341 ◌́ : U+0301 ◌́
* U+0343 ◌̓ : U+0313 ◌̓
* U+0374 ʹ : U+02B9 ʹ
* U+037E ; : U+003B ; SEMICOLON
* U+0384 ΄ : U+00B4 ´
* U+0387 · : U+00B7 * COLON
* U+03D0 ϐ : U+03B2 β
* U+03D1 ϑ : U+03B8 θ
* U+03D5 ϕ : U+03C6 φ
* U+03D6 ϖ : U+03C0 π
* U+03F0 ϰ : U+03BA κ
* U+03F1 ϱ : U+03C1 ρ
* U+03F2 ϲ : U+03C3 σ
* U+03F4 ϴ : U+0398 Θ
* U+03F5 ϵ : U+03B5 ε
* U+03F9 Ϲ : U+03A3 Σ
* U+1FEF ` : U+0060 `
* U+1FFD ´ : U+00B4 ´
* U+2024 ․ : U+002E . FULL STOP
* U+2107 ℇ : U+0190 Ɛ
* U+210E ℎ : U+0068 h
* U+210F ℏ : U+0127 ħ
* U+2126 Ω : U+03A9 Ω GREEK CAPITAL LETTER OMEGA
* U+212A K : U+004B K LATIN CAPITAL LETTER K
* U+212B Å : U+00C5 Å LATIN CAPITAL LETTER A WITH RING ABOVE
* U+2135 ℵ : U+05D0 א
* U+2136 ℶ : U+05D1 ב
* U+2137 ℷ : U+05D2 ג
* U+2138 ℸ : U+05D3 ד
* U+2139 ℹ : U+0069 i
* U+2236 ∶ : U+003A : COLON
* U+FB20 ﬠ : U+05E2 ע
* U+FB21 ﬡ : U+05D0 א
* U+FB22 ﬢ : U+05D3 ד
* U+FB23 ﬣ : U+05D4 ה
* U+FB24 ﬤ : U+05DB כ
* U+FB25 ﬥ : U+05DC ל
* U+FB26 ﬦ : U+05DD ם
* U+FB27 ﬧ : U+05E8 ר
* U+FB28 ﬨ : U+05EA ת
* U+FB29 ﬩ : U+002B +
* U+1F549 🕉 : U+0950 ॐ
* U+27EAF 𧺯 : U+FA23 﨣

### One-to-two mappings

* U+0344 ◌̈́ : U+0308 ◌̈ , U+0301 ◌́

* U+2103 ℃ : U+00B0 ° , U+0043 C
* U+2109 ℉ : U+00B0 ° , U+0046 F
* U+222C ∬ : U+222B ∫ , U+222B ∫

* U+2254 ≔ : U+003A : COLON, U+003D = COLON
* U+2255 ≕ : U+003D = COLON, U+003A : COLON
* U+2A75 ⩵ : U+003D = , U+003D = COLON

### One-to-three mappings

* U+222D ∭ : U+222B ∫ , U+222B ∫ , U+222B ∫
* U+2A74 ⩴ : U+003A : COLON, U+003A : COLON, U+003D = COLON
* U+2A76 ⩶ : U+003D = COLON, U+003D = COLON, U+003D = COLON

### One-to-four mappings

* U+2A0C ⨌ : U+222B ∫ , U+222B ∫ , U+222B ∫ , U+222B ∫

## See also

* IDN homograph attack
* Unicode equivalence
* Homoglyph
* ASCII art

## References

1. ↑ "UTR #25: Unicode and Mathematics". http://unicode.org/reports/tr25/tr25-5.html#_Toc21.

* v
* t
* e

Unicode

Unicode|

* Unicode Consortium
* ISO/IEC 10646 (Universal Character Set)
* Versions

Code points|

* Blocks
* Universal Character Set
* Character charts
* Character property
* Planes
* Private Use Areas

Characters|

| Special purpose|

* BOM
* Combining Grapheme Joiner
* Left-to-right mark / Right-to-left mark
* Soft hyphen
* Word joiner
* Zero-width joiner
* Zero-width non-joiner
* Zero-width space

|

Lists|

* Characters
* CJK Unified Ideographs
* Combining character
* Duplicate characters
* Numerals
* Scripts
* Spaces
* Symbols
* Halfwidth and fullwidth
* Alias names and abbreviations

Processing|

| Algorithms|

* Bi-directional text
* Collation
* ISO 14651
* Equivalence
* Variation sequences
* International Ideographs Core

|

Comparison|

* BOCU-1
* CESU-8
* Punycode
* SCSU
* UTF-1
* UTF-7
* UTF-8
* UTF-9/UTF-18
* UTF-16/UCS-2
* UTF-32/UCS-4
* UTF-EBCDIC

On pairs of
code points|

* Combining character
* Compatibility characters
* Duplicate characters
* Equivalence
* Homoglyph
* Precomposed character
* list
* Z-variant
* Variation sequences
* Regional Indicator Symbol
* Fitzpatrick modifiers

Usage|

* Domain names (IDN)
* Email
* Fonts
* HTML
* entity references
* numeric references
* Input
* International Ideographs Core

Related standards|

* Common Locale Data Repository (CLDR)
* GB 18030
* ISO/IEC 8859
* ISO 15924

Related topics|

* Anomalies
* ConScript Unicode Registry
* Ideographic Research Group
* International Components for Unicode
* People involved with Unicode
* Han unification

Scripts and symbols in Unicode

Common and
inherited scripts|

* Combining marks
* Diacritics
* Punctuation
* Space
* Numbers

Modern scripts|

* Adlam
* Arabic
* diacritics
* Armenian
* Balinese
* Bamum
* Batak
* Bengali
* Bopomofo
* Braille
* Buhid
* Burmese
* Canadian Aboriginal
* Chakma
* Cham
* Cherokee
* CJK Unified Ideographs (Han)
* Cyrillic
* Deseret
* Devanagari
* Ge'ez
* Georgian
* Greek
* Gujarati
* Gunjala Gondi
* Gurmukhi
* Hangul
* Hanifi Rohingya
* Hanja
* Hanunuo
* Hebrew
* diacritics
* Hiragana
* Javanese
* Kanji
* Kannada
* Katakana
* Kayah Li
* Khmer
* Lao
* Latin
* Lepcha
* Limbu
* Lisu (Fraser)
* Lontara
* Malayalam
* Masaram Gondi
* Mende Kikakui
* Medefaidrin
* Miao (Pollard)
* Mongolian
* Mru
* N'Ko
* New Tai Lue
* Nüshu
* Nyiakeng Puachue Hmong
* Odia
* Ol Chiki
* Osage
* Osmanya
* Pahawh Hmong
* Pau Cin Hau
* Pracalit (Newa)
* Ranjana
* Rejang
* Samaritan
* Saurashtra
* Shavian
* Sinhala
* Sorang Sompeng
* Sundanese
* Sylheti Nagari
* Syriac
* Tagbanwa
* Tai Le
* Tai Tham
* Tai Viet
* Tamil
* Telugu
* Thaana
* Thai
* Tibetan
* Tifinagh
* Tirhuta
* Vai
* Wancho
* Warang Citi
* Yi

Ancient and
historic scripts|

* Ahom
* Anatolian hieroglyphs
* Ancient North Arabian
* Avestan
* Bassa Vah
* Bhaiksuki
* Brāhmī
* Carian
* Caucasian Albanian
* Coptic
* Cuneiform
* Cypriot
* Dogra
* Egyptian hieroglyphs
* Elbasan
* Elymaic
* Glagolitic
* Gothic
* Grantha
* Hatran
* Imperial Aramaic
* Inscriptional Pahlavi
* Inscriptional Parthian
* Kaithi
* Kharosthi
* Khojki
* Khudawadi
* Linear A
* Linear B
* Lycian
* Lydian
* Mahajani
* Makasar
* Mandaic
* Manichaean
* Marchen
* Meetei Mayek
* Meroitic
* Modi
* Multani
* Nabataean
* Nandinagari
* Ogham
* Old Hungarian
* Old Italic
* Old Permic
* Old Persian cuneiform
* Old Sogdian
* Old Turkic
* Palmyrene
* 'Phags-pa
* Phoenician
* Psalter Pahlavi
* Runic
* Sharada
* Siddham
* Sogdian
* South Arabian
* Soyombo
* Tagalog (Baybayin)
* Takri
* Tangut
* Ugaritic
* Zanabazar Square

Notational scripts|

* Duployan
* SignWriting

Symbols|

* Cultural, political, and religious symbols
* Currency
* Mathematical operators and symbols
* Phonetic symbols (including IPA)
* Emoji

0.00

(0 votes)

Original source: https://en.wikipedia.org/wiki/Duplicate characters in Unicode. Read more

|

Retrieved from "https://handwiki.org/wiki/index.php?title=Duplicate_characters_in_Unicode&oldid=3980774"
*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template