From 936336c856f9f89d1b966dce62a20a2e6fa43911 Mon Sep 17 00:00:00 2001 From: Meghan Denny Date: Thu, 22 Dec 2022 11:37:36 -0800 Subject: [PATCH] add IndicPositionalCategory, closes #18 --- generate.zig | 1 + scripts/IndicPositionalCategory.zig | 61 ++ src/indic_positional_category.zig | 1241 +++++++++++++++++++++++++++ src/lib.zig | 1 + src/main.zig | 1 + 5 files changed, 1305 insertions(+) create mode 100644 scripts/IndicPositionalCategory.zig create mode 100644 src/indic_positional_category.zig diff --git a/generate.zig b/generate.zig index ef042a5cc87312990a5e347ba005f873a665fea2..07cba4a6358dc48e6aa8f9944da2ac493ccc5d69 100644 --- a/generate.zig +++ b/generate.zig @@ -14,6 +14,7 @@ const files = [_]type{ @import("./scripts/EmojiSources.zig"), @import("./scripts/EquivalentUnifiedIdeograph.zig"), @import("./scripts/HangulSyllableType.zig"), + @import("./scripts/IndicPositionalCategory.zig"), }; pub fn main() !void { diff --git a/scripts/IndicPositionalCategory.zig b/scripts/IndicPositionalCategory.zig new file mode 100644 index 0000000000000000000000000000000000000000..550d93fc4e6910283aba51d797a595faac1cf452 --- /dev/null +++ b/scripts/IndicPositionalCategory.zig @@ -0,0 +1,61 @@ +const std = @import("std"); +const common = @import("./_common.zig"); + +pub usingnamespace common.Main(struct { + pub const source_file = "IndicPositionalCategory"; + + pub const dest_file = "src/indic_positional_category.zig"; + + pub const dest_header = + \\pub const IndicPositionalCategory = struct { + \\ code: u21, + \\ category: enum { + \\ NA, + \\ Right, + \\ Left, + \\ Visual_Order_Left, + \\ Left_And_Right, + \\ Top, + \\ Bottom, + \\ Top_And_Bottom, + \\ Top_And_Right, + \\ Top_And_Left, + \\ Top_And_Left_And_Right, + \\ Bottom_And_Right, + \\ Bottom_And_Left, + \\ Top_And_Bottom_And_Right, + \\ Top_And_Bottom_And_Left, + \\ Overstruck, + \\ }, + \\}; + \\ + \\pub const data = [_]IndicPositionalCategory{ + \\ + ; + + pub const dest_footer = + \\}; + \\ + ; + + pub fn exec(alloc: std.mem.Allocator, line: []const u8, writer: anytype) !bool { + _ = alloc; + var it = std.mem.tokenize(u8, line, "; "); + + const first = it.next().?; + const next = it.next().?; + + if (std.mem.indexOf(u8, first, "..")) |index| { + const start = try std.fmt.parseInt(u21, first[0..index], 16); + const end = try std.fmt.parseInt(u21, first[index + 2 ..], 16); + var i = start; + while (i <= end) : (i += 1) { + try writer.print(" .{{ .code = 0x{X}, .category = .{s} }},\n", .{ i, next }); + } + } else { + try writer.print(" .{{ .code = 0x{s}, .category = .{s} }},\n", .{ first, next }); + } + + return true; + } +}); diff --git a/src/indic_positional_category.zig b/src/indic_positional_category.zig new file mode 100644 index 0000000000000000000000000000000000000000..de7d283468856ae4c68fdf31fd9c51acf9bfc179 --- /dev/null +++ b/src/indic_positional_category.zig @@ -0,0 +1,1241 @@ +// This file is part of the Unicode Character Database +// For documentation, see http://www.unicode.org/reports/tr44/ +// +// Based on the source file: https://unicode.org/Public/13.0.0/ucd/IndicPositionalCategory.txt +// +// zig fmt: off + +pub const IndicPositionalCategory = struct { + code: u21, + category: enum { + NA, + Right, + Left, + Visual_Order_Left, + Left_And_Right, + Top, + Bottom, + Top_And_Bottom, + Top_And_Right, + Top_And_Left, + Top_And_Left_And_Right, + Bottom_And_Right, + Bottom_And_Left, + Top_And_Bottom_And_Right, + Top_And_Bottom_And_Left, + Overstruck, + }, +}; + +pub const data = [_]IndicPositionalCategory{ + .{ .code = 0x0903, .category = .Right }, + .{ .code = 0x093B, .category = .Right }, + .{ .code = 0x093E, .category = .Right }, + .{ .code = 0x0940, .category = .Right }, + .{ .code = 0x949, .category = .Right }, + .{ .code = 0x94A, .category = .Right }, + .{ .code = 0x94B, .category = .Right }, + .{ .code = 0x94C, .category = .Right }, + .{ .code = 0x094F, .category = .Right }, + .{ .code = 0x982, .category = .Right }, + .{ .code = 0x983, .category = .Right }, + .{ .code = 0x09BE, .category = .Right }, + .{ .code = 0x09C0, .category = .Right }, + .{ .code = 0x09D7, .category = .Right }, + .{ .code = 0x0A03, .category = .Right }, + .{ .code = 0x0A3E, .category = .Right }, + .{ .code = 0x0A40, .category = .Right }, + .{ .code = 0x0A83, .category = .Right }, + .{ .code = 0x0ABE, .category = .Right }, + .{ .code = 0x0AC0, .category = .Right }, + .{ .code = 0xACB, .category = .Right }, + .{ .code = 0xACC, .category = .Right }, + .{ .code = 0xB02, .category = .Right }, + .{ .code = 0xB03, .category = .Right }, + .{ .code = 0x0B3E, .category = .Right }, + .{ .code = 0x0B40, .category = .Right }, + .{ .code = 0xBBE, .category = .Right }, + .{ .code = 0xBBF, .category = .Right }, + .{ .code = 0xBC1, .category = .Right }, + .{ .code = 0xBC2, .category = .Right }, + .{ .code = 0x0BD7, .category = .Right }, + .{ .code = 0xC01, .category = .Right }, + .{ .code = 0xC02, .category = .Right }, + .{ .code = 0xC03, .category = .Right }, + .{ .code = 0xC41, .category = .Right }, + .{ .code = 0xC42, .category = .Right }, + .{ .code = 0xC43, .category = .Right }, + .{ .code = 0xC44, .category = .Right }, + .{ .code = 0xC82, .category = .Right }, + .{ .code = 0xC83, .category = .Right }, + .{ .code = 0x0CBE, .category = .Right }, + .{ .code = 0xCC1, .category = .Right }, + .{ .code = 0xCC2, .category = .Right }, + .{ .code = 0xCC3, .category = .Right }, + .{ .code = 0xCC4, .category = .Right }, + .{ .code = 0xCD5, .category = .Right }, + .{ .code = 0xCD6, .category = .Right }, + .{ .code = 0xD02, .category = .Right }, + .{ .code = 0xD03, .category = .Right }, + .{ .code = 0xD3E, .category = .Right }, + .{ .code = 0xD3F, .category = .Right }, + .{ .code = 0xD40, .category = .Right }, + .{ .code = 0xD41, .category = .Right }, + .{ .code = 0xD42, .category = .Right }, + .{ .code = 0x0D57, .category = .Right }, + .{ .code = 0xD82, .category = .Right }, + .{ .code = 0xD83, .category = .Right }, + .{ .code = 0xDCF, .category = .Right }, + .{ .code = 0xDD0, .category = .Right }, + .{ .code = 0xDD1, .category = .Right }, + .{ .code = 0x0DD8, .category = .Right }, + .{ .code = 0x0DDF, .category = .Right }, + .{ .code = 0xDF2, .category = .Right }, + .{ .code = 0xDF3, .category = .Right }, + .{ .code = 0x0E30, .category = .Right }, + .{ .code = 0xE32, .category = .Right }, + .{ .code = 0xE33, .category = .Right }, + .{ .code = 0x0E45, .category = .Right }, + .{ .code = 0x0EB0, .category = .Right }, + .{ .code = 0xEB2, .category = .Right }, + .{ .code = 0xEB3, .category = .Right }, + .{ .code = 0x0F3E, .category = .Right }, + .{ .code = 0x0F7F, .category = .Right }, + .{ .code = 0x102B, .category = .Right }, + .{ .code = 0x102C, .category = .Right }, + .{ .code = 0x1038, .category = .Right }, + .{ .code = 0x103B, .category = .Right }, + .{ .code = 0x1056, .category = .Right }, + .{ .code = 0x1057, .category = .Right }, + .{ .code = 0x1062, .category = .Right }, + .{ .code = 0x1063, .category = .Right }, + .{ .code = 0x1064, .category = .Right }, + .{ .code = 0x1067, .category = .Right }, + .{ .code = 0x1068, .category = .Right }, + .{ .code = 0x1069, .category = .Right }, + .{ .code = 0x106A, .category = .Right }, + .{ .code = 0x106B, .category = .Right }, + .{ .code = 0x106C, .category = .Right }, + .{ .code = 0x106D, .category = .Right }, + .{ .code = 0x1083, .category = .Right }, + .{ .code = 0x1087, .category = .Right }, + .{ .code = 0x1088, .category = .Right }, + .{ .code = 0x1089, .category = .Right }, + .{ .code = 0x108A, .category = .Right }, + .{ .code = 0x108B, .category = .Right }, + .{ .code = 0x108C, .category = .Right }, + .{ .code = 0x108F, .category = .Right }, + .{ .code = 0x109A, .category = .Right }, + .{ .code = 0x109B, .category = .Right }, + .{ .code = 0x109C, .category = .Right }, + .{ .code = 0x17B6, .category = .Right }, + .{ .code = 0x17C7, .category = .Right }, + .{ .code = 0x17C8, .category = .Right }, + .{ .code = 0x1923, .category = .Right }, + .{ .code = 0x1924, .category = .Right }, + .{ .code = 0x1929, .category = .Right }, + .{ .code = 0x192A, .category = .Right }, + .{ .code = 0x192B, .category = .Right }, + .{ .code = 0x1930, .category = .Right }, + .{ .code = 0x1931, .category = .Right }, + .{ .code = 0x1933, .category = .Right }, + .{ .code = 0x1934, .category = .Right }, + .{ .code = 0x1935, .category = .Right }, + .{ .code = 0x1936, .category = .Right }, + .{ .code = 0x1937, .category = .Right }, + .{ .code = 0x1938, .category = .Right }, + .{ .code = 0x19B0, .category = .Right }, + .{ .code = 0x19B1, .category = .Right }, + .{ .code = 0x19B2, .category = .Right }, + .{ .code = 0x19B3, .category = .Right }, + .{ .code = 0x19B4, .category = .Right }, + .{ .code = 0x19B8, .category = .Right }, + .{ .code = 0x19B9, .category = .Right }, + .{ .code = 0x19BB, .category = .Right }, + .{ .code = 0x19BC, .category = .Right }, + .{ .code = 0x19BD, .category = .Right }, + .{ .code = 0x19BE, .category = .Right }, + .{ .code = 0x19BF, .category = .Right }, + .{ .code = 0x19C0, .category = .Right }, + .{ .code = 0x19C8, .category = .Right }, + .{ .code = 0x19C9, .category = .Right }, + .{ .code = 0x1A1A, .category = .Right }, + .{ .code = 0x1A57, .category = .Right }, + .{ .code = 0x1A61, .category = .Right }, + .{ .code = 0x1A63, .category = .Right }, + .{ .code = 0x1A64, .category = .Right }, + .{ .code = 0x1A6D, .category = .Right }, + .{ .code = 0x1B04, .category = .Right }, + .{ .code = 0x1B35, .category = .Right }, + .{ .code = 0x1B44, .category = .Right }, + .{ .code = 0x1B82, .category = .Right }, + .{ .code = 0x1BA1, .category = .Right }, + .{ .code = 0x1BA7, .category = .Right }, + .{ .code = 0x1BAA, .category = .Right }, + .{ .code = 0x1BE7, .category = .Right }, + .{ .code = 0x1BEA, .category = .Right }, + .{ .code = 0x1BEB, .category = .Right }, + .{ .code = 0x1BEC, .category = .Right }, + .{ .code = 0x1BEE, .category = .Right }, + .{ .code = 0x1BF2, .category = .Right }, + .{ .code = 0x1BF3, .category = .Right }, + .{ .code = 0x1C24, .category = .Right }, + .{ .code = 0x1C25, .category = .Right }, + .{ .code = 0x1C26, .category = .Right }, + .{ .code = 0x1C2A, .category = .Right }, + .{ .code = 0x1C2B, .category = .Right }, + .{ .code = 0x1CE1, .category = .Right }, + .{ .code = 0x1CF7, .category = .Right }, + .{ .code = 0xA823, .category = .Right }, + .{ .code = 0xA824, .category = .Right }, + .{ .code = 0xA827, .category = .Right }, + .{ .code = 0xA880, .category = .Right }, + .{ .code = 0xA881, .category = .Right }, + .{ .code = 0xA8B4, .category = .Right }, + .{ .code = 0xA8B5, .category = .Right }, + .{ .code = 0xA8B6, .category = .Right }, + .{ .code = 0xA8B7, .category = .Right }, + .{ .code = 0xA8B8, .category = .Right }, + .{ .code = 0xA8B9, .category = .Right }, + .{ .code = 0xA8BA, .category = .Right }, + .{ .code = 0xA8BB, .category = .Right }, + .{ .code = 0xA8BC, .category = .Right }, + .{ .code = 0xA8BD, .category = .Right }, + .{ .code = 0xA8BE, .category = .Right }, + .{ .code = 0xA8BF, .category = .Right }, + .{ .code = 0xA8C0, .category = .Right }, + .{ .code = 0xA8C1, .category = .Right }, + .{ .code = 0xA8C2, .category = .Right }, + .{ .code = 0xA8C3, .category = .Right }, + .{ .code = 0xA952, .category = .Right }, + .{ .code = 0xA953, .category = .Right }, + .{ .code = 0xA983, .category = .Right }, + .{ .code = 0xA9B4, .category = .Right }, + .{ .code = 0xA9B5, .category = .Right }, + .{ .code = 0xAA33, .category = .Right }, + .{ .code = 0xAA4D, .category = .Right }, + .{ .code = 0xAA7B, .category = .Right }, + .{ .code = 0xAA7D, .category = .Right }, + .{ .code = 0xAAB1, .category = .Right }, + .{ .code = 0xAABA, .category = .Right }, + .{ .code = 0xAABD, .category = .Right }, + .{ .code = 0xAAEF, .category = .Right }, + .{ .code = 0xAAF5, .category = .Right }, + .{ .code = 0xABE3, .category = .Right }, + .{ .code = 0xABE4, .category = .Right }, + .{ .code = 0xABE6, .category = .Right }, + .{ .code = 0xABE7, .category = .Right }, + .{ .code = 0xABE9, .category = .Right }, + .{ .code = 0xABEA, .category = .Right }, + .{ .code = 0xABEC, .category = .Right }, + .{ .code = 0x11000, .category = .Right }, + .{ .code = 0x11002, .category = .Right }, + .{ .code = 0x11082, .category = .Right }, + .{ .code = 0x110B0, .category = .Right }, + .{ .code = 0x110B2, .category = .Right }, + .{ .code = 0x110B7, .category = .Right }, + .{ .code = 0x110B8, .category = .Right }, + .{ .code = 0x11145, .category = .Right }, + .{ .code = 0x11146, .category = .Right }, + .{ .code = 0x11182, .category = .Right }, + .{ .code = 0x111B3, .category = .Right }, + .{ .code = 0x111B5, .category = .Right }, + .{ .code = 0x111C0, .category = .Right }, + .{ .code = 0x1122C, .category = .Right }, + .{ .code = 0x1122D, .category = .Right }, + .{ .code = 0x1122E, .category = .Right }, + .{ .code = 0x11235, .category = .Right }, + .{ .code = 0x112E0, .category = .Right }, + .{ .code = 0x112E2, .category = .Right }, + .{ .code = 0x11302, .category = .Right }, + .{ .code = 0x11303, .category = .Right }, + .{ .code = 0x1133E, .category = .Right }, + .{ .code = 0x1133F, .category = .Right }, + .{ .code = 0x11341, .category = .Right }, + .{ .code = 0x11342, .category = .Right }, + .{ .code = 0x11343, .category = .Right }, + .{ .code = 0x11344, .category = .Right }, + .{ .code = 0x1134D, .category = .Right }, + .{ .code = 0x11357, .category = .Right }, + .{ .code = 0x11362, .category = .Right }, + .{ .code = 0x11363, .category = .Right }, + .{ .code = 0x11435, .category = .Right }, + .{ .code = 0x11437, .category = .Right }, + .{ .code = 0x11440, .category = .Right }, + .{ .code = 0x11441, .category = .Right }, + .{ .code = 0x11445, .category = .Right }, + .{ .code = 0x114B0, .category = .Right }, + .{ .code = 0x114B2, .category = .Right }, + .{ .code = 0x114BD, .category = .Right }, + .{ .code = 0x114C1, .category = .Right }, + .{ .code = 0x115AF, .category = .Right }, + .{ .code = 0x115B1, .category = .Right }, + .{ .code = 0x115BE, .category = .Right }, + .{ .code = 0x11630, .category = .Right }, + .{ .code = 0x11631, .category = .Right }, + .{ .code = 0x11632, .category = .Right }, + .{ .code = 0x1163B, .category = .Right }, + .{ .code = 0x1163C, .category = .Right }, + .{ .code = 0x1163E, .category = .Right }, + .{ .code = 0x116AC, .category = .Right }, + .{ .code = 0x116AF, .category = .Right }, + .{ .code = 0x116B6, .category = .Right }, + .{ .code = 0x11720, .category = .Right }, + .{ .code = 0x11721, .category = .Right }, + .{ .code = 0x1182C, .category = .Right }, + .{ .code = 0x1182E, .category = .Right }, + .{ .code = 0x11838, .category = .Right }, + .{ .code = 0x11930, .category = .Right }, + .{ .code = 0x11931, .category = .Right }, + .{ .code = 0x11932, .category = .Right }, + .{ .code = 0x11933, .category = .Right }, + .{ .code = 0x11934, .category = .Right }, + .{ .code = 0x1193D, .category = .Right }, + .{ .code = 0x11940, .category = .Right }, + .{ .code = 0x119D1, .category = .Right }, + .{ .code = 0x119D3, .category = .Right }, + .{ .code = 0x119DC, .category = .Right }, + .{ .code = 0x119DD, .category = .Right }, + .{ .code = 0x119DE, .category = .Right }, + .{ .code = 0x119DF, .category = .Right }, + .{ .code = 0x11A39, .category = .Right }, + .{ .code = 0x11A57, .category = .Right }, + .{ .code = 0x11A58, .category = .Right }, + .{ .code = 0x11A97, .category = .Right }, + .{ .code = 0x11C2F, .category = .Right }, + .{ .code = 0x11C3E, .category = .Right }, + .{ .code = 0x11CA9, .category = .Right }, + .{ .code = 0x11CB4, .category = .Right }, + .{ .code = 0x11D46, .category = .Right }, + .{ .code = 0x11D8A, .category = .Right }, + .{ .code = 0x11D8B, .category = .Right }, + .{ .code = 0x11D8C, .category = .Right }, + .{ .code = 0x11D8D, .category = .Right }, + .{ .code = 0x11D8E, .category = .Right }, + .{ .code = 0x11D93, .category = .Right }, + .{ .code = 0x11D94, .category = .Right }, + .{ .code = 0x11D96, .category = .Right }, + .{ .code = 0x11EF6, .category = .Right }, + .{ .code = 0x093F, .category = .Left }, + .{ .code = 0x094E, .category = .Left }, + .{ .code = 0x09BF, .category = .Left }, + .{ .code = 0x9C7, .category = .Left }, + .{ .code = 0x9C8, .category = .Left }, + .{ .code = 0x0A3F, .category = .Left }, + .{ .code = 0x0ABF, .category = .Left }, + .{ .code = 0x0B47, .category = .Left }, + .{ .code = 0xBC6, .category = .Left }, + .{ .code = 0xBC7, .category = .Left }, + .{ .code = 0xBC8, .category = .Left }, + .{ .code = 0xD46, .category = .Left }, + .{ .code = 0xD47, .category = .Left }, + .{ .code = 0xD48, .category = .Left }, + .{ .code = 0x0DD9, .category = .Left }, + .{ .code = 0x0DDB, .category = .Left }, + .{ .code = 0x0F3F, .category = .Left }, + .{ .code = 0x1031, .category = .Left }, + .{ .code = 0x1084, .category = .Left }, + .{ .code = 0x17C1, .category = .Left }, + .{ .code = 0x17C2, .category = .Left }, + .{ .code = 0x17C3, .category = .Left }, + .{ .code = 0x1A19, .category = .Left }, + .{ .code = 0x1A55, .category = .Left }, + .{ .code = 0x1A6E, .category = .Left }, + .{ .code = 0x1A6F, .category = .Left }, + .{ .code = 0x1A70, .category = .Left }, + .{ .code = 0x1A71, .category = .Left }, + .{ .code = 0x1A72, .category = .Left }, + .{ .code = 0x1B3E, .category = .Left }, + .{ .code = 0x1B3F, .category = .Left }, + .{ .code = 0x1BA6, .category = .Left }, + .{ .code = 0x1C27, .category = .Left }, + .{ .code = 0x1C28, .category = .Left }, + .{ .code = 0x1C34, .category = .Left }, + .{ .code = 0x1C35, .category = .Left }, + .{ .code = 0xA9BA, .category = .Left }, + .{ .code = 0xA9BB, .category = .Left }, + .{ .code = 0xAA2F, .category = .Left }, + .{ .code = 0xAA30, .category = .Left }, + .{ .code = 0xAA34, .category = .Left }, + .{ .code = 0xAAEB, .category = .Left }, + .{ .code = 0xAAEE, .category = .Left }, + .{ .code = 0x110B1, .category = .Left }, + .{ .code = 0x1112C, .category = .Left }, + .{ .code = 0x111B4, .category = .Left }, + .{ .code = 0x111CE, .category = .Left }, + .{ .code = 0x112E1, .category = .Left }, + .{ .code = 0x11347, .category = .Left }, + .{ .code = 0x11348, .category = .Left }, + .{ .code = 0x11436, .category = .Left }, + .{ .code = 0x114B1, .category = .Left }, + .{ .code = 0x114B9, .category = .Left }, + .{ .code = 0x115B0, .category = .Left }, + .{ .code = 0x115B8, .category = .Left }, + .{ .code = 0x116AE, .category = .Left }, + .{ .code = 0x11726, .category = .Left }, + .{ .code = 0x1182D, .category = .Left }, + .{ .code = 0x11935, .category = .Left }, + .{ .code = 0x11937, .category = .Left }, + .{ .code = 0x119D2, .category = .Left }, + .{ .code = 0x119E4, .category = .Left }, + .{ .code = 0x11CB1, .category = .Left }, + .{ .code = 0x11EF5, .category = .Left }, + .{ .code = 0xE40, .category = .Visual_Order_Left }, + .{ .code = 0xE41, .category = .Visual_Order_Left }, + .{ .code = 0xE42, .category = .Visual_Order_Left }, + .{ .code = 0xE43, .category = .Visual_Order_Left }, + .{ .code = 0xE44, .category = .Visual_Order_Left }, + .{ .code = 0xEC0, .category = .Visual_Order_Left }, + .{ .code = 0xEC1, .category = .Visual_Order_Left }, + .{ .code = 0xEC2, .category = .Visual_Order_Left }, + .{ .code = 0xEC3, .category = .Visual_Order_Left }, + .{ .code = 0xEC4, .category = .Visual_Order_Left }, + .{ .code = 0x19B5, .category = .Visual_Order_Left }, + .{ .code = 0x19B6, .category = .Visual_Order_Left }, + .{ .code = 0x19B7, .category = .Visual_Order_Left }, + .{ .code = 0x19BA, .category = .Visual_Order_Left }, + .{ .code = 0xAAB5, .category = .Visual_Order_Left }, + .{ .code = 0xAAB6, .category = .Visual_Order_Left }, + .{ .code = 0xAAB9, .category = .Visual_Order_Left }, + .{ .code = 0xAABB, .category = .Visual_Order_Left }, + .{ .code = 0xAABC, .category = .Visual_Order_Left }, + .{ .code = 0x9CB, .category = .Left_And_Right }, + .{ .code = 0x9CC, .category = .Left_And_Right }, + .{ .code = 0x0B4B, .category = .Left_And_Right }, + .{ .code = 0xBCA, .category = .Left_And_Right }, + .{ .code = 0xBCB, .category = .Left_And_Right }, + .{ .code = 0xBCC, .category = .Left_And_Right }, + .{ .code = 0xD4A, .category = .Left_And_Right }, + .{ .code = 0xD4B, .category = .Left_And_Right }, + .{ .code = 0xD4C, .category = .Left_And_Right }, + .{ .code = 0x0DDC, .category = .Left_And_Right }, + .{ .code = 0x0DDE, .category = .Left_And_Right }, + .{ .code = 0x17C0, .category = .Left_And_Right }, + .{ .code = 0x17C4, .category = .Left_And_Right }, + .{ .code = 0x17C5, .category = .Left_And_Right }, + .{ .code = 0x1B40, .category = .Left_And_Right }, + .{ .code = 0x1B41, .category = .Left_And_Right }, + .{ .code = 0x1134B, .category = .Left_And_Right }, + .{ .code = 0x1134C, .category = .Left_And_Right }, + .{ .code = 0x114BC, .category = .Left_And_Right }, + .{ .code = 0x114BE, .category = .Left_And_Right }, + .{ .code = 0x115BA, .category = .Left_And_Right }, + .{ .code = 0x11938, .category = .Left_And_Right }, + .{ .code = 0x900, .category = .Top }, + .{ .code = 0x901, .category = .Top }, + .{ .code = 0x902, .category = .Top }, + .{ .code = 0x093A, .category = .Top }, + .{ .code = 0x945, .category = .Top }, + .{ .code = 0x946, .category = .Top }, + .{ .code = 0x947, .category = .Top }, + .{ .code = 0x948, .category = .Top }, + .{ .code = 0x0951, .category = .Top }, + .{ .code = 0x953, .category = .Top }, + .{ .code = 0x954, .category = .Top }, + .{ .code = 0x955, .category = .Top }, + .{ .code = 0x0981, .category = .Top }, + .{ .code = 0x09FE, .category = .Top }, + .{ .code = 0xA01, .category = .Top }, + .{ .code = 0xA02, .category = .Top }, + .{ .code = 0xA47, .category = .Top }, + .{ .code = 0xA48, .category = .Top }, + .{ .code = 0xA4B, .category = .Top }, + .{ .code = 0xA4C, .category = .Top }, + .{ .code = 0xA70, .category = .Top }, + .{ .code = 0xA71, .category = .Top }, + .{ .code = 0xA81, .category = .Top }, + .{ .code = 0xA82, .category = .Top }, + .{ .code = 0x0AC5, .category = .Top }, + .{ .code = 0xAC7, .category = .Top }, + .{ .code = 0xAC8, .category = .Top }, + .{ .code = 0xAFA, .category = .Top }, + .{ .code = 0xAFB, .category = .Top }, + .{ .code = 0xAFC, .category = .Top }, + .{ .code = 0xAFD, .category = .Top }, + .{ .code = 0xAFE, .category = .Top }, + .{ .code = 0xAFF, .category = .Top }, + .{ .code = 0x0B01, .category = .Top }, + .{ .code = 0x0B3F, .category = .Top }, + .{ .code = 0xB55, .category = .Top }, + .{ .code = 0xB56, .category = .Top }, + .{ .code = 0x0B82, .category = .Top }, + .{ .code = 0x0BC0, .category = .Top }, + .{ .code = 0x0BCD, .category = .Top }, + .{ .code = 0x0C00, .category = .Top }, + .{ .code = 0x0C04, .category = .Top }, + .{ .code = 0xC3E, .category = .Top }, + .{ .code = 0xC3F, .category = .Top }, + .{ .code = 0xC40, .category = .Top }, + .{ .code = 0xC46, .category = .Top }, + .{ .code = 0xC47, .category = .Top }, + .{ .code = 0xC4A, .category = .Top }, + .{ .code = 0xC4B, .category = .Top }, + .{ .code = 0xC4C, .category = .Top }, + .{ .code = 0xC4D, .category = .Top }, + .{ .code = 0x0C55, .category = .Top }, + .{ .code = 0x0C81, .category = .Top }, + .{ .code = 0x0CBF, .category = .Top }, + .{ .code = 0x0CC6, .category = .Top }, + .{ .code = 0xCCC, .category = .Top }, + .{ .code = 0xCCD, .category = .Top }, + .{ .code = 0xD00, .category = .Top }, + .{ .code = 0xD01, .category = .Top }, + .{ .code = 0xD3B, .category = .Top }, + .{ .code = 0xD3C, .category = .Top }, + .{ .code = 0x0D4D, .category = .Top }, + .{ .code = 0x0D4E, .category = .Top }, + .{ .code = 0x0D81, .category = .Top }, + .{ .code = 0x0DCA, .category = .Top }, + .{ .code = 0xDD2, .category = .Top }, + .{ .code = 0xDD3, .category = .Top }, + .{ .code = 0x0E31, .category = .Top }, + .{ .code = 0xE34, .category = .Top }, + .{ .code = 0xE35, .category = .Top }, + .{ .code = 0xE36, .category = .Top }, + .{ .code = 0xE37, .category = .Top }, + .{ .code = 0xE47, .category = .Top }, + .{ .code = 0xE48, .category = .Top }, + .{ .code = 0xE49, .category = .Top }, + .{ .code = 0xE4A, .category = .Top }, + .{ .code = 0xE4B, .category = .Top }, + .{ .code = 0xE4C, .category = .Top }, + .{ .code = 0xE4D, .category = .Top }, + .{ .code = 0xE4E, .category = .Top }, + .{ .code = 0x0EB1, .category = .Top }, + .{ .code = 0xEB4, .category = .Top }, + .{ .code = 0xEB5, .category = .Top }, + .{ .code = 0xEB6, .category = .Top }, + .{ .code = 0xEB7, .category = .Top }, + .{ .code = 0x0EBB, .category = .Top }, + .{ .code = 0xEC8, .category = .Top }, + .{ .code = 0xEC9, .category = .Top }, + .{ .code = 0xECA, .category = .Top }, + .{ .code = 0xECB, .category = .Top }, + .{ .code = 0xECC, .category = .Top }, + .{ .code = 0xECD, .category = .Top }, + .{ .code = 0x0F39, .category = .Top }, + .{ .code = 0x0F72, .category = .Top }, + .{ .code = 0xF7A, .category = .Top }, + .{ .code = 0xF7B, .category = .Top }, + .{ .code = 0xF7C, .category = .Top }, + .{ .code = 0xF7D, .category = .Top }, + .{ .code = 0xF7E, .category = .Top }, + .{ .code = 0x0F80, .category = .Top }, + .{ .code = 0xF82, .category = .Top }, + .{ .code = 0xF83, .category = .Top }, + .{ .code = 0xF86, .category = .Top }, + .{ .code = 0xF87, .category = .Top }, + .{ .code = 0x102D, .category = .Top }, + .{ .code = 0x102E, .category = .Top }, + .{ .code = 0x1032, .category = .Top }, + .{ .code = 0x1033, .category = .Top }, + .{ .code = 0x1034, .category = .Top }, + .{ .code = 0x1035, .category = .Top }, + .{ .code = 0x1036, .category = .Top }, + .{ .code = 0x103A, .category = .Top }, + .{ .code = 0x1071, .category = .Top }, + .{ .code = 0x1072, .category = .Top }, + .{ .code = 0x1073, .category = .Top }, + .{ .code = 0x1074, .category = .Top }, + .{ .code = 0x1085, .category = .Top }, + .{ .code = 0x1086, .category = .Top }, + .{ .code = 0x109D, .category = .Top }, + .{ .code = 0x1712, .category = .Top }, + .{ .code = 0x1732, .category = .Top }, + .{ .code = 0x1752, .category = .Top }, + .{ .code = 0x1772, .category = .Top }, + .{ .code = 0x17B7, .category = .Top }, + .{ .code = 0x17B8, .category = .Top }, + .{ .code = 0x17B9, .category = .Top }, + .{ .code = 0x17BA, .category = .Top }, + .{ .code = 0x17C6, .category = .Top }, + .{ .code = 0x17C9, .category = .Top }, + .{ .code = 0x17CA, .category = .Top }, + .{ .code = 0x17CB, .category = .Top }, + .{ .code = 0x17CC, .category = .Top }, + .{ .code = 0x17CD, .category = .Top }, + .{ .code = 0x17CE, .category = .Top }, + .{ .code = 0x17CF, .category = .Top }, + .{ .code = 0x17D0, .category = .Top }, + .{ .code = 0x17D1, .category = .Top }, + .{ .code = 0x17D3, .category = .Top }, + .{ .code = 0x17DD, .category = .Top }, + .{ .code = 0x1920, .category = .Top }, + .{ .code = 0x1921, .category = .Top }, + .{ .code = 0x1927, .category = .Top }, + .{ .code = 0x1928, .category = .Top }, + .{ .code = 0x193A, .category = .Top }, + .{ .code = 0x1A17, .category = .Top }, + .{ .code = 0x1A1B, .category = .Top }, + .{ .code = 0x1A58, .category = .Top }, + .{ .code = 0x1A59, .category = .Top }, + .{ .code = 0x1A5A, .category = .Top }, + .{ .code = 0x1A62, .category = .Top }, + .{ .code = 0x1A65, .category = .Top }, + .{ .code = 0x1A66, .category = .Top }, + .{ .code = 0x1A67, .category = .Top }, + .{ .code = 0x1A68, .category = .Top }, + .{ .code = 0x1A6B, .category = .Top }, + .{ .code = 0x1A73, .category = .Top }, + .{ .code = 0x1A74, .category = .Top }, + .{ .code = 0x1A75, .category = .Top }, + .{ .code = 0x1A76, .category = .Top }, + .{ .code = 0x1A77, .category = .Top }, + .{ .code = 0x1A78, .category = .Top }, + .{ .code = 0x1A79, .category = .Top }, + .{ .code = 0x1A7A, .category = .Top }, + .{ .code = 0x1A7B, .category = .Top }, + .{ .code = 0x1A7C, .category = .Top }, + .{ .code = 0x1B00, .category = .Top }, + .{ .code = 0x1B01, .category = .Top }, + .{ .code = 0x1B02, .category = .Top }, + .{ .code = 0x1B03, .category = .Top }, + .{ .code = 0x1B34, .category = .Top }, + .{ .code = 0x1B36, .category = .Top }, + .{ .code = 0x1B37, .category = .Top }, + .{ .code = 0x1B42, .category = .Top }, + .{ .code = 0x1B6B, .category = .Top }, + .{ .code = 0x1B6D, .category = .Top }, + .{ .code = 0x1B6E, .category = .Top }, + .{ .code = 0x1B6F, .category = .Top }, + .{ .code = 0x1B70, .category = .Top }, + .{ .code = 0x1B71, .category = .Top }, + .{ .code = 0x1B72, .category = .Top }, + .{ .code = 0x1B73, .category = .Top }, + .{ .code = 0x1B80, .category = .Top }, + .{ .code = 0x1B81, .category = .Top }, + .{ .code = 0x1BA4, .category = .Top }, + .{ .code = 0x1BA8, .category = .Top }, + .{ .code = 0x1BA9, .category = .Top }, + .{ .code = 0x1BE6, .category = .Top }, + .{ .code = 0x1BE8, .category = .Top }, + .{ .code = 0x1BE9, .category = .Top }, + .{ .code = 0x1BED, .category = .Top }, + .{ .code = 0x1BEF, .category = .Top }, + .{ .code = 0x1BF0, .category = .Top }, + .{ .code = 0x1BF1, .category = .Top }, + .{ .code = 0x1C2D, .category = .Top }, + .{ .code = 0x1C2E, .category = .Top }, + .{ .code = 0x1C2F, .category = .Top }, + .{ .code = 0x1C30, .category = .Top }, + .{ .code = 0x1C31, .category = .Top }, + .{ .code = 0x1C32, .category = .Top }, + .{ .code = 0x1C33, .category = .Top }, + .{ .code = 0x1C36, .category = .Top }, + .{ .code = 0x1CD0, .category = .Top }, + .{ .code = 0x1CD1, .category = .Top }, + .{ .code = 0x1CD2, .category = .Top }, + .{ .code = 0x1CDA, .category = .Top }, + .{ .code = 0x1CDB, .category = .Top }, + .{ .code = 0x1CE0, .category = .Top }, + .{ .code = 0x1CF4, .category = .Top }, + .{ .code = 0x1DFB, .category = .Top }, + .{ .code = 0x20F0, .category = .Top }, + .{ .code = 0xA802, .category = .Top }, + .{ .code = 0xA806, .category = .Top }, + .{ .code = 0xA80B, .category = .Top }, + .{ .code = 0xA826, .category = .Top }, + .{ .code = 0xA8C5, .category = .Top }, + .{ .code = 0xA8E0, .category = .Top }, + .{ .code = 0xA8E1, .category = .Top }, + .{ .code = 0xA8E2, .category = .Top }, + .{ .code = 0xA8E3, .category = .Top }, + .{ .code = 0xA8E4, .category = .Top }, + .{ .code = 0xA8E5, .category = .Top }, + .{ .code = 0xA8E6, .category = .Top }, + .{ .code = 0xA8E7, .category = .Top }, + .{ .code = 0xA8E8, .category = .Top }, + .{ .code = 0xA8E9, .category = .Top }, + .{ .code = 0xA8EA, .category = .Top }, + .{ .code = 0xA8EB, .category = .Top }, + .{ .code = 0xA8EC, .category = .Top }, + .{ .code = 0xA8ED, .category = .Top }, + .{ .code = 0xA8EE, .category = .Top }, + .{ .code = 0xA8EF, .category = .Top }, + .{ .code = 0xA8F0, .category = .Top }, + .{ .code = 0xA8F1, .category = .Top }, + .{ .code = 0xA8FF, .category = .Top }, + .{ .code = 0xA94A, .category = .Top }, + .{ .code = 0xA94F, .category = .Top }, + .{ .code = 0xA950, .category = .Top }, + .{ .code = 0xA951, .category = .Top }, + .{ .code = 0xA980, .category = .Top }, + .{ .code = 0xA981, .category = .Top }, + .{ .code = 0xA982, .category = .Top }, + .{ .code = 0xA9B3, .category = .Top }, + .{ .code = 0xA9B6, .category = .Top }, + .{ .code = 0xA9B7, .category = .Top }, + .{ .code = 0xA9BC, .category = .Top }, + .{ .code = 0xA9E5, .category = .Top }, + .{ .code = 0xAA29, .category = .Top }, + .{ .code = 0xAA2A, .category = .Top }, + .{ .code = 0xAA2B, .category = .Top }, + .{ .code = 0xAA2C, .category = .Top }, + .{ .code = 0xAA2E, .category = .Top }, + .{ .code = 0xAA31, .category = .Top }, + .{ .code = 0xAA43, .category = .Top }, + .{ .code = 0xAA4C, .category = .Top }, + .{ .code = 0xAA7C, .category = .Top }, + .{ .code = 0xAAB0, .category = .Top }, + .{ .code = 0xAAB2, .category = .Top }, + .{ .code = 0xAAB3, .category = .Top }, + .{ .code = 0xAAB7, .category = .Top }, + .{ .code = 0xAAB8, .category = .Top }, + .{ .code = 0xAABE, .category = .Top }, + .{ .code = 0xAABF, .category = .Top }, + .{ .code = 0xAAC1, .category = .Top }, + .{ .code = 0xAAED, .category = .Top }, + .{ .code = 0xABE5, .category = .Top }, + .{ .code = 0x10A05, .category = .Top }, + .{ .code = 0x10A0F, .category = .Top }, + .{ .code = 0x10A38, .category = .Top }, + .{ .code = 0x11001, .category = .Top }, + .{ .code = 0x11038, .category = .Top }, + .{ .code = 0x11039, .category = .Top }, + .{ .code = 0x1103A, .category = .Top }, + .{ .code = 0x1103B, .category = .Top }, + .{ .code = 0x11042, .category = .Top }, + .{ .code = 0x11043, .category = .Top }, + .{ .code = 0x11044, .category = .Top }, + .{ .code = 0x11045, .category = .Top }, + .{ .code = 0x11046, .category = .Top }, + .{ .code = 0x11080, .category = .Top }, + .{ .code = 0x11081, .category = .Top }, + .{ .code = 0x110B5, .category = .Top }, + .{ .code = 0x110B6, .category = .Top }, + .{ .code = 0x11100, .category = .Top }, + .{ .code = 0x11101, .category = .Top }, + .{ .code = 0x11102, .category = .Top }, + .{ .code = 0x11127, .category = .Top }, + .{ .code = 0x11128, .category = .Top }, + .{ .code = 0x11129, .category = .Top }, + .{ .code = 0x1112D, .category = .Top }, + .{ .code = 0x11130, .category = .Top }, + .{ .code = 0x11134, .category = .Top }, + .{ .code = 0x11180, .category = .Top }, + .{ .code = 0x11181, .category = .Top }, + .{ .code = 0x111BC, .category = .Top }, + .{ .code = 0x111BD, .category = .Top }, + .{ .code = 0x111BE, .category = .Top }, + .{ .code = 0x111C2, .category = .Top }, + .{ .code = 0x111C3, .category = .Top }, + .{ .code = 0x111CB, .category = .Top }, + .{ .code = 0x111CF, .category = .Top }, + .{ .code = 0x11230, .category = .Top }, + .{ .code = 0x11231, .category = .Top }, + .{ .code = 0x11234, .category = .Top }, + .{ .code = 0x11236, .category = .Top }, + .{ .code = 0x11237, .category = .Top }, + .{ .code = 0x1123E, .category = .Top }, + .{ .code = 0x112DF, .category = .Top }, + .{ .code = 0x112E5, .category = .Top }, + .{ .code = 0x112E6, .category = .Top }, + .{ .code = 0x112E7, .category = .Top }, + .{ .code = 0x112E8, .category = .Top }, + .{ .code = 0x11300, .category = .Top }, + .{ .code = 0x11301, .category = .Top }, + .{ .code = 0x11340, .category = .Top }, + .{ .code = 0x11366, .category = .Top }, + .{ .code = 0x11367, .category = .Top }, + .{ .code = 0x11368, .category = .Top }, + .{ .code = 0x11369, .category = .Top }, + .{ .code = 0x1136A, .category = .Top }, + .{ .code = 0x1136B, .category = .Top }, + .{ .code = 0x1136C, .category = .Top }, + .{ .code = 0x11370, .category = .Top }, + .{ .code = 0x11371, .category = .Top }, + .{ .code = 0x11372, .category = .Top }, + .{ .code = 0x11373, .category = .Top }, + .{ .code = 0x11374, .category = .Top }, + .{ .code = 0x1143E, .category = .Top }, + .{ .code = 0x1143F, .category = .Top }, + .{ .code = 0x11443, .category = .Top }, + .{ .code = 0x11444, .category = .Top }, + .{ .code = 0x1145E, .category = .Top }, + .{ .code = 0x114BA, .category = .Top }, + .{ .code = 0x114BF, .category = .Top }, + .{ .code = 0x114C0, .category = .Top }, + .{ .code = 0x115BC, .category = .Top }, + .{ .code = 0x115BD, .category = .Top }, + .{ .code = 0x11639, .category = .Top }, + .{ .code = 0x1163A, .category = .Top }, + .{ .code = 0x1163D, .category = .Top }, + .{ .code = 0x11640, .category = .Top }, + .{ .code = 0x116AB, .category = .Top }, + .{ .code = 0x116AD, .category = .Top }, + .{ .code = 0x116B2, .category = .Top }, + .{ .code = 0x116B3, .category = .Top }, + .{ .code = 0x116B4, .category = .Top }, + .{ .code = 0x116B5, .category = .Top }, + .{ .code = 0x1171F, .category = .Top }, + .{ .code = 0x11722, .category = .Top }, + .{ .code = 0x11723, .category = .Top }, + .{ .code = 0x11727, .category = .Top }, + .{ .code = 0x11729, .category = .Top }, + .{ .code = 0x1172A, .category = .Top }, + .{ .code = 0x1172B, .category = .Top }, + .{ .code = 0x11833, .category = .Top }, + .{ .code = 0x11834, .category = .Top }, + .{ .code = 0x11835, .category = .Top }, + .{ .code = 0x11836, .category = .Top }, + .{ .code = 0x11837, .category = .Top }, + .{ .code = 0x1193B, .category = .Top }, + .{ .code = 0x1193C, .category = .Top }, + .{ .code = 0x1193F, .category = .Top }, + .{ .code = 0x11941, .category = .Top }, + .{ .code = 0x119DA, .category = .Top }, + .{ .code = 0x119DB, .category = .Top }, + .{ .code = 0x11A01, .category = .Top }, + .{ .code = 0x11A04, .category = .Top }, + .{ .code = 0x11A05, .category = .Top }, + .{ .code = 0x11A06, .category = .Top }, + .{ .code = 0x11A07, .category = .Top }, + .{ .code = 0x11A08, .category = .Top }, + .{ .code = 0x11A09, .category = .Top }, + .{ .code = 0x11A35, .category = .Top }, + .{ .code = 0x11A36, .category = .Top }, + .{ .code = 0x11A37, .category = .Top }, + .{ .code = 0x11A38, .category = .Top }, + .{ .code = 0x11A3A, .category = .Top }, + .{ .code = 0x11A51, .category = .Top }, + .{ .code = 0x11A54, .category = .Top }, + .{ .code = 0x11A55, .category = .Top }, + .{ .code = 0x11A56, .category = .Top }, + .{ .code = 0x11A84, .category = .Top }, + .{ .code = 0x11A85, .category = .Top }, + .{ .code = 0x11A86, .category = .Top }, + .{ .code = 0x11A87, .category = .Top }, + .{ .code = 0x11A88, .category = .Top }, + .{ .code = 0x11A89, .category = .Top }, + .{ .code = 0x11A96, .category = .Top }, + .{ .code = 0x11A98, .category = .Top }, + .{ .code = 0x11C30, .category = .Top }, + .{ .code = 0x11C31, .category = .Top }, + .{ .code = 0x11C38, .category = .Top }, + .{ .code = 0x11C39, .category = .Top }, + .{ .code = 0x11C3A, .category = .Top }, + .{ .code = 0x11C3B, .category = .Top }, + .{ .code = 0x11C3C, .category = .Top }, + .{ .code = 0x11C3D, .category = .Top }, + .{ .code = 0x11CB3, .category = .Top }, + .{ .code = 0x11CB5, .category = .Top }, + .{ .code = 0x11CB6, .category = .Top }, + .{ .code = 0x11D31, .category = .Top }, + .{ .code = 0x11D32, .category = .Top }, + .{ .code = 0x11D33, .category = .Top }, + .{ .code = 0x11D34, .category = .Top }, + .{ .code = 0x11D35, .category = .Top }, + .{ .code = 0x11D3A, .category = .Top }, + .{ .code = 0x11D3C, .category = .Top }, + .{ .code = 0x11D3D, .category = .Top }, + .{ .code = 0x11D3F, .category = .Top }, + .{ .code = 0x11D40, .category = .Top }, + .{ .code = 0x11D41, .category = .Top }, + .{ .code = 0x11D43, .category = .Top }, + .{ .code = 0x11D90, .category = .Top }, + .{ .code = 0x11D91, .category = .Top }, + .{ .code = 0x11D95, .category = .Top }, + .{ .code = 0x11EF3, .category = .Top }, + .{ .code = 0x093C, .category = .Bottom }, + .{ .code = 0x941, .category = .Bottom }, + .{ .code = 0x942, .category = .Bottom }, + .{ .code = 0x943, .category = .Bottom }, + .{ .code = 0x944, .category = .Bottom }, + .{ .code = 0x094D, .category = .Bottom }, + .{ .code = 0x0952, .category = .Bottom }, + .{ .code = 0x956, .category = .Bottom }, + .{ .code = 0x957, .category = .Bottom }, + .{ .code = 0x962, .category = .Bottom }, + .{ .code = 0x963, .category = .Bottom }, + .{ .code = 0x09BC, .category = .Bottom }, + .{ .code = 0x9C1, .category = .Bottom }, + .{ .code = 0x9C2, .category = .Bottom }, + .{ .code = 0x9C3, .category = .Bottom }, + .{ .code = 0x9C4, .category = .Bottom }, + .{ .code = 0x09CD, .category = .Bottom }, + .{ .code = 0x9E2, .category = .Bottom }, + .{ .code = 0x9E3, .category = .Bottom }, + .{ .code = 0x0A3C, .category = .Bottom }, + .{ .code = 0xA41, .category = .Bottom }, + .{ .code = 0xA42, .category = .Bottom }, + .{ .code = 0x0A4D, .category = .Bottom }, + .{ .code = 0x0A51, .category = .Bottom }, + .{ .code = 0x0A75, .category = .Bottom }, + .{ .code = 0x0ABC, .category = .Bottom }, + .{ .code = 0xAC1, .category = .Bottom }, + .{ .code = 0xAC2, .category = .Bottom }, + .{ .code = 0xAC3, .category = .Bottom }, + .{ .code = 0xAC4, .category = .Bottom }, + .{ .code = 0x0ACD, .category = .Bottom }, + .{ .code = 0xAE2, .category = .Bottom }, + .{ .code = 0xAE3, .category = .Bottom }, + .{ .code = 0x0B3C, .category = .Bottom }, + .{ .code = 0xB41, .category = .Bottom }, + .{ .code = 0xB42, .category = .Bottom }, + .{ .code = 0xB43, .category = .Bottom }, + .{ .code = 0xB44, .category = .Bottom }, + .{ .code = 0x0B4D, .category = .Bottom }, + .{ .code = 0xB62, .category = .Bottom }, + .{ .code = 0xB63, .category = .Bottom }, + .{ .code = 0x0C56, .category = .Bottom }, + .{ .code = 0xC62, .category = .Bottom }, + .{ .code = 0xC63, .category = .Bottom }, + .{ .code = 0x0CBC, .category = .Bottom }, + .{ .code = 0xCE2, .category = .Bottom }, + .{ .code = 0xCE3, .category = .Bottom }, + .{ .code = 0xD43, .category = .Bottom }, + .{ .code = 0xD44, .category = .Bottom }, + .{ .code = 0xD62, .category = .Bottom }, + .{ .code = 0xD63, .category = .Bottom }, + .{ .code = 0x0DD4, .category = .Bottom }, + .{ .code = 0x0DD6, .category = .Bottom }, + .{ .code = 0xE38, .category = .Bottom }, + .{ .code = 0xE39, .category = .Bottom }, + .{ .code = 0xE3A, .category = .Bottom }, + .{ .code = 0xEB8, .category = .Bottom }, + .{ .code = 0xEB9, .category = .Bottom }, + .{ .code = 0xEBA, .category = .Bottom }, + .{ .code = 0x0EBC, .category = .Bottom }, + .{ .code = 0xF18, .category = .Bottom }, + .{ .code = 0xF19, .category = .Bottom }, + .{ .code = 0x0F35, .category = .Bottom }, + .{ .code = 0x0F37, .category = .Bottom }, + .{ .code = 0x0F71, .category = .Bottom }, + .{ .code = 0xF74, .category = .Bottom }, + .{ .code = 0xF75, .category = .Bottom }, + .{ .code = 0x0F84, .category = .Bottom }, + .{ .code = 0xF8D, .category = .Bottom }, + .{ .code = 0xF8E, .category = .Bottom }, + .{ .code = 0xF8F, .category = .Bottom }, + .{ .code = 0xF90, .category = .Bottom }, + .{ .code = 0xF91, .category = .Bottom }, + .{ .code = 0xF92, .category = .Bottom }, + .{ .code = 0xF93, .category = .Bottom }, + .{ .code = 0xF94, .category = .Bottom }, + .{ .code = 0xF95, .category = .Bottom }, + .{ .code = 0xF96, .category = .Bottom }, + .{ .code = 0xF97, .category = .Bottom }, + .{ .code = 0xF99, .category = .Bottom }, + .{ .code = 0xF9A, .category = .Bottom }, + .{ .code = 0xF9B, .category = .Bottom }, + .{ .code = 0xF9C, .category = .Bottom }, + .{ .code = 0xF9D, .category = .Bottom }, + .{ .code = 0xF9E, .category = .Bottom }, + .{ .code = 0xF9F, .category = .Bottom }, + .{ .code = 0xFA0, .category = .Bottom }, + .{ .code = 0xFA1, .category = .Bottom }, + .{ .code = 0xFA2, .category = .Bottom }, + .{ .code = 0xFA3, .category = .Bottom }, + .{ .code = 0xFA4, .category = .Bottom }, + .{ .code = 0xFA5, .category = .Bottom }, + .{ .code = 0xFA6, .category = .Bottom }, + .{ .code = 0xFA7, .category = .Bottom }, + .{ .code = 0xFA8, .category = .Bottom }, + .{ .code = 0xFA9, .category = .Bottom }, + .{ .code = 0xFAA, .category = .Bottom }, + .{ .code = 0xFAB, .category = .Bottom }, + .{ .code = 0xFAC, .category = .Bottom }, + .{ .code = 0xFAD, .category = .Bottom }, + .{ .code = 0xFAE, .category = .Bottom }, + .{ .code = 0xFAF, .category = .Bottom }, + .{ .code = 0xFB0, .category = .Bottom }, + .{ .code = 0xFB1, .category = .Bottom }, + .{ .code = 0xFB2, .category = .Bottom }, + .{ .code = 0xFB3, .category = .Bottom }, + .{ .code = 0xFB4, .category = .Bottom }, + .{ .code = 0xFB5, .category = .Bottom }, + .{ .code = 0xFB6, .category = .Bottom }, + .{ .code = 0xFB7, .category = .Bottom }, + .{ .code = 0xFB8, .category = .Bottom }, + .{ .code = 0xFB9, .category = .Bottom }, + .{ .code = 0xFBA, .category = .Bottom }, + .{ .code = 0xFBB, .category = .Bottom }, + .{ .code = 0xFBC, .category = .Bottom }, + .{ .code = 0x0FC6, .category = .Bottom }, + .{ .code = 0x102F, .category = .Bottom }, + .{ .code = 0x1030, .category = .Bottom }, + .{ .code = 0x1037, .category = .Bottom }, + .{ .code = 0x103D, .category = .Bottom }, + .{ .code = 0x103E, .category = .Bottom }, + .{ .code = 0x1058, .category = .Bottom }, + .{ .code = 0x1059, .category = .Bottom }, + .{ .code = 0x105E, .category = .Bottom }, + .{ .code = 0x105F, .category = .Bottom }, + .{ .code = 0x1060, .category = .Bottom }, + .{ .code = 0x1082, .category = .Bottom }, + .{ .code = 0x108D, .category = .Bottom }, + .{ .code = 0x1713, .category = .Bottom }, + .{ .code = 0x1714, .category = .Bottom }, + .{ .code = 0x1733, .category = .Bottom }, + .{ .code = 0x1734, .category = .Bottom }, + .{ .code = 0x1753, .category = .Bottom }, + .{ .code = 0x1773, .category = .Bottom }, + .{ .code = 0x17BB, .category = .Bottom }, + .{ .code = 0x17BC, .category = .Bottom }, + .{ .code = 0x17BD, .category = .Bottom }, + .{ .code = 0x1922, .category = .Bottom }, + .{ .code = 0x1932, .category = .Bottom }, + .{ .code = 0x1939, .category = .Bottom }, + .{ .code = 0x193B, .category = .Bottom }, + .{ .code = 0x1A18, .category = .Bottom }, + .{ .code = 0x1A56, .category = .Bottom }, + .{ .code = 0x1A5B, .category = .Bottom }, + .{ .code = 0x1A5C, .category = .Bottom }, + .{ .code = 0x1A5D, .category = .Bottom }, + .{ .code = 0x1A5E, .category = .Bottom }, + .{ .code = 0x1A69, .category = .Bottom }, + .{ .code = 0x1A6A, .category = .Bottom }, + .{ .code = 0x1A6C, .category = .Bottom }, + .{ .code = 0x1A7F, .category = .Bottom }, + .{ .code = 0x1B38, .category = .Bottom }, + .{ .code = 0x1B39, .category = .Bottom }, + .{ .code = 0x1B3A, .category = .Bottom }, + .{ .code = 0x1B6C, .category = .Bottom }, + .{ .code = 0x1BA2, .category = .Bottom }, + .{ .code = 0x1BA3, .category = .Bottom }, + .{ .code = 0x1BA5, .category = .Bottom }, + .{ .code = 0x1BAC, .category = .Bottom }, + .{ .code = 0x1BAD, .category = .Bottom }, + .{ .code = 0x1C2C, .category = .Bottom }, + .{ .code = 0x1C37, .category = .Bottom }, + .{ .code = 0x1CD5, .category = .Bottom }, + .{ .code = 0x1CD6, .category = .Bottom }, + .{ .code = 0x1CD7, .category = .Bottom }, + .{ .code = 0x1CD8, .category = .Bottom }, + .{ .code = 0x1CD9, .category = .Bottom }, + .{ .code = 0x1CDC, .category = .Bottom }, + .{ .code = 0x1CDD, .category = .Bottom }, + .{ .code = 0x1CDE, .category = .Bottom }, + .{ .code = 0x1CDF, .category = .Bottom }, + .{ .code = 0x1CED, .category = .Bottom }, + .{ .code = 0xA825, .category = .Bottom }, + .{ .code = 0xA82C, .category = .Bottom }, + .{ .code = 0xA8C4, .category = .Bottom }, + .{ .code = 0xA92B, .category = .Bottom }, + .{ .code = 0xA92C, .category = .Bottom }, + .{ .code = 0xA92D, .category = .Bottom }, + .{ .code = 0xA947, .category = .Bottom }, + .{ .code = 0xA948, .category = .Bottom }, + .{ .code = 0xA949, .category = .Bottom }, + .{ .code = 0xA94B, .category = .Bottom }, + .{ .code = 0xA94C, .category = .Bottom }, + .{ .code = 0xA94D, .category = .Bottom }, + .{ .code = 0xA94E, .category = .Bottom }, + .{ .code = 0xA9B8, .category = .Bottom }, + .{ .code = 0xA9B9, .category = .Bottom }, + .{ .code = 0xA9BD, .category = .Bottom }, + .{ .code = 0xAA2D, .category = .Bottom }, + .{ .code = 0xAA32, .category = .Bottom }, + .{ .code = 0xAA35, .category = .Bottom }, + .{ .code = 0xAA36, .category = .Bottom }, + .{ .code = 0xAAB4, .category = .Bottom }, + .{ .code = 0xAAEC, .category = .Bottom }, + .{ .code = 0xABE8, .category = .Bottom }, + .{ .code = 0xABED, .category = .Bottom }, + .{ .code = 0x10A02, .category = .Bottom }, + .{ .code = 0x10A03, .category = .Bottom }, + .{ .code = 0x10A0C, .category = .Bottom }, + .{ .code = 0x10A0D, .category = .Bottom }, + .{ .code = 0x10A0E, .category = .Bottom }, + .{ .code = 0x10A39, .category = .Bottom }, + .{ .code = 0x10A3A, .category = .Bottom }, + .{ .code = 0x1103C, .category = .Bottom }, + .{ .code = 0x1103D, .category = .Bottom }, + .{ .code = 0x1103E, .category = .Bottom }, + .{ .code = 0x1103F, .category = .Bottom }, + .{ .code = 0x11040, .category = .Bottom }, + .{ .code = 0x11041, .category = .Bottom }, + .{ .code = 0x110B3, .category = .Bottom }, + .{ .code = 0x110B4, .category = .Bottom }, + .{ .code = 0x110B9, .category = .Bottom }, + .{ .code = 0x110BA, .category = .Bottom }, + .{ .code = 0x1112A, .category = .Bottom }, + .{ .code = 0x1112B, .category = .Bottom }, + .{ .code = 0x11131, .category = .Bottom }, + .{ .code = 0x11132, .category = .Bottom }, + .{ .code = 0x11173, .category = .Bottom }, + .{ .code = 0x111B6, .category = .Bottom }, + .{ .code = 0x111B7, .category = .Bottom }, + .{ .code = 0x111B8, .category = .Bottom }, + .{ .code = 0x111B9, .category = .Bottom }, + .{ .code = 0x111BA, .category = .Bottom }, + .{ .code = 0x111BB, .category = .Bottom }, + .{ .code = 0x111C9, .category = .Bottom }, + .{ .code = 0x111CA, .category = .Bottom }, + .{ .code = 0x111CC, .category = .Bottom }, + .{ .code = 0x1122F, .category = .Bottom }, + .{ .code = 0x112E3, .category = .Bottom }, + .{ .code = 0x112E4, .category = .Bottom }, + .{ .code = 0x112E9, .category = .Bottom }, + .{ .code = 0x112EA, .category = .Bottom }, + .{ .code = 0x1133B, .category = .Bottom }, + .{ .code = 0x1133C, .category = .Bottom }, + .{ .code = 0x11438, .category = .Bottom }, + .{ .code = 0x11439, .category = .Bottom }, + .{ .code = 0x1143A, .category = .Bottom }, + .{ .code = 0x1143B, .category = .Bottom }, + .{ .code = 0x1143C, .category = .Bottom }, + .{ .code = 0x1143D, .category = .Bottom }, + .{ .code = 0x11442, .category = .Bottom }, + .{ .code = 0x11446, .category = .Bottom }, + .{ .code = 0x114B3, .category = .Bottom }, + .{ .code = 0x114B4, .category = .Bottom }, + .{ .code = 0x114B5, .category = .Bottom }, + .{ .code = 0x114B6, .category = .Bottom }, + .{ .code = 0x114B7, .category = .Bottom }, + .{ .code = 0x114B8, .category = .Bottom }, + .{ .code = 0x114C2, .category = .Bottom }, + .{ .code = 0x114C3, .category = .Bottom }, + .{ .code = 0x115B2, .category = .Bottom }, + .{ .code = 0x115B3, .category = .Bottom }, + .{ .code = 0x115B4, .category = .Bottom }, + .{ .code = 0x115B5, .category = .Bottom }, + .{ .code = 0x115BF, .category = .Bottom }, + .{ .code = 0x115C0, .category = .Bottom }, + .{ .code = 0x115DC, .category = .Bottom }, + .{ .code = 0x115DD, .category = .Bottom }, + .{ .code = 0x11633, .category = .Bottom }, + .{ .code = 0x11634, .category = .Bottom }, + .{ .code = 0x11635, .category = .Bottom }, + .{ .code = 0x11636, .category = .Bottom }, + .{ .code = 0x11637, .category = .Bottom }, + .{ .code = 0x11638, .category = .Bottom }, + .{ .code = 0x1163F, .category = .Bottom }, + .{ .code = 0x116B0, .category = .Bottom }, + .{ .code = 0x116B1, .category = .Bottom }, + .{ .code = 0x116B7, .category = .Bottom }, + .{ .code = 0x1171D, .category = .Bottom }, + .{ .code = 0x11724, .category = .Bottom }, + .{ .code = 0x11725, .category = .Bottom }, + .{ .code = 0x11728, .category = .Bottom }, + .{ .code = 0x1182F, .category = .Bottom }, + .{ .code = 0x11830, .category = .Bottom }, + .{ .code = 0x11831, .category = .Bottom }, + .{ .code = 0x11832, .category = .Bottom }, + .{ .code = 0x11839, .category = .Bottom }, + .{ .code = 0x1183A, .category = .Bottom }, + .{ .code = 0x11943, .category = .Bottom }, + .{ .code = 0x119D4, .category = .Bottom }, + .{ .code = 0x119D5, .category = .Bottom }, + .{ .code = 0x119D6, .category = .Bottom }, + .{ .code = 0x119D7, .category = .Bottom }, + .{ .code = 0x119E0, .category = .Bottom }, + .{ .code = 0x11A02, .category = .Bottom }, + .{ .code = 0x11A03, .category = .Bottom }, + .{ .code = 0x11A0A, .category = .Bottom }, + .{ .code = 0x11A33, .category = .Bottom }, + .{ .code = 0x11A34, .category = .Bottom }, + .{ .code = 0x11A3B, .category = .Bottom }, + .{ .code = 0x11A3C, .category = .Bottom }, + .{ .code = 0x11A3D, .category = .Bottom }, + .{ .code = 0x11A3E, .category = .Bottom }, + .{ .code = 0x11A52, .category = .Bottom }, + .{ .code = 0x11A53, .category = .Bottom }, + .{ .code = 0x11A59, .category = .Bottom }, + .{ .code = 0x11A5A, .category = .Bottom }, + .{ .code = 0x11A5B, .category = .Bottom }, + .{ .code = 0x11A8A, .category = .Bottom }, + .{ .code = 0x11A8B, .category = .Bottom }, + .{ .code = 0x11A8C, .category = .Bottom }, + .{ .code = 0x11A8D, .category = .Bottom }, + .{ .code = 0x11A8E, .category = .Bottom }, + .{ .code = 0x11A8F, .category = .Bottom }, + .{ .code = 0x11A90, .category = .Bottom }, + .{ .code = 0x11A91, .category = .Bottom }, + .{ .code = 0x11A92, .category = .Bottom }, + .{ .code = 0x11A93, .category = .Bottom }, + .{ .code = 0x11A94, .category = .Bottom }, + .{ .code = 0x11A95, .category = .Bottom }, + .{ .code = 0x11C32, .category = .Bottom }, + .{ .code = 0x11C33, .category = .Bottom }, + .{ .code = 0x11C34, .category = .Bottom }, + .{ .code = 0x11C35, .category = .Bottom }, + .{ .code = 0x11C36, .category = .Bottom }, + .{ .code = 0x11C3F, .category = .Bottom }, + .{ .code = 0x11C92, .category = .Bottom }, + .{ .code = 0x11C93, .category = .Bottom }, + .{ .code = 0x11C94, .category = .Bottom }, + .{ .code = 0x11C95, .category = .Bottom }, + .{ .code = 0x11C96, .category = .Bottom }, + .{ .code = 0x11C97, .category = .Bottom }, + .{ .code = 0x11C98, .category = .Bottom }, + .{ .code = 0x11C99, .category = .Bottom }, + .{ .code = 0x11C9A, .category = .Bottom }, + .{ .code = 0x11C9B, .category = .Bottom }, + .{ .code = 0x11C9C, .category = .Bottom }, + .{ .code = 0x11C9D, .category = .Bottom }, + .{ .code = 0x11C9E, .category = .Bottom }, + .{ .code = 0x11C9F, .category = .Bottom }, + .{ .code = 0x11CA0, .category = .Bottom }, + .{ .code = 0x11CA1, .category = .Bottom }, + .{ .code = 0x11CA2, .category = .Bottom }, + .{ .code = 0x11CA3, .category = .Bottom }, + .{ .code = 0x11CA4, .category = .Bottom }, + .{ .code = 0x11CA5, .category = .Bottom }, + .{ .code = 0x11CA6, .category = .Bottom }, + .{ .code = 0x11CA7, .category = .Bottom }, + .{ .code = 0x11CAA, .category = .Bottom }, + .{ .code = 0x11CAB, .category = .Bottom }, + .{ .code = 0x11CAC, .category = .Bottom }, + .{ .code = 0x11CAD, .category = .Bottom }, + .{ .code = 0x11CAE, .category = .Bottom }, + .{ .code = 0x11CAF, .category = .Bottom }, + .{ .code = 0x11CB0, .category = .Bottom }, + .{ .code = 0x11CB2, .category = .Bottom }, + .{ .code = 0x11D36, .category = .Bottom }, + .{ .code = 0x11D42, .category = .Bottom }, + .{ .code = 0x11D44, .category = .Bottom }, + .{ .code = 0x11D47, .category = .Bottom }, + .{ .code = 0x11EF4, .category = .Bottom }, + .{ .code = 0x0C48, .category = .Top_And_Bottom }, + .{ .code = 0x0F73, .category = .Top_And_Bottom }, + .{ .code = 0xF76, .category = .Top_And_Bottom }, + .{ .code = 0xF77, .category = .Top_And_Bottom }, + .{ .code = 0xF78, .category = .Top_And_Bottom }, + .{ .code = 0xF79, .category = .Top_And_Bottom }, + .{ .code = 0x0F81, .category = .Top_And_Bottom }, + .{ .code = 0x1B3C, .category = .Top_And_Bottom }, + .{ .code = 0x1112E, .category = .Top_And_Bottom }, + .{ .code = 0x1112F, .category = .Top_And_Bottom }, + .{ .code = 0x0AC9, .category = .Top_And_Right }, + .{ .code = 0x0B57, .category = .Top_And_Right }, + .{ .code = 0x0CC0, .category = .Top_And_Right }, + .{ .code = 0xCC7, .category = .Top_And_Right }, + .{ .code = 0xCC8, .category = .Top_And_Right }, + .{ .code = 0xCCA, .category = .Top_And_Right }, + .{ .code = 0xCCB, .category = .Top_And_Right }, + .{ .code = 0x1925, .category = .Top_And_Right }, + .{ .code = 0x1926, .category = .Top_And_Right }, + .{ .code = 0x1B43, .category = .Top_And_Right }, + .{ .code = 0x111BF, .category = .Top_And_Right }, + .{ .code = 0x11232, .category = .Top_And_Right }, + .{ .code = 0x11233, .category = .Top_And_Right }, + .{ .code = 0x0B48, .category = .Top_And_Left }, + .{ .code = 0x0DDA, .category = .Top_And_Left }, + .{ .code = 0x17BE, .category = .Top_And_Left }, + .{ .code = 0x1C29, .category = .Top_And_Left }, + .{ .code = 0x114BB, .category = .Top_And_Left }, + .{ .code = 0x115B9, .category = .Top_And_Left }, + .{ .code = 0x0B4C, .category = .Top_And_Left_And_Right }, + .{ .code = 0x0DDD, .category = .Top_And_Left_And_Right }, + .{ .code = 0x17BF, .category = .Top_And_Left_And_Right }, + .{ .code = 0x115BB, .category = .Top_And_Left_And_Right }, + .{ .code = 0x1B3B, .category = .Bottom_And_Right }, + .{ .code = 0xA9BE, .category = .Bottom_And_Right }, + .{ .code = 0xA9C0, .category = .Bottom_And_Right }, + .{ .code = 0x11942, .category = .Bottom_And_Right }, + .{ .code = 0xA9BF, .category = .Bottom_And_Left }, + .{ .code = 0x1B3D, .category = .Top_And_Bottom_And_Right }, + .{ .code = 0x103C, .category = .Top_And_Bottom_And_Left }, + .{ .code = 0x1171E, .category = .Top_And_Bottom_And_Left }, + .{ .code = 0x1CD4, .category = .Overstruck }, + .{ .code = 0x1CE2, .category = .Overstruck }, + .{ .code = 0x1CE3, .category = .Overstruck }, + .{ .code = 0x1CE4, .category = .Overstruck }, + .{ .code = 0x1CE5, .category = .Overstruck }, + .{ .code = 0x1CE6, .category = .Overstruck }, + .{ .code = 0x1CE7, .category = .Overstruck }, + .{ .code = 0x1CE8, .category = .Overstruck }, + .{ .code = 0x10A01, .category = .Overstruck }, + .{ .code = 0x10A06, .category = .Overstruck }, +}; diff --git a/src/lib.zig b/src/lib.zig index 8f934e0fa26c0f8d5c8ce57e3690550d970864f7..a137934985540d9e18152db6e1db01fda0fd8497 100644 --- a/src/lib.zig +++ b/src/lib.zig @@ -15,3 +15,4 @@ pub const emoji_sources = @import("./emoji_sources.zig"); pub const equivalent_unified_ideograph = @import("./equivalent_unified_ideograph.zig"); pub const hangul_syllable_type = @import("./hangul_syllable_type.zig"); // Index.txt +pub const indic_positional_category = @import("./indic_positional_category.zig"); diff --git a/src/main.zig b/src/main.zig index 70a0826ed5da70fe5dabbc1aa72870bc1568beb4..ec4338fa5eaf88d7d0386e0b46d621b6ac2e6ead 100644 --- a/src/main.zig +++ b/src/main.zig @@ -19,6 +19,7 @@ pub fn main() !void { ucd.emoji_sources, ucd.equivalent_unified_ideograph, ucd.hangul_syllable_type, + ucd.indic_positional_category, }; inline for (data) |b| { -- 2.54.0