X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/disorder/blobdiff_plain/0a4af69255e6fee5274e645e96eee16b6c67a70c..15091f766f1e8c380d2a7f752c387a2cecaf5bb1:/lib/unidata.h diff --git a/lib/unidata.h b/lib/unidata.h index f71eb64..aa8814d 100644 --- a/lib/unidata.h +++ b/lib/unidata.h @@ -39,6 +39,8 @@ enum unicode_Grapheme_Break { unicode_Grapheme_Break_Extend, unicode_Grapheme_Break_L, unicode_Grapheme_Break_LF, + unicode_Grapheme_Break_LV, + unicode_Grapheme_Break_LVT, unicode_Grapheme_Break_Other, unicode_Grapheme_Break_T, unicode_Grapheme_Break_V @@ -72,15 +74,14 @@ enum unicode_Sentence_Break { }; extern const char *const unicode_Sentence_Break_names[]; enum unicode_flags { - unicode_normalize_before_casefold = 1 + unicode_normalize_before_casefold = 1, + unicode_compatibility_decomposition = 2 }; struct unidata { - const uint32_t *compat; - const uint32_t *canon; + const uint32_t *decomp; const uint32_t *casefold; - int16_t upper_offset; - int16_t lower_offset; + const uint32_t *composed; unsigned char ccc; char general_category; uint8_t flags; @@ -89,6 +90,13 @@ struct unidata { char sentence_break; }; extern const struct unidata *const unidata[]; -#define UNICODE_NCHARS 195200 -#define UNICODE_MODULUS 128 +extern const struct unicode_utf8_row { + uint8_t count; + uint8_t min2, max2; +} unicode_utf8_valid[]; +#define UNICODE_NCHARS 1114112 +#define UNICODE_MODULUS 16 +#define UNICODE_BREAK_START 196608 +#define UNICODE_BREAK_END 917504 +#define UNICODE_BREAK_TOP 918016 #endif