Unicode character property
The Unicode Standard assigns various properties to each Unicode character and code point.[1][2]
The properties can be used to handle characters (code points) in processes, like in line-breaking, script direction right-to-left or applying controls. Some "character properties" are also defined for code points that have no character assigned and code points that are labelled like "<not a character>". The character properties are described in Standard Annex #44.[2]
Properties have levels of forcefulness: normative, informative, contributory, or provisional. For simplicity of specification, a character property can be assigned by specifying a continuous range of code points that have the same property.[3]
Semantic elements
Properties are displayed in the following order:[4]
[code];[name];[gc];[cc];[bc];[decomposition];[nv-dec];[nv-dig];[nv-num];[bm];[alias];;[upper case];[lower case];[title case]
alias
= corrected name. Obsolete. Now tracked with a separate database, but remains for Unicode 1.0 names.bc
= bidi (bidirectional) category [L, R etc]bm
= bidi mirrored [N or Y]cc
= combining class [position of diacritic]decomposition
type or <mapping> = letter + diacritic, ligature X Y, superscript X, font X, initial X, medial X, final X, isolated X, vertical X, etc.gc
= general category [letter, symbol, digit, punctuation, case behaviour, etc.]nv
= numeric type and value [of a digit]. If numeric type is 'decimal', all 3 slots are filled. If 'digit', the first will be null. (This has been discontinued.) If 'numeric', then the first two will be null and only the last will be used.
The property between alias
and upper case
is obsolete and is now null for all Unicode characters.
Name and alias
A Unicode character is assigned a unique Name (na).[1] The name is composed of uppercase letters A–Z, digits 0–9, hyphen-minus and space. Some sequences are excluded: names beginning with a space or hyphen, names ending with a space or hyphen, repeated spaces or hyphens, and space after hyphen are not allowed. The name is guaranteed to be unique within Unicode, and can be used to identify a code point and its character. Ideographic characters, of which there are tens of thousands, are named in the pattern "cjk unified ideograph-hhhh". For example, U+4E00 一 CJK UNIFIED IDEOGRAPH-4E00. Formatting characters also have names: U+00A0 NO-BREAK SPACE.
The following Unicode categories do not have a Name value assigned: Controls (General Category: Cc), Private use (Co), Surrogate (Cs), Non-characters (Cn) and Reserved (Cn). They may be referenced, informally, by a generic or specific meta-name, called "Code Point Labels": <control>, <control-0088>, <reserved>, <noncharacter-hhhh>, <private-use-hhhh>, or <surrogate>. Since these labels contain "<" and ">", they can never appear in a Name, which prevents confusion.
Unicode 1.0 names
In version 2.0 of Unicode, many names were changed. From then on the rule "a name will never change" came into effect, including the strict (normative) use of alias names. Disused Unicode 1.0 names were moved to the property Alias, to provide backward compatibility.
For example, U+0264 ɤ LATIN SMALL LETTER RAMS HORN has the Unicode 1.0 name "LATIN SMALL LETTER BABY GAMMA".
Character name alias
Starting from Unicode 2.0, the published name for a code point will never change. Therefore, in the event of a character name being misspelled or if the character name is completely wrong or seriously misleading, a formal Character Name Alias may be assigned to the character, and this alias may be used by applications instead of the actual defective character name.[1] For example, U+FE18 ︘ PRESENTATION FORM FOR VERTICAL RIGHT WHITE LENTICULAR BRAKCET has the character name alias "PRESENTATION FORM FOR VERTICAL RIGHT WHITE LENTICULAR BRACKET" in order to mitigate the misspelling of "bracket" as "brakcet" [sic] in the actual character name; U+A015 ꀕ YI SYLLABLE WU has the character name alias "YI SYLLABLE ITERATION MARK" because, contrary to the character name, it does not have a fixed syllabic value.
In addition to character name aliases which are corrections to defective character names, some characters are assigned aliases which are alternative names or abbreviations. Five types of character name aliases are defined in the Unicode Standard:
- Correction: corrections for misspelled or seriously incorrect character names;
- Control: ISO 6429 names for C0 and C1 control functions (which are not assigned character names in the Unicode Standard);
- Alternate: alternative names for some format characters (only U+FEFF ZERO WIDTH NO-BREAK SPACE which has the alias "BYTE ORDER MARK");
- Figment: Documented labels for some C1 control code functions which are not actual names in any standard;
- Abbreviation: Abbreviations or acronyms for control codes, format characters, spaces, and variation selectors.
All formal character name aliases follow the rules for permissible character names, and are guaranteed to be unique within both the character name alias and the character name namespaces (for this reason, the ISO 6429 name "BELL" is not defined as an alias for U+0007 <control-0007> because U+1F514 is named "BELL"; U+0007 instead has the alias "ALERT").[1]
As of Unicode 16.0, 35 formal character name aliases are defined as corrections for defective character names.[5]
Apart from these normative names, informal names may be shown in the Unicode code charts. These are other commonly used names for a character, and do not have the same character restriction. These informal names are not guaranteed to be unique, and may be changed or removed in later versions of the standard.
General Category
Each code point is assigned a value for General Category. This is one of the character properties that are also defined for unassigned code points and code points that are defined "not a character".
General Category (Unicode Character Property)[a] | |||||
---|---|---|---|---|---|
Value | Category Major, minor | Basic type[b] | Character assigned[b] | Count[c] (as of 16.0) |
Remarks |
L, Letter; LC, Cased Letter (Lu, Ll, and Lt only)[d] | |||||
Lu | Letter, uppercase | Graphic | Character | 1,858 | |
Ll | Letter, lowercase | Graphic | Character | 2,258 | |
Lt | Letter, titlecase | Graphic | Character | 31 | Ligatures or digraphs containing an uppercase followed by a lowercase part (e.g., Dž, Lj, Nj, and Dz) |
Lm | Letter, modifier | Graphic | Character | 404 | A modifier letter |
Lo | Letter, other | Graphic | Character | 136,477 | An ideograph or a letter in a unicase alphabet |
M, Mark | |||||
Mn | Mark, nonspacing | Graphic | Character | 2,020 | |
Mc | Mark, spacing combining | Graphic | Character | 468 | |
Me | Mark, enclosing | Graphic | Character | 13 | |
N, Number | |||||
Nd | Number, decimal digit | Graphic | Character | 760 | All these, and only these, have Numeric Type = De[e] |
Nl | Number, letter | Graphic | Character | 236 | Numerals composed of letters or letterlike symbols (e.g., Roman numerals) |
No | Number, other | Graphic | Character | 915 | E.g., vulgar fractions, superscript and subscript digits, vigesimal digits |
P, Punctuation | |||||
Pc | Punctuation, connector | Graphic | Character | 10 | Includes spacing underscore characters such as "_", and other spacing tie characters. Unlike other punctuation characters, these may be classified as "word" characters by regular expression libraries.[f] |
Pd | Punctuation, dash | Graphic | Character | 27 | Includes several hyphen characters |
Ps | Punctuation, open | Graphic | Character | 79 | Opening bracket characters |
Pe | Punctuation, close | Graphic | Character | 77 | Closing bracket characters |
Pi | Punctuation, initial quote | Graphic | Character | 12 | Opening quotation mark. Does not include the ASCII "neutral" quotation mark. May behave like Ps or Pe depending on usage |
Pf | Punctuation, final quote | Graphic | Character | 10 | Closing quotation mark. May behave like Ps or Pe depending on usage |
Po | Punctuation, other | Graphic | Character | 640 | |
S, Symbol | |||||
Sm | Symbol, math | Graphic | Character | 950 | Mathematical symbols (e.g., +, −, =, ×, ÷, √, ∊, ≠). Does not include parentheses and brackets, which are in categories Ps and Pe. Also does not include !, *, -, or /, which despite frequent use as mathematical operators, are primarily considered to be "punctuation". |
Sc | Symbol, currency | Graphic | Character | 63 | Currency symbols |
Sk | Symbol, modifier | Graphic | Character | 125 | |
So | Symbol, other | Graphic | Character | 7,376 | |
Z, Separator | |||||
Zs | Separator, space | Graphic | Character | 17 | Includes the space, but not TAB, CR, or LF, which are Cc |
Zl | Separator, line | Format | Character | 1 | Only U+2028 LINE SEPARATOR (LSEP) |
Zp | Separator, paragraph | Format | Character | 1 | Only U+2029 PARAGRAPH SEPARATOR (PSEP) |
C, Other | |||||
Cc | Other, control | Control | Character | 65 (will never change)[e] | No name,[g] <control> |
Cf | Other, format | Format | Character | 170 | Includes the soft hyphen, joining control characters (ZWNJ and ZWJ), control characters to support bidirectional text, and language tag characters |
Cs | Other, surrogate | Surrogate | Not (only used in UTF-16) | 2,048 (will never change)[e] | No name,[g] <surrogate> |
Co | Other, private use | Private-use | Character (but no interpretation specified) | 137,468 total (will never change)[e] (6,400 in BMP, 131,068 in Planes 15–16) | No name,[g] <private-use> |
Cn | Other, not assigned | Noncharacter | Not | 66 (will not change unless the range of Unicode code points is expanded)[e] | No name,[g] <noncharacter> |
Reserved | Not | 819,467 | No name,[g] <reserved> | ||
|
Punctuation
Characters have separate properties to denote they are a punctuation character. The properties all have a Yes/No values: Dash, Quotation_Mark, Sentence_Terminal, Terminal_Punctuation. The Punctuation property refers to characters that are used to divide or structure text, and these are classified into different types based on their roles. Unicode assigns these punctuation characters specific categories.
Whitespace
Whitespace is a commonly used concept for a typographic effect. Basically it covers invisible characters that have a spacing effect in rendered text. It includes spaces, tabs, and new line formatting controls. In Unicode, such a character has the property set WSpace=yes
. In version 16.0, there are 25 whitespace characters.
Name | Code point | Width box | May break? | In IDN? |
Script | Block | General category |
Notes | |
---|---|---|---|---|---|---|---|---|---|
character tabulation | U+0009 | 9 | Yes | No | Common | Basic Latin | Other, control |
HT, Horizontal Tab. HTML/XML named entity: 	 , LaTeX: \tab , C escape: \t
| |
line feed | U+000A | 10 | Is a line-break | Common | Basic Latin | Other, control |
LF, Line feed. HTML/XML named entity: 
 , C escape: \n
| ||
line tabulation | U+000B | 11 | Is a line-break | Common | Basic Latin | Other, control |
VT, Vertical Tab. C escape: \v
| ||
form feed | U+000C | 12 | Is a line-break | Common | Basic Latin | Other, control |
FF, Form feed. C escape: \f
| ||
carriage return | U+000D | 13 | Is a line-break | Common | Basic Latin | Other, control |
CR, Carriage return. C escape: \r
| ||
space | U+0020 | 32 | Yes | No | Common | Basic Latin | Separator, space |
Most common (normal ASCII space). LaTeX: \
| |
next line | U+0085 | 133 | Is a line-break | Common | Latin-1 Supplement |
Other, control |
NEL, Next line. LaTeX: \\
| ||
no-break space | U+00A0 | 160 | No | No | Common | Latin-1 Supplement |
Separator, space |
Non-breaking space: identical to U+0020, but not a point at which a line may be broken. HTML/XML named entity: ,   , LaTeX: ~
| |
ogham space mark | U+1680 | 5760 | Yes | No | Ogham | Ogham | Separator, space |
Used for interword separation in Ogham text. Normally a vertical line in vertical text or a horizontal line in horizontal text, but may also be a blank space in "stemless" fonts. Requires an Ogham font. | |
en quad | U+2000 | 8192 | Yes | No | Common | General Punctuation |
Separator, space |
Width of one en. U+2002 is canonically equivalent to this character; U+2002 is preferred. | |
em quad | U+2001 | 8193 | Yes | No | Common | General Punctuation |
Separator, space |
Also known as "mutton quad". Width of one em. U+2003 is canonically equivalent to this character; U+2003 is preferred. | |
en space | U+2002 | 8194 | Yes | No | Common | General Punctuation |
Separator, space |
Also known as "nut". Width of one en. U+2000 En Quad is canonically equivalent to this character; U+2002 is preferred. HTML/XML named entity:   , LaTeX: \enspace (the LaTeX en space is a no-break space)
| |
em space | U+2003 | 8195 | Yes | No | Common | General Punctuation |
Separator, space |
Also known as "mutton". Width of one em. U+2001 Em Quad is canonically equivalent to this character; U+2003 is preferred. HTML/XML named entity:   , LaTeX: \quad
| |
three-per-em space | U+2004 | 8196 | Yes | No | Common | General Punctuation |
Separator, space |
Also known as "thick space". One third of an em wide. HTML/XML named entity:   , LaTeX: \; (the LaTeX thick space is a no-break space)
| |
four-per-em space | U+2005 | 8197 | Yes | No | Common | General Punctuation |
Separator, space |
Also known as "mid space". One fourth of an em wide. HTML/XML named entity:  
| |
six-per-em space | U+2006 | 8198 | Yes | No | Common | General Punctuation |
Separator, space |
One sixth of an em wide. In computer typography, sometimes equated to U+2009. | |
figure space | U+2007 | 8199 | No | No | Common | General Punctuation |
Separator, space |
Figure space. In fonts with monospaced digits, equal to the width of one digit. HTML/XML named entity:  
| |
punctuation space | U+2008 | 8200 | Yes | No | Common | General Punctuation |
Separator, space |
As wide as the narrow punctuation in a font, i.e. the advance width of the period or comma.[6] HTML/XML named entity:  
| |
thin space | U+2009 | 8201 | Yes | No | Common | General Punctuation |
Separator, space |
Thin space; one-fifth (sometimes one-sixth) of an em wide. Recommended for use as a thousands separator for measures made with SI units. Unlike U+2002 to U+2008, its width may get adjusted in typesetting.[7] HTML/XML named entity:   ,   , LaTeX: \, (the LaTeX thin space is a no-break space)
| |
hair space | U+200A | 8202 | Yes | No | Common | General Punctuation |
Separator, space |
Thinner than a thin space. HTML/XML named entity:   ,  
| |
line separator | U+2028 | 8232 | Is a line-break | Common | General Punctuation |
Separator, line |
|||
paragraph separator | U+2029 | 8233 | Is a line-break | Common | General Punctuation |
Separator, paragraph |
|||
narrow no-break space | U+202F | 8239 | No | No | Common | General Punctuation |
Separator, space |
Narrow no-break space. Similar in function to U+00A0 No-Break Space. When used with Mongolian, its width is usually one third of the normal space; in other context, its width sometimes resembles that of the Thin Space (U+2009). LaTeX: \,
| |
medium mathematical space | U+205F | 8287 | Yes | No | Common | General Punctuation |
Separator, space |
MMSP. Used in mathematical formulae. Four-eighteenths of an em.[8] In mathematical typography, the widths of spaces are usually given in integral multiples of an eighteenth of an em, and 4/18 em may be used in several situations, for example between the a and the + and between the + and the b in the expression a + b.[9] HTML/XML named entity:   , LaTeX: \: (the LaTeX medium space is a no-break space)
| |
ideographic space | U+3000 | 12288 | Yes | No | Common | CJK Symbols and Punctuation |
Separator, space |
As wide as a CJK character cell (fullwidth). Used, for example, in tai tou. |
Name | Code point | Width box | May break? | In IDN? |
Script | Block | General category |
Notes | |
---|---|---|---|---|---|---|---|---|---|
mongolian vowel separator | U+180E | 6158 | | Yes | No | Mongolian | Mongolian | Other, Format |
MVS. A narrow space character, used in Mongolian to cause the final two characters of a word to take on different shapes.[10] It is no longer classified as space character (i.e. in Zs category) in Unicode 6.3.0, even though it was in previous versions of the standard. |
zero width space | U+200B | 8203 | | Yes | No | ? | General Punctuation |
Other, Format |
ZWSP, zero-width space. Used to indicate word boundaries to text processing systems when using scripts that do not use explicit spacing. It is similar to the soft hyphen, with the difference that the latter is used to indicate syllable boundaries, and should display a visible hyphen when the line breaks at it. HTML/XML named entity: ​ [11][c]
|
zero width non-joiner | U+200C | 8204 | | Yes | Context-dependent[16] | ? | General Punctuation |
Other, Format |
ZWNJ, zero-width non-joiner. When placed between two characters that would otherwise be connected, a ZWNJ causes them to be printed in their final and initial forms, respectively. HTML/XML named entity: ‌
|
zero width joiner | U+200D | 8205 | | Yes | Context-dependent[17] | ? | General Punctuation |
Other, Format |
ZWJ, zero-width joiner. When placed between two characters that would otherwise not be connected, a ZWJ causes them to be printed in their connected forms. Can also be used to display joining forms in isolation. Depending on whether a ligature or conjunct is expected by default, can either induce (as in emoji and in Sinhala) or suppress (as in Devanagari) substitution with a single glyph, whilst still permitting use of individual joining forms (unlike ZWNJ). HTML/XML named entity: ‍
|
word joiner | U+2060 | 8288 | | No | No | ? | General Punctuation |
Other, Format |
WJ, word joiner. Similar to U+200B, but not a point at which a line may be broken. HTML/XML named entity: ⁠
|
zero width non-breaking space | U+FEFF | 65279 | | No | No | ? | Arabic Presentation Forms-B |
Other, Format |
Zero-width non-breaking space. Used primarily as a Byte Order Mark. Use as an indication of non-breaking is deprecated as of Unicode 3.2; see U+2060 instead. |
|
Casing
The Case value is normative in Unicode. It pertains to those scripts with uppercase and the lowercase letters. Case-difference occurs in Adlam, Armenian, Cherokee, Coptic, Cyrillic, Deseret, Garay, Glagolitic, Greek, Khutsuri and Mkhedruli Georgian, Latin, Medefaidrin, Old Hungarian, Osage, Vithkuqi and Warang Citi scripts.
Different languages have different case mapping rules.
In Turkish, U+0069 i LATIN SMALL LETTER I corresponds to U+0130 İ LATIN CAPITAL LETTER I WITH DOT ABOVE instead of U+0049 I LATIN CAPITAL LETTER I. Similarly, U+0049 I LATIN CAPITAL LETTER I when corresponds to U+0131 ı LATIN SMALL LETTER DOTLESS I instead of U+0069 i LATIN SMALL LETTER I.
In Nawdm, the letter Ĥ corresponds to ɦ in lowercase instead of the usual case mappings being Ĥĥ and Ɦɦ.
In Greek, the letter sigma has different lowercase forms depending on where it is in a word. U+03A3 Σ GREEK CAPITAL LETTER SIGMA converts to U+03C3 σ GREEK SMALL LETTER SIGMA if it is at the start or middle of a word, and converts to U+03C2 ς GREEK SMALL LETTER FINAL SIGMA if it is at the end of a word.
In Lithuanian, the dot in lowercase i and j is preserved when followed by accents. For example: Í in lowercase is i̇́.[19]
Despite the existence of U+1E9E ẞ LATIN CAPITAL LETTER SHARP S, U+00DF ß LATIN SMALL LETTER SHARP S corresponds to "SS".
Unicode encodes 31 titlecase characters.
- U+01C5 Dž LATIN CAPITAL LETTER D WITH SMALL LETTER Z WITH CARON
- U+01C8 Lj LATIN CAPITAL LETTER L WITH SMALL LETTER J
- U+01CB Nj LATIN CAPITAL LETTER N WITH SMALL LETTER J
- U+01F2 Dz LATIN CAPITAL LETTER D WITH SMALL LETTER Z
- U+1F88 ᾈ GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI
- U+1F89 ᾉ GREEK CAPITAL LETTER ALPHA WITH DASIA AND PROSGEGRAMMENI
- U+1F8A ᾊ GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI
- U+1F8B ᾋ GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI
- U+1F8C ᾌ GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI
- U+1F8D ᾍ GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA AND PROSGEGRAMMENI
- U+1F8E ᾎ GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
- U+1F8F ᾏ GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
- U+1F98 ᾘ GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI
- U+1F99 ᾙ GREEK CAPITAL LETTER ETA WITH DASIA AND PROSGEGRAMMENI
- U+1F9A ᾚ GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI
- U+1F9B ᾛ GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI
- U+1F9C ᾜ GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI
- U+1F9D ᾝ GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA AND PROSGEGRAMMENI
- U+1F9E ᾞ GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
- U+1F9F ᾟ GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
- U+1FA8 ᾨ GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI
- U+1FA9 ᾩ GREEK CAPITAL LETTER OMEGA WITH DASIA AND PROSGEGRAMMENI
- U+1FAA ᾪ GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI
- U+1FAB ᾫ GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI
- U+1FAC ᾬ GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI
- U+1FAD ᾭ GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA AND PROSGEGRAMMENI
- U+1FAE ᾮ GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI
- U+1FAF ᾯ GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI
- U+1FBC ᾼ GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI
- U+1FCC ῌ GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI
- U+1FFC ῼ GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI
![]() | This section needs expansion. You can help by adding to it. (March 2022) |
Other general characteristics
Ideographic, alphabetic, noncharacter.
![]() | This section needs expansion. You can help by adding to it. (March 2022) |
Combining class
Some common codes:
- 0 = spacing letter, symbol or modifier (e.g. a, (, ʰ)
- 1 = overlay
- 6 = Han reading (CJK diacritic reading marks)
- 7 = nukta (diacritic nukta in Brahmic scripts)
- 8 = kana voicing marks
- 9 = virama
10–199 = various fixed-position classes
Marks which attach to the base letter:
- 200 = attached at bottom left
- 202 = attached directly below (e.g. cedilla on ç)
- 204 = attached at bottom right
- 208 = attached to left
- 210 = attached to right
- 212 = attached to top left
- 214 = attached directly above
- 216 = attached at top right
Marks which do not attach to the base letter:
- 218 = bottom left
- 220 = directly below (e.g. ring on n̥)
- 222 = below right
- 224 = left
- 226 = right
- 228 = above left
- 230 = above (e.g. acute accent on á)
- 232 = above right
- 233 = double below (subtends two bases)
- 234 = double above (extends two bases)
- 240 = iota subscript (only that Greek diacritic)
Bidirectional writing
Six character properties pertain to bi-directional writing: Bidi_Class, Bidi_Control, Bidi_Mirrored, Bidi_Mirroring_Glyph, Bidi_Paired_Bracket and Bidi_Paired_Bracket_Type.
One of Unicode's major features is support of bi-directional (Bidi) text display right-to-left (R-to-L) and left-to-right (L-to-R). The Unicode Bidirectional Algorithm UAX9[20] describes the process of presenting text with altering script directions. For example, it enables a Hebrew quote in an English text. The Bidi_Character_Type marks a character's behaviour in directional writing. To override a direction, Unicode has defined special formatting control characters (Bidi-Control characters). These characters can enforce a direction, and by definition only affect bi-directional writing.
Each code point has a property called Bidi_Class. It defines its behaviour in a bidirectional text as interpreted by the algorithm:
Type[2] | Description | Strength | Directionality | General scope | Bidi_Control character[3] |
---|---|---|---|---|---|
L | Left-to-Right | Strong | L-to-R | Most alphabetic and syllabic characters, Chinese characters, non-European or non-Arabic digits, LRM character, ... | U+200E LEFT-TO-RIGHT MARK (LRM) |
R | Right-to-Left | Strong | R-to-L | Adlam, Garay, Hebrew, Mandaic, Mende Kikakui, N'Ko, Samaritan, ancient scripts like Kharoshthi and Nabataean, RLM character, ... | U+200F RIGHT-TO-LEFT MARK (RLM) |
AL | Arabic Letter | Strong | R-to-L | Arabic, Hanifi Rohingya, Sogdian, Syriac, and Thaana alphabets, and most punctuation specific to those scripts, ALM character, ... | U+061C ARABIC LETTER MARK (ALM) |
EN | European Number | Weak | European digits, Eastern Arabic-Indic digits, Coptic epact numbers, ... | ||
ES | European Separator | Weak | plus sign, minus sign, ... | ||
ET | European Number Terminator | Weak | degree sign, currency symbols, ... | ||
AN | Arabic Number | Weak | Arabic-Indic digits, Arabic decimal and thousands separators, Rumi digits, Hanifi Rohingya digits, ... | ||
CS | Common Number Separator | Weak | colon, comma, full stop, no-break space, ... | ||
NSM | Nonspacing Mark | Weak | Characters in General Categories Mark, nonspacing, and Mark, enclosing (Mn, Me) | ||
BN | Boundary Neutral | Weak | Default ignorables, non-characters, control characters other than those explicitly given other types | ||
B | Paragraph Separator | Neutral | paragraph separator, appropriate Newline Functions, higher-level protocol paragraph determination | ||
S | Segment Separator | Neutral | Tabs | ||
WS | Whitespace | Neutral | space, figure space, line separator, form feed, General Punctuation block spaces (smaller set than the Unicode whitespace list) | ||
ON | Other Neutrals | Neutral | All other characters, including object replacement character | ||
LRE | Left-to-Right Embedding | Explicit | L-to-R | LRE character only | U+202A LEFT-TO-RIGHT EMBEDDING (LRE) |
LRO | Left-to-Right Override | Explicit | L-to-R | LRO character only | U+202D LEFT-TO-RIGHT OVERRIDE (LRO) |
RLE | Right-to-Left Embedding | Explicit | R-to-L | RLE character only | U+202B RIGHT-TO-LEFT EMBEDDING (RLE) |
RLO | Right-to-Left Override | Explicit | R-to-L | RLO character only | U+202E RIGHT-TO-LEFT OVERRIDE (RLO) |
Pop Directional Format | Explicit | PDF character only | U+202C POP DIRECTIONAL FORMATTING (PDF) | ||
LRI | Left-to-Right Isolate | Explicit | L-to-R | LRI character only | U+2066 LEFT-TO-RIGHT ISOLATE (LRI) |
RLI | Right-to-Left Isolate | Explicit | R-to-L | RLI character only | U+2067 RIGHT-TO-LEFT ISOLATE (RLI) |
FSI | First Strong Isolate | Explicit | FSI character only | U+2068 FIRST STRONG ISOLATE (FSI) | |
PDI | Pop Directional Isolate | Explicit | PDI character only | U+2069 POP DIRECTIONAL ISOLATE (PDI) | |
Notes
|
In normal situations, the algorithm can determine the direction of a text by this character property. To control more complex Bidi situations, e.g. when an English text has a Hebrew quote, extra options are added to Unicode. 12 characters have the property Bidi_Control=Yes
: ALM, FSI, LRE, LRI, LRM, LRO, PDF, PDI, RLE, RLI, RLM and RLO as named in the table. These are invisible formatting control characters, only used by the algorithm and with no effect outside of bidirectional formatting.[20] Despite the name, they are formatting characters, not control characters, and have General category Other, format (Cf) in the Unicode definition.
Basically, the algorithm determines a sequence of characters with the same strong direction type (R-to-L or L-to-R), taking in account an overruling by the special Bidi-controls. Number strings (Weak types) are assigned a direction according to their strong environment, as are Neutral characters. Finally, the characters are displayed per a string's direction.
Two character properties are relevant to determining a mirror image of a glyph in bidirectional text: Bidi_Mirrored=Yes
indicates that the glyph should be mirrored when written R-to-L. The property Bidi_Mirroring_Glyph=U+hhhh
can then point to the mirrored character. For example, parentheses (, ) are mirrored this way. Shaping cursive scripts such as Arabic, and mirroring glyphs that have a direction, is not part of the algorithm.
Numeric values and types
Decimal
Characters are classified with a Numeric type.[1] Characters such as fractions, subscripts, superscripts, Roman numerals, currency numerators, encircled numbers, and script-specific digits are type Numeric. They have a numeric value that can be decimal, including zero and negatives, or a vulgar fraction. If there is not such a value, as with most of the characters, the numeric type is "None".
The characters that do have a numeric value are separated in three groups: Decimal (De), Digit (Di) and Numeric (Nu, i.e. all other). "Decimal" means the character is a straight decimal digit. Only characters that are part of a contiguous encoded range 0..9 have numeric type Decimal. Other digits, like superscripts, have numeric type Digit. All numeric characters like fractions and Roman numerals end up with the type "Numeric". The intended effect is that a simple parser can use these decimal numeric values, without being distracted by say a numeric superscript or a fraction. Eighty-three CJK Ideographs that represent a number, including those used for accounting, are typed Numeric.
On the other hand, characters that could have a numeric value as a second meaning are still marked Numeric type None, and have no numeric value. E.g. Latin letters can be used in paragraph numbering like "II.A.1.b", but the letters "I", "A" and "b" are not numeric (type None) and have no numeric value.
[a][b] (Unicode character property) | Numeric Type||||
---|---|---|---|---|
Numeric type | Code | Has numeric value | Example | Remarks |
Not numeric | <none> |
No |
|
Numeric Value="NaN" |
Decimal | De |
Yes |
|
Straight digit (decimal-radix). Corresponds both ways with General Category=Nd[a] |
Digit | Di |
Yes |
|
Decimal, but in typographic context |
Numeric | Nu |
Yes |
|
Numeric value, but not decimal-radix |
a. ^ "Section 4.6: Numeric Value". The Unicode Standard. Unicode Consortium. September 2024. | ||||
b. ^ "Unicode 16.0 Derived Numeric Types". Unicode Character Database. Unicode Consortium. 2024-04-30. |
Hexadecimal digits
Hexadecimal characters are those in the series with hexadecimal values 0123456789ABCDEF (sixteen characters, decimal value 0–15). The character property Hex_Digit is set to Yes when a character is in such a series:
Characters in Unicode marked Hex_Digit=Yes [a]
| |||
---|---|---|---|
0123456789ABCDEF |
Basic Latin, capitals | Also ASCII_Hex_Digit=Yes
| |
0123456789abcdef |
Basic Latin, small letters | Also ASCII_Hex_Digit=Yes
| |
0123456789ABCDEF |
Fullwidth forms, capitals | ||
0123456789abcdef |
Fullwidth forms, small letters | ||
a. ^ "Unicode 16.0 UCD: PropList.txt". 2024-05-31. Retrieved 2024-09-13. |
Forty-four characters are marked as Hex_Digit. The ones in the Basic Latin block are also marked as ASCII_Hex_Digit.
Unicode has no separate characters for hexadecimal values. A consequence is, that when using regular characters it is not possible to determine whether hexadecimal value is intended, or even whether a value is intended at all. That should be determined at a higher level, e.g. by prepending 0x to a hexadecimal number or by context. The only feature is that Unicode can note that a sequence can or can not be a hexadecimal value.
Block
A block is a uniquely named, contiguous range of code points. It is identified by its first and last code point. Blocks do not overlap, nor do they extend across planes. The number of code points in each block must be a multiple of 16. A block may contain code points that are reserved, not-assigned, etc. Each character that is assigned, has a single "block name" value from the 338 names assigned as of Unicode version 16.0. Unassigned code points outside of an existing block have the default value "No_block".
Plane | Block range | Block name | Code points[a] | Assigned characters | Scripts[b][c][d][e][f] |
---|---|---|---|---|---|
0 BMP | U+0000..U+007F | Basic Latin[g] | 128 | 128 | Latin (52 characters), Common (76 characters) |
0 BMP | U+0080..U+00FF | Latin-1 Supplement[h] | 128 | 128 | Latin (64 characters), Common (64 characters) |
0 BMP | U+0100..U+017F | Latin Extended-A | 128 | 128 | Latin |
0 BMP | U+0180..U+024F | Latin Extended-B | 208 | 208 | Latin |
0 BMP | U+0250..U+02AF | IPA Extensions | 96 | 96 | Latin |
0 BMP | U+02B0..U+02FF | Spacing Modifier Letters | 80 | 80 | Bopomofo (2 characters), Latin (14 characters), Common (64 characters) |
0 BMP | U+0300..U+036F | Combining Diacritical Marks | 112 | 112 | Inherited |
0 BMP | U+0370..U+03FF | Greek and Coptic | 144 | 135 | Coptic (14 characters), Greek (117 characters), Common (4 characters) |
0 BMP | U+0400..U+04FF | Cyrillic | 256 | 256 | Cyrillic (254 characters), Inherited (2 characters) |
0 BMP | U+0500..U+052F | Cyrillic Supplement | 48 | 48 | Cyrillic |
0 BMP | U+0530..U+058F | Armenian | 96 | 91 | Armenian |
0 BMP | U+0590..U+05FF | Hebrew | 112 | 88 | Hebrew |
0 BMP | U+0600..U+06FF | Arabic | 256 | 256 | Arabic (238 characters), Common (6 characters), Inherited (12 characters) |
0 BMP | U+0700..U+074F | Syriac | 80 | 77 | Syriac |
0 BMP | U+0750..U+077F | Arabic Supplement | 48 | 48 | Arabic |
0 BMP | U+0780..U+07BF | Thaana | 64 | 50 | Thaana |
0 BMP | U+07C0..U+07FF | NKo | 64 | 62 | N’Ko |
0 BMP | U+0800..U+083F | Samaritan | 64 | 61 | Samaritan |
0 BMP | U+0840..U+085F | Mandaic | 32 | 29 | Mandaic |
0 BMP | U+0860..U+086F | Syriac Supplement | 16 | 11 | Syriac |
0 BMP | U+0870..U+089F | Arabic Extended-B | 48 | 42 | Arabic |
0 BMP | U+08A0..U+08FF | Arabic Extended-A | 96 | 96 | Arabic (95 characters), Common (1 character) |
0 BMP | U+0900..U+097F | Devanagari | 128 | 128 | Devanagari (122 characters), Common (2 characters), Inherited (4 characters) |
0 BMP | U+0980..U+09FF | Bengali | 128 | 96 | Bengali |
0 BMP | U+0A00..U+0A7F | Gurmukhi | 128 | 80 | Gurmukhi |
0 BMP | U+0A80..U+0AFF | Gujarati | 128 | 91 | Gujarati |
0 BMP | U+0B00..U+0B7F | Oriya | 128 | 91 | Oriya |
0 BMP | U+0B80..U+0BFF | Tamil | 128 | 72 | Tamil |
0 BMP | U+0C00..U+0C7F | Telugu | 128 | 100 | Telugu |
0 BMP | U+0C80..U+0CFF | Kannada | 128 | 91 | Kannada |
0 BMP | U+0D00..U+0D7F | Malayalam | 128 | 118 | Malayalam |
0 BMP | U+0D80..U+0DFF | Sinhala | 128 | 91 | Sinhala |
0 BMP | U+0E00..U+0E7F | Thai | 128 | 87 | Thai (86 characters), Common (1 character) |
0 BMP | U+0E80..U+0EFF | Lao | 128 | 83 | Lao |
0 BMP | U+0F00..U+0FFF | Tibetan | 256 | 211 | Tibetan (207 characters), Common (4 characters) |
0 BMP | U+1000..U+109F | Myanmar | 160 | 160 | Myanmar |
0 BMP | U+10A0..U+10FF | Georgian | 96 | 88 | Georgian (87 characters), Common (1 character) |
0 BMP | U+1100..U+11FF | Hangul Jamo | 256 | 256 | Hangul |
0 BMP | U+1200..U+137F | Ethiopic | 384 | 358 | Ethiopic |
0 BMP | U+1380..U+139F | Ethiopic Supplement | 32 | 26 | Ethiopic |
0 BMP | U+13A0..U+13FF | Cherokee | 96 | 92 | Cherokee |
0 BMP | U+1400..U+167F | Unified Canadian Aboriginal Syllabics | 640 | 640 | Canadian Aboriginal |
0 BMP | U+1680..U+169F | Ogham | 32 | 29 | Ogham |
0 BMP | U+16A0..U+16FF | Runic | 96 | 89 | Runic (86 characters), Common (3 characters) |
0 BMP | U+1700..U+171F | Tagalog | 32 | 23 | Tagalog |
0 BMP | U+1720..U+173F | Hanunoo | 32 | 23 | Hanunoo (21 characters), Common (2 characters) |
0 BMP | U+1740..U+175F | Buhid | 32 | 20 | Buhid |
0 BMP | U+1760..U+177F | Tagbanwa | 32 | 18 | Tagbanwa |
0 BMP | U+1780..U+17FF | Khmer | 128 | 114 | Khmer |
0 BMP | U+1800..U+18AF | Mongolian | 176 | 158 | Mongolian (155 characters), Common (3 characters) |
0 BMP | U+18B0..U+18FF | Unified Canadian Aboriginal Syllabics Extended | 80 | 70 | Canadian Aboriginal |
0 BMP | U+1900..U+194F | Limbu | 80 | 68 | Limbu |
0 BMP | U+1950..U+197F | Tai Le | 48 | 35 | Tai Le |
0 BMP | U+1980..U+19DF | New Tai Lue | 96 | 83 | New Tai Lue |
0 BMP | U+19E0..U+19FF | Khmer Symbols | 32 | 32 | Khmer |
0 BMP | U+1A00..U+1A1F | Buginese | 32 | 30 | Buginese |
0 BMP | U+1A20..U+1AAF | Tai Tham | 144 | 127 | Tai Tham |
0 BMP | U+1AB0..U+1AFF | Combining Diacritical Marks Extended | 80 | 31 | Inherited |
0 BMP | U+1B00..U+1B7F | Balinese | 128 | 127 | Balinese |
0 BMP | U+1B80..U+1BBF | Sundanese | 64 | 64 | Sundanese |
0 BMP | U+1BC0..U+1BFF | Batak | 64 | 56 | Batak |
0 BMP | U+1C00..U+1C4F | Lepcha | 80 | 74 | Lepcha |
0 BMP | U+1C50..U+1C7F | Ol Chiki | 48 | 48 | Ol Chiki |
0 BMP | U+1C80..U+1C8F | Cyrillic Extended-C | 16 | 11 | Cyrillic |
0 BMP | U+1C90..U+1CBF | Georgian Extended | 48 | 46 | Georgian |
0 BMP | U+1CC0..U+1CCF | Sundanese Supplement | 16 | 8 | Sundanese |
0 BMP | U+1CD0..U+1CFF | Vedic Extensions | 48 | 43 | Common (16 characters), Inherited (27 characters) |
0 BMP | U+1D00..U+1D7F | Phonetic Extensions | 128 | 128 | Cyrillic (2 characters), Greek (15 characters), Latin (111 characters) |
0 BMP | U+1D80..U+1DBF | Phonetic Extensions Supplement | 64 | 64 | Greek (1 character), Latin (63 characters) |
0 BMP | U+1DC0..U+1DFF | Combining Diacritical Marks Supplement | 64 | 64 | Inherited |
0 BMP | U+1E00..U+1EFF | Latin Extended Additional | 256 | 256 | Latin |
0 BMP | U+1F00..U+1FFF | Greek Extended | 256 | 233 | Greek |
0 BMP | U+2000..U+206F | General Punctuation | 112 | 111 | Common (109 characters), Inherited (2 characters) |
0 BMP | U+2070..U+209F | Superscripts and Subscripts | 48 | 42 | Latin (15 characters), Common (27 characters) |
0 BMP | U+20A0..U+20CF | Currency Symbols | 48 | 33 | Common |
0 BMP | U+20D0..U+20FF | Combining Diacritical Marks for Symbols | 48 | 33 | Inherited |
0 BMP | U+2100..U+214F | Letterlike Symbols | 80 | 80 | Greek (1 character), Latin (4 characters), Common (75 characters) |
0 BMP | U+2150..U+218F | Number Forms | 64 | 60 | Latin (41 characters), Common (19 characters) |
0 BMP | U+2190..U+21FF | Arrows | 112 | 112 | Common |
0 BMP | U+2200..U+22FF | Mathematical Operators | 256 | 256 | Common |
0 BMP | U+2300..U+23FF | Miscellaneous Technical | 256 | 256 | Common |
0 BMP | U+2400..U+243F | Control Pictures | 64 | 42 | Common |
0 BMP | U+2440..U+245F | Optical Character Recognition | 32 | 11 | Common |
0 BMP | U+2460..U+24FF | Enclosed Alphanumerics | 160 | 160 | Common |
0 BMP | U+2500..U+257F | Box Drawing | 128 | 128 | Common |
0 BMP | U+2580..U+259F | Block Elements | 32 | 32 | Common |
0 BMP | U+25A0..U+25FF | Geometric Shapes | 96 | 96 | Common |
0 BMP | U+2600..U+26FF | Miscellaneous Symbols | 256 | 256 | Common |
0 BMP | U+2700..U+27BF | Dingbats | 192 | 192 | Common |
0 BMP | U+27C0..U+27EF | Miscellaneous Mathematical Symbols-A | 48 | 48 | Common |
0 BMP | U+27F0..U+27FF | Supplemental Arrows-A | 16 | 16 | Common |
0 BMP | U+2800..U+28FF | Braille Patterns | 256 | 256 | Braille |
0 BMP | U+2900..U+297F | Supplemental Arrows-B | 128 | 128 | Common |
0 BMP | U+2980..U+29FF | Miscellaneous Mathematical Symbols-B | 128 | 128 | Common |
0 BMP | U+2A00..U+2AFF | Supplemental Mathematical Operators | 256 | 256 | Common |
0 BMP | U+2B00..U+2BFF | Miscellaneous Symbols and Arrows | 256 | 253 | Common |
0 BMP | U+2C00..U+2C5F | Glagolitic | 96 | 96 | Glagolitic |
0 BMP | U+2C60..U+2C7F | Latin Extended-C | 32 | 32 | Latin |
0 BMP | U+2C80..U+2CFF | Coptic | 128 | 123 | Coptic |
0 BMP | U+2D00..U+2D2F | Georgian Supplement | 48 | 40 | Georgian |
0 BMP | U+2D30..U+2D7F | Tifinagh | 80 | 59 | Tifinagh |
0 BMP | U+2D80..U+2DDF | Ethiopic Extended | 96 | 79 | Ethiopic |
0 BMP | U+2DE0..U+2DFF | Cyrillic Extended-A | 32 | 32 | Cyrillic |
0 BMP | U+2E00..U+2E7F | Supplemental Punctuation | 128 | 94 | Common |
0 BMP | U+2E80..U+2EFF | CJK Radicals Supplement | 128 | 115 | Han |
0 BMP | U+2F00..U+2FDF | Kangxi Radicals | 224 | 214 | Han |
0 BMP | U+2FF0..U+2FFF | Ideographic Description Characters | 16 | 16 | Common |
0 BMP | U+3000..U+303F | CJK Symbols and Punctuation | 64 | 64 | Han (15 characters), Hangul (2 characters), Common (43 characters), Inherited (4 characters) |
0 BMP | U+3040..U+309F | Hiragana | 96 | 93 | Hiragana (89 characters), Common (2 characters), Inherited (2 characters) |
0 BMP | U+30A0..U+30FF | Katakana | 96 | 96 | Katakana (93 characters), Common (3 characters) |
0 BMP | U+3100..U+312F | Bopomofo | 48 | 43 | Bopomofo |
0 BMP | U+3130..U+318F | Hangul Compatibility Jamo | 96 | 94 | Hangul |
0 BMP | U+3190..U+319F | Kanbun | 16 | 16 | Common |
0 BMP | U+31A0..U+31BF | Bopomofo Extended | 32 | 32 | Bopomofo |
0 BMP | U+31C0..U+31EF | CJK Strokes | 48 | 39 | Common |
0 BMP | U+31F0..U+31FF | Katakana Phonetic Extensions | 16 | 16 | Katakana |
0 BMP | U+3200..U+32FF | Enclosed CJK Letters and Months | 256 | 255 | Hangul (62 characters), Katakana (47 characters), Common (146 characters) |
0 BMP | U+3300..U+33FF | CJK Compatibility | 256 | 256 | Katakana (88 characters), Common (168 characters) |
0 BMP | U+3400..U+4DBF | CJK Unified Ideographs Extension A | 6,592 | 6,592 | Han |
0 BMP | U+4DC0..U+4DFF | Yijing Hexagram Symbols | 64 | 64 | Common |
0 BMP | U+4E00..U+9FFF | CJK Unified Ideographs | 20,992 | 20,992 | Han |
0 BMP | U+A000..U+A48F | Yi Syllables | 1,168 | 1,165 | Yi |
0 BMP | U+A490..U+A4CF | Yi Radicals | 64 | 55 | Yi |
0 BMP | U+A4D0..U+A4FF | Lisu | 48 | 48 | Lisu |
0 BMP | U+A500..U+A63F | Vai | 320 | 300 | Vai |
0 BMP | U+A640..U+A69F | Cyrillic Extended-B | 96 | 96 | Cyrillic |
0 BMP | U+A6A0..U+A6FF | Bamum | 96 | 88 | Bamum |
0 BMP | U+A700..U+A71F | Modifier Tone Letters | 32 | 32 | Common |
0 BMP | U+A720..U+A7FF | Latin Extended-D | 224 | 199 | Latin (194 characters), Common (5 characters) |
0 BMP | U+A800..U+A82F | Syloti Nagri | 48 | 45 | Syloti Nagri |
0 BMP | U+A830..U+A83F | Common Indic Number Forms | 16 | 10 | Common |
0 BMP | U+A840..U+A87F | Phags-pa | 64 | 56 | Phags Pa |
0 BMP | U+A880..U+A8DF | Saurashtra | 96 | 82 | Saurashtra |
0 BMP | U+A8E0..U+A8FF | Devanagari Extended | 32 | 32 | Devanagari |
0 BMP | U+A900..U+A92F | Kayah Li | 48 | 48 | Kayah Li (47 characters), Common (1 character) |
0 BMP | U+A930..U+A95F | Rejang | 48 | 37 | Rejang |
0 BMP | U+A960..U+A97F | Hangul Jamo Extended-A | 32 | 29 | Hangul |
0 BMP | U+A980..U+A9DF | Javanese | 96 | 91 | Javanese (90 characters), Common (1 character) |
0 BMP | U+A9E0..U+A9FF | Myanmar Extended-B | 32 | 31 | Myanmar |
0 BMP | U+AA00..U+AA5F | Cham | 96 | 83 | Cham |
0 BMP | U+AA60..U+AA7F | Myanmar Extended-A | 32 | 32 | Myanmar |
0 BMP | U+AA80..U+AADF | Tai Viet | 96 | 72 | Tai Viet |
0 BMP | U+AAE0..U+AAFF | Meetei Mayek Extensions | 32 | 23 | Meetei Mayek |
0 BMP | U+AB00..U+AB2F | Ethiopic Extended-A | 48 | 32 | Ethiopic |
0 BMP | U+AB30..U+AB6F | Latin Extended-E | 64 | 60 | Latin (56 characters), Greek (1 character), Common (3 characters) |
0 BMP | U+AB70..U+ABBF | Cherokee Supplement | 80 | 80 | Cherokee |
0 BMP | U+ABC0..U+ABFF | Meetei Mayek | 64 | 56 | Meetei Mayek |
0 BMP | U+AC00..U+D7AF | Hangul Syllables | 11,184 | 11,172 | Hangul |
0 BMP | U+D7B0..U+D7FF | Hangul Jamo Extended-B | 80 | 72 | Hangul |
0 BMP | U+D800..U+DB7F | High Surrogates | 896 | 0 | Unknown |
0 BMP | U+DB80..U+DBFF | High Private Use Surrogates | 128 | 0 | Unknown |
0 BMP | U+DC00..U+DFFF | Low Surrogates | 1,024 | 0 | Unknown |
0 BMP | U+E000..U+F8FF | Private Use Area | 6,400 | 6,400 | Unknown |
0 BMP | U+F900..U+FAFF | CJK Compatibility Ideographs | 512 | 472 | Han |
0 BMP | U+FB00..U+FB4F | Alphabetic Presentation Forms | 80 | 58 | Armenian (5 characters), Hebrew (46 characters), Latin (7 characters) |
0 BMP | U+FB50..U+FDFF | Arabic Presentation Forms-A | 688 | 631 | Arabic (629 characters), Common (2 characters) |
0 BMP | U+FE00..U+FE0F | Variation Selectors | 16 | 16 | Inherited |
0 BMP | U+FE10..U+FE1F | Vertical Forms | 16 | 10 | Common |
0 BMP | U+FE20..U+FE2F | Combining Half Marks | 16 | 16 | Cyrillic (2 characters), Inherited (14 characters) |
0 BMP | U+FE30..U+FE4F | CJK Compatibility Forms | 32 | 32 | Common |
0 BMP | U+FE50..U+FE6F | Small Form Variants | 32 | 26 | Common |
0 BMP | U+FE70..U+FEFF | Arabic Presentation Forms-B | 144 | 141 | Arabic (140 characters), Common (1 character) |
0 BMP | U+FF00..U+FFEF | Halfwidth and Fullwidth Forms | 240 | 225 | Hangul (52 characters), Katakana (55 characters), Latin (52 characters), Common (66 characters) |
0 BMP | U+FFF0..U+FFFF | Specials | 16 | 5 | Common |
1 SMP | U+10000..U+1007F | Linear B Syllabary | 128 | 88 | Linear B |
1 SMP | U+10080..U+100FF | Linear B Ideograms | 128 | 123 | Linear B |
1 SMP | U+10100..U+1013F | Aegean Numbers | 64 | 57 | Common |
1 SMP | U+10140..U+1018F | Ancient Greek Numbers | 80 | 79 | Greek |
1 SMP | U+10190..U+101CF | Ancient Symbols | 64 | 14 | Greek (1 character), Common (13 characters) |
1 SMP | U+101D0..U+101FF | Phaistos Disc | 48 | 46 | Common (45 characters), Inherited (1 character) |
1 SMP | U+10280..U+1029F | Lycian | 32 | 29 | Lycian |
1 SMP | U+102A0..U+102DF | Carian | 64 | 49 | Carian |
1 SMP | U+102E0..U+102FF | Coptic Epact Numbers | 32 | 28 | Common (27 characters), Inherited (1 character) |
1 SMP | U+10300..U+1032F | Old Italic | 48 | 39 | Old Italic |
1 SMP | U+10330..U+1034F | Gothic | 32 | 27 | Gothic |
1 SMP | U+10350..U+1037F | Old Permic | 48 | 43 | Old Permic |
1 SMP | U+10380..U+1039F | Ugaritic | 32 | 31 | Ugaritic |
1 SMP | U+103A0..U+103DF | Old Persian | 64 | 50 | Old Persian |
1 SMP | U+10400..U+1044F | Deseret | 80 | 80 | Deseret |
1 SMP | U+10450..U+1047F | Shavian | 48 | 48 | Shavian |
1 SMP | U+10480..U+104AF | Osmanya | 48 | 40 | Osmanya |
1 SMP | U+104B0..U+104FF | Osage | 80 | 72 | Osage |
1 SMP | U+10500..U+1052F | Elbasan | 48 | 40 | Elbasan |
1 SMP | U+10530..U+1056F | Caucasian Albanian | 64 | 53 | Caucasian Albanian |
1 SMP | U+10570..U+105BF | Vithkuqi | 80 | 70 | Vithkuqi |
1 SMP | U+105C0..U+105FF | Todhri | 64 | 52 | Todhri |
1 SMP | U+10600..U+1077F | Linear A | 384 | 341 | Linear A |
1 SMP | U+10780..U+107BF | Latin Extended-F | 64 | 57 | Latin |
1 SMP | U+10800..U+1083F | Cypriot Syllabary | 64 | 55 | Cypriot |
1 SMP | U+10840..U+1085F | Imperial Aramaic | 32 | 31 | Imperial Aramaic |
1 SMP | U+10860..U+1087F | Palmyrene | 32 | 32 | Palmyrene |
1 SMP | U+10880..U+108AF | Nabataean | 48 | 40 | Nabataean |
1 SMP | U+108E0..U+108FF | Hatran | 32 | 26 | Hatran |
1 SMP | U+10900..U+1091F | Phoenician | 32 | 29 | Phoenician |
1 SMP | U+10920..U+1093F | Lydian | 32 | 27 | Lydian |
1 SMP | U+10980..U+1099F | Meroitic Hieroglyphs | 32 | 32 | Meroitic Hieroglyphs |
1 SMP | U+109A0..U+109FF | Meroitic Cursive | 96 | 90 | Meroitic Cursive |
1 SMP | U+10A00..U+10A5F | Kharoshthi | 96 | 68 | Kharoshthi |
1 SMP | U+10A60..U+10A7F | Old South Arabian | 32 | 32 | Old South Arabian |
1 SMP | U+10A80..U+10A9F | Old North Arabian | 32 | 32 | Old North Arabian |
1 SMP | U+10AC0..U+10AFF | Manichaean | 64 | 51 | Manichaean |
1 SMP | U+10B00..U+10B3F | Avestan | 64 | 61 | Avestan |
1 SMP | U+10B40..U+10B5F | Inscriptional Parthian | 32 | 30 | Inscriptional Parthian |
1 SMP | U+10B60..U+10B7F | Inscriptional Pahlavi | 32 | 27 | Inscriptional Pahlavi |
1 SMP | U+10B80..U+10BAF | Psalter Pahlavi | 48 | 29 | Psalter Pahlavi |
1 SMP | U+10C00..U+10C4F | Old Turkic | 80 | 73 | Old Turkic |
1 SMP | U+10C80..U+10CFF | Old Hungarian | 128 | 108 | Old Hungarian |
1 SMP | U+10D00..U+10D3F | Hanifi Rohingya | 64 | 50 | Hanifi Rohingya |
1 SMP | U+10D40..U+10D8F | Garay | 80 | 69 | Garay |
1 SMP | U+10E60..U+10E7F | Rumi Numeral Symbols | 32 | 31 | Arabic |
1 SMP | U+10E80..U+10EBF | Yezidi | 64 | 47 | Yezidi |
1 SMP | U+10EC0..U+10EFF | Arabic Extended-C | 64 | 7 | Arabic |
1 SMP | U+10F00..U+10F2F | Old Sogdian | 48 | 40 | Old Sogdian |
1 SMP | U+10F30..U+10F6F | Sogdian | 64 | 42 | Sogdian |
1 SMP | U+10F70..U+10FAF | Old Uyghur | 64 | 26 | Old Uyghur |
1 SMP | U+10FB0..U+10FDF | Chorasmian | 48 | 28 | Chorasmian |
1 SMP | U+10FE0..U+10FFF | Elymaic | 32 | 23 | Elymaic |
1 SMP | U+11000..U+1107F | Brahmi | 128 | 115 | Brahmi |
1 SMP | U+11080..U+110CF | Kaithi | 80 | 68 | Kaithi |
1 SMP | U+110D0..U+110FF | Sora Sompeng | 48 | 35 | Sora Sompeng |
1 SMP | U+11100..U+1114F | Chakma | 80 | 71 | Chakma |
1 SMP | U+11150..U+1117F | Mahajani | 48 | 39 | Mahajani |
1 SMP | U+11180..U+111DF | Sharada | 96 | 96 | Sharada |
1 SMP | U+111E0..U+111FF | Sinhala Archaic Numbers | 32 | 20 | Sinhala |
1 SMP | U+11200..U+1124F | Khojki | 80 | 65 | Khojki |
1 SMP | U+11280..U+112AF | Multani | 48 | 38 | Multani |
1 SMP | U+112B0..U+112FF | Khudawadi | 80 | 69 | Khudawadi |
1 SMP | U+11300..U+1137F | Grantha | 128 | 86 | Grantha (85 characters), Inherited (1 character) |
1 SMP | U+11380..U+113FF | Tulu-Tigalari | 128 | 80 | Tulu Tigalari |
1 SMP | U+11400..U+1147F | Newa | 128 | 97 | Newa |
1 SMP | U+11480..U+114DF | Tirhuta | 96 | 82 | Tirhuta |
1 SMP | U+11580..U+115FF | Siddham | 128 | 92 | Siddham |
1 SMP | U+11600..U+1165F | Modi | 96 | 79 | Modi |
1 SMP | U+11660..U+1167F | Mongolian Supplement | 32 | 13 | Mongolian |
1 SMP | U+11680..U+116CF | Takri | 80 | 68 | Takri |
1 SMP | U+116D0..U+116FF | Myanmar Extended-C | 48 | 20 | Myanmar |
1 SMP | U+11700..U+1174F | Ahom | 80 | 65 | Ahom |
1 SMP | U+11800..U+1184F | Dogra | 80 | 60 | Dogra |
1 SMP | U+118A0..U+118FF | Warang Citi | 96 | 84 | Warang Citi |
1 SMP | U+11900..U+1195F | Dives Akuru | 96 | 72 | Dives Akuru |
1 SMP | U+119A0..U+119FF | Nandinagari | 96 | 65 | Nandinagari |
1 SMP | U+11A00..U+11A4F | Zanabazar Square | 80 | 72 | Zanabazar Square |
1 SMP | U+11A50..U+11AAF | Soyombo | 96 | 83 | Soyombo |
1 SMP | U+11AB0..U+11ABF | Unified Canadian Aboriginal Syllabics Extended-A | 16 | 16 | Canadian Aboriginal |
1 SMP | U+11AC0..U+11AFF | Pau Cin Hau | 64 | 57 | Pau Cin Hau |
1 SMP | U+11B00..U+11B5F | Devanagari Extended-A | 96 | 10 | Devanagari |
1 SMP | U+11BC0..U+11BFF | Sunuwar | 64 | 44 | Sunuwar |
1 SMP | U+11C00..U+11C6F | Bhaiksuki | 112 | 97 | Bhaiksuki |
1 SMP | U+11C70..U+11CBF | Marchen | 80 | 68 | Marchen |
1 SMP | U+11D00..U+11D5F | Masaram Gondi | 96 | 75 | Masaram Gondi |
1 SMP | U+11D60..U+11DAF | Gunjala Gondi | 80 | 63 | Gunjala Gondi |
1 SMP | U+11EE0..U+11EFF | Makasar | 32 | 25 | Makasar |
1 SMP | U+11F00..U+11F5F | Kawi | 96 | 87 | Kawi |
1 SMP | U+11FB0..U+11FBF | Lisu Supplement | 16 | 1 | Lisu |
1 SMP | U+11FC0..U+11FFF | Tamil Supplement | 64 | 51 | Tamil |
1 SMP | U+12000..U+123FF | Cuneiform | 1,024 | 922 | Cuneiform |
1 SMP | U+12400..U+1247F | Cuneiform Numbers and Punctuation | 128 | 116 | Cuneiform |
1 SMP | U+12480..U+1254F | Early Dynastic Cuneiform | 208 | 196 | Cuneiform |
1 SMP | U+12F90..U+12FFF | Cypro-Minoan | 112 | 99 | Cypro Minoan |
1 SMP | U+13000..U+1342F | Egyptian Hieroglyphs | 1,072 | 1,072 | Egyptian Hieroglyphs |
1 SMP | U+13430..U+1345F | Egyptian Hieroglyph Format Controls | 48 | 38 | Egyptian Hieroglyphs |
1 SMP | U+13460..U+143FF | Egyptian Hieroglyphs Extended-A | 4,000 | 3,995 | Egyptian Hieroglyphs |
1 SMP | U+14400..U+1467F | Anatolian Hieroglyphs | 640 | 583 | Anatolian Hieroglyphs |
1 SMP | U+16100..U+1613F | Gurung Khema | 64 | 58 | Gurung Khema |
1 SMP | U+16800..U+16A3F | Bamum Supplement | 576 | 569 | Bamum |
1 SMP | U+16A40..U+16A6F | Mro | 48 | 43 | Mro |
1 SMP | U+16A70..U+16ACF | Tangsa | 96 | 89 | Tangsa |
1 SMP | U+16AD0..U+16AFF | Bassa Vah | 48 | 36 | Bassa Vah |
1 SMP | U+16B00..U+16B8F | Pahawh Hmong | 144 | 127 | Pahawh Hmong |
1 SMP | U+16D40..U+16D7F | Kirat Rai | 64 | 58 | Kirat Rai |
1 SMP | U+16E40..U+16E9F | Medefaidrin | 96 | 91 | Medefaidrin |
1 SMP | U+16F00..U+16F9F | Miao | 160 | 149 | Miao |
1 SMP | U+16FE0..U+16FFF | Ideographic Symbols and Punctuation | 32 | 7 | Han (4 characters), Khitan Small Script (1 character), Nushu (1 character), Tangut (1 character) |
1 SMP | U+17000..U+187FF | Tangut | 6,144 | 6,136 | Tangut |
1 SMP | U+18800..U+18AFF | Tangut Components | 768 | 768 | Tangut |
1 SMP | U+18B00..U+18CFF | Khitan Small Script | 512 | 471 | Khitan Small Script |
1 SMP | U+18D00..U+18D7F | Tangut Supplement | 128 | 9 | Tangut |
1 SMP | U+1AFF0..U+1AFFF | Kana Extended-B | 16 | 13 | Katakana |
1 SMP | U+1B000..U+1B0FF | Kana Supplement | 256 | 256 | Hiragana (255 characters), Katakana (1 character) |
1 SMP | U+1B100..U+1B12F | Kana Extended-A | 48 | 35 | Hiragana (32 characters), Katakana (3 characters) |
1 SMP | U+1B130..U+1B16F | Small Kana Extension | 64 | 9 | Hiragana (4 characters), Katakana (5 characters) |
1 SMP | U+1B170..U+1B2FF | Nushu | 400 | 396 | Nüshu |
1 SMP | U+1BC00..U+1BC9F | Duployan | 160 | 143 | Duployan |
1 SMP | U+1BCA0..U+1BCAF | Shorthand Format Controls | 16 | 4 | Common |
1 SMP | U+1CC00..U+1CEBF | Symbols for Legacy Computing Supplement | 704 | 686 | Common |
1 SMP | U+1CF00..U+1CFCF | Znamenny Musical Notation | 208 | 185 | Common (116 characters), Inherited (69 characters) |
1 SMP | U+1D000..U+1D0FF | Byzantine Musical Symbols | 256 | 246 | Common |
1 SMP | U+1D100..U+1D1FF | Musical Symbols | 256 | 233 | Common (211 characters), Inherited (22 characters) |
1 SMP | U+1D200..U+1D24F | Ancient Greek Musical Notation | 80 | 70 | Greek |
1 SMP | U+1D2C0..U+1D2DF | Kaktovik Numerals | 32 | 20 | Common |
1 SMP | U+1D2E0..U+1D2FF | Mayan Numerals | 32 | 20 | Common |
1 SMP | U+1D300..U+1D35F | Tai Xuan Jing Symbols | 96 | 87 | Common |
1 SMP | U+1D360..U+1D37F | Counting Rod Numerals | 32 | 25 | Common |
1 SMP | U+1D400..U+1D7FF | Mathematical Alphanumeric Symbols | 1,024 | 996 | Common |
1 SMP | U+1D800..U+1DAAF | Sutton SignWriting | 688 | 672 | SignWriting |
1 SMP | U+1DF00..U+1DFFF | Latin Extended-G | 256 | 37 | Latin |
1 SMP | U+1E000..U+1E02F | Glagolitic Supplement | 48 | 38 | Glagolitic |
1 SMP | U+1E030..U+1E08F | Cyrillic Extended-D | 96 | 63 | Cyrillic |
1 SMP | U+1E100..U+1E14F | Nyiakeng Puachue Hmong | 80 | 71 | Nyiakeng Puachue Hmong |
1 SMP | U+1E290..U+1E2BF | Toto | 48 | 31 | Toto |
1 SMP | U+1E2C0..U+1E2FF | Wancho | 64 | 59 | Wancho |
1 SMP | U+1E4D0..U+1E4FF | Nag Mundari | 48 | 42 | Mundari |
1 SMP | U+1E5D0..U+1E5FF | Ol Onal | 48 | 44 | Ol Onal |
1 SMP | U+1E7E0..U+1E7FF | Ethiopic Extended-B | 32 | 28 | Ethiopic |
1 SMP | U+1E800..U+1E8DF | Mende Kikakui | 224 | 213 | Mende Kikakui |
1 SMP | U+1E900..U+1E95F | Adlam | 96 | 88 | Adlam |
1 SMP | U+1EC70..U+1ECBF | Indic Siyaq Numbers | 80 | 68 | Common |
1 SMP | U+1ED00..U+1ED4F | Ottoman Siyaq Numbers | 80 | 61 | Common |
1 SMP | U+1EE00..U+1EEFF | Arabic Mathematical Alphabetic Symbols | 256 | 143 | Arabic |
1 SMP | U+1F000..U+1F02F | Mahjong Tiles | 48 | 44 | Common |
1 SMP | U+1F030..U+1F09F | Domino Tiles | 112 | 100 | Common |
1 SMP | U+1F0A0..U+1F0FF | Playing Cards | 96 | 82 | Common |
1 SMP | U+1F100..U+1F1FF | Enclosed Alphanumeric Supplement | 256 | 200 | Common |
1 SMP | U+1F200..U+1F2FF | Enclosed Ideographic Supplement | 256 | 64 | Hiragana (1 character), Common (63 characters) |
1 SMP | U+1F300..U+1F5FF | Miscellaneous Symbols and Pictographs | 768 | 768 | Common |
1 SMP | U+1F600..U+1F64F | Emoticons | 80 | 80 | Common |
1 SMP | U+1F650..U+1F67F | Ornamental Dingbats | 48 | 48 | Common |
1 SMP | U+1F680..U+1F6FF | Transport and Map Symbols | 128 | 118 | Common |
1 SMP | U+1F700..U+1F77F | Alchemical Symbols | 128 | 124 | Common |
1 SMP | U+1F780..U+1F7FF | Geometric Shapes Extended | 128 | 103 | Common |
1 SMP | U+1F800..U+1F8FF | Supplemental Arrows-C | 256 | 162 | Common |
1 SMP | U+1F900..U+1F9FF | Supplemental Symbols and Pictographs | 256 | 256 | Common |
1 SMP | U+1FA00..U+1FA6F | Chess Symbols | 112 | 98 | Common |
1 SMP | U+1FA70..U+1FAFF | Symbols and Pictographs Extended-A | 144 | 114 | Common |
1 SMP | U+1FB00..U+1FBFF | Symbols for Legacy Computing | 256 | 249 | Common |
2 SIP | U+20000..U+2A6DF | CJK Unified Ideographs Extension B | 42,720 | 42,720 | Han |
2 SIP | U+2A700..U+2B73F | CJK Unified Ideographs Extension C | 4,160 | 4,154 | Han |
2 SIP | U+2B740..U+2B81F | CJK Unified Ideographs Extension D | 224 | 222 | Han |
2 SIP | U+2B820..U+2CEAF | CJK Unified Ideographs Extension E | 5,776 | 5,762 | Han |
2 SIP | U+2CEB0..U+2EBEF | CJK Unified Ideographs Extension F | 7,488 | 7,473 | Han |
2 SIP | U+2EBF0..U+2EE5F | CJK Unified Ideographs Extension I | 624 | 622 | Han |
2 SIP | U+2F800..U+2FA1F | CJK Compatibility Ideographs Supplement | 544 | 542 | Han |
3 TIP | U+30000..U+3134F | CJK Unified Ideographs Extension G | 4,944 | 4,939 | Han |
3 TIP | U+31350..U+323AF | CJK Unified Ideographs Extension H | 4,192 | 4,192 | Han |
14 SSP | U+E0000..U+E007F | Tags | 128 | 97 | Common |
14 SSP | U+E0100..U+E01EF | Variation Selectors Supplement | 240 | 240 | Inherited |
15 PUA-A | U+F0000..U+FFFFF | Supplementary Private Use Area-A | 65,536 | 65,534 | Unknown |
16 PUA-B | U+100000..U+10FFFF | Supplementary Private Use Area-B | 65,536 | 65,534 | Unknown |
|
Script
Each assigned character can have a single value for its "Script" property, signifying to which script it belongs.[21] The value is a four-letter code in the range Aaaa-Zzzz, as available in ISO 15924, which is mapped to a writing system. Apart from when describing the background and usage of a script, Unicode does not use a connection between a script and languages that use that script. So "Hebrew" refers to the Hebrew script, not to the Hebrew language.
The special code Zyyy for "Common" allows a single value for a character that is used in multiple scripts. The code Zinh "Inherited script", used for combining characters and certain other special-purpose code points, indicates that a character "inherits" its script identity from the character with which it is combined. (Unicode formerly used the private code Qaai for this purpose.) The code Zzzz "Unknown" is used for all characters that do not belong to a script (i.e. the default value), such as symbols and formatting characters. Overall, characters of a single script can be scattered over multiple blocks, like Latin characters. And the other way around too: multiple scripts can be present is a single block, e.g. block Letterlike Symbols contains characters from the Latin, Greek and Common scripts.
When the Script is "" (blank), according to Unicode the character does not belong to a script. This pertains to symbols, because the existing ISO script codes "Zmth" (Mathematical notation), "Zsym" (Symbol), and "Zsye" (Symbol, emoji variant) are not used in Unicode. The "Script" property is also blank for code points that are not a typographic character like controls, substitutes, and private use code points.
If there is a specific script alias name in ISO 15924, it is used in the character name: U+0041 A LATIN CAPITAL LETTER A, and U+05D0 א HEBREW LETTER ALEF.
ISO 15924 | Script in Unicode[e] | |||||||
---|---|---|---|---|---|---|---|---|
Code | ISO number | ISO formal name | Directionality | Unicode Alias[f] | Version | Characters | Notes | Description |
Adlm | 166 | Adlam | right-to-left script ![]() |
Adlam | 9.0 | 88 | Ch 19.9 | |
Afak | 439 | Afaka | varies | [i] | — Not in Unicode, proposal is explored||||
Aghb | 239 | Caucasian Albanian | left-to-right ![]() |
Caucasian Albanian | 7.0 | 53 | Ancient/historic | Ch 8.11 |
Ahom | 338 | Ahom, Tai Ahom | left-to-right ![]() |
Ahom | 8.0 | 65 | Ancient/historic | Ch 15.16 |
Arab | 160 | Arabic | right-to-left script ![]() |
Arabic | 1.0 | 1,373 | Ch 9.2 | |
Aran | 161 | Arabic (Nastaliq variant) | mixed | § Arab) | — Typographic variant of Arabic (see||||
Armi | 124 | Imperial Aramaic | right-to-left script ![]() |
Imperial Aramaic | 5.2 | 31 | Ancient/historic | Ch 10.4 |
Armn | 230 | Armenian | left-to-right ![]() |
Armenian | 1.0 | 96 | Ch 7.6 | |
Avst | 134 | Avestan | right-to-left script ![]() |
Avestan | 5.2 | 61 | Ancient/historic | Ch 10.7 |
Bali | 360 | Balinese | left-to-right ![]() |
Balinese | 5.0 | 127 | Ch 17.3 | |
Bamu | 435 | Bamum | left-to-right ![]() |
Bamum | 5.2 | 657 | Ch 19.6 | |
Bass | 259 | Bassa Vah | left-to-right ![]() |
Bassa Vah | 7.0 | 36 | Ancient/historic | Ch 19.7 |
Batk | 365 | Batak | left-to-right ![]() |
Batak | 6.0 | 56 | Ch 17.6 | |
Beng | 325 | Bengali (Bangla) | left-to-right ![]() |
Bengali | 1.0 | 96 | Ch 12.2 | |
Berf | 258 | Beria Erfe | left-to-right | — Not in Unicode | ||||
Bhks | 334 | Bhaiksuki | left-to-right ![]() |
Bhaiksuki | 9.0 | 97 | Ancient/historic | Ch 14.3 |
Blis | 550 | Blissymbols | varies | [i] | — Not in Unicode, proposal is explored||||
Bopo | 285 | Bopomofo | left-to-right, right-to-left script ![]() |
Bopomofo | 1.0 | 77 | Ch 18.3 | |
Brah | 300 | Brahmi | left-to-right ![]() |
Brahmi | 6.0 | 115 | Ancient/historic | Ch 14.1 |
Brai | 570 | Braille | left-to-right, right-to-left script ![]() |
Braille | 3.0 | 256 | Ch 21.1 | |
Bugi | 367 | Buginese | left-to-right ![]() |
Buginese | 4.1 | 30 | Ch 17.2 | |
Buhd | 372 | Buhid | left-to-right ![]() |
Buhid | 3.2 | 20 | Ch 17.1 | |
Cakm | 349 | Chakma | left-to-right ![]() |
Chakma | 6.1 | 71 | Ch 13.11 | |
Cans | 440 | Unified Canadian Aboriginal Syllabics | left-to-right ![]() |
Canadian Aboriginal | 3.0 | 726 | Ch 20.2 | |
Cari | 201 | Carian | left-to-right, right-to-left script ![]() |
Carian | 5.1 | 49 | Ancient/historic | Ch 8.5 |
Cham | 358 | Cham | left-to-right ![]() |
Cham | 5.1 | 83 | Ch 16.10 | |
Cher | 445 | Cherokee | left-to-right ![]() |
Cherokee | 3.0 | 172 | Ch 20.1 | |
Chis | 298 | Chisoi | left-to-right | [ii] | — Not in Unicode, proposal is mature||||
Chrs | 109 | Chorasmian | right-to-left script, top-to-bottom ![]() |
Chorasmian | 13.0 | 28 | Ancient/historic | Ch 10.8 |
Cirt | 291 | Cirth | varies | — Not in Unicode | ||||
Copt | 204 | Coptic | left-to-right ![]() |
Coptic | 1.0 | 137 | Ancient/historic, disunified from Greek in 4.1 | Ch 7.3 |
Cpmn | 402 | Cypro-Minoan | left-to-right | Cypro Minoan | 14.0 | 99 | Ancient/historic | Ch 8.4 |
Cprt | 403 | Cypriot syllabary | right-to-left script ![]() |
Cypriot | 4.0 | 55 | Ancient/historic | Ch 8.3 |
Cyrl | 220 | Cyrillic | left-to-right ![]() |
Cyrillic | 1.0 | 508 | Includes typographic variant Old Church Slavonic (see § Cyrs) | Ch 7.4 |
Cyrs | 221 | Cyrillic (Old Church Slavonic variant) | varies | § Cyrl); Ancient/historic | — Typographic variant of Cyrillic (see||||
Deva | 315 | Devanagari (Nagari) | left-to-right ![]() |
Devanagari | 1.0 | 164 | Ch 12.1 | |
Diak | 342 | Dives Akuru | left-to-right ![]() |
Dives Akuru | 13.0 | 72 | Ancient/historic | Ch 15.15 |
Dogr | 328 | Dogra | left-to-right ![]() |
Dogra | 11.0 | 60 | Ancient/historic | Ch 15.18 |
Dsrt | 250 | Deseret (Mormon) | left-to-right ![]() |
Deseret | 3.1 | 80 | Ch 20.4 | |
Dupl | 755 | Duployan shorthand, Duployan stenography | left-to-right ![]() |
Duployan | 7.0 | 143 | Ch 21.6 | |
Egyd | 070 | Egyptian demotic | mixed | — Not in Unicode | ||||
Egyh | 060 | Egyptian hieratic | mixed | — Not in Unicode | ||||
Egyp | 050 | Egyptian hieroglyphs | right-to-left script, left-to-right, bottom-to-top, top-to-bottom ![]() |
Egyptian Hieroglyphs | 5.2 | 5,105 | Ancient/historic | Ch 11.4 |
Elba | 226 | Elbasan | left-to-right ![]() |
Elbasan | 7.0 | 40 | Ancient/historic | Ch 8.10 |
Elym | 128 | Elymaic | right-to-left script ![]() |
Elymaic | 12.0 | 23 | Ancient/historic | Ch 10.9 |
Ethi | 430 | Ethiopic (Geʻez) | left-to-right ![]() |
Ethiopic | 3.0 | 523 | Ch 19.1 | |
Gara | 164 | Garay | right-to-left | Garay | 16.0 | 69 | ||
Geok | 241 | Khutsuri (Asomtavruli and Nuskhuri) | left-to-right ![]() |
Georgian | Unicode groups Khutsori, Asomtavruli and Nuskhuri into 'Georgian' (see § Geok). Similarly, Mkhedruli and Mtavruli are 'Georgian' (see § Geor) | Ch 7.7 | ||
Geor | 240 | Georgian (Mkhedruli and Mtavruli) | left-to-right ![]() |
Georgian | 1.0 | 173 | In Unicode this also includes Nuskhuri (Geok) | Ch 7.7 |
Glag | 225 | Glagolitic | left-to-right ![]() |
Glagolitic | 4.1 | 134 | Ancient/historic | Ch 7.5 |
Gong | 312 | Gunjala Gondi | left-to-right ![]() |
Gunjala Gondi | 11.0 | 63 | Ch 13.15 | |
Gonm | 313 | Masaram Gondi | left-to-right ![]() |
Masaram Gondi | 10.0 | 75 | Ch 13.14 | |
Goth | 206 | Gothic | left-to-right ![]() |
Gothic | 3.1 | 27 | Ancient/historic | Ch 8.9 |
Gran | 343 | Grantha | left-to-right ![]() |
Grantha | 7.0 | 85 | Ancient/historic | Ch 15.14 |
Grek | 200 | Greek | left-to-right ![]() |
Greek | 1.0 | 518 | Directionality sometimes as boustrophedon | Ch 7.2 |
Gujr | 320 | Gujarati | left-to-right ![]() |
Gujarati | 1.0 | 91 | Ch 12.4 | |
Gukh | 397 | Gurung Khema | left-to-right | Gurung Khema | 16.0 | 58 | ||
Guru | 310 | Gurmukhi | left-to-right ![]() |
Gurmukhi | 1.0 | 80 | Ch 12.3 | |
Hanb | 503 | Han with Bopomofo (alias for Han + Bopomofo) | mixed | § Hani, § Bopo | — See||||
Hang | 286 | Hangul (Hangŭl, Hangeul) | left-to-right, vertical right-to-left ![]() |
Hangul | 1.0 | 11,739 | Hangul syllables relocated in 2.0 | Ch 18.6 |
Hani | 500 | Han (Hanzi, Kanji, Hanja) | top-to-bottom, columns right-to-left (historically) | Han | 1.0 | 99,030 | Ch 18.1 | |
Hano | 371 | Hanunoo (Hanunóo) | left-to-right, bottom-to-top ![]() |
Hanunoo | 3.2 | 21 | Ch 17.1 | |
Hans | 501 | Han (Simplified variant) | varies | § Hani) | — Subset of Han (Hanzi, Kanji, Hanja) (see||||
Hant | 502 | Han (Traditional variant) | varies | § Hani | — Subset of||||
Hatr | 127 | Hatran | right-to-left script ![]() |
Hatran | 8.0 | 26 | Ancient/historic | Ch 10.12 |
Hebr | 125 | Hebrew | right-to-left script ![]() |
Hebrew | 1.0 | 134 | Ch 9.1 | |
Hira | 410 | Hiragana | vertical right-to-left, left-to-right ![]() |
Hiragana | 1.0 | 381 | Ch 18.4 | |
Hluw | 080 | Anatolian Hieroglyphs (Luwian Hieroglyphs, Hittite Hieroglyphs) | left-to-right ![]() |
Anatolian Hieroglyphs | 8.0 | 583 | Ancient/historic | Ch 11.6 |
Hmng | 450 | Pahawh Hmong | left-to-right ![]() |
Pahawh Hmong | 7.0 | 127 | Ch 16.11 | |
Hmnp | 451 | Nyiakeng Puachue Hmong | left-to-right ![]() |
Nyiakeng Puachue Hmong | 12.0 | 71 | Ch 16.12 | |
Hntl | 504 | Han (Traditional variant) with Latin (alias for Hant + Latn) | varies | § Hant and § Latn | — See||||
Hrkt | 412 | Japanese syllabaries (alias for Hiragana + Katakana) | vertical right-to-left, left-to-right ![]() |
Katakana or Hiragana | See § Hira, § Kana | Ch 18.4 | ||
Hung | 176 | Old Hungarian (Hungarian Runic) | right-to-left script ![]() |
Old Hungarian | 8.0 | 108 | Ancient/historic | Ch 8.8 |
Inds | 610 | Indus (Harappan) | mixed | [i] | — Not in Unicode, proposal is explored||||
Ital | 210 | Old Italic (Etruscan, Oscan, etc.) | right-to-left script, left-to-right ![]() |
Old Italic | 3.1 | 39 | Ancient/historic | Ch 8.6 |
Jamo | 284 | Jamo (alias for Jamo subset of Hangul) | varies | § Hang | — Subset of||||
Java | 361 | Javanese | left-to-right ![]() |
Javanese | 5.2 | 90 | Ch 17.4 | |
Jpan | 413 | Japanese (alias for Han + Hiragana + Katakana) | varies | § Hani, § Hira and § Kana | — See||||
Jurc | 510 | Jurchen | left-to-right | — Not in Unicode | ||||
Kali | 357 | Kayah Li | left-to-right ![]() |
Kayah Li | 5.1 | 47 | Ch 16.9 | |
Kana | 411 | Katakana | vertical right-to-left, left-to-right ![]() |
Katakana | 1.0 | 321 | Ch 18.4 | |
Kawi | 368 | Kawi | left-to-right ![]() |
Kawi | 15.0 | 87 | Ancient/historic | Ch 17.9 |
Khar | 305 | Kharoshthi | right-to-left script ![]() |
Kharoshthi | 4.1 | 68 | Ancient/historic | Ch 14.2 |
Khmr | 355 | Khmer | left-to-right ![]() |
Khmer | 3.0 | 146 | Ch 16.4 | |
Khoj | 322 | Khojki | left-to-right ![]() |
Khojki | 7.0 | 65 | Ancient/historic | Ch 15.7 |
Kitl | 505 | Khitan large script | left-to-right | — Not in Unicode | ||||
Kits | 288 | Khitan small script | vertical right-to-left ![]() |
Khitan Small Script | 13.0 | 472 | Ancient/historic | Ch 18.12 |
Knda | 345 | Kannada | left-to-right ![]() |
Kannada | 1.0 | 91 | Ch 12.8 | |
Kore | 287 | Korean (alias for Hangul + Han) | left-to-right | § Hani, § Hang | — See||||
Kpel | 436 | Kpelle | left-to-right | [i] | — Not in Unicode, proposal is explored||||
Krai | 396 | Kirat Rai | left-to-right | Kirat Rai | 16.0 | 58 | ||
Kthi | 317 | Kaithi | left-to-right ![]() |
Kaithi | 5.2 | 68 | Ancient/historic | Ch 15.2 |
Lana | 351 | Tai Tham (Lanna) | left-to-right ![]() |
Tai Tham | 5.2 | 127 | Ch 16.7 | |
Laoo | 356 | Lao | left-to-right ![]() |
Lao | 1.0 | 83 | Ch 16.2 | |
Latf | 217 | Latin (Fraktur variant) | left-to-right ![]() |
§ Latn) | — Typographic variant of Latin (see||||
Latg | 216 | Latin (Gaelic variant) | left-to-right ![]() |
§ Latn) | — Typographic variant of Latin (see||||
Latn | 215 | Latin | left-to-right ![]() |
Latin | 1.0 | 1,487 | See also: Latin script in Unicode | Ch 7.1 |
Leke | 364 | Leke | left-to-right | — Not in Unicode | ||||
Lepc | 335 | Lepcha (Róng) | left-to-right ![]() |
Lepcha | 5.1 | 74 | Ch 13.12 | |
Limb | 336 | Limbu | left-to-right ![]() |
Limbu | 4.0 | 68 | Ch 13.6 | |
Lina | 400 | Linear A | left-to-right ![]() |
Linear A | 7.0 | 341 | Ancient/historic | Ch 8.1 |
Linb | 401 | Linear B | left-to-right ![]() |
Linear B | 4.0 | 211 | Ancient/historic | Ch 8.2 |
Lisu | 399 | Lisu (Fraser) | left-to-right ![]() |
Lisu | 5.2 | 49 | Ch 18.9 | |
Loma | 437 | Loma | left-to-right | [i] | — Not in Unicode, proposal is explored||||
Lyci | 202 | Lycian | left-to-right ![]() |
Lycian | 5.1 | 29 | Ancient/historic | Ch 8.5 |
Lydi | 116 | Lydian | right-to-left script ![]() |
Lydian | 5.1 | 27 | Ancient/historic | Ch 8.5 |
Mahj | 314 | Mahajani | left-to-right ![]() |
Mahajani | 7.0 | 39 | Ancient/historic | Ch 15.6 |
Maka | 366 | Makasar | left-to-right ![]() |
Makasar | 11.0 | 25 | Ancient/historic | Ch 17.8 |
Mand | 140 | Mandaic, Mandaean | right-to-left script ![]() |
Mandaic | 6.0 | 29 | Ch 9.5 | |
Mani | 139 | Manichaean | right-to-left script ![]() |
Manichaean | 7.0 | 51 | Ancient/historic | Ch 10.5 |
Marc | 332 | Marchen | left-to-right ![]() |
Marchen | 9.0 | 68 | Ancient/historic | Ch 14.5 |
Maya | 090 | Mayan hieroglyphs | mixed | — Not in Unicode | ||||
Medf | 265 | Medefaidrin (Oberi Okaime, Oberi Ɔkaimɛ) | left-to-right ![]() |
Medefaidrin | 11.0 | 91 | Ch 19.10 | |
Mend | 438 | Mende Kikakui | right-to-left script ![]() |
Mende Kikakui | 7.0 | 213 | Ch 19.8 | |
Merc | 101 | Meroitic Cursive | right-to-left script ![]() |
Meroitic Cursive | 6.1 | 90 | Ancient/historic | Ch 11.5 |
Mero | 100 | Meroitic Hieroglyphs | right-to-left script ![]() |
Meroitic Hieroglyphs | 6.1 | 32 | Ancient/historic | Ch 11.5 |
Mlym | 347 | Malayalam | left-to-right ![]() |
Malayalam | 1.0 | 118 | Ch 12.9 | |
Modi | 324 | Modi, Moḍī | left-to-right ![]() |
Modi | 7.0 | 79 | Ancient/historic | Ch 15.12 |
Mong | 145 | Mongolian | vertical left-to-right, left-to-right ![]() |
Mongolian | 3.0 | 168 | Mong includes Clear and Manchu scripts | Ch 13.5 |
Moon | 218 | Moon (Moon code, Moon script, Moon type) | mixed | [i] | — Not in Unicode, proposal is explored||||
Mroo | 264 | Mro, Mru | left-to-right ![]() |
Mro | 7.0 | 43 | Ch 13.8 | |
Mtei | 337 | Meitei Mayek (Meithei, Meetei) | left-to-right ![]() |
Meetei Mayek | 5.2 | 79 | Ch 13.7 | |
Mult | 323 | Multani | left-to-right ![]() |
Multani | 8.0 | 38 | Ancient/historic | Ch 15.10 |
Mymr | 350 | Myanmar (Burmese) | left-to-right ![]() |
Myanmar | 3.0 | 243 | Ch 16.3 | |
Nagm | 295 | Nag Mundari | left-to-right ![]() |
Nag Mundari | 15.0 | 42 | ||
Nand | 311 | Nandinagari | left-to-right ![]() |
Nandinagari | 12.0 | 65 | Ancient/historic | Ch 15.13 |
Narb | 106 | Old North Arabian (Ancient North Arabian) | right-to-left script ![]() |
Old North Arabian | 7.0 | 32 | Ancient/historic | Ch 10.1 |
Nbat | 159 | Nabataean | right-to-left script ![]() |
Nabataean | 7.0 | 40 | Ancient/historic | Ch 10.10 |
Newa | 333 | Newa, Newar, Newari, Nepāla lipi | left-to-right ![]() |
Newa | 9.0 | 97 | Ch 13.3 | |
Nkdb | 085 | Naxi Dongba (na²¹ɕi³³ to³³ba²¹, Nakhi Tomba) | left-to-right | — Not in Unicode | ||||
Nkgb | 420 | Naxi Geba (na²¹ɕi³³ gʌ²¹ba²¹, 'Na-'Khi ²Ggŏ-¹baw, Nakhi Geba) | left-to-right | [i] | — Not in Unicode, proposal is explored||||
Nkoo | 165 | N’Ko | right-to-left script ![]() |
NKo | 5.0 | 62 | Ch 19.4 | |
Nshu | 499 | Nüshu | vertical right-to-left ![]() |
Nushu | 10.0 | 397 | Ch 18.8 | |
Ogam | 212 | Ogham | bottom-to-top, left-to-right ![]() |
Ogham | 3.0 | 29 | Ancient/historic | Ch 8.14 |
Olck | 261 | Ol Chiki (Ol Cemet’, Ol, Santali) | left-to-right ![]() |
Ol Chiki | 5.1 | 48 | Ch 13.10 | |
Onao | 296 | Ol Onal | left-to-right | Ol Onal | 16.0 | 44 | ||
Orkh | 175 | Old Turkic, Orkhon Runic | right-to-left script ![]() |
Old Turkic | 5.2 | 73 | Ancient/historic | Ch 14.8 |
Orya | 327 | Oriya (Odia) | left-to-right ![]() |
Oriya | 1.0 | 91 | Ch 12.5 | |
Osge | 219 | Osage | left-to-right ![]() |
Osage | 9.0 | 72 | Ch 20.3 | |
Osma | 260 | Osmanya | left-to-right ![]() |
Osmanya | 4.0 | 40 | Ch 19.2 | |
Ougr | 143 | Old Uyghur | mixed | Old Uyghur | 14.0 | 26 | Ancient/historic | Ch 14.11 |
Palm | 126 | Palmyrene | right-to-left script ![]() |
Palmyrene | 7.0 | 32 | Ancient/historic | Ch 10.11 |
Pauc | 263 | Pau Cin Hau | left-to-right ![]() |
Pau Cin Hau | 7.0 | 57 | Ch 16.13 | |
Pcun | 015 | Proto-Cuneiform | left-to-right | — Not in Unicode | ||||
Pelm | 016 | Proto-Elamite | left-to-right | — Not in Unicode | ||||
Perm | 227 | Old Permic | left-to-right ![]() |
Old Permic | 7.0 | 43 | Ancient/historic | Ch 8.13 |
Phag | 331 | Phags-pa | vertical left-to-right ![]() |
Phags-pa | 5.0 | 56 | Ancient/historic | Ch 14.4 |
Phli | 131 | Inscriptional Pahlavi | right-to-left script ![]() |
Inscriptional Pahlavi | 5.2 | 27 | Ancient/historic | Ch 10.6 |
Phlp | 132 | Psalter Pahlavi | right-to-left script ![]() |
Psalter Pahlavi | 7.0 | 29 | Ancient/historic | Ch 10.6 |
Phlv | 133 | Book Pahlavi | mixed | — Not in Unicode | ||||
Phnx | 115 | Phoenician | right-to-left script ![]() |
Phoenician | 5.0 | 29 | Ancient/historic[g] | Ch 10.3 |
Piqd | 293 | Klingon (KLI pIqaD) | left-to-right ![]() |
[iii][iv] | — Rejected for inclusion in Unicode||||
Plrd | 282 | Miao (Pollard) | left-to-right ![]() |
Miao | 6.1 | 149 | Ch 18.10 | |
Prti | 130 | Inscriptional Parthian | right-to-left script ![]() |
Inscriptional Parthian | 5.2 | 30 | Ancient/historic | Ch 10.6 |
Psin | 103 | Proto-Sinaitic | mixed | — Not in Unicode | ||||
Qaaa-Qabx | 900-949 | Reserved for private use (range) | — Not in Unicode | |||||
Ranj | 303 | Ranjana | left-to-right | — Not in Unicode | ||||
Rjng | 363 | Rejang (Redjang, Kaganga) | left-to-right ![]() |
Rejang | 5.1 | 37 | Ch 17.5 | |
Rohg | 167 | Hanifi Rohingya | right-to-left script ![]() |
Hanifi Rohingya | 11.0 | 50 | Ch 16.14 | |
Roro | 620 | Rongorongo | mixed | [i] | — Not in Unicode, proposal is explored||||
Runr | 211 | Runic | left-to-right, boustrophedon ![]() |
Runic | 3.0 | 86 | Ancient/historic | Ch 8.7 |
Samr | 123 | Samaritan | right-to-left script, top-to-bottom ![]() |
Samaritan | 5.2 | 61 | Ch 9.4 | |
Sara | 292 | Sarati | mixed | — Not in Unicode | ||||
Sarb | 105 | Old South Arabian | right-to-left script ![]() |
Old South Arabian | 5.2 | 32 | Ancient/historic | Ch 10.2 |
Saur | 344 | Saurashtra | left-to-right ![]() |
Saurashtra | 5.1 | 82 | Ch 13.13 | |
Seal | 590 | (Small) Seal | varies | [i] | — Not in Unicode, proposal is explored||||
Sgnw | 095 | SignWriting | vertical left-to-right ![]() |
SignWriting | 8.0 | 672 | Ch 21.7 | |
Shaw | 281 | Shavian (Shaw) | left-to-right ![]() |
Shavian | 4.0 | 48 | Ch 8.15 | |
Shrd | 319 | Sharada, Śāradā | left-to-right ![]() |
Sharada | 6.1 | 96 | Ch 15.3 | |
Shui | 530 | Shuishu | left-to-right | — Not in Unicode | ||||
Sidd | 302 | Siddham, Siddhaṃ, Siddhamātṛkā | left-to-right ![]() |
Siddham | 7.0 | 92 | Ancient/historic | Ch 15.5 |
Sidt | 180 | Sidetic | right-to-left | [ii] | — Not in Unicode, proposal is mature||||
Sind | 318 | Khudawadi, Sindhi | left-to-right ![]() |
Khudawadi | 7.0 | 69 | Ch 15.9 | |
Sinh | 348 | Sinhala | left-to-right ![]() |
Sinhala | 3.0 | 111 | Ch 13.2 | |
Sogd | 141 | Sogdian | horizontal and vertical writing in East Asian scripts, top-to-bottom ![]() |
Sogdian | 11.0 | 42 | Ancient/historic | Ch 14.10 |
Sogo | 142 | Old Sogdian | right-to-left script ![]() |
Old Sogdian | 11.0 | 40 | Ancient/historic | Ch 14.9 |
Sora | 398 | Sora Sompeng | left-to-right ![]() |
Sora Sompeng | 6.1 | 35 | Ch 15.17 | |
Soyo | 329 | Soyombo | left-to-right ![]() |
Soyombo | 10.0 | 83 | Ancient/historic | Ch 14.7 |
Sund | 362 | Sundanese | left-to-right ![]() |
Sundanese | 5.1 | 72 | Ch 17.7 | |
Sunu | 274 | Sunuwar | left-to-right ![]() |
Sunuwar | 16.0 | 44 | ||
Sylo | 316 | Syloti Nagri | left-to-right ![]() |
Syloti Nagri | 4.1 | 45 | Ancient/historic | Ch 15.1 |
Syrc | 135 | Syriac | right-to-left script ![]() |
Syriac | 3.0 | 88 | Includes typographic variants Estrangelo (see § Syre), Western (§ Syrj), and Eastern (§ Syrn) | Ch 9.3 |
Syre | 138 | Syriac (Estrangelo variant) | mixed | § Syrc) | — Typographic variant of Syriac (see||||
Syrj | 137 | Syriac (Western variant) | mixed | § Syrc) | — Typographic variant of Syriac (see||||
Syrn | 136 | Syriac (Eastern variant) | mixed | § Syrc) | — Typographic variant of Syriac (see||||
Tagb | 373 | Tagbanwa | left-to-right ![]() |
Tagbanwa | 3.2 | 18 | Ch 17.1 | |
Takr | 321 | Takri, Ṭākrī, Ṭāṅkrī | left-to-right ![]() |
Takri | 6.1 | 68 | Ch 15.4 | |
Tale | 353 | Tai Le | left-to-right ![]() |
Tai Le | 4.0 | 35 | Ch 16.5 | |
Talu | 354 | New Tai Lue | left-to-right ![]() |
New Tai Lue | 4.1 | 83 | Ch 16.6 | |
Taml | 346 | Tamil | left-to-right ![]() |
Tamil | 1.0 | 123 | Ch 12.6 | |
Tang | 520 | Tangut | vertical right-to-left, left-to-right ![]() |
Tangut | 9.0 | 6,914 | Ancient/historic | Ch 18.11 |
Tavt | 359 | Tai Viet | left-to-right ![]() |
Tai Viet | 5.2 | 72 | Ch 16.8 | |
Tayo | 380 | Tai Yo | top-to-bottom, columns right-to-left | [ii] | — Not in Unicode, proposal is mature||||
Telu | 340 | Telugu | left-to-right ![]() |
Telugu | 1.0 | 100 | Ch 12.7 | |
Teng | 290 | Tengwar | left-to-right | — Not in Unicode | ||||
Tfng | 120 | Tifinagh (Berber) | right-to-left script, left-to-right, top-to-bottom, bottom-to-top ![]() |
Tifinagh | 4.1 | 59 | Ch 19.3 | |
Tglg | 370 | Tagalog (Baybayin, Alibata) | left-to-right ![]() |
Tagalog | 3.2 | 23 | Ch 17.1 | |
Thaa | 170 | Thaana | right-to-left script ![]() |
Thaana | 3.0 | 50 | Ch 13.1 | |
Thai | 352 | Thai | left-to-right ![]() |
Thai | 1.0 | 86 | Ch 16.1 | |
Tibt | 330 | Tibetan | left-to-right ![]() |
Tibetan | 2.0 | 207 | Added in 1.0, removed in 1.1 and reintroduced in 2.0 | Ch 13.4 |
Tirh | 326 | Tirhuta | left-to-right ![]() |
Tirhuta | 7.0 | 82 | Ch 15.11 | |
Tnsa | 275 | Tangsa | left-to-right ![]() |
Tangsa | 14.0 | 89 | Ch 13.18 | |
Todr | 229 | Todhri | right-to-left | Todhri | 16.0 | 52 | Ancient/historic | |
Tols | 299 | Tolong Siki | left-to-right | [ii] | — Not in Unicode, proposal is mature||||
Toto | 294 | Toto | left-to-right ![]() |
Toto | 14.0 | 31 | Ch 13.17 | |
Tutg | 341 | Tulu-Tigalari | left-to-right | Tulu Tigalari | 16.0 | 80 | Ancient/historic | |
Ugar | 040 | Ugaritic | left-to-right ![]() |
Ugaritic | 4.0 | 31 | Ancient/historic | Ch 11.2 |
Vaii | 470 | Vai | left-to-right ![]() |
Vai | 5.1 | 300 | Ch 19.5 | |
Visp | 280 | Visible Speech | left-to-right | — Not in Unicode | ||||
Vith | 228 | Vithkuqi | left-to-right | Vithkuqi | 14.0 | 70 | Ancient/historic | Ch 8.12 |
Wara | 262 | Warang Citi (Varang Kshiti) | left-to-right ![]() |
Warang Citi | 7.0 | 84 | Ch 13.9 | |
Wcho | 283 | Wancho | left-to-right ![]() |
Wancho | 12.0 | 59 | Ch 13.16 | |
Wole | 480 | Woleai | mixed | [i] | — Not in Unicode, proposal is explored||||
Xpeo | 030 | Old Persian | left-to-right ![]() |
Old Persian | 4.1 | 50 | Ancient/historic | Ch 11.3 |
Xsux | 020 | Cuneiform, Sumero-Akkadian | left-to-right ![]() |
Cuneiform | 5.0 | 1,234 | Ancient/historic | Ch 11.1 |
Yezi | 192 | Yezidi | right-to-left script ![]() |
Yezidi | 13.0 | 47 | Ancient/historic | Ch 9.6 |
Yiii | 460 | Yi | left-to-right ![]() |
Yi | 3.0 | 1,220 | Ch 18.7 | |
Zanb | 339 | Zanabazar Square (Zanabazarin Dörböljin Useg, Xewtee Dörböljin Bicig, Horizontal Square Script) | left-to-right ![]() |
Zanabazar Square | 10.0 | 72 | Ancient/historic | Ch 14.6 |
Zinh | 994 | Code for inherited script | Inherited | 657 | ||||
Zmth | 995 | Mathematical notation | — Not a 'script' in Unicode | |||||
Zsye | 993 | Symbols (emoji variant) | — Not a 'script' in Unicode | |||||
Zsym | 996 | Symbols | — Not a 'script' in Unicode | |||||
Zxxx | 997 | Code for unwritten documents | — Not a 'script' in Unicode | |||||
Zyyy | 998 | Code for undetermined script | Common | 9,053 | ||||
Zzzz | 999 | Code for uncoded script | Unknown | 959,049 | In Unicode: All other code points | |||
Notes
| ||||||||
References
|
Normalization properties
Decompositions, decomposition type, canonical combining class, composition exclusions, and more.
![]() | This section needs expansion. You can help by adding to it. (March 2022) |
Age
Age is the version of the standard in which the code point was first designated. The version number is shortened to the numbering major.minor', although there more detailed version numbers are used: versions 4.0.0 and 4.0.1 both are named 4.0 as Age. Given the releases, Age can be from the range: 1.1, 2.0, 2.1, 3.0, 3.1, 3.2, 4.0, 4.1, 5.0, 5.1, 5.2, 6.0, 6.1, 6.2, 6.3, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 12.1, 13.0, 14.0, 15.0, 15.1, and 16.0.[22] The long values for Age begin in a V and use an underscore instead of a dot: V1_1, for example.[2] Codepoints without a specifically assigned age value have the value "NA", with the long form "Unassigned".
Deprecated
Once a character has been defined, it will not be removed or reassigned.[23] However, a character may be deprecated, meaning its "use is strongly discouraged".[24] As of Unicode version 16.0, the following fifteen characters are deprecated:[25]
Deprecated characters in Unicode | ||||
---|---|---|---|---|
Codepoint | Character name | Recommended alternative | Remarks | |
U+0149 | LATIN SMALL LETTER N PRECEDED BY APOSTROPHE | U+02BC U+006E | ʼn | |
U+0673 | ARABIC LETTER ALEF WITH WAVY HAMZA BELOW | U+0627 U+065F | اٟ | |
U+0F77 | TIBETAN VOWEL SIGN VOCALIC RR | U+0FB2 U+0F81[a] | ྲཱྀ | |
U+0F79 | TIBETAN VOWEL SIGN VOCALIC LL | U+0FB3 U+0F81[a] | ླཱྀ | |
U+17A3 | KHMER INDEPENDENT VOWEL QAQ | U+17A2 | អ | |
U+17A4 | KHMER INDEPENDENT VOWEL QAA | U+17A2 U+17B6 | អា | |
U+206A | INHIBIT SYMMETRIC SWAPPING | None[b] | ||
U+206B | ACTIVATE SYMMETRIC SWAPPING | None[b] | ||
U+206C | INHIBIT ARABIC FORM SHAPING | None[b] | ||
U+206D | ACTIVATE ARABIC FORM SHAPING | None[b] | ||
U+206E | NATIONAL DIGIT SHAPES | None[b] | ||
U+206F | NOMINAL DIGIT SHAPES | None[b] | ||
U+2329 | LEFT-POINTING ANGLE BRACKET | U+3008[c] | 〈 | U+27E8 ⟨ MATHEMATICAL LEFT ANGLE BRACKET is recommended for mathematical and other technical use |
U+232A | RIGHT-POINTING ANGLE BRACKET | U+3009[c] | 〉 | U+27E9 ⟩ MATHEMATICAL RIGHT ANGLE BRACKET is recommended for mathematical and other technical use |
U+E0001 | LANGUAGE TAG | None[d] | ||
|
Boundaries
The Unicode Standard specifies the following boundary-related properties:
- Grapheme cluster
- Word
- Line
- Sentence
![]() | This section needs expansion. You can help by adding to it. (January 2025) |
Alias name
Unicode can assign alias names to code points. These names are unique over all names (including regular ones), so they can be used as identifier. There are five possible reasons to add an alias:
- 1. Abbreviation
- Commonly occurring abbreviations or acronyms for control codes, format characters, spaces, and variation selectors.
- For example, U+00A0 NO-BREAK SPACE has alias NBSP. Sometimes presented in a box: NBSP.
- 2. Control
- ISO 6429 names for C0 and C1 control functions and similar commonly occurring names, are added as an alias to the character.
- For example, U+0008 <control-0008> has the alias BACKSPACE.
- 3. Correction
- This is a correction for a "serious problem" in the primary character name, usually an error.
- For example, U+2118 ℘ SCRIPT CAPITAL P is actually a lowercase p, and so is given alias name WEIERSTRASS ELLIPTIC FUNCTION: "actually this has the form of a lowercase calligraphic p, despite its name, and through the alias the correct spelling is added." In descriptions, with preceding symbol ※.
- 4. Alternate
- A widely used alternate name for a character.
- Example: U+FEFF ZERO WIDTH NO-BREAK SPACE has the alternate alias BYTE ORDER MARK.
- 5. Figment
- Several documented labels for C1 control code points which were never actually approved in any standard (figment meaning "feigned, in fiction").
- For example, U+0099 <control-0099> has the figment alias SINGLE GRAPHIC CHARACTER INTRODUCER. This name is an architectural concept from early drafts of ISO/IEC 10646-1, but it was never approved or standardized.
External links
- Unicode Character Database, annex #44, explaining the different properties
- UnicodeData.txt – a list of all Unicode characters, with their properties
References
- ^ a b c d e "The Unicode Standard Version 16". The Unicode Consortium. September 2024. Retrieved 2024-09-13.
- ^ a b c "Unicode Standard Annex #44: Unicode Character Database". Unicode. 2024-08-27.
- ^ "Unicode Standard Annex #44: Unicode Character Database, 4.2.3 Code Point Ranges". Unicode. 2024-08-27.
- ^ UnicodeData.txt
- ^ "UCD: Name Aliases". Unicode Character Database. Unicode Consortium. 2024-04-24.
- ^ "Character design standards – space characters". Character design standards. Microsoft. 1998–1999. Archived from the original on March 14, 2010. Retrieved 2009-05-18.
- ^ The Unicode Standard 5.0, printed edition, p. 205; also available at "Chapter 6 — Writing Systems and Punctuation" (PDF). The Unicode Standard 5.0, electronic edition. Unicode Consortium. 2006-07-14. p. 11 (205). Retrieved 2022-12-22.
- ^ "General Punctuation" (PDF). The Unicode Standard 5.1. Unicode Inc. 1991–2008. Retrieved 2009-05-13.
- ^ Sargent, Murray III (2006-08-29). "Unicode Nearly Plain Text Encoding of Mathematics (Version 2)". Unicode Technical Note #28. Unicode Inc. pp. 19–20. Retrieved 2009-05-19.
- ^ Gillam, Richard (2002). Unicode Demystified: A Practical Programmer's Guide to the Encoding Standard. Addison-Wesley. ISBN 0-201-70052-2.
- ^ a b Hickson, Ian. "12.5 Named character references". HTML Standard. WHATWG.
- ^ Wolfram. "\[NegativeThickSpace]". Wolfram Language Documentation.
- ^ Wolfram. "\[NegativeMediumSpace]". Wolfram Language Documentation.
- ^ Wolfram. "\[NegativeThinSpace]". Wolfram Language Documentation.
- ^ Wolfram. "\[NegativeVeryThinSpace]". Wolfram Language Documentation.
- ^ Faltstrom, P., ed. (August 2010). "Zero Width Non-Joiner". The Unicode Code Points and Internationalized Domain Names for Applications (IDNA). IETF. sec. A.1. doi:10.17487/RFC5892. RFC 5892. Retrieved September 4, 2019.
- ^ Faltstrom, P., ed. (August 2010). "Zero Width Joiner". The Unicode Code Points and Internationalized Domain Names for Applications (IDNA). IETF. sec. A.2. doi:10.17487/RFC5892. RFC 5892. Retrieved September 4, 2019.
- ^ "Unicode Standard Annex #44, Unicode Character Database".
- ^ "<upper>; (<condition_list>;)? # <comment> # #
, <lower>, , and <upper> provide the respective full case mappings # of
, expressed as character values in hex. If there is more than one character, # they are separated by spaces. Other than as used to separate elements, spaces are # to be ignored. # # the <condition_list> is optional. Where present, it consists of one or more language IDs # or casing contexts, separated by spaces. In these conditions: # - A condition list overrides the normal behavior if all of the listed conditions are true. # - the casing context is always the context of the characters in the original string, # NOT in the resulting string. # - Case distinctions in the condition list are not significant. # - Conditions preceded by "Not_" represent the negation of the condition. # the condition list is not represented in the UCD as a formal property. # # A language ID is defined by BCP 47, with '-' and '_' treated equivalently. # # A casing context for a character is defined by Section 3.13 Default Case Algorithms # of the Unicode Standard. # # Parsers of this file must be prepared to deal with future additions to this format: # * Additional contexts # * Additional fields # ================================================================================ # ================================================================================ # Unconditional mappings # ================================================================================ # the German es-zed is special--the normal mapping is to SS. # Note: The titlecase should never occur in practice. It is equal to titlecase(uppercase(<es-zed>)) 00DF; 00DF; 0053 0073; 0053 0053; # LATIN SMALL LETTER SHARP S # Preserve canonical equivalence for I with dot. Turkic is handled below. 0130; 0069 0307; 0130; 0130; # LATIN CAPITAL LETTER I WITH DOT ABOVE # Ligatures FB00; FB00; 0046 0066; 0046 0046; # LATIN SMALL LIGATURE FF FB01; FB01; 0046 0069; 0046 0049; # LATIN SMALL LIGATURE FI FB02; FB02; 0046 006C; 0046 004C; # LATIN SMALL LIGATURE FL FB03; FB03; 0046 0066 0069; 0046 0046 0049; # LATIN SMALL LIGATURE FFI FB04; FB04; 0046 0066 006C; 0046 0046 004C; # LATIN SMALL LIGATURE FFL FB05; FB05; 0053 0074; 0053 0054; # LATIN SMALL LIGATURE LONG S T FB06; FB06; 0053 0074; 0053 0054; # LATIN SMALL LIGATURE ST 0587; 0587; 0535 0582; 0535 0552; # ARMENIAN SMALL LIGATURE ECH YIWN FB13; FB13; 0544 0576; 0544 0546; # ARMENIAN SMALL LIGATURE MEN NOW FB14; FB14; 0544 0565; 0544 0535; # ARMENIAN SMALL LIGATURE MEN ECH FB15; FB15; 0544 056B; 0544 053B; # ARMENIAN SMALL LIGATURE MEN INI FB16; FB16; 054E 0576; 054E 0546; # ARMENIAN SMALL LIGATURE VEW NOW FB17; FB17; 0544 056D; 0544 053D; # ARMENIAN SMALL LIGATURE MEN XEH # No corresponding uppercase precomposed character 0149; 0149; 02BC 004E; 02BC 004E; # LATIN SMALL LETTER N PRECEDED BY APOSTROPHE 0390; 0390; 0399 0308 0301; 0399 0308 0301; # GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS 03B0; 03B0; 03A5 0308 0301; 03A5 0308 0301; # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS 01F0; 01F0; 004A 030C; 004A 030C; # LATIN SMALL LETTER J WITH CARON 1E96; 1E96; 0048 0331; 0048 0331; # LATIN SMALL LETTER H WITH LINE BELOW 1E97; 1E97; 0054 0308; 0054 0308; # LATIN SMALL LETTER T WITH DIAERESIS 1E98; 1E98; 0057 030A; 0057 030A; # LATIN SMALL LETTER W WITH RING ABOVE 1E99; 1E99; 0059 030A; 0059 030A; # LATIN SMALL LETTER y WITH RING ABOVE 1E9A; 1E9A; 0041 02BE; 0041 02BE; # LATIN SMALL LETTER a WITH RIGHT HALF RING 1F50; 1F50; 03A5 0313; 03A5 0313; # GREEK SMALL LETTER UPSILON WITH PSILI 1F52; 1F52; 03A5 0313 0300; 03A5 0313 0300; # GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA 1F54; 1F54; 03A5 0313 0301; 03A5 0313 0301; # GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA 1F56; 1F56; 03A5 0313 0342; 03A5 0313 0342; # GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI 1FB6; 1FB6; 0391 0342; 0391 0342; # GREEK SMALL LETTER ALPHA WITH PERISPOMENI 1FC6; 1FC6; 0397 0342; 0397 0342; # GREEK SMALL LETTER ETA WITH PERISPOMENI 1FD2; 1FD2; 0399 0308 0300; 0399 0308 0300; # GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA 1FD3; 1FD3; 0399 0308 0301; 0399 0308 0301; # GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA 1FD6; 1FD6; 0399 0342; 0399 0342; # GREEK SMALL LETTER IOTA WITH PERISPOMENI 1FD7; 1FD7; 0399 0308 0342; 0399 0308 0342; # GREEK SMALL LETTER IOTA WITH DIALYTIKA AND PERISPOMENI 1FE2; 1FE2; 03A5 0308 0300; 03A5 0308 0300; # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND VARIA 1FE3; 1FE3; 03A5 0308 0301; 03A5 0308 0301; # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA 1FE4; 1FE4; 03A1 0313; 03A1 0313; # GREEK SMALL LETTER RHO WITH PSILI 1FE6; 1FE6; 03A5 0342; 03A5 0342; # GREEK SMALL LETTER UPSILON WITH PERISPOMENI 1FE7; 1FE7; 03A5 0308 0342; 03A5 0308 0342; # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND PERISPOMENI 1FF6; 1FF6; 03A9 0342; 03A9 0342; # GREEK SMALL LETTER OMEGA WITH PERISPOMENI # IMPORTANT-when iota-subscript (0345) is uppercased or titlecased, # the result will be incorrect unless the iota-subscript is moved to the end # of any sequence of combining marks. Otherwise, the accents will go on the capital iota. # This process can be achieved by first transforming the text to NFC before casing. # E.g. <alpha><iota_subscript><acute> is uppercased to <ALPHA><acute><IOTA> # the following cases are already in the UnicodeData.TXT file, so are only commented here. # 0345; 0345; 0399; 0399; # COMBINING GREEK YPOGEGRAMMENI # All letters with YPOGEGRAMMENI (Iota-subscript) or PROSGEGRAMMENI (Iota adscript) # have special uppercases. # Note: Characters with PROSGEGRAMMENI are actually titlecase, not uppercase! 1F80; 1F80; 1F88; 1F08 0399; # GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI 1F81; 1F81; 1F89; 1F09 0399; # GREEK SMALL LETTER ALPHA WITH DASIA AND YPOGEGRAMMENI 1F82; 1F82; 1F8A; 1F0A 0399; # GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI 1F83; 1F83; 1F8B; 1F0B 0399; # GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI 1F84; 1F84; 1F8C; 1F0C 0399; # GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI 1F85; 1F85; 1F8D; 1F0D 0399; # GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA AND YPOGEGRAMMENI 1F86; 1F86; 1F8E; 1F0E 0399; # GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI 1F87; 1F87; 1F8F; 1F0F 0399; # GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI 1F88; 1F80; 1F88; 1F08 0399; # GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI 1F89; 1F81; 1F89; 1F09 0399; # GREEK CAPITAL LETTER ALPHA WITH DASIA AND PROSGEGRAMMENI 1F8A; 1F82; 1F8A; 1F0A 0399; # GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI 1F8B; 1F83; 1F8B; 1F0B 0399; # GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI 1F8C; 1F84; 1F8C; 1F0C 0399; # GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI 1F8D; 1F85; 1F8D; 1F0D 0399; # GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA AND PROSGEGRAMMENI 1F8E; 1F86; 1F8E; 1F0E 0399; # GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI 1F8F; 1F87; 1F8F; 1F0F 0399; # GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI 1F90; 1F90; 1F98; 1F28 0399; # GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI 1F91; 1F91; 1F99; 1F29 0399; # GREEK SMALL LETTER ETA WITH DASIA AND YPOGEGRAMMENI 1F92; 1F92; 1F9A; 1F2A 0399; # GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI 1F93; 1F93; 1F9B; 1F2B 0399; # GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI 1F94; 1F94; 1F9C; 1F2C 0399; # GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI 1F95; 1F95; 1F9D; 1F2D 0399; # GREEK SMALL LETTER ETA WITH DASIA AND OXIA AND YPOGEGRAMMENI 1F96; 1F96; 1F9E; 1F2E 0399; # GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI 1F97; 1F97; 1F9F; 1F2F 0399; # GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI 1F98; 1F90; 1F98; 1F28 0399; # GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI 1F99; 1F91; 1F99; 1F29 0399; # GREEK CAPITAL LETTER ETA WITH DASIA AND PROSGEGRAMMENI 1F9A; 1F92; 1F9A; 1F2A 0399; # GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI 1F9B; 1F93; 1F9B; 1F2B 0399; # GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI 1F9C; 1F94; 1F9C; 1F2C 0399; # GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI 1F9D; 1F95; 1F9D; 1F2D 0399; # GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA AND PROSGEGRAMMENI 1F9E; 1F96; 1F9E; 1F2E 0399; # GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI 1F9F; 1F97; 1F9F; 1F2F 0399; # GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI 1FA0; 1FA0; 1FA8; 1F68 0399; # GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI 1FA1; 1FA1; 1FA9; 1F69 0399; # GREEK SMALL LETTER OMEGA WITH DASIA AND YPOGEGRAMMENI 1FA2; 1FA2; 1FAA; 1F6A 0399; # GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI 1FA3; 1FA3; 1FAB; 1F6B 0399; # GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI 1FA4; 1FA4; 1FAC; 1F6C 0399; # GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI 1FA5; 1FA5; 1FAD; 1F6D 0399; # GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA AND YPOGEGRAMMENI 1FA6; 1FA6; 1FAE; 1F6E 0399; # GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI 1FA7; 1FA7; 1FAF; 1F6F 0399; # GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI 1FA8; 1FA0; 1FA8; 1F68 0399; # GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI 1FA9; 1FA1; 1FA9; 1F69 0399; # GREEK CAPITAL LETTER OMEGA WITH DASIA AND PROSGEGRAMMENI 1FAA; 1FA2; 1FAA; 1F6A 0399; # GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI 1FAB; 1FA3; 1FAB; 1F6B 0399; # GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI 1FAC; 1FA4; 1FAC; 1F6C 0399; # GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI 1FAD; 1FA5; 1FAD; 1F6D 0399; # GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA AND PROSGEGRAMMENI 1FAE; 1FA6; 1FAE; 1F6E 0399; # GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI 1FAF; 1FA7; 1FAF; 1F6F 0399; # GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI 1FB3; 1FB3; 1FBC; 0391 0399; # GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI 1FBC; 1FB3; 1FBC; 0391 0399; # GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI 1FC3; 1FC3; 1FCC; 0397 0399; # GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI 1FCC; 1FC3; 1FCC; 0397 0399; # GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI 1FF3; 1FF3; 1FFC; 03A9 0399; # GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI 1FFC; 1FF3; 1FFC; 03A9 0399; # GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI # Some characters with YPOGEGRAMMENI also have no corresponding titlecases 1FB2; 1FB2; 1FBA 0345; 1FBA 0399; # GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI 1FB4; 1FB4; 0386 0345; 0386 0399; # GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI 1FC2; 1FC2; 1FCA 0345; 1FCA 0399; # GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI 1FC4; 1FC4; 0389 0345; 0389 0399; # GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI 1FF2; 1FF2; 1FFA 0345; 1FFA 0399; # GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI 1FF4; 1FF4; 038F 0345; 038F 0399; # GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI 1FB7; 1FB7; 0391 0342 0345; 0391 0342 0399; # GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI 1FC7; 1FC7; 0397 0342 0345; 0397 0342 0399; # GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI 1FF7; 1FF7; 03A9 0342 0345; 03A9 0342 0399; # GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI # ================================================================================ # Conditional Mappings # the remainder of this file provides conditional casing data used to produce # full case mappings. # ================================================================================ # Language-Insensitive Mappings # These are characters whose full case mappings do not depend on language, but do # depend on context (Which characters come before or after). For more information # see the header of this file and the Unicode Standard. # ================================================================================ # Special case for final form of sigma 03A3; 03C2; 03A3; 03A3; Final_Sigma; # GREEK CAPITAL LETTER SIGMA # Note: The following cases for non-final are already in the UnicodeData.TXT file. # 03A3; 03C3; 03A3; 03A3; # GREEK CAPITAL LETTER SIGMA # 03C3; 03C3; 03A3; 03A3; # GREEK SMALL LETTER SIGMA # 03C2; 03C2; 03A3; 03A3; # GREEK SMALL LETTER FINAL SIGMA # Note: The following cases are not included, since they would case-fold in lowercasing # 03C3; 03C2; 03A3; 03A3; Final_Sigma; # GREEK SMALL LETTER SIGMA # 03C2; 03C3; 03A3; 03A3; Not_Final_Sigma; # GREEK SMALL LETTER FINAL SIGMA # ================================================================================ # Language-Sensitive Mappings # These are characters whose full case mappings depend on language and perhaps also # context (Which characters come before or after). For more information # see the header of this file and the Unicode Standard. # ================================================================================ # Lithuanian # Lithuanian retains the dot in a lowercase i when followed by accents. # Remove DOT ABOVE after "i" with upper or titlecase 0307; 0307; ; ; lt After_Soft_Dotted; # COMBINING DOT ABOVE # Introduce an explicit dot above when lowercasing capital I's and J's # whenever there are more accents above. # (Of the accents used in Lithuanian: Grave, acute, tilde above, and ogonek) 0049; 0069 0307; 0049; 0049; lt More_Above; # LATIN CAPITAL LETTER I 004A; 006A 0307; 004A; 004A; lt More_Above; # LATIN CAPITAL LETTER J 012E; 012F 0307; 012E; 012E; lt More_Above; # LATIN CAPITAL LETTER I WITH OGONEK 00CC; 0069 0307 0300; 00CC; 00CC; lt; # LATIN CAPITAL LETTER I WITH GRAVE 00CD; 0069 0307 0301; 00CD; 00CD; lt; # LATIN CAPITAL LETTER I WITH ACUTE 0128; 0069 0307 0303; 0128; 0128; lt; # LATIN CAPITAL LETTER I WITH TILDE # ================================================================================ # Turkish and Azeri # I and i-dotless; I-dot and i are case pairs in Turkish and Azeri # the following rules handle those cases. 0130; 0069; 0130; 0130; tr; # LATIN CAPITAL LETTER I WITH DOT ABOVE 0130; 0069; 0130; 0130; az; # LATIN CAPITAL LETTER I WITH DOT ABOVE # when lowercasing, remove dot_above in the sequence I + dot_above, which will turn into i. # This matches the behavior of the canonically equivalent I-dot_above 0307; ; 0307; 0307; tr After_I; # COMBINING DOT ABOVE 0307; ; 0307; 0307; az After_I; # COMBINING DOT ABOVE # when lowercasing, unless an I is before a dot_above, it turns into a dotless i. 0049; 0131; 0049; 0049; tr Not_Before_Dot; # LATIN CAPITAL LETTER I 0049; 0131; 0049; 0049; az Not_Before_Dot; # LATIN CAPITAL LETTER I # when uppercasing, i turns into a dotted capital I 0069; 0069; 0130; 0130; tr; # LATIN SMALL LETTER I 0069; 0069; 0130; 0130; az; # LATIN SMALL LETTER I # Note: The following case is already in the UnicodeData.TXT file. # 0131; 0131; 0049; 0049; tr; # LATIN SMALL LETTER DOTLESS I # EOF"
.
- ^ a b "Unicode Standard Annex #9: Unicode Bidirectional Algorithm". The Unicode Standard. 2024-09-02.
- ^ "Unicode Standard Annex #24: Unicode Script Property". The Unicode Standard. 2024-07-31.
- ^ "UCD: Derived Age". Unicode Character Database. Unicode Consortium. 2024-04-30.
- ^ "Unicode Character Encoding Stability Policies". Unicode. Unicode Consortium. 2024-01-09. Retrieved 2024-01-13.
Once a character is encoded, it will not be moved or removed.
- ^ "The Unicode Standard, D13 Deprecated character". 2024. Retrieved 2024-09-13.
- ^ "PropList-16.0.0.txt". Unicode. Unicode Consortium. 2024-05-31. Retrieved 2024-09-13.
- ^ "Chapter 23.3: Deprecated Format Characters". 2024. Retrieved 2024-09-13.
- ^ "23.9: Tag Characters, Deprecated Use for Language Tagging". 2024. Retrieved 2024-09-13.