unicode7-0-0.py 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507
  1. # Auto generated by tools/make_width_tables.py
  2. # Data from wcwidth project (https://github.com/jquast/wcwidth)
  3. from rich.cells import CellTable
  4. cell_table = CellTable(
  5. "7.0.0",
  6. [
  7. (0, 0, 0),
  8. (768, 879, 0),
  9. (1155, 1161, 0),
  10. (1425, 1469, 0),
  11. (1471, 1471, 0),
  12. (1473, 1474, 0),
  13. (1476, 1477, 0),
  14. (1479, 1479, 0),
  15. (1536, 1541, 0),
  16. (1552, 1562, 0),
  17. (1564, 1564, 0),
  18. (1611, 1631, 0),
  19. (1648, 1648, 0),
  20. (1750, 1757, 0),
  21. (1759, 1764, 0),
  22. (1767, 1768, 0),
  23. (1770, 1773, 0),
  24. (1807, 1807, 0),
  25. (1809, 1809, 0),
  26. (1840, 1866, 0),
  27. (1958, 1968, 0),
  28. (2027, 2035, 0),
  29. (2070, 2073, 0),
  30. (2075, 2083, 0),
  31. (2085, 2087, 0),
  32. (2089, 2093, 0),
  33. (2137, 2139, 0),
  34. (2276, 2307, 0),
  35. (2362, 2364, 0),
  36. (2366, 2383, 0),
  37. (2385, 2391, 0),
  38. (2402, 2403, 0),
  39. (2433, 2435, 0),
  40. (2492, 2492, 0),
  41. (2494, 2500, 0),
  42. (2503, 2504, 0),
  43. (2507, 2509, 0),
  44. (2519, 2519, 0),
  45. (2530, 2531, 0),
  46. (2561, 2563, 0),
  47. (2620, 2620, 0),
  48. (2622, 2626, 0),
  49. (2631, 2632, 0),
  50. (2635, 2637, 0),
  51. (2641, 2641, 0),
  52. (2672, 2673, 0),
  53. (2677, 2677, 0),
  54. (2689, 2691, 0),
  55. (2748, 2748, 0),
  56. (2750, 2757, 0),
  57. (2759, 2761, 0),
  58. (2763, 2765, 0),
  59. (2786, 2787, 0),
  60. (2817, 2819, 0),
  61. (2876, 2876, 0),
  62. (2878, 2884, 0),
  63. (2887, 2888, 0),
  64. (2891, 2893, 0),
  65. (2902, 2903, 0),
  66. (2914, 2915, 0),
  67. (2946, 2946, 0),
  68. (3006, 3010, 0),
  69. (3014, 3016, 0),
  70. (3018, 3021, 0),
  71. (3031, 3031, 0),
  72. (3072, 3075, 0),
  73. (3134, 3140, 0),
  74. (3142, 3144, 0),
  75. (3146, 3149, 0),
  76. (3157, 3158, 0),
  77. (3170, 3171, 0),
  78. (3201, 3203, 0),
  79. (3260, 3260, 0),
  80. (3262, 3268, 0),
  81. (3270, 3272, 0),
  82. (3274, 3277, 0),
  83. (3285, 3286, 0),
  84. (3298, 3299, 0),
  85. (3329, 3331, 0),
  86. (3390, 3396, 0),
  87. (3398, 3400, 0),
  88. (3402, 3405, 0),
  89. (3415, 3415, 0),
  90. (3426, 3427, 0),
  91. (3458, 3459, 0),
  92. (3530, 3530, 0),
  93. (3535, 3540, 0),
  94. (3542, 3542, 0),
  95. (3544, 3551, 0),
  96. (3570, 3571, 0),
  97. (3633, 3633, 0),
  98. (3636, 3642, 0),
  99. (3655, 3662, 0),
  100. (3761, 3761, 0),
  101. (3764, 3769, 0),
  102. (3771, 3772, 0),
  103. (3784, 3789, 0),
  104. (3864, 3865, 0),
  105. (3893, 3893, 0),
  106. (3895, 3895, 0),
  107. (3897, 3897, 0),
  108. (3902, 3903, 0),
  109. (3953, 3972, 0),
  110. (3974, 3975, 0),
  111. (3981, 3991, 0),
  112. (3993, 4028, 0),
  113. (4038, 4038, 0),
  114. (4139, 4158, 0),
  115. (4182, 4185, 0),
  116. (4190, 4192, 0),
  117. (4194, 4196, 0),
  118. (4199, 4205, 0),
  119. (4209, 4212, 0),
  120. (4226, 4237, 0),
  121. (4239, 4239, 0),
  122. (4250, 4253, 0),
  123. (4352, 4447, 2),
  124. (4448, 4607, 0),
  125. (4957, 4959, 0),
  126. (5906, 5908, 0),
  127. (5938, 5940, 0),
  128. (5970, 5971, 0),
  129. (6002, 6003, 0),
  130. (6068, 6099, 0),
  131. (6109, 6109, 0),
  132. (6155, 6158, 0),
  133. (6313, 6313, 0),
  134. (6432, 6443, 0),
  135. (6448, 6459, 0),
  136. (6576, 6592, 0),
  137. (6600, 6601, 0),
  138. (6679, 6683, 0),
  139. (6741, 6750, 0),
  140. (6752, 6780, 0),
  141. (6783, 6783, 0),
  142. (6832, 6846, 0),
  143. (6912, 6916, 0),
  144. (6964, 6980, 0),
  145. (7019, 7027, 0),
  146. (7040, 7042, 0),
  147. (7073, 7085, 0),
  148. (7142, 7155, 0),
  149. (7204, 7223, 0),
  150. (7376, 7378, 0),
  151. (7380, 7400, 0),
  152. (7405, 7405, 0),
  153. (7410, 7412, 0),
  154. (7416, 7417, 0),
  155. (7616, 7669, 0),
  156. (7676, 7679, 0),
  157. (8203, 8207, 0),
  158. (8232, 8238, 0),
  159. (8288, 8303, 0),
  160. (8400, 8432, 0),
  161. (9001, 9002, 2),
  162. (11503, 11505, 0),
  163. (11647, 11647, 0),
  164. (11744, 11775, 0),
  165. (11904, 11929, 2),
  166. (11931, 12019, 2),
  167. (12032, 12245, 2),
  168. (12272, 12283, 2),
  169. (12288, 12329, 2),
  170. (12330, 12335, 0),
  171. (12336, 12350, 2),
  172. (12353, 12438, 2),
  173. (12441, 12442, 0),
  174. (12443, 12543, 2),
  175. (12549, 12589, 2),
  176. (12593, 12643, 2),
  177. (12644, 12644, 0),
  178. (12645, 12686, 2),
  179. (12688, 12730, 2),
  180. (12736, 12771, 2),
  181. (12784, 12830, 2),
  182. (12832, 12871, 2),
  183. (12880, 13054, 2),
  184. (13056, 19903, 2),
  185. (19968, 42124, 2),
  186. (42128, 42182, 2),
  187. (42607, 42610, 0),
  188. (42612, 42621, 0),
  189. (42655, 42655, 0),
  190. (42736, 42737, 0),
  191. (43010, 43010, 0),
  192. (43014, 43014, 0),
  193. (43019, 43019, 0),
  194. (43043, 43047, 0),
  195. (43136, 43137, 0),
  196. (43188, 43204, 0),
  197. (43232, 43249, 0),
  198. (43302, 43309, 0),
  199. (43335, 43347, 0),
  200. (43360, 43388, 2),
  201. (43392, 43395, 0),
  202. (43443, 43456, 0),
  203. (43493, 43493, 0),
  204. (43561, 43574, 0),
  205. (43587, 43587, 0),
  206. (43596, 43597, 0),
  207. (43643, 43645, 0),
  208. (43696, 43696, 0),
  209. (43698, 43700, 0),
  210. (43703, 43704, 0),
  211. (43710, 43711, 0),
  212. (43713, 43713, 0),
  213. (43755, 43759, 0),
  214. (43765, 43766, 0),
  215. (44003, 44010, 0),
  216. (44012, 44013, 0),
  217. (44032, 55203, 2),
  218. (55216, 55295, 0),
  219. (63744, 64255, 2),
  220. (64286, 64286, 0),
  221. (65024, 65039, 0),
  222. (65040, 65049, 2),
  223. (65056, 65069, 0),
  224. (65072, 65106, 2),
  225. (65108, 65126, 2),
  226. (65128, 65131, 2),
  227. (65279, 65279, 0),
  228. (65281, 65376, 2),
  229. (65440, 65440, 0),
  230. (65504, 65510, 2),
  231. (65520, 65531, 0),
  232. (66045, 66045, 0),
  233. (66272, 66272, 0),
  234. (66422, 66426, 0),
  235. (68097, 68099, 0),
  236. (68101, 68102, 0),
  237. (68108, 68111, 0),
  238. (68152, 68154, 0),
  239. (68159, 68159, 0),
  240. (68325, 68326, 0),
  241. (69632, 69634, 0),
  242. (69688, 69702, 0),
  243. (69759, 69762, 0),
  244. (69808, 69818, 0),
  245. (69821, 69821, 0),
  246. (69888, 69890, 0),
  247. (69927, 69940, 0),
  248. (70003, 70003, 0),
  249. (70016, 70018, 0),
  250. (70067, 70080, 0),
  251. (70188, 70199, 0),
  252. (70367, 70378, 0),
  253. (70401, 70403, 0),
  254. (70460, 70460, 0),
  255. (70462, 70468, 0),
  256. (70471, 70472, 0),
  257. (70475, 70477, 0),
  258. (70487, 70487, 0),
  259. (70498, 70499, 0),
  260. (70502, 70508, 0),
  261. (70512, 70516, 0),
  262. (70832, 70851, 0),
  263. (71087, 71093, 0),
  264. (71096, 71104, 0),
  265. (71216, 71232, 0),
  266. (71339, 71351, 0),
  267. (92912, 92916, 0),
  268. (92976, 92982, 0),
  269. (94033, 94078, 0),
  270. (94095, 94098, 0),
  271. (110592, 110593, 2),
  272. (113821, 113822, 0),
  273. (113824, 113827, 0),
  274. (119141, 119145, 0),
  275. (119149, 119170, 0),
  276. (119173, 119179, 0),
  277. (119210, 119213, 0),
  278. (119362, 119364, 0),
  279. (125136, 125142, 0),
  280. (127488, 127490, 2),
  281. (127504, 127546, 2),
  282. (127552, 127560, 2),
  283. (127568, 127569, 2),
  284. (131072, 196605, 2),
  285. (196608, 262141, 2),
  286. (917504, 921599, 0),
  287. ],
  288. frozenset(
  289. [
  290. "#",
  291. "*",
  292. "0",
  293. "1",
  294. "2",
  295. "3",
  296. "4",
  297. "5",
  298. "6",
  299. "7",
  300. "8",
  301. "9",
  302. "©",
  303. "®",
  304. "‼",
  305. "⁉",
  306. "™",
  307. "ℹ",
  308. "↔",
  309. "↕",
  310. "↖",
  311. "↗",
  312. "↘",
  313. "↙",
  314. "↩",
  315. "↪",
  316. "⌨",
  317. "⏏",
  318. "⏭",
  319. "⏮",
  320. "⏯",
  321. "⏱",
  322. "⏲",
  323. "⏸",
  324. "⏹",
  325. "⏺",
  326. "Ⓜ",
  327. "▪",
  328. "▫",
  329. "▶",
  330. "◀",
  331. "◻",
  332. "◼",
  333. "☀",
  334. "☁",
  335. "☂",
  336. "☃",
  337. "☄",
  338. "☎",
  339. "☑",
  340. "☘",
  341. "☝",
  342. "☠",
  343. "☢",
  344. "☣",
  345. "☦",
  346. "☪",
  347. "☮",
  348. "☯",
  349. "☸",
  350. "☹",
  351. "☺",
  352. "♀",
  353. "♂",
  354. "♟",
  355. "♠",
  356. "♣",
  357. "♥",
  358. "♦",
  359. "♨",
  360. "♻",
  361. "♾",
  362. "⚒",
  363. "⚔",
  364. "⚕",
  365. "⚖",
  366. "⚗",
  367. "⚙",
  368. "⚛",
  369. "⚜",
  370. "⚠",
  371. "⚧",
  372. "⚰",
  373. "⚱",
  374. "⛈",
  375. "⛏",
  376. "⛑",
  377. "⛓",
  378. "⛩",
  379. "⛰",
  380. "⛱",
  381. "⛴",
  382. "⛷",
  383. "⛸",
  384. "⛹",
  385. "✂",
  386. "✈",
  387. "✉",
  388. "✌",
  389. "✍",
  390. "✏",
  391. "✒",
  392. "✔",
  393. "✖",
  394. "✝",
  395. "✡",
  396. "✳",
  397. "✴",
  398. "❄",
  399. "❇",
  400. "❣",
  401. "❤",
  402. "➡",
  403. "⤴",
  404. "⤵",
  405. "⬅",
  406. "⬆",
  407. "⬇",
  408. "🅰",
  409. "🅱",
  410. "🅾",
  411. "🅿",
  412. "🌡",
  413. "🌤",
  414. "🌥",
  415. "🌦",
  416. "🌧",
  417. "🌨",
  418. "🌩",
  419. "🌪",
  420. "🌫",
  421. "🌬",
  422. "🌶",
  423. "🍽",
  424. "🎖",
  425. "🎗",
  426. "🎙",
  427. "🎚",
  428. "🎛",
  429. "🎞",
  430. "🎟",
  431. "🏋",
  432. "🏌",
  433. "🏍",
  434. "🏎",
  435. "🏔",
  436. "🏕",
  437. "🏖",
  438. "🏗",
  439. "🏘",
  440. "🏙",
  441. "🏚",
  442. "🏛",
  443. "🏜",
  444. "🏝",
  445. "🏞",
  446. "🏟",
  447. "🏳",
  448. "🏵",
  449. "🏷",
  450. "🐿",
  451. "👁",
  452. "📽",
  453. "🕉",
  454. "🕊",
  455. "🕯",
  456. "🕰",
  457. "🕳",
  458. "🕴",
  459. "🕵",
  460. "🕶",
  461. "🕷",
  462. "🕸",
  463. "🕹",
  464. "🖇",
  465. "🖊",
  466. "🖋",
  467. "🖌",
  468. "🖍",
  469. "🖐",
  470. "🖥",
  471. "🖨",
  472. "🖱",
  473. "🖲",
  474. "🖼",
  475. "🗂",
  476. "🗃",
  477. "🗄",
  478. "🗑",
  479. "🗒",
  480. "🗓",
  481. "🗜",
  482. "🗝",
  483. "🗞",
  484. "🗡",
  485. "🗣",
  486. "🗨",
  487. "🗯",
  488. "🗳",
  489. "🗺",
  490. "🛋",
  491. "🛍",
  492. "🛎",
  493. "🛏",
  494. "🛠",
  495. "🛡",
  496. "🛢",
  497. "🛣",
  498. "🛤",
  499. "🛥",
  500. "🛩",
  501. "🛰",
  502. "🛳",
  503. ]
  504. ),
  505. )