{"thread":{"id":"48847","subject":"[PATCH] unicode: update the width tables to Unicode 11","startedAt":"2018-07-09T19:45:08Z","lastAt":"2018-07-09T19:45:08Z","messageCount":1,"participants":["Beat Bolli"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"351995","messageId":"20180709194452.19365-1-dev+git@drbeat.li","threadId":"48847","inReplyTo":null,"subject":"[PATCH] unicode: update the width tables to Unicode 11","fromName":"Beat Bolli","fromEmail":"dev+git@drbeat.li","sentAt":"2018-07-09T19:44:52Z","receivedAt":"2018-07-09T19:45:08Z","isPatch":true,"sender":{"key":"dev+git@drbeat.li","avatar":"https://avatars.githubusercontent.com/u/21444?v=4"},"body":"Now that Unicode 11 has been announced[0], update the character\nwidth tables to the new version.\n\n[0] http://blog.unicode.org/2018/06/announcing-unicode-standard-version-110.html\n\nSigned-off-by: Beat Bolli <dev+git@drbeat.li>\n---\n unicode-width.h | 41 ++++++++++++++++++++++++++++-------------\n 1 file changed, 28 insertions(+), 13 deletions(-)\n\ndiff --git a/unicode-width.h b/unicode-width.h\nindex 6dee2c77ce..7c643760f8 100644\n--- a/unicode-width.h\n+++ b/unicode-width.h\n@@ -20,12 +20,13 @@ static const struct interval zero_width[] = {\n { 0x0730, 0x074A },\n { 0x07A6, 0x07B0 },\n { 0x07EB, 0x07F3 },\n+{ 0x07FD, 0x07FD },\n { 0x0816, 0x0819 },\n { 0x081B, 0x0823 },\n { 0x0825, 0x0827 },\n { 0x0829, 0x082D },\n { 0x0859, 0x085B },\n-{ 0x08D4, 0x0902 },\n+{ 0x08D3, 0x0902 },\n { 0x093A, 0x093A },\n { 0x093C, 0x093C },\n { 0x0941, 0x0948 },\n@@ -37,6 +38,7 @@ static const struct interval zero_width[] = {\n { 0x09C1, 0x09C4 },\n { 0x09CD, 0x09CD },\n { 0x09E2, 0x09E3 },\n+{ 0x09FE, 0x09FE },\n { 0x0A01, 0x0A02 },\n { 0x0A3C, 0x0A3C },\n { 0x0A41, 0x0A42 },\n@@ -63,6 +65,7 @@ static const struct interval zero_width[] = {\n { 0x0BC0, 0x0BC0 },\n { 0x0BCD, 0x0BCD },\n { 0x0C00, 0x0C00 },\n+{ 0x0C04, 0x0C04 },\n { 0x0C3E, 0x0C40 },\n { 0x0C46, 0x0C48 },\n { 0x0C4A, 0x0C4D },\n@@ -182,6 +185,7 @@ static const struct interval zero_width[] = {\n { 0xA825, 0xA826 },\n { 0xA8C4, 0xA8C5 },\n { 0xA8E0, 0xA8F1 },\n+{ 0xA8FF, 0xA8FF },\n { 0xA926, 0xA92D },\n { 0xA947, 0xA951 },\n { 0xA980, 0xA982 },\n@@ -219,19 +223,22 @@ static const struct interval zero_width[] = {\n { 0x10A38, 0x10A3A },\n { 0x10A3F, 0x10A3F },\n { 0x10AE5, 0x10AE6 },\n+{ 0x10D24, 0x10D27 },\n+{ 0x10F46, 0x10F50 },\n { 0x11001, 0x11001 },\n { 0x11038, 0x11046 },\n { 0x1107F, 0x11081 },\n { 0x110B3, 0x110B6 },\n { 0x110B9, 0x110BA },\n { 0x110BD, 0x110BD },\n+{ 0x110CD, 0x110CD },\n { 0x11100, 0x11102 },\n { 0x11127, 0x1112B },\n { 0x1112D, 0x11134 },\n { 0x11173, 0x11173 },\n { 0x11180, 0x11181 },\n { 0x111B6, 0x111BE },\n-{ 0x111CA, 0x111CC },\n+{ 0x111C9, 0x111CC },\n { 0x1122F, 0x11231 },\n { 0x11234, 0x11234 },\n { 0x11236, 0x11237 },\n@@ -239,13 +246,14 @@ static const struct interval zero_width[] = {\n { 0x112DF, 0x112DF },\n { 0x112E3, 0x112EA },\n { 0x11300, 0x11301 },\n-{ 0x1133C, 0x1133C },\n+{ 0x1133B, 0x1133C },\n { 0x11340, 0x11340 },\n { 0x11366, 0x1136C },\n { 0x11370, 0x11374 },\n { 0x11438, 0x1143F },\n { 0x11442, 0x11444 },\n { 0x11446, 0x11446 },\n+{ 0x1145E, 0x1145E },\n { 0x114B3, 0x114B8 },\n { 0x114BA, 0x114BA },\n { 0x114BF, 0x114C0 },\n@@ -264,8 +272,9 @@ static const struct interval zero_width[] = {\n { 0x1171D, 0x1171F },\n { 0x11722, 0x11725 },\n { 0x11727, 0x1172B },\n-{ 0x11A01, 0x11A06 },\n-{ 0x11A09, 0x11A0A },\n+{ 0x1182F, 0x11837 },\n+{ 0x11839, 0x1183A },\n+{ 0x11A01, 0x11A0A },\n { 0x11A33, 0x11A38 },\n { 0x11A3B, 0x11A3E },\n { 0x11A47, 0x11A47 },\n@@ -285,6 +294,10 @@ static const struct interval zero_width[] = {\n { 0x11D3C, 0x11D3D },\n { 0x11D3F, 0x11D45 },\n { 0x11D47, 0x11D47 },\n+{ 0x11D90, 0x11D91 },\n+{ 0x11D95, 0x11D95 },\n+{ 0x11D97, 0x11D97 },\n+{ 0x11EF3, 0x11EF4 },\n { 0x16AF0, 0x16AF4 },\n { 0x16B30, 0x16B36 },\n { 0x16F8F, 0x16F92 },\n@@ -355,7 +368,7 @@ static const struct interval double_width[] = {\n { 0x3000, 0x303E },\n { 0x3041, 0x3096 },\n { 0x3099, 0x30FF },\n-{ 0x3105, 0x312E },\n+{ 0x3105, 0x312F },\n { 0x3131, 0x318E },\n { 0x3190, 0x31BA },\n { 0x31C0, 0x31E3 },\n@@ -375,7 +388,7 @@ static const struct interval double_width[] = {\n { 0xFF01, 0xFF60 },\n { 0xFFE0, 0xFFE6 },\n { 0x16FE0, 0x16FE1 },\n-{ 0x17000, 0x187EC },\n+{ 0x17000, 0x187F1 },\n { 0x18800, 0x18AF2 },\n { 0x1B000, 0x1B11E },\n { 0x1B170, 0x1B2FB },\n@@ -410,13 +423,15 @@ static const struct interval double_width[] = {\n { 0x1F6CC, 0x1F6CC },\n { 0x1F6D0, 0x1F6D2 },\n { 0x1F6EB, 0x1F6EC },\n-{ 0x1F6F4, 0x1F6F8 },\n+{ 0x1F6F4, 0x1F6F9 },\n { 0x1F910, 0x1F93E },\n-{ 0x1F940, 0x1F94C },\n-{ 0x1F950, 0x1F96B },\n-{ 0x1F980, 0x1F997 },\n-{ 0x1F9C0, 0x1F9C0 },\n-{ 0x1F9D0, 0x1F9E6 },\n+{ 0x1F940, 0x1F970 },\n+{ 0x1F973, 0x1F976 },\n+{ 0x1F97A, 0x1F97A },\n+{ 0x1F97C, 0x1F9A2 },\n+{ 0x1F9B0, 0x1F9B9 },\n+{ 0x1F9C0, 0x1F9C2 },\n+{ 0x1F9D0, 0x1F9FF },\n { 0x20000, 0x2FFFD },\n { 0x30000, 0x3FFFD }\n };\n-- \n2.18.0.203.gfac676dfb9\n\n"}]}