Script tags (OpenType 1.7)

Script tags generally correspond to a Unicode script. However, the associations between them may not always be one-to-one, and the OFF/OT tags are not guaranteed to be the same as Unicode Script property-value aliases or ISO 15924 script IDs. Since the development of OFF/OT script tags predates the ISO 15924 or Unicode Script property, the rules for script tags defined in this document may not always be the same as rules for ISO 15924 script IDs. The OFF/OT script tags can also correlate with a particular OFF/OT layout implementation, with the result that more than one script tag may be registered for a given Unicode script (e.g. 'deva' and 'dev2').

All tags are 4-byte character strings composed of a limited set of ASCII characters in the 0x20-0x7E range. A script tag can consist of four or fewer lowercase letters. If a script tag consists less than four lowercase letters, the letters are followed by the requisite number of spaces (0x20), each consisting of a single byte.

Script Script Tag
Arabic arab
Armenian armn
Avestan avst
Balinese bali
Bamum bamu
Batak batk
Bengali beng
Bengali v.2 bng2
Bopomofo bopo
Braille brai
Brahmi brah
Buginese bugi
Buhid buhd
Byzantine Music byzm
Canadian Syllabics cans
Carian cari
Chakma cakm
Cham cham
Cherokee cher
CJK Ideographic hani
Coptic copt
Cypriot Syllabary cprt
Cyrillic cyrl
Default DFLT
Deseret dsrt
Devanagari deva
Devanagari v.2 dev2
Egyptian heiroglyphs egyp
Ethiopic ethi
Georgian geor
Glagolitic glag
Gothic goth
Greek grek
Gujarati gujr
Gujarati v.2 gjr2
Gurmukhi guru
Gurmukhi v.2 gur2
Hangul hang
Hangul Jamo jamo
Hanunoo hano
Hebrew hebr
Hiragana kana
Imperial Aramaic armi
Inscriptional Pahlavi phli
Inscriptional Parthian prti
Javanese java
Kaithi kthi
Kannada knda
Kannada v.2 knd2
Katakana kana
Kayah Li kali
Kharosthi khar
Khmer khmr
Lao lao
Latin latn
Lepcha lepc
Limbu limb
Linear B linb
Lisu (Fraser) lisu
Lycian lyci
Lydian lydi
Malayalam mlym
Malayalam v.2 mlm2
Mandaic, Mandaean mand
Mathematical Alphanumeric Symbols math
Meitei Mayek (Meithei, Meetei) mtei
Meroitic Cursive merc
Meroitic Hieroglyphs mero
Miao plrd
Mongolian mong
Musical Symbols musc
Myanmar mymr
Myanmar v.2 mym2
New Tai Lue talu
N’Ko nko
Ogham ogam
Ol Chiki olck
Old Italic ital
Old Persian Cuneiform xpeo
Old South Arabian sarb
Old Turkic, Orkhon Runic orkh
Odia (formerly Oriya) orya
Odia v.2 (formerly Oriya v.2) ory2
Osmanya osma
Phags-pa phag
Phoenician phnx
Rejang rjng
Runic runr
Samaritan samr
Saurashtra saur
Sharada shrd
Shavian shaw
Sinhala sinh
Sora Sompeng sora
Sumero-Akkadian Cuneiform xsux
Sundanese sund
Syloti Nagri sylo
Syriac syrc
Tagalog tglg
Tagbanwa tagb
Tai Le tale
Tai Tham (Lanna) lana
Tai Viet tavt
Takri takr
Tamil taml
Tamil v.2 tml2
Telugu telu
Telugu v.2 tel2
Thaana thaa
Thai thai
Tibetan tibt
Tifinagh tfng
Ugaritic Cuneiform ugar
Vai vai
Yi yi

When the ScriptList table is searched for a script, and no entry is found, and there is an entry for the 'DFLT' script, then this entry must be used. Furthermore, the Script table for the 'DFLT' script must have a non-NULL DefaultLangSys and a LangSysCount equal to 0; in other words, there is only a default language for the default script.