1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-09 17:38:00 +00:00

Update to Unicode 15.

Now I have a script I can easily re-run, there's no reason not to do
just that! This updates all of the new generated header files for the
UCD.zip that comes with Unicode 15.0.0.

I've re-run my bidi test suite against 15.0.0's file of test cases,
and confirmed they all pass.
This commit is contained in:
Simon Tatham 2022-11-09 08:48:54 +00:00
parent 4bb37233a5
commit 4cb429e3f4
7 changed files with 60 additions and 26 deletions

View File

@ -13,11 +13,11 @@
* ----------------- * -----------------
* *
* This algorithm is up to date with Unicode Standard Annex #9 * This algorithm is up to date with Unicode Standard Annex #9
* revision 44: * revision 46:
* *
* https://www.unicode.org/reports/tr9/tr9-44.html * https://www.unicode.org/reports/tr9/tr9-46.html
* *
* and passes the full conformance test suite in Unicode 14.0.0. * and passes the full conformance test suite in Unicode 15.0.0.
* *
* Paragraph and line handling * Paragraph and line handling
* --------------------------- * ---------------------------

View File

@ -1,5 +1,5 @@
/* /*
* Autogenerated by read_ucd.py from The Unicode Standard 14.0.0 * Autogenerated by read_ucd.py from The Unicode Standard 15.0.0
* *
* Identify Unicode characters that are width-ambiguous: some regimes * Identify Unicode characters that are width-ambiguous: some regimes
* regard them as occupying two adjacent character cells in a terminal, * regard them as occupying two adjacent character cells in a terminal,

View File

@ -1,5 +1,5 @@
/* /*
* Autogenerated by read_ucd.py from The Unicode Standard 14.0.0 * Autogenerated by read_ucd.py from The Unicode Standard 15.0.0
* *
* Identify Unicode characters that count as brackets for the purposes of * Identify Unicode characters that count as brackets for the purposes of
* bidirectional text layout. For each one, indicate whether it's an open * bidirectional text layout. For each one, indicate whether it's an open

View File

@ -1,5 +1,5 @@
/* /*
* Autogenerated by read_ucd.py from The Unicode Standard 14.0.0 * Autogenerated by read_ucd.py from The Unicode Standard 15.0.0
* *
* Map each Unicode character to its mirrored form when printing right to * Map each Unicode character to its mirrored form when printing right to
* left. * left.

View File

@ -1,5 +1,5 @@
/* /*
* Autogenerated by read_ucd.py from The Unicode Standard 14.0.0 * Autogenerated by read_ucd.py from The Unicode Standard 15.0.0
* *
* Bidirectional type of every Unicode character, excluding those with * Bidirectional type of every Unicode character, excluding those with
* type ON. * type ON.
@ -291,7 +291,7 @@
{0x0ce0, 0x0ce1, L}, {0x0ce0, 0x0ce1, L},
{0x0ce2, 0x0ce3, NSM}, {0x0ce2, 0x0ce3, NSM},
{0x0ce6, 0x0cef, L}, {0x0ce6, 0x0cef, L},
{0x0cf1, 0x0cf2, L}, {0x0cf1, 0x0cf3, L},
{0x0d00, 0x0d01, NSM}, {0x0d00, 0x0d01, NSM},
{0x0d02, 0x0d0c, L}, {0x0d02, 0x0d0c, L},
{0x0d0e, 0x0d10, L}, {0x0d0e, 0x0d10, L},
@ -340,7 +340,7 @@
{0x0ebd, 0x0ebd, L}, {0x0ebd, 0x0ebd, L},
{0x0ec0, 0x0ec4, L}, {0x0ec0, 0x0ec4, L},
{0x0ec6, 0x0ec6, L}, {0x0ec6, 0x0ec6, L},
{0x0ec8, 0x0ecd, NSM}, {0x0ec8, 0x0ece, NSM},
{0x0ed0, 0x0ed9, L}, {0x0ed0, 0x0ed9, L},
{0x0edc, 0x0edf, L}, {0x0edc, 0x0edf, L},
{0x0f00, 0x0f17, L}, {0x0f00, 0x0f17, L},
@ -889,6 +889,7 @@
{0x10eab, 0x10eac, NSM}, {0x10eab, 0x10eac, NSM},
{0x10ead, 0x10ead, R}, {0x10ead, 0x10ead, R},
{0x10eb0, 0x10eb1, R}, {0x10eb0, 0x10eb1, R},
{0x10efd, 0x10eff, NSM},
{0x10f00, 0x10f27, R}, {0x10f00, 0x10f27, R},
{0x10f30, 0x10f45, AL}, {0x10f30, 0x10f45, AL},
{0x10f46, 0x10f50, NSM}, {0x10f46, 0x10f50, NSM},
@ -945,6 +946,8 @@
{0x11236, 0x11237, NSM}, {0x11236, 0x11237, NSM},
{0x11238, 0x1123d, L}, {0x11238, 0x1123d, L},
{0x1123e, 0x1123e, NSM}, {0x1123e, 0x1123e, NSM},
{0x1123f, 0x11240, L},
{0x11241, 0x11241, NSM},
{0x11280, 0x11286, L}, {0x11280, 0x11286, L},
{0x11288, 0x11288, L}, {0x11288, 0x11288, L},
{0x1128a, 0x1128d, L}, {0x1128a, 0x1128d, L},
@ -1073,6 +1076,7 @@
{0x11a98, 0x11a99, NSM}, {0x11a98, 0x11a99, NSM},
{0x11a9a, 0x11aa2, L}, {0x11a9a, 0x11aa2, L},
{0x11ab0, 0x11af8, L}, {0x11ab0, 0x11af8, L},
{0x11b00, 0x11b09, L},
{0x11c00, 0x11c08, L}, {0x11c00, 0x11c08, L},
{0x11c0a, 0x11c2f, L}, {0x11c0a, 0x11c2f, L},
{0x11c30, 0x11c36, NSM}, {0x11c30, 0x11c36, NSM},
@ -1110,6 +1114,15 @@
{0x11ee0, 0x11ef2, L}, {0x11ee0, 0x11ef2, L},
{0x11ef3, 0x11ef4, NSM}, {0x11ef3, 0x11ef4, NSM},
{0x11ef5, 0x11ef8, L}, {0x11ef5, 0x11ef8, L},
{0x11f00, 0x11f01, NSM},
{0x11f02, 0x11f10, L},
{0x11f12, 0x11f35, L},
{0x11f36, 0x11f3a, NSM},
{0x11f3e, 0x11f3f, L},
{0x11f40, 0x11f40, NSM},
{0x11f41, 0x11f41, L},
{0x11f42, 0x11f42, NSM},
{0x11f43, 0x11f59, L},
{0x11fb0, 0x11fb0, L}, {0x11fb0, 0x11fb0, L},
{0x11fc0, 0x11fd4, L}, {0x11fc0, 0x11fd4, L},
{0x11fdd, 0x11fe0, ET}, {0x11fdd, 0x11fe0, ET},
@ -1118,8 +1131,10 @@
{0x12470, 0x12474, L}, {0x12470, 0x12474, L},
{0x12480, 0x12543, L}, {0x12480, 0x12543, L},
{0x12f90, 0x12ff2, L}, {0x12f90, 0x12ff2, L},
{0x13000, 0x1342e, L}, {0x13000, 0x1343f, L},
{0x13430, 0x13438, L}, {0x13440, 0x13440, NSM},
{0x13441, 0x13446, L},
{0x13447, 0x13455, NSM},
{0x14400, 0x14646, L}, {0x14400, 0x14646, L},
{0x16800, 0x16a38, L}, {0x16800, 0x16a38, L},
{0x16a40, 0x16a5e, L}, {0x16a40, 0x16a5e, L},
@ -1153,7 +1168,9 @@
{0x1aff5, 0x1affb, L}, {0x1aff5, 0x1affb, L},
{0x1affd, 0x1affe, L}, {0x1affd, 0x1affe, L},
{0x1b000, 0x1b122, L}, {0x1b000, 0x1b122, L},
{0x1b132, 0x1b132, L},
{0x1b150, 0x1b152, L}, {0x1b150, 0x1b152, L},
{0x1b155, 0x1b155, L},
{0x1b164, 0x1b167, L}, {0x1b164, 0x1b167, L},
{0x1b170, 0x1b2fb, L}, {0x1b170, 0x1b2fb, L},
{0x1bc00, 0x1bc6a, L}, {0x1bc00, 0x1bc6a, L},
@ -1180,6 +1197,7 @@
{0x1d1aa, 0x1d1ad, NSM}, {0x1d1aa, 0x1d1ad, NSM},
{0x1d1ae, 0x1d1e8, L}, {0x1d1ae, 0x1d1e8, L},
{0x1d242, 0x1d244, NSM}, {0x1d242, 0x1d244, NSM},
{0x1d2c0, 0x1d2d3, L},
{0x1d2e0, 0x1d2f3, L}, {0x1d2e0, 0x1d2f3, L},
{0x1d360, 0x1d378, L}, {0x1d360, 0x1d378, L},
{0x1d400, 0x1d454, L}, {0x1d400, 0x1d454, L},
@ -1220,11 +1238,14 @@
{0x1da9b, 0x1da9f, NSM}, {0x1da9b, 0x1da9f, NSM},
{0x1daa1, 0x1daaf, NSM}, {0x1daa1, 0x1daaf, NSM},
{0x1df00, 0x1df1e, L}, {0x1df00, 0x1df1e, L},
{0x1df25, 0x1df2a, L},
{0x1e000, 0x1e006, NSM}, {0x1e000, 0x1e006, NSM},
{0x1e008, 0x1e018, NSM}, {0x1e008, 0x1e018, NSM},
{0x1e01b, 0x1e021, NSM}, {0x1e01b, 0x1e021, NSM},
{0x1e023, 0x1e024, NSM}, {0x1e023, 0x1e024, NSM},
{0x1e026, 0x1e02a, NSM}, {0x1e026, 0x1e02a, NSM},
{0x1e030, 0x1e06d, L},
{0x1e08f, 0x1e08f, NSM},
{0x1e100, 0x1e12c, L}, {0x1e100, 0x1e12c, L},
{0x1e130, 0x1e136, NSM}, {0x1e130, 0x1e136, NSM},
{0x1e137, 0x1e13d, L}, {0x1e137, 0x1e13d, L},
@ -1236,6 +1257,9 @@
{0x1e2ec, 0x1e2ef, NSM}, {0x1e2ec, 0x1e2ef, NSM},
{0x1e2f0, 0x1e2f9, L}, {0x1e2f0, 0x1e2f9, L},
{0x1e2ff, 0x1e2ff, ET}, {0x1e2ff, 0x1e2ff, ET},
{0x1e4d0, 0x1e4eb, L},
{0x1e4ec, 0x1e4ef, NSM},
{0x1e4f0, 0x1e4f9, L},
{0x1e7e0, 0x1e7e6, L}, {0x1e7e0, 0x1e7e6, L},
{0x1e7e8, 0x1e7eb, L}, {0x1e7e8, 0x1e7eb, L},
{0x1e7ed, 0x1e7ee, L}, {0x1e7ed, 0x1e7ee, L},
@ -1293,12 +1317,13 @@
{0x1f250, 0x1f251, L}, {0x1f250, 0x1f251, L},
{0x1fbf0, 0x1fbf9, EN}, {0x1fbf0, 0x1fbf9, EN},
{0x20000, 0x2a6df, L}, {0x20000, 0x2a6df, L},
{0x2a700, 0x2b738, L}, {0x2a700, 0x2b739, L},
{0x2b740, 0x2b81d, L}, {0x2b740, 0x2b81d, L},
{0x2b820, 0x2cea1, L}, {0x2b820, 0x2cea1, L},
{0x2ceb0, 0x2ebe0, L}, {0x2ceb0, 0x2ebe0, L},
{0x2f800, 0x2fa1d, L}, {0x2f800, 0x2fa1d, L},
{0x30000, 0x3134a, L}, {0x30000, 0x3134a, L},
{0x31350, 0x323af, L},
{0xe0001, 0xe0001, BN}, {0xe0001, 0xe0001, BN},
{0xe0020, 0xe007f, BN}, {0xe0020, 0xe007f, BN},
{0xe0100, 0xe01ef, NSM}, {0xe0100, 0xe01ef, NSM},

View File

@ -1,5 +1,5 @@
/* /*
* Autogenerated by read_ucd.py from The Unicode Standard 14.0.0 * Autogenerated by read_ucd.py from The Unicode Standard 15.0.0
* *
* Identify Unicode characters that occupy no character cells of a * Identify Unicode characters that occupy no character cells of a
* terminal. * terminal.
@ -102,7 +102,7 @@
{0x0e47, 0x0e4e}, {0x0e47, 0x0e4e},
{0x0eb1, 0x0eb1}, {0x0eb1, 0x0eb1},
{0x0eb4, 0x0ebc}, {0x0eb4, 0x0ebc},
{0x0ec8, 0x0ecd}, {0x0ec8, 0x0ece},
{0x0f18, 0x0f19}, {0x0f18, 0x0f19},
{0x0f35, 0x0f35}, {0x0f35, 0x0f35},
{0x0f37, 0x0f37}, {0x0f37, 0x0f37},
@ -236,6 +236,7 @@
{0x10ae5, 0x10ae6}, {0x10ae5, 0x10ae6},
{0x10d24, 0x10d27}, {0x10d24, 0x10d27},
{0x10eab, 0x10eac}, {0x10eab, 0x10eac},
{0x10efd, 0x10eff},
{0x10f46, 0x10f50}, {0x10f46, 0x10f50},
{0x10f82, 0x10f85}, {0x10f82, 0x10f85},
{0x11001, 0x11001}, {0x11001, 0x11001},
@ -260,6 +261,7 @@
{0x11234, 0x11234}, {0x11234, 0x11234},
{0x11236, 0x11237}, {0x11236, 0x11237},
{0x1123e, 0x1123e}, {0x1123e, 0x1123e},
{0x11241, 0x11241},
{0x112df, 0x112df}, {0x112df, 0x112df},
{0x112e3, 0x112ea}, {0x112e3, 0x112ea},
{0x11300, 0x11301}, {0x11300, 0x11301},
@ -321,7 +323,12 @@
{0x11d95, 0x11d95}, {0x11d95, 0x11d95},
{0x11d97, 0x11d97}, {0x11d97, 0x11d97},
{0x11ef3, 0x11ef4}, {0x11ef3, 0x11ef4},
{0x13430, 0x13438}, {0x11f00, 0x11f01},
{0x11f36, 0x11f3a},
{0x11f40, 0x11f40},
{0x11f42, 0x11f42},
{0x13430, 0x13440},
{0x13447, 0x13455},
{0x16af0, 0x16af4}, {0x16af0, 0x16af4},
{0x16b30, 0x16b36}, {0x16b30, 0x16b36},
{0x16f4f, 0x16f4f}, {0x16f4f, 0x16f4f},
@ -347,9 +354,11 @@
{0x1e01b, 0x1e021}, {0x1e01b, 0x1e021},
{0x1e023, 0x1e024}, {0x1e023, 0x1e024},
{0x1e026, 0x1e02a}, {0x1e026, 0x1e02a},
{0x1e08f, 0x1e08f},
{0x1e130, 0x1e136}, {0x1e130, 0x1e136},
{0x1e2ae, 0x1e2ae}, {0x1e2ae, 0x1e2ae},
{0x1e2ec, 0x1e2ef}, {0x1e2ec, 0x1e2ef},
{0x1e4ec, 0x1e4ef},
{0x1e8d0, 0x1e8d6}, {0x1e8d0, 0x1e8d6},
{0x1e944, 0x1e94a}, {0x1e944, 0x1e94a},
{0xe0001, 0xe0001}, {0xe0001, 0xe0001},

View File

@ -1,5 +1,5 @@
/* /*
* Autogenerated by read_ucd.py from The Unicode Standard 14.0.0 * Autogenerated by read_ucd.py from The Unicode Standard 15.0.0
* *
* Identify Unicode characters that occupy two adjacent character cells * Identify Unicode characters that occupy two adjacent character cells
* in a terminal. * in a terminal.
@ -75,7 +75,9 @@
{0x1aff5, 0x1affb}, {0x1aff5, 0x1affb},
{0x1affd, 0x1affe}, {0x1affd, 0x1affe},
{0x1b000, 0x1b122}, {0x1b000, 0x1b122},
{0x1b132, 0x1b132},
{0x1b150, 0x1b152}, {0x1b150, 0x1b152},
{0x1b155, 0x1b155},
{0x1b164, 0x1b167}, {0x1b164, 0x1b167},
{0x1b170, 0x1b2fb}, {0x1b170, 0x1b2fb},
{0x1f004, 0x1f004}, {0x1f004, 0x1f004},
@ -109,7 +111,7 @@
{0x1f6cc, 0x1f6cc}, {0x1f6cc, 0x1f6cc},
{0x1f6d0, 0x1f6d2}, {0x1f6d0, 0x1f6d2},
{0x1f6d5, 0x1f6d7}, {0x1f6d5, 0x1f6d7},
{0x1f6dd, 0x1f6df}, {0x1f6dc, 0x1f6df},
{0x1f6eb, 0x1f6ec}, {0x1f6eb, 0x1f6ec},
{0x1f6f4, 0x1f6fc}, {0x1f6f4, 0x1f6fc},
{0x1f7e0, 0x1f7eb}, {0x1f7e0, 0x1f7eb},
@ -117,14 +119,12 @@
{0x1f90c, 0x1f93a}, {0x1f90c, 0x1f93a},
{0x1f93c, 0x1f945}, {0x1f93c, 0x1f945},
{0x1f947, 0x1f9ff}, {0x1f947, 0x1f9ff},
{0x1fa70, 0x1fa74}, {0x1fa70, 0x1fa7c},
{0x1fa78, 0x1fa7c}, {0x1fa80, 0x1fa88},
{0x1fa80, 0x1fa86}, {0x1fa90, 0x1fabd},
{0x1fa90, 0x1faac}, {0x1fabf, 0x1fac5},
{0x1fab0, 0x1faba}, {0x1face, 0x1fadb},
{0x1fac0, 0x1fac5}, {0x1fae0, 0x1fae8},
{0x1fad0, 0x1fad9}, {0x1faf0, 0x1faf8},
{0x1fae0, 0x1fae7},
{0x1faf0, 0x1faf6},
{0x20000, 0x2fffd}, {0x20000, 0x2fffd},
{0x30000, 0x3fffd}, {0x30000, 0x3fffd},