character.c (1727B)
1/* See LICENSE file for copyright and license details. */ 2#include <stddef.h> 3 4#include "util.h" 5 6#define FILE_EMOJI "data/emoji-data.txt" 7#define FILE_GRAPHEME "data/GraphemeBreakProperty.txt" 8 9static const struct property_spec char_break_property[] = { 10 { 11 .enumname = "OTHER", 12 .file = NULL, 13 .ucdname = NULL, 14 }, 15 { 16 .enumname = "CONTROL", 17 .file = FILE_GRAPHEME, 18 .ucdname = "Control", 19 }, 20 { 21 .enumname = "CR", 22 .file = FILE_GRAPHEME, 23 .ucdname = "CR", 24 }, 25 { 26 .enumname = "EXTEND", 27 .file = FILE_GRAPHEME, 28 .ucdname = "Extend", 29 }, 30 { 31 .enumname = "EXTENDED_PICTOGRAPHIC", 32 .file = FILE_EMOJI, 33 .ucdname = "Extended_Pictographic", 34 }, 35 { 36 .enumname = "HANGUL_L", 37 .file = FILE_GRAPHEME, 38 .ucdname = "L", 39 }, 40 { 41 .enumname = "HANGUL_V", 42 .file = FILE_GRAPHEME, 43 .ucdname = "V", 44 }, 45 { 46 .enumname = "HANGUL_T", 47 .file = FILE_GRAPHEME, 48 .ucdname = "T", 49 }, 50 { 51 .enumname = "HANGUL_LV", 52 .file = FILE_GRAPHEME, 53 .ucdname = "LV", 54 }, 55 { 56 .enumname = "HANGUL_LVT", 57 .file = FILE_GRAPHEME, 58 .ucdname = "LVT", 59 }, 60 { 61 .enumname = "LF", 62 .file = FILE_GRAPHEME, 63 .ucdname = "LF", 64 }, 65 { 66 .enumname = "PREPEND", 67 .file = FILE_GRAPHEME, 68 .ucdname = "Prepend", 69 }, 70 { 71 .enumname = "REGIONAL_INDICATOR", 72 .file = FILE_GRAPHEME, 73 .ucdname = "Regional_Indicator", 74 }, 75 { 76 .enumname = "SPACINGMARK", 77 .file = FILE_GRAPHEME, 78 .ucdname = "SpacingMark", 79 }, 80 { 81 .enumname = "ZWJ", 82 .file = FILE_GRAPHEME, 83 .ucdname = "ZWJ", 84 }, 85}; 86 87int 88main(int argc, char *argv[]) 89{ 90 (void)argc; 91 92 properties_generate_break_property(char_break_property, 93 LEN(char_break_property), NULL, NULL, 94 NULL, "char_break", argv[0]); 95 96 return 0; 97}