diff --git a/NStack/unicode/.gitignore b/NStack/unicode/.gitignore index b3f10c3..552a87e 100644 --- a/NStack/unicode/.gitignore +++ b/NStack/unicode/.gitignore @@ -1,3 +1,4 @@ maketables +maketables.exe UnicodeData.txt CaseFolding.txt \ No newline at end of file diff --git a/NStack/unicode/.vscode/tasks.json b/NStack/unicode/.vscode/tasks.json new file mode 100644 index 0000000..1bc341e --- /dev/null +++ b/NStack/unicode/.vscode/tasks.json @@ -0,0 +1,17 @@ +{ + // See https://go.microsoft.com/fwlink/?LinkId=733558 + // for the documentation about the tasks.json format + "version": "2.0.0", + "tasks": [ + { + "label": "Run make", + "type": "shell", + "command": "make tables", + "problemMatcher": [], + "group": { + "kind": "build", + "isDefault": true + } + } + ] +} \ No newline at end of file diff --git a/NStack/unicode/Makefile b/NStack/unicode/Makefile index 208000a..a4d5e85 100644 --- a/NStack/unicode/Makefile +++ b/NStack/unicode/Makefile @@ -1,11 +1,17 @@ -Tables.cs: UnicodeData.txt maketables.go CaseFolding.txt Makefile maketables - ./maketables --tables=all > Tables.cs +ifeq ($(OS),Windows_NT) + EXEC := maketables --tables=all --url=https://www.unicode.org/Public/15.0.0/ucd/ > Tables.cs +else + EXEC := ./maketables --tables=all --url=https://www.unicode.org/Public/15.0.0/ucd/ > Tables.cs +endif -UnicodeData.txt: - curl -O http://www.unicode.org/Public/14.0.0/ucd/UnicodeData.txt +tables: unicodeData caseFolding maketables + $(EXEC) -CaseFolding.txt: - curl -O http://www.unicode.org/Public/14.0.0/ucd/CaseFolding.txt +unicodeData: + curl -O https://www.unicode.org/Public/15.0.0/ucd/UnicodeData.txt + +caseFolding: + curl -O https://www.unicode.org/Public/15.0.0/ucd/CaseFolding.txt maketables: maketables.go go build maketables.go diff --git a/NStack/unicode/README.md b/NStack/unicode/README.md index 9505e1b..e2198fa 100644 --- a/NStack/unicode/README.md +++ b/NStack/unicode/README.md @@ -1,5 +1,5 @@ To regenerate the Tables.cs file from the reference unicode files, execute the Makefile -which will dump the updated tables. +with the command `make tables`, which will dump the updated tables: There is some work to be done to dump the tables as a binary blob, without going through the various data structures that we have now, it would diff --git a/NStack/unicode/Tables.cs b/NStack/unicode/Tables.cs index 408b59c..75b936a 100644 --- a/NStack/unicode/Tables.cs +++ b/NStack/unicode/Tables.cs @@ -3,7 +3,7 @@ // license that can be found in the LICENSE file. // Generated by running -// maketables --tables=all --data=http://www.unicode.org/Public/14.0.0/ucd/UnicodeData.txt --casefolding=http://www.unicode.org/Public/14.0.0/ucd/CaseFolding.txt +// maketables --tables=all --data=https://www.unicode.org/Public/15.0.0/ucd/UnicodeData.txt --casefolding=https://www.unicode.org/Public/15.0.0/ucd/CaseFolding.txt // DO NOT EDIT using System; @@ -13,7 +13,7 @@ public partial class Unicode { /// /// Version is the Unicode edition from which the tables are derived. /// - public const string Version = "14.0.0"; + public const string Version = "15.0.0"; /// Static class containing the various Unicode category range tables /// There are static properties that can be used to fetch a specific category, or you can use the method this class to retrieve the RangeTable by its Unicode category table name @@ -81,7 +81,7 @@ public static class Category { }, r32: new Range32 [] { new Range32 (0x110bd, 0x110cd, 16), - new Range32 (0x13430, 0x13438, 1), + new Range32 (0x13430, 0x1343f, 1), new Range32 (0x1bca0, 0x1bca3, 1), new Range32 (0x1d173, 0x1d17a, 1), new Range32 (0xe0001, 0xe0020, 31), @@ -117,7 +117,7 @@ public static class Category { }, r32: new Range32 [] { new Range32 (0x110bd, 0x110cd, 16), - new Range32 (0x13430, 0x13438, 1), + new Range32 (0x13430, 0x1343f, 1), new Range32 (0x1bca0, 0x1bca3, 1), new Range32 (0x1d173, 0x1d17a, 1), new Range32 (0xe0001, 0xe0020, 31), @@ -591,6 +591,7 @@ public static class Category { new Range32 (0x111da, 0x111dc, 2), new Range32 (0x11200, 0x11211, 1), new Range32 (0x11213, 0x1122b, 1), + new Range32 (0x1123f, 0x11240, 1), new Range32 (0x11280, 0x11286, 1), new Range32 (0x11288, 0x1128a, 2), new Range32 (0x1128b, 0x1128d, 1), @@ -649,11 +650,15 @@ public static class Category { new Range32 (0x11d6a, 0x11d89, 1), new Range32 (0x11d98, 0x11ee0, 328), new Range32 (0x11ee1, 0x11ef2, 1), + new Range32 (0x11f02, 0x11f04, 2), + new Range32 (0x11f05, 0x11f10, 1), + new Range32 (0x11f12, 0x11f33, 1), new Range32 (0x11fb0, 0x12000, 80), new Range32 (0x12001, 0x12399, 1), new Range32 (0x12480, 0x12543, 1), new Range32 (0x12f90, 0x12ff0, 1), - new Range32 (0x13000, 0x1342e, 1), + new Range32 (0x13000, 0x1342f, 1), + new Range32 (0x13441, 0x13446, 1), new Range32 (0x14400, 0x14646, 1), new Range32 (0x16800, 0x16a38, 1), new Range32 (0x16a40, 0x16a5e, 1), @@ -676,8 +681,10 @@ public static class Category { new Range32 (0x1aff5, 0x1affb, 1), new Range32 (0x1affd, 0x1affe, 1), new Range32 (0x1b000, 0x1b122, 1), - new Range32 (0x1b150, 0x1b152, 1), - new Range32 (0x1b164, 0x1b167, 1), + new Range32 (0x1b132, 0x1b150, 30), + new Range32 (0x1b151, 0x1b152, 1), + new Range32 (0x1b155, 0x1b164, 15), + new Range32 (0x1b165, 0x1b167, 1), new Range32 (0x1b170, 0x1b2fb, 1), new Range32 (0x1bc00, 0x1bc6a, 1), new Range32 (0x1bc70, 0x1bc7c, 1), @@ -714,11 +721,14 @@ public static class Category { new Range32 (0x1d7aa, 0x1d7c2, 1), new Range32 (0x1d7c4, 0x1d7cb, 1), new Range32 (0x1df00, 0x1df1e, 1), + new Range32 (0x1df25, 0x1df2a, 1), + new Range32 (0x1e030, 0x1e06d, 1), new Range32 (0x1e100, 0x1e12c, 1), new Range32 (0x1e137, 0x1e13d, 1), new Range32 (0x1e14e, 0x1e290, 322), new Range32 (0x1e291, 0x1e2ad, 1), new Range32 (0x1e2c0, 0x1e2eb, 1), + new Range32 (0x1e4d0, 0x1e4eb, 1), new Range32 (0x1e7e0, 0x1e7e6, 1), new Range32 (0x1e7e8, 0x1e7eb, 1), new Range32 (0x1e7ed, 0x1e7ee, 1), @@ -751,12 +761,13 @@ public static class Category { new Range32 (0x1eea5, 0x1eea9, 1), new Range32 (0x1eeab, 0x1eebb, 1), new Range32 (0x20000, 0x2a6df, 1), - new Range32 (0x2a700, 0x2b738, 1), + new Range32 (0x2a700, 0x2b739, 1), new Range32 (0x2b740, 0x2b81d, 1), new Range32 (0x2b820, 0x2cea1, 1), new Range32 (0x2ceb0, 0x2ebe0, 1), new Range32 (0x2f800, 0x2fa1d, 1), new Range32 (0x30000, 0x3134a, 1), + new Range32 (0x31350, 0x323af, 1), }, latinOffset: 6 ); @@ -926,6 +937,7 @@ public static class Category { new Range32 (0x1d7cb, 0x1df00, 1845), new Range32 (0x1df01, 0x1df09, 1), new Range32 (0x1df0b, 0x1df1e, 1), + new Range32 (0x1df25, 0x1df2a, 1), new Range32 (0x1e922, 0x1e943, 1), }, latinOffset: 4 @@ -986,8 +998,9 @@ public static class Category { new Range32 (0x1aff1, 0x1aff3, 1), new Range32 (0x1aff5, 0x1affb, 1), new Range32 (0x1affd, 0x1affe, 1), + new Range32 (0x1e030, 0x1e06d, 1), new Range32 (0x1e137, 0x1e13d, 1), - new Range32 (0x1e94b, 0x1e94b, 1), + new Range32 (0x1e4eb, 0x1e94b, 1120), } ); @@ -1346,6 +1359,7 @@ public static class Category { new Range32 (0x111da, 0x111dc, 2), new Range32 (0x11200, 0x11211, 1), new Range32 (0x11213, 0x1122b, 1), + new Range32 (0x1123f, 0x11240, 1), new Range32 (0x11280, 0x11286, 1), new Range32 (0x11288, 0x1128a, 2), new Range32 (0x1128b, 0x1128d, 1), @@ -1403,11 +1417,15 @@ public static class Category { new Range32 (0x11d6a, 0x11d89, 1), new Range32 (0x11d98, 0x11ee0, 328), new Range32 (0x11ee1, 0x11ef2, 1), + new Range32 (0x11f02, 0x11f04, 2), + new Range32 (0x11f05, 0x11f10, 1), + new Range32 (0x11f12, 0x11f33, 1), new Range32 (0x11fb0, 0x12000, 80), new Range32 (0x12001, 0x12399, 1), new Range32 (0x12480, 0x12543, 1), new Range32 (0x12f90, 0x12ff0, 1), - new Range32 (0x13000, 0x1342e, 1), + new Range32 (0x13000, 0x1342f, 1), + new Range32 (0x13441, 0x13446, 1), new Range32 (0x14400, 0x14646, 1), new Range32 (0x16800, 0x16a38, 1), new Range32 (0x16a40, 0x16a5e, 1), @@ -1422,8 +1440,10 @@ public static class Category { new Range32 (0x18800, 0x18cd5, 1), new Range32 (0x18d00, 0x18d08, 1), new Range32 (0x1b000, 0x1b122, 1), - new Range32 (0x1b150, 0x1b152, 1), - new Range32 (0x1b164, 0x1b167, 1), + new Range32 (0x1b132, 0x1b150, 30), + new Range32 (0x1b151, 0x1b152, 1), + new Range32 (0x1b155, 0x1b164, 15), + new Range32 (0x1b165, 0x1b167, 1), new Range32 (0x1b170, 0x1b2fb, 1), new Range32 (0x1bc00, 0x1bc6a, 1), new Range32 (0x1bc70, 0x1bc7c, 1), @@ -1434,6 +1454,7 @@ public static class Category { new Range32 (0x1e14e, 0x1e290, 322), new Range32 (0x1e291, 0x1e2ad, 1), new Range32 (0x1e2c0, 0x1e2eb, 1), + new Range32 (0x1e4d0, 0x1e4ea, 1), new Range32 (0x1e7e0, 0x1e7e6, 1), new Range32 (0x1e7e8, 0x1e7eb, 1), new Range32 (0x1e7ed, 0x1e7ee, 1), @@ -1464,12 +1485,13 @@ public static class Category { new Range32 (0x1eea5, 0x1eea9, 1), new Range32 (0x1eeab, 0x1eebb, 1), new Range32 (0x20000, 0x2a6df, 1), - new Range32 (0x2a700, 0x2b738, 1), + new Range32 (0x2a700, 0x2b739, 1), new Range32 (0x2b740, 0x2b81d, 1), new Range32 (0x2b820, 0x2cea1, 1), new Range32 (0x2ceb0, 0x2ebe0, 1), new Range32 (0x2f800, 0x2fa1d, 1), new Range32 (0x30000, 0x3134a, 1), + new Range32 (0x31350, 0x323af, 1), }, latinOffset: 1 ); @@ -1722,7 +1744,8 @@ public static class Category { new Range16 (0x0cca, 0x0ccd, 1), new Range16 (0x0cd5, 0x0cd6, 1), new Range16 (0x0ce2, 0x0ce3, 1), - new Range16 (0x0d00, 0x0d03, 1), + new Range16 (0x0cf3, 0x0d00, 13), + new Range16 (0x0d01, 0x0d03, 1), new Range16 (0x0d3b, 0x0d3c, 1), new Range16 (0x0d3e, 0x0d44, 1), new Range16 (0x0d46, 0x0d48, 1), @@ -1740,7 +1763,7 @@ public static class Category { new Range16 (0x0e47, 0x0e4e, 1), new Range16 (0x0eb1, 0x0eb4, 3), new Range16 (0x0eb5, 0x0ebc, 1), - new Range16 (0x0ec8, 0x0ecd, 1), + new Range16 (0x0ec8, 0x0ece, 1), new Range16 (0x0f18, 0x0f19, 1), new Range16 (0x0f35, 0x0f39, 2), new Range16 (0x0f3e, 0x0f3f, 1), @@ -1838,6 +1861,7 @@ public static class Category { new Range32 (0x10ae6, 0x10d24, 574), new Range32 (0x10d25, 0x10d27, 1), new Range32 (0x10eab, 0x10eac, 1), + new Range32 (0x10efd, 0x10eff, 1), new Range32 (0x10f46, 0x10f50, 1), new Range32 (0x10f82, 0x10f85, 1), new Range32 (0x11000, 0x11002, 1), @@ -1856,8 +1880,8 @@ public static class Category { new Range32 (0x111c9, 0x111cc, 1), new Range32 (0x111ce, 0x111cf, 1), new Range32 (0x1122c, 0x11237, 1), - new Range32 (0x1123e, 0x112df, 161), - new Range32 (0x112e0, 0x112ea, 1), + new Range32 (0x1123e, 0x11241, 3), + new Range32 (0x112df, 0x112ea, 1), new Range32 (0x11300, 0x11303, 1), new Range32 (0x1133b, 0x1133c, 1), new Range32 (0x1133e, 0x11344, 1), @@ -1904,6 +1928,12 @@ public static class Category { new Range32 (0x11d90, 0x11d91, 1), new Range32 (0x11d93, 0x11d97, 1), new Range32 (0x11ef3, 0x11ef6, 1), + new Range32 (0x11f00, 0x11f01, 1), + new Range32 (0x11f03, 0x11f34, 49), + new Range32 (0x11f35, 0x11f3a, 1), + new Range32 (0x11f3e, 0x11f42, 1), + new Range32 (0x13440, 0x13447, 7), + new Range32 (0x13448, 0x13455, 1), new Range32 (0x16af0, 0x16af4, 1), new Range32 (0x16b30, 0x16b36, 1), new Range32 (0x16f4f, 0x16f51, 2), @@ -1930,9 +1960,11 @@ public static class Category { new Range32 (0x1e01b, 0x1e021, 1), new Range32 (0x1e023, 0x1e024, 1), new Range32 (0x1e026, 0x1e02a, 1), - new Range32 (0x1e130, 0x1e136, 1), + new Range32 (0x1e08f, 0x1e130, 161), + new Range32 (0x1e131, 0x1e136, 1), new Range32 (0x1e2ae, 0x1e2ec, 62), new Range32 (0x1e2ed, 0x1e2ef, 1), + new Range32 (0x1e4ec, 0x1e4ef, 1), new Range32 (0x1e8d0, 0x1e8d6, 1), new Range32 (0x1e944, 0x1e94a, 1), new Range32 (0xe0100, 0xe01ef, 1), @@ -1972,8 +2004,9 @@ public static class Category { new Range16 (0x0cc7, 0x0cc8, 1), new Range16 (0x0cca, 0x0ccb, 1), new Range16 (0x0cd5, 0x0cd6, 1), - new Range16 (0x0d02, 0x0d03, 1), - new Range16 (0x0d3e, 0x0d40, 1), + new Range16 (0x0cf3, 0x0d02, 15), + new Range16 (0x0d03, 0x0d3e, 59), + new Range16 (0x0d3f, 0x0d40, 1), new Range16 (0x0d46, 0x0d48, 1), new Range16 (0x0d4a, 0x0d4c, 1), new Range16 (0x0d57, 0x0d82, 43), @@ -2092,7 +2125,10 @@ public static class Category { new Range32 (0x11d8a, 0x11d8e, 1), new Range32 (0x11d93, 0x11d94, 1), new Range32 (0x11d96, 0x11ef5, 351), - new Range32 (0x11ef6, 0x16f51, 20571), + new Range32 (0x11ef6, 0x11f03, 13), + new Range32 (0x11f34, 0x11f35, 1), + new Range32 (0x11f3e, 0x11f3f, 1), + new Range32 (0x11f41, 0x16f51, 20496), new Range32 (0x16f52, 0x16f87, 1), new Range32 (0x16ff0, 0x16ff1, 1), new Range32 (0x1d165, 0x1d166, 1), @@ -2191,7 +2227,7 @@ public static class Category { new Range16 (0x0e47, 0x0e4e, 1), new Range16 (0x0eb1, 0x0eb4, 3), new Range16 (0x0eb5, 0x0ebc, 1), - new Range16 (0x0ec8, 0x0ecd, 1), + new Range16 (0x0ec8, 0x0ece, 1), new Range16 (0x0f18, 0x0f19, 1), new Range16 (0x0f35, 0x0f39, 2), new Range16 (0x0f71, 0x0f7e, 1), @@ -2307,6 +2343,7 @@ public static class Category { new Range32 (0x10ae6, 0x10d24, 574), new Range32 (0x10d25, 0x10d27, 1), new Range32 (0x10eab, 0x10eac, 1), + new Range32 (0x10efd, 0x10eff, 1), new Range32 (0x10f46, 0x10f50, 1), new Range32 (0x10f82, 0x10f85, 1), new Range32 (0x11001, 0x11038, 55), @@ -2328,8 +2365,8 @@ public static class Category { new Range32 (0x11230, 0x11231, 1), new Range32 (0x11234, 0x11236, 2), new Range32 (0x11237, 0x1123e, 7), - new Range32 (0x112df, 0x112e3, 4), - new Range32 (0x112e4, 0x112ea, 1), + new Range32 (0x11241, 0x112df, 158), + new Range32 (0x112e3, 0x112ea, 1), new Range32 (0x11300, 0x11301, 1), new Range32 (0x1133b, 0x1133c, 1), new Range32 (0x11340, 0x11366, 38), @@ -2384,8 +2421,13 @@ public static class Category { new Range32 (0x11d47, 0x11d90, 73), new Range32 (0x11d91, 0x11d95, 4), new Range32 (0x11d97, 0x11ef3, 348), - new Range32 (0x11ef4, 0x16af0, 19452), - new Range32 (0x16af1, 0x16af4, 1), + new Range32 (0x11ef4, 0x11f00, 12), + new Range32 (0x11f01, 0x11f36, 53), + new Range32 (0x11f37, 0x11f3a, 1), + new Range32 (0x11f40, 0x11f42, 2), + new Range32 (0x13440, 0x13447, 7), + new Range32 (0x13448, 0x13455, 1), + new Range32 (0x16af0, 0x16af4, 1), new Range32 (0x16b30, 0x16b36, 1), new Range32 (0x16f4f, 0x16f8f, 64), new Range32 (0x16f90, 0x16f92, 1), @@ -2408,9 +2450,11 @@ public static class Category { new Range32 (0x1e01b, 0x1e021, 1), new Range32 (0x1e023, 0x1e024, 1), new Range32 (0x1e026, 0x1e02a, 1), - new Range32 (0x1e130, 0x1e136, 1), + new Range32 (0x1e08f, 0x1e130, 161), + new Range32 (0x1e131, 0x1e136, 1), new Range32 (0x1e2ae, 0x1e2ec, 62), new Range32 (0x1e2ed, 0x1e2ef, 1), + new Range32 (0x1e4ec, 0x1e4ef, 1), new Range32 (0x1e8d0, 0x1e8d6, 1), new Range32 (0x1e944, 0x1e94a, 1), new Range32 (0xe0100, 0xe01ef, 1), @@ -2532,6 +2576,7 @@ public static class Category { new Range32 (0x11c50, 0x11c6c, 1), new Range32 (0x11d50, 0x11d59, 1), new Range32 (0x11da0, 0x11da9, 1), + new Range32 (0x11f50, 0x11f59, 1), new Range32 (0x11fc0, 0x11fd4, 1), new Range32 (0x12400, 0x1246e, 1), new Range32 (0x16a60, 0x16a69, 1), @@ -2539,11 +2584,13 @@ public static class Category { new Range32 (0x16b50, 0x16b59, 1), new Range32 (0x16b5b, 0x16b61, 1), new Range32 (0x16e80, 0x16e96, 1), + new Range32 (0x1d2c0, 0x1d2d3, 1), new Range32 (0x1d2e0, 0x1d2f3, 1), new Range32 (0x1d360, 0x1d378, 1), new Range32 (0x1d7ce, 0x1d7ff, 1), new Range32 (0x1e140, 0x1e149, 1), new Range32 (0x1e2f0, 0x1e2f9, 1), + new Range32 (0x1e4f0, 0x1e4f9, 1), new Range32 (0x1e8c7, 0x1e8cf, 1), new Range32 (0x1e950, 0x1e959, 1), new Range32 (0x1ec71, 0x1ecab, 1), @@ -2615,12 +2662,14 @@ public static class Category { new Range32 (0x11c50, 0x11c59, 1), new Range32 (0x11d50, 0x11d59, 1), new Range32 (0x11da0, 0x11da9, 1), + new Range32 (0x11f50, 0x11f59, 1), new Range32 (0x16a60, 0x16a69, 1), new Range32 (0x16ac0, 0x16ac9, 1), new Range32 (0x16b50, 0x16b59, 1), new Range32 (0x1d7ce, 0x1d7ff, 1), new Range32 (0x1e140, 0x1e149, 1), new Range32 (0x1e2f0, 0x1e2f9, 1), + new Range32 (0x1e4f0, 0x1e4f9, 1), new Range32 (0x1e950, 0x1e959, 1), new Range32 (0x1fbf0, 0x1fbf9, 1), }, @@ -2710,6 +2759,7 @@ public static class Category { new Range32 (0x11fc0, 0x11fd4, 1), new Range32 (0x16b5b, 0x16b61, 1), new Range32 (0x16e80, 0x16e96, 1), + new Range32 (0x1d2c0, 0x1d2d3, 1), new Range32 (0x1d2e0, 0x1d2f3, 1), new Range32 (0x1d360, 0x1d378, 1), new Range32 (0x1e8c7, 0x1e8cf, 1), @@ -2878,9 +2928,11 @@ public static class Category { new Range32 (0x11a40, 0x11a46, 1), new Range32 (0x11a9a, 0x11a9c, 1), new Range32 (0x11a9e, 0x11aa2, 1), + new Range32 (0x11b00, 0x11b09, 1), new Range32 (0x11c41, 0x11c45, 1), new Range32 (0x11c70, 0x11c71, 1), new Range32 (0x11ef7, 0x11ef8, 1), + new Range32 (0x11f43, 0x11f4f, 1), new Range32 (0x11fff, 0x12470, 1137), new Range32 (0x12471, 0x12474, 1), new Range32 (0x12ff1, 0x12ff2, 1), @@ -3128,9 +3180,11 @@ public static class Category { new Range32 (0x11a40, 0x11a46, 1), new Range32 (0x11a9a, 0x11a9c, 1), new Range32 (0x11a9e, 0x11aa2, 1), + new Range32 (0x11b00, 0x11b09, 1), new Range32 (0x11c41, 0x11c45, 1), new Range32 (0x11c70, 0x11c71, 1), new Range32 (0x11ef7, 0x11ef8, 1), + new Range32 (0x11f43, 0x11f4f, 1), new Range32 (0x11fff, 0x12470, 1137), new Range32 (0x12471, 0x12474, 1), new Range32 (0x12ff1, 0x12ff2, 1), @@ -3360,10 +3414,10 @@ public static class Category { new Range32 (0x1f250, 0x1f251, 1), new Range32 (0x1f260, 0x1f265, 1), new Range32 (0x1f300, 0x1f6d7, 1), - new Range32 (0x1f6dd, 0x1f6ec, 1), + new Range32 (0x1f6dc, 0x1f6ec, 1), new Range32 (0x1f6f0, 0x1f6fc, 1), - new Range32 (0x1f700, 0x1f773, 1), - new Range32 (0x1f780, 0x1f7d8, 1), + new Range32 (0x1f700, 0x1f776, 1), + new Range32 (0x1f77b, 0x1f7d9, 1), new Range32 (0x1f7e0, 0x1f7eb, 1), new Range32 (0x1f7f0, 0x1f800, 16), new Range32 (0x1f801, 0x1f80b, 1), @@ -3374,15 +3428,13 @@ public static class Category { new Range32 (0x1f8b0, 0x1f8b1, 1), new Range32 (0x1f900, 0x1fa53, 1), new Range32 (0x1fa60, 0x1fa6d, 1), - new Range32 (0x1fa70, 0x1fa74, 1), - new Range32 (0x1fa78, 0x1fa7c, 1), - new Range32 (0x1fa80, 0x1fa86, 1), - new Range32 (0x1fa90, 0x1faac, 1), - new Range32 (0x1fab0, 0x1faba, 1), - new Range32 (0x1fac0, 0x1fac5, 1), - new Range32 (0x1fad0, 0x1fad9, 1), - new Range32 (0x1fae0, 0x1fae7, 1), - new Range32 (0x1faf0, 0x1faf6, 1), + new Range32 (0x1fa70, 0x1fa7c, 1), + new Range32 (0x1fa80, 0x1fa88, 1), + new Range32 (0x1fa90, 0x1fabd, 1), + new Range32 (0x1fabf, 0x1fac5, 1), + new Range32 (0x1face, 0x1fadb, 1), + new Range32 (0x1fae0, 0x1fae8, 1), + new Range32 (0x1faf0, 0x1faf8, 1), new Range32 (0x1fb00, 0x1fb92, 1), new Range32 (0x1fb94, 0x1fbca, 1), }, @@ -3651,10 +3703,10 @@ public static class Category { new Range32 (0x1f260, 0x1f265, 1), new Range32 (0x1f300, 0x1f3fa, 1), new Range32 (0x1f400, 0x1f6d7, 1), - new Range32 (0x1f6dd, 0x1f6ec, 1), + new Range32 (0x1f6dc, 0x1f6ec, 1), new Range32 (0x1f6f0, 0x1f6fc, 1), - new Range32 (0x1f700, 0x1f773, 1), - new Range32 (0x1f780, 0x1f7d8, 1), + new Range32 (0x1f700, 0x1f776, 1), + new Range32 (0x1f77b, 0x1f7d9, 1), new Range32 (0x1f7e0, 0x1f7eb, 1), new Range32 (0x1f7f0, 0x1f800, 16), new Range32 (0x1f801, 0x1f80b, 1), @@ -3665,15 +3717,13 @@ public static class Category { new Range32 (0x1f8b0, 0x1f8b1, 1), new Range32 (0x1f900, 0x1fa53, 1), new Range32 (0x1fa60, 0x1fa6d, 1), - new Range32 (0x1fa70, 0x1fa74, 1), - new Range32 (0x1fa78, 0x1fa7c, 1), - new Range32 (0x1fa80, 0x1fa86, 1), - new Range32 (0x1fa90, 0x1faac, 1), - new Range32 (0x1fab0, 0x1faba, 1), - new Range32 (0x1fac0, 0x1fac5, 1), - new Range32 (0x1fad0, 0x1fad9, 1), - new Range32 (0x1fae0, 0x1fae7, 1), - new Range32 (0x1faf0, 0x1faf6, 1), + new Range32 (0x1fa70, 0x1fa7c, 1), + new Range32 (0x1fa80, 0x1fa88, 1), + new Range32 (0x1fa90, 0x1fabd, 1), + new Range32 (0x1fabf, 0x1fac5, 1), + new Range32 (0x1face, 0x1fadb, 1), + new Range32 (0x1fae0, 0x1fae8, 1), + new Range32 (0x1faf0, 0x1faf8, 1), new Range32 (0x1fb00, 0x1fb92, 1), new Range32 (0x1fb94, 0x1fbca, 1), }, @@ -3812,7 +3862,7 @@ public static class Category { } // Generated by running -// maketables --scripts=all --url=http://www.unicode.org/Public/14.0.0/ucd/ +// maketables --scripts=all --url=https://www.unicode.org/Public/15.0.0/ucd/ // DO NOT EDIT /// Static class containing the Unicode script tables. @@ -3885,6 +3935,7 @@ public static class Script { { "Kaithi", Kaithi }, { "Kannada", Kannada }, { "Katakana", Katakana }, + { "Kawi", Kawi }, { "Kayah_Li", Kayah_Li }, { "Kharoshthi", Kharoshthi }, { "Khitan_Small_Script", Khitan_Small_Script }, @@ -3919,6 +3970,7 @@ public static class Script { { "Multani", Multani }, { "Myanmar", Myanmar }, { "Nabataean", Nabataean }, + { "Nag_Mundari", Nag_Mundari }, { "Nandinagari", Nandinagari }, { "New_Tai_Lue", New_Tai_Lue }, { "Newa", Newa }, @@ -4041,6 +4093,7 @@ public static class Script { }, r32: new Range32 [] { new Range32 (0x10e60, 0x10e7e, 1), + new Range32 (0x10efd, 0x10eff, 1), new Range32 (0x1ee00, 0x1ee03, 1), new Range32 (0x1ee05, 0x1ee1f, 1), new Range32 (0x1ee21, 0x1ee22, 1), @@ -4366,6 +4419,7 @@ public static class Script { new Range32 (0x1d183, 0x1d184, 1), new Range32 (0x1d18c, 0x1d1a9, 1), new Range32 (0x1d1ae, 0x1d1ea, 1), + new Range32 (0x1d2c0, 0x1d2d3, 1), new Range32 (0x1d2e0, 0x1d2f3, 1), new Range32 (0x1d300, 0x1d356, 1), new Range32 (0x1d360, 0x1d378, 1), @@ -4406,10 +4460,10 @@ public static class Script { new Range32 (0x1f250, 0x1f251, 1), new Range32 (0x1f260, 0x1f265, 1), new Range32 (0x1f300, 0x1f6d7, 1), - new Range32 (0x1f6dd, 0x1f6ec, 1), + new Range32 (0x1f6dc, 0x1f6ec, 1), new Range32 (0x1f6f0, 0x1f6fc, 1), - new Range32 (0x1f700, 0x1f773, 1), - new Range32 (0x1f780, 0x1f7d8, 1), + new Range32 (0x1f700, 0x1f776, 1), + new Range32 (0x1f77b, 0x1f7d9, 1), new Range32 (0x1f7e0, 0x1f7eb, 1), new Range32 (0x1f7f0, 0x1f7f0, 1), new Range32 (0x1f800, 0x1f80b, 1), @@ -4420,15 +4474,13 @@ public static class Script { new Range32 (0x1f8b0, 0x1f8b1, 1), new Range32 (0x1f900, 0x1fa53, 1), new Range32 (0x1fa60, 0x1fa6d, 1), - new Range32 (0x1fa70, 0x1fa74, 1), - new Range32 (0x1fa78, 0x1fa7c, 1), - new Range32 (0x1fa80, 0x1fa86, 1), - new Range32 (0x1fa90, 0x1faac, 1), - new Range32 (0x1fab0, 0x1faba, 1), - new Range32 (0x1fac0, 0x1fac5, 1), - new Range32 (0x1fad0, 0x1fad9, 1), - new Range32 (0x1fae0, 0x1fae7, 1), - new Range32 (0x1faf0, 0x1faf6, 1), + new Range32 (0x1fa70, 0x1fa7c, 1), + new Range32 (0x1fa80, 0x1fa88, 1), + new Range32 (0x1fa90, 0x1fabd, 1), + new Range32 (0x1fabf, 0x1fac5, 1), + new Range32 (0x1face, 0x1fadb, 1), + new Range32 (0x1fae0, 0x1fae8, 1), + new Range32 (0x1faf0, 0x1faf8, 1), new Range32 (0x1fb00, 0x1fb92, 1), new Range32 (0x1fb94, 0x1fbca, 1), new Range32 (0x1fbf0, 0x1fbf9, 1), @@ -4488,6 +4540,10 @@ public static class Script { new Range16 (0x2de0, 0x2dff, 1), new Range16 (0xa640, 0xa69f, 1), new Range16 (0xfe2e, 0xfe2f, 1), + }, + r32: new Range32 [] { + new Range32 (0x1e030, 0x1e06d, 1), + new Range32 (0x1e08f, 0x1e08f, 1), } ); /* RangeTable */ @@ -4505,6 +4561,9 @@ public static class Script { new Range16 (0x0955, 0x0963, 1), new Range16 (0x0966, 0x097f, 1), new Range16 (0xa8e0, 0xa8ff, 1), + }, + r32: new Range32 [] { + new Range32 (0x11b00, 0x11b09, 1), } ); /* RangeTable */ @@ -4547,8 +4606,7 @@ public static class Script { r16: new Range16 [] { }, r32: new Range32 [] { - new Range32 (0x13000, 0x1342e, 1), - new Range32 (0x13430, 0x13438, 1), + new Range32 (0x13000, 0x13455, 1), } ); /* RangeTable */ @@ -4783,12 +4841,13 @@ public static class Script { new Range32 (0x16fe2, 0x16fe3, 1), new Range32 (0x16ff0, 0x16ff1, 1), new Range32 (0x20000, 0x2a6df, 1), - new Range32 (0x2a700, 0x2b738, 1), + new Range32 (0x2a700, 0x2b739, 1), new Range32 (0x2b740, 0x2b81d, 1), new Range32 (0x2b820, 0x2cea1, 1), new Range32 (0x2ceb0, 0x2ebe0, 1), new Range32 (0x2f800, 0x2fa1d, 1), new Range32 (0x30000, 0x3134a, 1), + new Range32 (0x31350, 0x323af, 1), } ); /* RangeTable */ @@ -4857,6 +4916,7 @@ public static class Script { }, r32: new Range32 [] { new Range32 (0x1b001, 0x1b11f, 1), + new Range32 (0x1b132, 0x1b132, 1), new Range32 (0x1b150, 0x1b152, 1), new Range32 (0x1f200, 0x1f200, 1), } @@ -4956,7 +5016,7 @@ public static class Script { new Range16 (0x0cdd, 0x0cde, 1), new Range16 (0x0ce0, 0x0ce3, 1), new Range16 (0x0ce6, 0x0cef, 1), - new Range16 (0x0cf1, 0x0cf2, 1), + new Range16 (0x0cf1, 0x0cf3, 1), } ); /* RangeTable */ @@ -4976,10 +5036,21 @@ public static class Script { new Range32 (0x1affd, 0x1affe, 1), new Range32 (0x1b000, 0x1b000, 1), new Range32 (0x1b120, 0x1b122, 1), + new Range32 (0x1b155, 0x1b155, 1), new Range32 (0x1b164, 0x1b167, 1), } ); /* RangeTable */ + internal static RangeTable _Kawi = new RangeTable ( + r16: new Range16 [] { + }, + r32: new Range32 [] { + new Range32 (0x11f00, 0x11f10, 1), + new Range32 (0x11f12, 0x11f3a, 1), + new Range32 (0x11f3e, 0x11f59, 1), + } + ); /* RangeTable */ + internal static RangeTable _Kayah_Li = new RangeTable ( r16: new Range16 [] { new Range16 (0xa900, 0xa92d, 1), @@ -5025,7 +5096,7 @@ public static class Script { }, r32: new Range32 [] { new Range32 (0x11200, 0x11211, 1), - new Range32 (0x11213, 0x1123e, 1), + new Range32 (0x11213, 0x11241, 1), } ); /* RangeTable */ @@ -5048,7 +5119,7 @@ public static class Script { new Range16 (0x0ea7, 0x0ebd, 1), new Range16 (0x0ec0, 0x0ec4, 1), new Range16 (0x0ec6, 0x0ec6, 1), - new Range16 (0x0ec8, 0x0ecd, 1), + new Range16 (0x0ec8, 0x0ece, 1), new Range16 (0x0ed0, 0x0ed9, 1), new Range16 (0x0edc, 0x0edf, 1), } @@ -5096,6 +5167,7 @@ public static class Script { new Range32 (0x10787, 0x107b0, 1), new Range32 (0x107b2, 0x107ba, 1), new Range32 (0x1df00, 0x1df1e, 1), + new Range32 (0x1df25, 0x1df2a, 1), }, latinOffset: 6 ); /* RangeTable */ @@ -5350,6 +5422,14 @@ public static class Script { } ); /* RangeTable */ + internal static RangeTable _Nag_Mundari = new RangeTable ( + r16: new Range16 [] { + }, + r32: new Range32 [] { + new Range32 (0x1e4d0, 0x1e4f9, 1), + } + ); /* RangeTable */ + internal static RangeTable _Nandinagari = new RangeTable ( r16: new Range16 [] { }, @@ -6071,6 +6151,8 @@ public static class Script { public static RangeTable Kannada => _Kannada; /// Katakana is the set of Unicode characters in script Katakana. public static RangeTable Katakana => _Katakana; + /// Kawi is the set of Unicode characters in script Kawi. + public static RangeTable Kawi => _Kawi; /// Kayah_Li is the set of Unicode characters in script Kayah_Li. public static RangeTable Kayah_Li => _Kayah_Li; /// Kharoshthi is the set of Unicode characters in script Kharoshthi. @@ -6139,6 +6221,8 @@ public static class Script { public static RangeTable Myanmar => _Myanmar; /// Nabataean is the set of Unicode characters in script Nabataean. public static RangeTable Nabataean => _Nabataean; + /// Nag_Mundari is the set of Unicode characters in script Nag_Mundari. + public static RangeTable Nag_Mundari => _Nag_Mundari; /// Nandinagari is the set of Unicode characters in script Nandinagari. public static RangeTable Nandinagari => _Nandinagari; /// New_Tai_Lue is the set of Unicode characters in script New_Tai_Lue. @@ -6272,7 +6356,7 @@ public static class Script { } // Generated by running -// maketables --props=all --url=http://www.unicode.org/Public/14.0.0/ucd/ +// maketables --props=all --url=https://www.unicode.org/Public/15.0.0/ucd/ // DO NOT EDIT /// Static class containing the proeprty-based tables. @@ -6527,6 +6611,7 @@ public static class Property { new Range32 (0x107b2, 0x107ba, 1), new Range32 (0x10ae5, 0x10ae6, 1), new Range32 (0x10d22, 0x10d27, 1), + new Range32 (0x10efd, 0x10eff, 1), new Range32 (0x10f46, 0x10f50, 1), new Range32 (0x10f82, 0x10f85, 1), new Range32 (0x11046, 0x11046, 1), @@ -6560,6 +6645,7 @@ public static class Property { new Range32 (0x11d42, 0x11d42, 1), new Range32 (0x11d44, 0x11d45, 1), new Range32 (0x11d97, 0x11d97, 1), + new Range32 (0x13447, 0x13455, 1), new Range32 (0x16af0, 0x16af4, 1), new Range32 (0x16b30, 0x16b36, 1), new Range32 (0x16f8f, 0x16f9f, 1), @@ -6574,6 +6660,7 @@ public static class Property { new Range32 (0x1d17b, 0x1d182, 1), new Range32 (0x1d185, 0x1d18b, 1), new Range32 (0x1d1aa, 0x1d1ad, 1), + new Range32 (0x1e030, 0x1e06d, 1), new Range32 (0x1e130, 0x1e136, 1), new Range32 (0x1e2ae, 0x1e2ae, 1), new Range32 (0x1e2ec, 0x1e2ef, 1), @@ -6683,12 +6770,13 @@ public static class Property { new Range32 (0x18d00, 0x18d08, 1), new Range32 (0x1b170, 0x1b2fb, 1), new Range32 (0x20000, 0x2a6df, 1), - new Range32 (0x2a700, 0x2b738, 1), + new Range32 (0x2a700, 0x2b739, 1), new Range32 (0x2b740, 0x2b81d, 1), new Range32 (0x2b820, 0x2cea1, 1), new Range32 (0x2ceb0, 0x2ebe0, 1), new Range32 (0x2f800, 0x2fa1d, 1), new Range32 (0x30000, 0x3134a, 1), + new Range32 (0x31350, 0x323af, 1), } ); /* RangeTable */ @@ -6796,7 +6884,7 @@ public static class Property { new Range16 (0x0bc6, 0x0bc8, 1), new Range16 (0x0bca, 0x0bcc, 1), new Range16 (0x0bd7, 0x0bd7, 1), - new Range16 (0x0c00, 0x0c03, 1), + new Range16 (0x0c00, 0x0c04, 1), new Range16 (0x0c3e, 0x0c44, 1), new Range16 (0x0c46, 0x0c48, 1), new Range16 (0x0c4a, 0x0c4c, 1), @@ -6808,6 +6896,7 @@ public static class Property { new Range16 (0x0cca, 0x0ccc, 1), new Range16 (0x0cd5, 0x0cd6, 1), new Range16 (0x0ce2, 0x0ce3, 1), + new Range16 (0x0cf3, 0x0cf3, 1), new Range16 (0x0d00, 0x0d03, 1), new Range16 (0x0d3e, 0x0d44, 1), new Range16 (0x0d46, 0x0d48, 1), @@ -6826,7 +6915,7 @@ public static class Property { new Range16 (0x0eb4, 0x0eb9, 1), new Range16 (0x0ebb, 0x0ebc, 1), new Range16 (0x0ecd, 0x0ecd, 1), - new Range16 (0x0f71, 0x0f81, 1), + new Range16 (0x0f71, 0x0f83, 1), new Range16 (0x0f8d, 0x0f97, 1), new Range16 (0x0f99, 0x0fbc, 1), new Range16 (0x102b, 0x1036, 1), @@ -6901,7 +6990,7 @@ public static class Property { new Range32 (0x11000, 0x11002, 1), new Range32 (0x11038, 0x11045, 1), new Range32 (0x11073, 0x11074, 1), - new Range32 (0x11082, 0x11082, 1), + new Range32 (0x11080, 0x11082, 1), new Range32 (0x110b0, 0x110b8, 1), new Range32 (0x110c2, 0x110c2, 1), new Range32 (0x11100, 0x11102, 1), @@ -6913,6 +7002,7 @@ public static class Property { new Range32 (0x1122c, 0x11234, 1), new Range32 (0x11237, 0x11237, 1), new Range32 (0x1123e, 0x1123e, 1), + new Range32 (0x11241, 0x11241, 1), new Range32 (0x112df, 0x112e8, 1), new Range32 (0x11300, 0x11303, 1), new Range32 (0x1133e, 0x11344, 1), @@ -6958,6 +7048,10 @@ public static class Property { new Range32 (0x11d90, 0x11d91, 1), new Range32 (0x11d93, 0x11d96, 1), new Range32 (0x11ef3, 0x11ef6, 1), + new Range32 (0x11f00, 0x11f01, 1), + new Range32 (0x11f03, 0x11f03, 1), + new Range32 (0x11f34, 0x11f3a, 1), + new Range32 (0x11f3e, 0x11f40, 1), new Range32 (0x16f4f, 0x16f4f, 1), new Range32 (0x16f51, 0x16f87, 1), new Range32 (0x16f8f, 0x16f92, 1), @@ -6968,6 +7062,7 @@ public static class Property { new Range32 (0x1e01b, 0x1e021, 1), new Range32 (0x1e023, 0x1e024, 1), new Range32 (0x1e026, 0x1e02a, 1), + new Range32 (0x1e08f, 0x1e08f, 1), new Range32 (0x1e947, 0x1e947, 1), new Range32 (0x1f130, 0x1f149, 1), new Range32 (0x1f150, 0x1f169, 1), @@ -7053,6 +7148,7 @@ public static class Property { new Range16 (0x02e0, 0x02e4, 1), new Range16 (0x0345, 0x0345, 1), new Range16 (0x037a, 0x037a, 1), + new Range16 (0x10fc, 0x10fc, 1), new Range16 (0x1d2c, 0x1d6a, 1), new Range16 (0x1d78, 0x1d78, 1), new Range16 (0x1d9b, 0x1dbf, 1), @@ -7064,14 +7160,17 @@ public static class Property { new Range16 (0x2c7c, 0x2c7d, 1), new Range16 (0xa69c, 0xa69d, 1), new Range16 (0xa770, 0xa770, 1), + new Range16 (0xa7f2, 0xa7f4, 1), new Range16 (0xa7f8, 0xa7f9, 1), new Range16 (0xab5c, 0xab5f, 1), + new Range16 (0xab69, 0xab69, 1), }, r32: new Range32 [] { new Range32 (0x10780, 0x10780, 1), new Range32 (0x10783, 0x10785, 1), new Range32 (0x10787, 0x107b0, 1), new Range32 (0x107b2, 0x107ba, 1), + new Range32 (0x1e030, 0x1e06d, 1), }, latinOffset: 2 ); /* RangeTable */ @@ -7400,6 +7499,7 @@ public static class Property { new Range32 (0x11a9b, 0x11a9c, 1), new Range32 (0x11c41, 0x11c42, 1), new Range32 (0x11ef7, 0x11ef8, 1), + new Range32 (0x11f43, 0x11f44, 1), new Range32 (0x16a6e, 0x16a6f, 1), new Range32 (0x16af5, 0x16af5, 1), new Range32 (0x16b37, 0x16b38, 1), @@ -7447,6 +7547,8 @@ public static class Property { new Range32 (0x1d65e, 0x1d65f, 1), new Range32 (0x1d692, 0x1d693, 1), new Range32 (0x1df1a, 0x1df1a, 1), + new Range32 (0x1e04c, 0x1e04d, 1), + new Range32 (0x1e068, 0x1e068, 1), }, latinOffset: 1 ); /* RangeTable */ @@ -7554,6 +7656,7 @@ public static class Property { new Range32 (0x11c41, 0x11c43, 1), new Range32 (0x11c71, 0x11c71, 1), new Range32 (0x11ef7, 0x11ef8, 1), + new Range32 (0x11f43, 0x11f44, 1), new Range32 (0x12470, 0x12474, 1), new Range32 (0x16a6e, 0x16a6f, 1), new Range32 (0x16af5, 0x16af5, 1), @@ -7580,11 +7683,12 @@ public static class Property { }, r32: new Range32 [] { new Range32 (0x20000, 0x2a6df, 1), - new Range32 (0x2a700, 0x2b738, 1), + new Range32 (0x2a700, 0x2b739, 1), new Range32 (0x2b740, 0x2b81d, 1), new Range32 (0x2b820, 0x2cea1, 1), new Range32 (0x2ceb0, 0x2ebe0, 1), new Range32 (0x30000, 0x3134a, 1), + new Range32 (0x31350, 0x323af, 1), } ); /* RangeTable */ @@ -7688,7 +7792,7 @@ public static class Property { } // Generated by running - // maketables --data=http://www.unicode.org/Public/14.0.0/ucd/UnicodeData.txt --casefolding=http://www.unicode.org/Public/14.0.0/ucd/CaseFolding.txt + // maketables --data=https://www.unicode.org/Public/15.0.0/ucd/UnicodeData.txt --casefolding=https://www.unicode.org/Public/15.0.0/ucd/CaseFolding.txt // DO NOT EDIT // CaseRanges is the table describing case mappings for all letters with @@ -8835,8 +8939,8 @@ public static class Property { }; -// Range entries: 3669 16-bit, 2007 32-bit, 5676 total. -// Range bytes: 22014 16-bit, 24084 32-bit, 46098 total. +// Range entries: 3675 16-bit, 2081 32-bit, 5756 total. +// Range bytes: 22050 16-bit, 24972 32-bit, 47022 total. // Fold orbit bytes: 88 pairs, 352 bytes } /* partial class Unicode */ diff --git a/NStack/unicode/maketables.go b/NStack/unicode/maketables.go index dd9c9b1..4e3c68e 100644 --- a/NStack/unicode/maketables.go +++ b/NStack/unicode/maketables.go @@ -60,7 +60,7 @@ func main() { var dataURL = flag.String("data", "", "full URL for UnicodeData.txt; defaults to --url/UnicodeData.txt") var casefoldingURL = flag.String("casefolding", "", "full URL for CaseFolding.txt; defaults to --url/CaseFolding.txt") var url = flag.String("url", - "http://www.unicode.org/Public/14.0.0/ucd/", + "https://www.unicode.org/Public/15.0.0/ucd/", "URL of Unicode database directory") var tablelist = flag.String("tables", "all",