Top Description Inners Fields Constructors Methods
com.ibm.icu.lang

public final Class UScript

extends Object
Class Inheritance
Imports
java.util.BitSet, .Locale, com.ibm.icu.impl.UCharacterProperty, com.ibm.icu.util.ULocale

Constants for ISO 15924 script codes, and related functions.

The current set of script code constants supports at least all scripts that are encoded in the version of Unicode which ICU currently supports. The names of the constants are usually derived from the Unicode script property value aliases. See UAX #24 Unicode Script Property (http://www.unicode.org/reports/tr24/) and http://www.unicode.org/Public/UCD/latest/ucd/PropertyValueAliases.txt .

In addition, constants for many ISO 15924 script codes are included, for use with language tags, CLDR data, and similar. Some of those codes are not used in the Unicode Character Database (UCD). For example, there are no characters that have a UCD script property value of Hans or Hant. All Han ideographs have the Hani script property value in Unicode.

Private-use codes Qaaa..Qabx are not included, except as used in the UCD or in CLDR.

Starting with ICU 55, script codes are only added when their scripts have been or will certainly be encoded in Unicode, and have been assigned Unicode script property value aliases, to ensure that their script names are stable and match the names of the constants. Script codes like Latf and Aran that are not subject to separate encoding may be added at any time.

ICU Status
Stable since ICU 2.4.

Nested and Inner Type Summary

Modifier and TypeClass and Description
private static class
UScript.ScriptMetadata

Script metadata (script properties).

public static enum
UScript.ScriptUsage

Script usage constants.

Field Summary

Modifier and TypeField and Description
public static final int
ADLAM

ISO 15924 script code

public static final int
AFAKA

ISO 15924 script code

public static final int
AHOM

ISO 15924 script code

public static final int
ANATOLIAN_HIEROGLYPHS

ISO 15924 script code

public static final int
ARABIC

Arabic

public static final int
ARMENIAN

Armenian

public static final int
AVESTAN

ISO 15924 script code

public static final int
BALINESE

ISO 15924 script code

public static final int
BAMUM

ISO 15924 script code

public static final int
BASSA_VAH

ISO 15924 script code

public static final int
BATAK

ISO 15924 script code

public static final int
BENGALI

Bengali

public static final int
BHAIKSUKI

ISO 15924 script code

public static final int
BLISSYMBOLS

ISO 15924 script code

public static final int
BOOK_PAHLAVI

ISO 15924 script code

public static final int
BOPOMOFO

Bopomofo

public static final int
BRAHMI

ISO 15924 script code

public static final int
BRAILLE

Braille Script in Unicode 4

public static final int
BUGINESE

Script in Unicode 4.1

public static final int
BUHID

Buhid

public static final int
CANADIAN_ABORIGINAL

Unified Canadian Aboriginal Symbols

public static final int
CARIAN

ISO 15924 script code

public static final int
CAUCASIAN_ALBANIAN

ISO 15924 script code

public static final int
CHAKMA

ISO 15924 script code

public static final int
CHAM

ISO 15924 script code

public static final int
CHEROKEE

Cherokee

public static final int
public static final int
CIRTH

ISO 15924 script code

public static final int
CODE_LIMIT

One more than the highest normal UScript code.

public static final int
COMMON

Common

public static final int
COPTIC

Coptic

public static final int
CUNEIFORM

ISO 15924 script code

public static final int
CYPRIOT

Cypriot Script in Unicode 4

public static final int
public static final int
CYRILLIC

Cyrillic

public static final int
DEMOTIC_EGYPTIAN

ISO 15924 script code

public static final int
DESERET

Deseret

public static final int
DEVANAGARI

Devanagari

public static final int
public static final int
DOGRA

ISO 15924 script code

public static final int
DUPLOYAN

ISO 15924 script code

public static final int
DUPLOYAN_SHORTAND

Typo, use DUPLOYAN

public static final int
EASTERN_SYRIAC

ISO 15924 script code

public static final int
EGYPTIAN_HIEROGLYPHS

ISO 15924 script code

public static final int
ELBASAN

ISO 15924 script code

public static final int
public static final int
ESTRANGELO_SYRIAC

ISO 15924 script code

public static final int
ETHIOPIC

Ethiopic

public static final int
GEORGIAN

Georgian

public static final int
GLAGOLITIC

Script in Unicode 4.1

public static final int
GOTHIC

Gothic

public static final int
GRANTHA

ISO 15924 script code

public static final int
GREEK

Greek

public static final int
GUJARATI

Gujarati

public static final int
public static final int
GURMUKHI

Gurmukhi

public static final int
HAN

Han

public static final int
HAN_WITH_BOPOMOFO

ISO 15924 script code

public static final int
HANGUL

Hangul

public static final int
public static final int
HANUNOO

Hanunooo

public static final int
HARAPPAN_INDUS

ISO 15924 script code

public static final int
HATRAN

ISO 15924 script code

public static final int
HEBREW

Hebrew

public static final int
HIERATIC_EGYPTIAN

ISO 15924 script code

public static final int
HIRAGANA

Hiragana

public static final int
IMPERIAL_ARAMAIC

ISO 15924 script code

public static final int
INHERITED

Inherited

public static final int
INSCRIPTIONAL_PAHLAVI

ISO 15924 script code

public static final int
INSCRIPTIONAL_PARTHIAN

ISO 15924 script code

public static final int
INVALID_CODE

Invalid code

public static final int
JAMO

ISO 15924 script code

public static final int
JAPANESE

ISO 15924 script code

public static final int
JAVANESE

ISO 15924 script code

public static final int
JURCHEN

ISO 15924 script code

public static final int
KAITHI

ISO 15924 script code

public static final int
KANNADA

Kannada

public static final int
KATAKANA

Katakana

public static final int
KATAKANA_OR_HIRAGANA

Script in Unicode 4.0.1

public static final int
public static final int
KAYAH_LI

ISO 15924 script code

public static final int
KHAROSHTHI

Script in Unicode 4.1

public static final int
public static final int
KHMER

Khmer

public static final int
KHOJKI

ISO 15924 script code

public static final int
KHUDAWADI

ISO 15924 script code

public static final int
KHUTSURI

ISO 15924 script code

public static final int
KOREAN

ISO 15924 script code

public static final int
KPELLE

ISO 15924 script code

public static final int
LANNA

ISO 15924 script code

public static final int
LAO

Lao

public static final int
LATIN

Latin

public static final int
LATIN_FRAKTUR

ISO 15924 script code

public static final int
LATIN_GAELIC

ISO 15924 script code

public static final int
LEPCHA

ISO 15924 script code

public static final int
LIMBU

Limbu Script in Unicode 4

public static final int
LINEAR_A

ISO 15924 script code

public static final int
LINEAR_B

Linear B Script in Unicode 4

public static final int
LISU

ISO 15924 script code

public static final int
LOMA

ISO 15924 script code

public static final int
LYCIAN

ISO 15924 script code

public static final int
LYDIAN

ISO 15924 script code

public static final int
MAHAJANI

ISO 15924 script code

public static final int
public static final int
MALAYALAM

Malayalam

public static final int
MANDAEAN

ISO 15924 script code

public static final int
MANDAIC

ISO 15924 script code

public static final int
MANICHAEAN

ISO 15924 script code

public static final int
MARCHEN

ISO 15924 script code

public static final int
MASARAM_GONDI

ISO 15924 script code

public static final int
MATHEMATICAL_NOTATION

ISO 15924 script code

public static final int
MAYAN_HIEROGLYPHS

ISO 15924 script code

public static final int
public static final int
MEITEI_MAYEK

ISO 15924 script code

public static final int
MENDE

Mende Kikakui ISO 15924 script code

public static final int
MEROITIC

ISO 15924 script code

public static final int
MEROITIC_CURSIVE

ISO 15924 script code

public static final int
MEROITIC_HIEROGLYPHS

ISO 15924 script code

public static final int
MIAO

ISO 15924 script code

public static final int
MODI

ISO 15924 script code

public static final int
MONGOLIAN

Mangolian

public static final int
MOON

ISO 15924 script code

public static final int
MRO

ISO 15924 script code

public static final int
MULTANI

ISO 15924 script code

public static final int
MYANMAR

Myammar

public static final int
NABATAEAN

ISO 15924 script code

public static final int
public static final int
NAKHI_GEBA

ISO 15924 script code

public static final int
public static final int
NEW_TAI_LUE

Script in Unicode 4.1

public static final int
NEWA

ISO 15924 script code

public static final int
NKO

ISO 15924 script code

public static final int
NUSHU

ISO 15924 script code

public static final int
public static final int
OGHAM

Ogham

public static final int
OL_CHIKI

ISO 15924 script code

public static final int
OLD_CHURCH_SLAVONIC_CYRILLIC

ISO 15924 script code

public static final int
OLD_HUNGARIAN

ISO 15924 script code

public static final int
OLD_ITALIC

Old Itallic

public static final int
OLD_NORTH_ARABIAN

ISO 15924 script code

public static final int
OLD_PERMIC

ISO 15924 script code

public static final int
OLD_PERSIAN

Script in Unicode 4.1

public static final int
public static final int
OLD_SOUTH_ARABIAN

ISO 15924 script code

public static final int
public static final int
ORIYA

Oriya

public static final int
ORKHON

ISO 15924 script code

public static final int
OSAGE

ISO 15924 script code

public static final int
OSMANYA

Osmanya Script in Unicode 4

public static final int
PAHAWH_HMONG

ISO 15924 script code

public static final int
PALMYRENE

ISO 15924 script code

public static final int
PAU_CIN_HAU

ISO 15924 script code

public static final int
PHAGS_PA

ISO 15924 script code

public static final int
PHOENICIAN

ISO 15924 script code

public static final int
PHONETIC_POLLARD

ISO 15924 script code

public static final int
PSALTER_PAHLAVI

ISO 15924 script code

public static final int
REJANG

ISO 15924 script code

public static final int
RONGORONGO

ISO 15924 script code

public static final int
RUNIC

Runic

public static final int
SAMARITAN

ISO 15924 script code

public static final int
SARATI

ISO 15924 script code

public static final int
SAURASHTRA

ISO 15924 script code

public static final int
SHARADA

ISO 15924 script code

public static final int
SHAVIAN

Shavian Script in Unicode 4

public static final int
SIDDHAM

ISO 15924 script code

public static final int
SIGN_WRITING

ISO 15924 script code for Sutton SignWriting

public static final int
SIMPLIFIED_HAN

ISO 15924 script code

public static final int
SINDHI

ISO 15924 script code

public static final int
SINHALA

Sinhala

public static final int
public static final int
SORA_SOMPENG

ISO 15924 script code

public static final int
SOYOMBO

ISO 15924 script code

public static final int
SUNDANESE

ISO 15924 script code

public static final int
SYLOTI_NAGRI

Script in Unicode 4.1

public static final int
SYMBOLS

ISO 15924 script code

public static final int
SYMBOLS_EMOJI

ISO 15924 script code

public static final int
SYRIAC

Syriac

public static final int
TAGALOG

Tagalog

public static final int
TAGBANWA

Tagbanwa

public static final int
TAI_LE

Tai Le Script in Unicode 4

public static final int
TAI_VIET

ISO 15924 script code

public static final int
TAKRI

ISO 15924 script code

public static final int
TAMIL

Tamil

public static final int
public static final int
TANGUT

ISO 15924 script code

public static final int
TELUGU

Telugu

public static final int
TENGWAR

ISO 15924 script code

public static final int
THAANA

Thana

public static final int
THAI

Thai

public static final int
TIBETAN

Tibetan

public static final int
TIFINAGH

Script in Unicode 4.1

public static final int
TIRHUTA

ISO 15924 script code

public static final int
public static final int
TRADITIONAL_HAN

ISO 15924 script code

public static final int
UCAS

Unified Canadian Aboriginal Symbols (alias)

public static final int
UGARITIC

Ugaritic Script in Unicode 4

public static final int
UNKNOWN

ISO 15924 script code

public static final int
UNWRITTEN_LANGUAGES

ISO 15924 script code

private static final UScript.ScriptUsage[]
public static final int
VAI

ISO 15924 script code

public static final int
VISIBLE_SPEECH

ISO 15924 script code

public static final int
public static final int
public static final int
WARANG_CITI

ISO 15924 script code

public static final int
WESTERN_SYRIAC

ISO 15924 script code

public static final int
WOLEAI

ISO 15924 script code

public static final int
public static final int
YI

Yi syllables

public static final int
ZANABAZAR_SQUARE

ISO 15924 script code

Constructor Summary

AccessConstructor and Description
private
UScript()

Private Constructor.

Method Summary

Modifier and TypeMethod and Description
public static final boolean

Returns:

true if the script allows line breaks between letters
breaksBetweenLetters
(int
script code
script
)

Returns true if the script allows line breaks between letters (excluding hyphenation).

private static int[]
findCodeFromLocale(ULocale
The locale.
locale
)

Helper function to find the code from locale.

public static final int[]

Returns:

The script codes array. null if the the code cannot be found.
getCode
(Locale
Locale
locale
)

Gets a script codes associated with the given locale or ISO 15924 abbreviation or name.

public static final int[]

Returns:

The script codes array. null if the the code cannot be found.
getCode
(ULocale
ULocale
locale
)

Gets a script codes associated with the given locale or ISO 15924 abbreviation or name.

public static final int[]

Returns:

The script codes array. null if the the code cannot be found.
getCode
(String
name of the script or ISO 15924 code or locale
nameOrAbbrOrLocale
)

Gets the script codes associated with the given locale or ISO 15924 abbreviation or name.

public static final int

Returns:

The script code value, or INVALID_CODE if the code cannot be found.
getCodeFromName
(String
name of the script or ISO 15924 code
nameOrAbbr
)

Returns the script code associated with the given Unicode script property alias (name or abbreviation).

private static int[]
public static final String

Returns:

long script name as given in PropertyValueAliases.txt, or the 4-letter code
getName
(int
int script code
scriptCode
)

Returns the long Unicode script name, if there is one.

public static final String

Returns:

the sample character string
getSampleString
(int
script code
script
)

Returns the script sample character string.

public static final int

Returns:

The script code
getScript
(int
UChar32 codepoint
codepoint
)

Gets the script code associated with the given codepoint.

public static final int

Returns:

negative number of script codes in c's Script_Extensions, or the non-negative single Script value
getScriptExtensions
(int
code point
c
,
BitSet
set of script code integers; will be cleared, then bits are set corresponding to c's Script_Extensions
set
)

Sets code point c's Script_Extensions as script code integers into the output BitSet.

public static final String

Returns:

short script name (4-letter code)
getShortName
(int
int script code
scriptCode
)

Returns the 4-letter ISO 15924 script code, which is the same as the short Unicode script name if Unicode has names for the script.

public static final UScript.ScriptUsage

Returns:

script usage
getUsage
(int
script code
script
)

Returns the script usage according to UAX #31 Unicode Identifier and Pattern Syntax.

public static final boolean

Returns:

true if sc is in Script_Extensions(c)
hasScript
(int
code point
c
,
int
script code
sc
)

Do the Script_Extensions of code point c contain script sc? If c does not have explicit Script_Extensions, then this tests whether c has the Script property value sc.

Some characters are commonly used in multiple scripts.

public static final boolean

Returns:

true if the script is cased
isCased
(int
script code
script
)

Returns true if in modern (or most recent) usage of the script case distinctions are customary.

public static final boolean

Returns:

true if the script is right-to-left
isRightToLeft
(int
script code
script
)

Returns true if the script is written right-to-left.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait