Dear ICU team & users,
This is new API for: ICU 79
Ticket: ICU-23343
Almost every Unicode release defines some new property values. ICU adds corresponding API constants which are "born @stable" (they are not @draft first for a while) so that they are immediately usable without problems.
See https://blog.unicode.org/2026/05/unicode-180-beta-review-opens-for.html and https://www.unicode.org/review/pri548/ for Unicode 18 beta.
We are adding the following property value constants:
C/C++
unicode/uchar.h
enum UBlockCode {
// New blocks in Unicode 18.0.0
/** @stable ICU 79 */
UBLOCK_ARCHAIC_CUNEIFORM_NUMERALS = 347, /*[12550]*/
/** @stable ICU 79 */
UBLOCK_BENGALI_SUPPLEMENT = 348, /*[11DF0]*/
/** @stable ICU 79 */
UBLOCK_CHISOI = 349, /*[16D80]*/
/** @stable ICU 79 */
UBLOCK_JURCHEN = 350, /*[18E00]*/
/** @stable ICU 79 */
UBLOCK_JURCHEN_RADICALS = 351, /*[191A0]*/
/** @stable ICU 79 */
UBLOCK_MISCELLANEOUS_SYMBOLS_AND_ARROWS_EXTENDED = 352, /*[1DB00]*/
/** @stable ICU 79 */
UBLOCK_MUSICAL_SYMBOLS_SUPPLEMENT = 353, /*[1D250]*/
/** @stable ICU 79 */
UBLOCK_SEAL = 354, /*[3D000]*/
typedef enum UJoiningGroup {
U_JG_CROWN_AIN, /**< @stable ICU 79 */
U_JG_CROWN_BEH, /**< @stable ICU 79 */
U_JG_CROWN_FEH, /**< @stable ICU 79 */
U_JG_CROWN_HAH, /**< @stable ICU 79 */
U_JG_CROWN_HEH, /**< @stable ICU 79 */
U_JG_CROWN_KAF, /**< @stable ICU 79 */
U_JG_CROWN_MEEM, /**< @stable ICU 79 */
U_JG_CROWN_SAD, /**< @stable ICU 79 */
U_JG_CROWN_SEEN, /**< @stable ICU 79 */
U_JG_CROWN_TAH, /**< @stable ICU 79 */
unicode/uscript.h
typedef enum UScriptCode {
/** @stable ICU 79 */
USCRIPT_CHISOI = 213, /* Chis */
/** @stable ICU 79 */
USCRIPT_PROTO_CUNEIFORM = 214, /* Pcun */
/** @stable ICU 79 */
USCRIPT_SEAL = 215, /* Seal */
Java
public final class UCharacter {
public static final class UnicodeBlock extends Character.Subset {
// New blocks in Unicode 18.0.0
public static final int ARCHAIC_CUNEIFORM_NUMERALS_ID = 347; /*[12550]*/
public static final int BENGALI_SUPPLEMENT_ID = 348; /*[11DF0]*/
public static final int CHISOI_ID = 349; /*[16D80]*/
public static final int JURCHEN_ID = 350; /*[18E00]*/
public static final int JURCHEN_RADICALS_ID = 351; /*[191A0]*/
public static final int MISCELLANEOUS_SYMBOLS_AND_ARROWS_EXTENDED_ID = 352; /*[1DB00]*/
public static final int MUSICAL_SYMBOLS_SUPPLEMENT_ID = 353; /*[1D250]*/
public static final int SEAL_ID = 354; /*[3D000]*/
...
// New blocks in Unicode 18.0.0
public static final UnicodeBlock ARCHAIC_CUNEIFORM_NUMERALS =
public static final UnicodeBlock BENGALI_SUPPLEMENT =
public static final UnicodeBlock CHISOI =
public static final UnicodeBlock JURCHEN =
public static final UnicodeBlock JURCHEN_RADICALS =
public static final UnicodeBlock MISCELLANEOUS_SYMBOLS_AND_ARROWS_EXTENDED =
public static final UnicodeBlock MUSICAL_SYMBOLS_SUPPLEMENT =
public static final UnicodeBlock SEAL =
public static interface JoiningGroup
public static final int CROWN_AIN = 106;
public static final int CROWN_BEH = 107;
public static final int CROWN_FEH = 108;
public static final int CROWN_HAH = 109;
public static final int CROWN_HEH = 110;
public static final int CROWN_KAF = 111;
public static final int CROWN_MEEM = 112;
public static final int CROWN_SAD = 113;
public static final int CROWN_SEEN = 114;
public static final int CROWN_TAH = 115;
public final class UScript {
public static final int CHISOI = 213; /* Chis */
public static final int PROTO_CUNEIFORM = 214; /* Pcun */
public static final int SEAL = 215; /* Seal */
public final class VersionInfo {
/**
* Unicode 18.0 version
*
* @stable ICU 79
*/
public static final VersionInfo UNICODE_18_0;
Almost every Unicode release defines some new property values. ICU adds corresponding API constants which are "born @stable" (they are not @draft first for a while) so that they are immediately usable without problems.
See https://blog.unicode.org/2026/05/unicode-180-beta-review-opens-for.html and https://www.unicode.org/review/pri548/ for Unicode 18 beta.
We are adding the following property value constants: