Upload folder using huggingface_hub (part 17)
Browse filesThis view is limited to 50 files because it contains too many changes. See raw diff
- .gitattributes +44 -0
- venv/lib/python3.11/site-packages/rich-15.0.0.dist-info/INSTALLER +1 -0
- venv/lib/python3.11/site-packages/rich-15.0.0.dist-info/METADATA +479 -0
- venv/lib/python3.11/site-packages/rich-15.0.0.dist-info/RECORD +206 -0
- venv/lib/python3.11/site-packages/rich-15.0.0.dist-info/WHEEL +4 -0
- venv/lib/python3.11/site-packages/rich-15.0.0.dist-info/licenses/LICENSE +19 -0
- venv/lib/python3.11/site-packages/rich/__main__.py +245 -0
- venv/lib/python3.11/site-packages/rich/_emoji_codes.py +0 -0
- venv/lib/python3.11/site-packages/rich/_emoji_replace.py +31 -0
- venv/lib/python3.11/site-packages/rich/_export_format.py +76 -0
- venv/lib/python3.11/site-packages/rich/_extension.py +10 -0
- venv/lib/python3.11/site-packages/rich/_fileno.py +24 -0
- venv/lib/python3.11/site-packages/rich/_inspect.py +272 -0
- venv/lib/python3.11/site-packages/rich/_log_render.py +94 -0
- venv/lib/python3.11/site-packages/rich/_loop.py +43 -0
- venv/lib/python3.11/site-packages/rich/_null_file.py +69 -0
- venv/lib/python3.11/site-packages/rich/_palettes.py +309 -0
- venv/lib/python3.11/site-packages/rich/_pick.py +17 -0
- venv/lib/python3.11/site-packages/rich/_ratio.py +153 -0
- venv/lib/python3.11/site-packages/rich/_spinners.py +482 -0
- venv/lib/python3.11/site-packages/rich/_stack.py +16 -0
- venv/lib/python3.11/site-packages/rich/_timer.py +19 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/__init__.py +93 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/_versions.py +23 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode10-0-0.py +611 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode11-0-0.py +625 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode12-0-0.py +637 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode12-1-0.py +636 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode13-0-0.py +648 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode14-0-0.py +661 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode15-0-0.py +671 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode15-1-0.py +670 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode16-0-0.py +683 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode17-0-0.py +691 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode4-1-0.py +425 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode5-0-0.py +430 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode5-1-0.py +433 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode5-2-0.py +461 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode6-0-0.py +469 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode6-1-0.py +480 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode6-2-0.py +480 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode6-3-0.py +481 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode7-0-0.py +507 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode8-0-0.py +515 -0
- venv/lib/python3.11/site-packages/rich/_unicode_data/unicode9-0-0.py +598 -0
- venv/lib/python3.11/site-packages/rich/_win32_console.py +661 -0
- venv/lib/python3.11/site-packages/rich/_windows.py +71 -0
- venv/lib/python3.11/site-packages/rich/_windows_renderer.py +56 -0
- venv/lib/python3.11/site-packages/rich/_wrap.py +93 -0
- venv/lib/python3.11/site-packages/rich/abc.py +33 -0
.gitattributes
CHANGED
|
@@ -347,3 +347,47 @@ venv/lib/python3.11/site-packages/pip/_vendor/distlib/w64.exe filter=lfs diff=lf
|
|
| 347 |
venv/lib/python3.11/site-packages/psutil/_psutil_linux.abi3.so filter=lfs diff=lfs merge=lfs -text
|
| 348 |
venv/lib/python3.11/site-packages/pydantic_core/_pydantic_core.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 349 |
venv/lib/python3.11/site-packages/regex/_regex.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 347 |
venv/lib/python3.11/site-packages/psutil/_psutil_linux.abi3.so filter=lfs diff=lfs merge=lfs -text
|
| 348 |
venv/lib/python3.11/site-packages/pydantic_core/_pydantic_core.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 349 |
venv/lib/python3.11/site-packages/regex/_regex.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 350 |
+
venv/lib/python3.11/site-packages/safetensors/_safetensors_rust.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 351 |
+
venv/lib/python3.11/site-packages/scipy/_cyutility.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 352 |
+
venv/lib/python3.11/site-packages/scipy/_lib/_uarray/_uarray.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 353 |
+
venv/lib/python3.11/site-packages/scipy/cluster/_hierarchy.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 354 |
+
venv/lib/python3.11/site-packages/scipy/cluster/_optimal_leaf_ordering.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 355 |
+
venv/lib/python3.11/site-packages/scipy/cluster/_vq.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 356 |
+
venv/lib/python3.11/site-packages/scipy/fft/_pocketfft/pypocketfft.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 357 |
+
venv/lib/python3.11/site-packages/scipy/fftpack/convolve.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 358 |
+
venv/lib/python3.11/site-packages/scipy/integrate/_odepack.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 359 |
+
venv/lib/python3.11/site-packages/scipy/integrate/_quadpack.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 360 |
+
venv/lib/python3.11/site-packages/scipy/integrate/_vode.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 361 |
+
venv/lib/python3.11/site-packages/scipy/interpolate/_dfitpack.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 362 |
+
venv/lib/python3.11/site-packages/scipy/interpolate/_dierckx.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 363 |
+
venv/lib/python3.11/site-packages/scipy/interpolate/_interpnd.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 364 |
+
venv/lib/python3.11/site-packages/scipy/interpolate/_ppoly.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 365 |
+
venv/lib/python3.11/site-packages/scipy/interpolate/_rbfinterp_pythran.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 366 |
+
venv/lib/python3.11/site-packages/scipy/interpolate/_rgi_cython.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 367 |
+
venv/lib/python3.11/site-packages/scipy/io/_fast_matrix_market/_fmm_core.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 368 |
+
venv/lib/python3.11/site-packages/scipy/io/matlab/_mio5_utils.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 369 |
+
venv/lib/python3.11/site-packages/scipy/io/matlab/_streams.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 370 |
+
venv/lib/python3.11/site-packages/scipy/linalg/_batched_linalg.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 371 |
+
venv/lib/python3.11/site-packages/scipy/linalg/_cythonized_array_utils.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 372 |
+
venv/lib/python3.11/site-packages/scipy/linalg/_decomp_interpolative.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 373 |
+
venv/lib/python3.11/site-packages/scipy/linalg/_decomp_lu_cython.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 374 |
+
venv/lib/python3.11/site-packages/scipy/linalg/_decomp_update.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 375 |
+
venv/lib/python3.11/site-packages/scipy/linalg/_fblas.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 376 |
+
venv/lib/python3.11/site-packages/scipy/linalg/_flapack.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 377 |
+
venv/lib/python3.11/site-packages/scipy/linalg/_linalg_pythran.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 378 |
+
venv/lib/python3.11/site-packages/scipy/linalg/_matfuncs_expm.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 379 |
+
venv/lib/python3.11/site-packages/scipy/linalg/_matfuncs_schur_sqrtm.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 380 |
+
venv/lib/python3.11/site-packages/scipy/linalg/_solve_toeplitz.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 381 |
+
venv/lib/python3.11/site-packages/scipy/linalg/cython_blas.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 382 |
+
venv/lib/python3.11/site-packages/scipy/linalg/cython_lapack.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 383 |
+
venv/lib/python3.11/site-packages/scipy/ndimage/_nd_image.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 384 |
+
venv/lib/python3.11/site-packages/scipy/ndimage/_ni_label.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 385 |
+
venv/lib/python3.11/site-packages/scipy/odr/__odrpack.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 386 |
+
venv/lib/python3.11/site-packages/scipy/optimize/_bglu_dense.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 387 |
+
venv/lib/python3.11/site-packages/scipy/optimize/_highspy/_core.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 388 |
+
venv/lib/python3.11/site-packages/scipy/optimize/_highspy/_highs_options.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 389 |
+
venv/lib/python3.11/site-packages/scipy/optimize/_lbfgsb.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 390 |
+
venv/lib/python3.11/site-packages/scipy/optimize/_moduleTNC.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 391 |
+
venv/lib/python3.11/site-packages/scipy/optimize/_pava_pybind.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 392 |
+
venv/lib/python3.11/site-packages/scipy/optimize/_slsqplib.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
| 393 |
+
venv/lib/python3.11/site-packages/scipy/optimize/_trlib/_trlib.cpython-311-x86_64-linux-gnu.so filter=lfs diff=lfs merge=lfs -text
|
venv/lib/python3.11/site-packages/rich-15.0.0.dist-info/INSTALLER
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
pip
|
venv/lib/python3.11/site-packages/rich-15.0.0.dist-info/METADATA
ADDED
|
@@ -0,0 +1,479 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
Metadata-Version: 2.4
|
| 2 |
+
Name: rich
|
| 3 |
+
Version: 15.0.0
|
| 4 |
+
Summary: Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal
|
| 5 |
+
License: MIT
|
| 6 |
+
License-File: LICENSE
|
| 7 |
+
Author: Will McGugan
|
| 8 |
+
Author-email: willmcgugan@gmail.com
|
| 9 |
+
Requires-Python: >=3.9.0
|
| 10 |
+
Classifier: Development Status :: 5 - Production/Stable
|
| 11 |
+
Classifier: Environment :: Console
|
| 12 |
+
Classifier: Framework :: IPython
|
| 13 |
+
Classifier: Intended Audience :: Developers
|
| 14 |
+
Classifier: License :: OSI Approved :: MIT License
|
| 15 |
+
Classifier: Operating System :: MacOS
|
| 16 |
+
Classifier: Operating System :: Microsoft :: Windows
|
| 17 |
+
Classifier: Operating System :: POSIX :: Linux
|
| 18 |
+
Classifier: Programming Language :: Python :: 3
|
| 19 |
+
Classifier: Programming Language :: Python :: 3.9
|
| 20 |
+
Classifier: Programming Language :: Python :: 3.10
|
| 21 |
+
Classifier: Programming Language :: Python :: 3.11
|
| 22 |
+
Classifier: Programming Language :: Python :: 3.12
|
| 23 |
+
Classifier: Programming Language :: Python :: 3.13
|
| 24 |
+
Classifier: Programming Language :: Python :: 3.14
|
| 25 |
+
Classifier: Typing :: Typed
|
| 26 |
+
Provides-Extra: jupyter
|
| 27 |
+
Requires-Dist: ipywidgets (>=7.5.1,<9) ; extra == "jupyter"
|
| 28 |
+
Requires-Dist: markdown-it-py (>=2.2.0)
|
| 29 |
+
Requires-Dist: pygments (>=2.13.0,<3.0.0)
|
| 30 |
+
Project-URL: Documentation, https://rich.readthedocs.io/en/latest/
|
| 31 |
+
Project-URL: Homepage, https://github.com/Textualize/rich
|
| 32 |
+
Description-Content-Type: text/markdown
|
| 33 |
+
|
| 34 |
+
[](https://pypi.org/project/rich/) [](https://badge.fury.io/py/rich)
|
| 35 |
+
|
| 36 |
+
[](https://pepy.tech/project/rich)
|
| 37 |
+
[](https://codecov.io/gh/Textualize/rich)
|
| 38 |
+
[](https://www.willmcgugan.com/tag/rich/)
|
| 39 |
+
[](https://twitter.com/willmcgugan)
|
| 40 |
+
|
| 41 |
+

|
| 42 |
+
|
| 43 |
+
[English readme](https://github.com/textualize/rich/blob/master/README.md)
|
| 44 |
+
• [简体中文 readme](https://github.com/textualize/rich/blob/master/README.cn.md)
|
| 45 |
+
• [正體中文 readme](https://github.com/textualize/rich/blob/master/README.zh-tw.md)
|
| 46 |
+
• [Lengua española readme](https://github.com/textualize/rich/blob/master/README.es.md)
|
| 47 |
+
• [Deutsche readme](https://github.com/textualize/rich/blob/master/README.de.md)
|
| 48 |
+
• [Läs på svenska](https://github.com/textualize/rich/blob/master/README.sv.md)
|
| 49 |
+
• [日本語 readme](https://github.com/textualize/rich/blob/master/README.ja.md)
|
| 50 |
+
• [한국어 readme](https://github.com/textualize/rich/blob/master/README.kr.md)
|
| 51 |
+
• [Français readme](https://github.com/textualize/rich/blob/master/README.fr.md)
|
| 52 |
+
• [Schwizerdütsch readme](https://github.com/textualize/rich/blob/master/README.de-ch.md)
|
| 53 |
+
• [हिन्दी readme](https://github.com/textualize/rich/blob/master/README.hi.md)
|
| 54 |
+
• [Português brasileiro readme](https://github.com/textualize/rich/blob/master/README.pt-br.md)
|
| 55 |
+
• [Italian readme](https://github.com/textualize/rich/blob/master/README.it.md)
|
| 56 |
+
• [Русский readme](https://github.com/textualize/rich/blob/master/README.ru.md)
|
| 57 |
+
• [Indonesian readme](https://github.com/textualize/rich/blob/master/README.id.md)
|
| 58 |
+
• [فارسی readme](https://github.com/textualize/rich/blob/master/README.fa.md)
|
| 59 |
+
• [Türkçe readme](https://github.com/textualize/rich/blob/master/README.tr.md)
|
| 60 |
+
• [Polskie readme](https://github.com/textualize/rich/blob/master/README.pl.md)
|
| 61 |
+
|
| 62 |
+
|
| 63 |
+
Rich is a Python library for _rich_ text and beautiful formatting in the terminal.
|
| 64 |
+
|
| 65 |
+
The [Rich API](https://rich.readthedocs.io/en/latest/) makes it easy to add color and style to terminal output. Rich can also render pretty tables, progress bars, markdown, syntax highlighted source code, tracebacks, and more — out of the box.
|
| 66 |
+
|
| 67 |
+

|
| 68 |
+
|
| 69 |
+
For a video introduction to Rich see [calmcode.io](https://calmcode.io/rich/introduction.html) by [@fishnets88](https://twitter.com/fishnets88).
|
| 70 |
+
|
| 71 |
+
See what [people are saying about Rich](https://www.willmcgugan.com/blog/pages/post/rich-tweets/).
|
| 72 |
+
|
| 73 |
+
## Compatibility
|
| 74 |
+
|
| 75 |
+
Rich works with Linux, macOS and Windows. True color / emoji works with new Windows Terminal, classic terminal is limited to 16 colors. Rich requires Python 3.8 or later.
|
| 76 |
+
|
| 77 |
+
Rich works with [Jupyter notebooks](https://jupyter.org/) with no additional configuration required.
|
| 78 |
+
|
| 79 |
+
## Installing
|
| 80 |
+
|
| 81 |
+
Install with `pip` or your favorite PyPI package manager.
|
| 82 |
+
|
| 83 |
+
```sh
|
| 84 |
+
python -m pip install rich
|
| 85 |
+
```
|
| 86 |
+
|
| 87 |
+
Run the following to test Rich output on your terminal:
|
| 88 |
+
|
| 89 |
+
```sh
|
| 90 |
+
python -m rich
|
| 91 |
+
```
|
| 92 |
+
|
| 93 |
+
## Rich Print
|
| 94 |
+
|
| 95 |
+
To effortlessly add rich output to your application, you can import the [rich print](https://rich.readthedocs.io/en/latest/introduction.html#quick-start) method, which has the same signature as the builtin Python function. Try this:
|
| 96 |
+
|
| 97 |
+
```python
|
| 98 |
+
from rich import print
|
| 99 |
+
|
| 100 |
+
print("Hello, [bold magenta]World[/bold magenta]!", ":vampire:", locals())
|
| 101 |
+
```
|
| 102 |
+
|
| 103 |
+

|
| 104 |
+
|
| 105 |
+
## Rich REPL
|
| 106 |
+
|
| 107 |
+
Rich can be installed in the Python REPL, so that any data structures will be pretty printed and highlighted.
|
| 108 |
+
|
| 109 |
+
```python
|
| 110 |
+
>>> from rich import pretty
|
| 111 |
+
>>> pretty.install()
|
| 112 |
+
```
|
| 113 |
+
|
| 114 |
+

|
| 115 |
+
|
| 116 |
+
## Using the Console
|
| 117 |
+
|
| 118 |
+
For more control over rich terminal content, import and construct a [Console](https://rich.readthedocs.io/en/latest/reference/console.html#rich.console.Console) object.
|
| 119 |
+
|
| 120 |
+
```python
|
| 121 |
+
from rich.console import Console
|
| 122 |
+
|
| 123 |
+
console = Console()
|
| 124 |
+
```
|
| 125 |
+
|
| 126 |
+
The Console object has a `print` method which has an intentionally similar interface to the builtin `print` function. Here's an example of use:
|
| 127 |
+
|
| 128 |
+
```python
|
| 129 |
+
console.print("Hello", "World!")
|
| 130 |
+
```
|
| 131 |
+
|
| 132 |
+
As you might expect, this will print `"Hello World!"` to the terminal. Note that unlike the builtin `print` function, Rich will word-wrap your text to fit within the terminal width.
|
| 133 |
+
|
| 134 |
+
There are a few ways of adding color and style to your output. You can set a style for the entire output by adding a `style` keyword argument. Here's an example:
|
| 135 |
+
|
| 136 |
+
```python
|
| 137 |
+
console.print("Hello", "World!", style="bold red")
|
| 138 |
+
```
|
| 139 |
+
|
| 140 |
+
The output will be something like the following:
|
| 141 |
+
|
| 142 |
+

|
| 143 |
+
|
| 144 |
+
That's fine for styling a line of text at a time. For more finely grained styling, Rich renders a special markup which is similar in syntax to [bbcode](https://en.wikipedia.org/wiki/BBCode). Here's an example:
|
| 145 |
+
|
| 146 |
+
```python
|
| 147 |
+
console.print("Where there is a [bold cyan]Will[/bold cyan] there [u]is[/u] a [i]way[/i].")
|
| 148 |
+
```
|
| 149 |
+
|
| 150 |
+

|
| 151 |
+
|
| 152 |
+
You can use a Console object to generate sophisticated output with minimal effort. See the [Console API](https://rich.readthedocs.io/en/latest/console.html) docs for details.
|
| 153 |
+
|
| 154 |
+
## Rich Inspect
|
| 155 |
+
|
| 156 |
+
Rich has an [inspect](https://rich.readthedocs.io/en/latest/reference/init.html?highlight=inspect#rich.inspect) function which can produce a report on any Python object, such as class, instance, or builtin.
|
| 157 |
+
|
| 158 |
+
```python
|
| 159 |
+
>>> my_list = ["foo", "bar"]
|
| 160 |
+
>>> from rich import inspect
|
| 161 |
+
>>> inspect(my_list, methods=True)
|
| 162 |
+
```
|
| 163 |
+
|
| 164 |
+

|
| 165 |
+
|
| 166 |
+
See the [inspect docs](https://rich.readthedocs.io/en/latest/reference/init.html#rich.inspect) for details.
|
| 167 |
+
|
| 168 |
+
# Rich Library
|
| 169 |
+
|
| 170 |
+
Rich contains a number of builtin _renderables_ you can use to create elegant output in your CLI and help you debug your code.
|
| 171 |
+
|
| 172 |
+
Click the following headings for details:
|
| 173 |
+
|
| 174 |
+
<details>
|
| 175 |
+
<summary>Log</summary>
|
| 176 |
+
|
| 177 |
+
The Console object has a `log()` method which has a similar interface to `print()`, but also renders a column for the current time and the file and line which made the call. By default Rich will do syntax highlighting for Python structures and for repr strings. If you log a collection (i.e. a dict or a list) Rich will pretty print it so that it fits in the available space. Here's an example of some of these features.
|
| 178 |
+
|
| 179 |
+
```python
|
| 180 |
+
from rich.console import Console
|
| 181 |
+
console = Console()
|
| 182 |
+
|
| 183 |
+
test_data = [
|
| 184 |
+
{"jsonrpc": "2.0", "method": "sum", "params": [None, 1, 2, 4, False, True], "id": "1",},
|
| 185 |
+
{"jsonrpc": "2.0", "method": "notify_hello", "params": [7]},
|
| 186 |
+
{"jsonrpc": "2.0", "method": "subtract", "params": [42, 23], "id": "2"},
|
| 187 |
+
]
|
| 188 |
+
|
| 189 |
+
def test_log():
|
| 190 |
+
enabled = False
|
| 191 |
+
context = {
|
| 192 |
+
"foo": "bar",
|
| 193 |
+
}
|
| 194 |
+
movies = ["Deadpool", "Rise of the Skywalker"]
|
| 195 |
+
console.log("Hello from", console, "!")
|
| 196 |
+
console.log(test_data, log_locals=True)
|
| 197 |
+
|
| 198 |
+
|
| 199 |
+
test_log()
|
| 200 |
+
```
|
| 201 |
+
|
| 202 |
+
The above produces the following output:
|
| 203 |
+
|
| 204 |
+

|
| 205 |
+
|
| 206 |
+
Note the `log_locals` argument, which outputs a table containing the local variables where the log method was called.
|
| 207 |
+
|
| 208 |
+
The log method could be used for logging to the terminal for long running applications such as servers, but is also a very nice debugging aid.
|
| 209 |
+
|
| 210 |
+
</details>
|
| 211 |
+
<details>
|
| 212 |
+
<summary>Logging Handler</summary>
|
| 213 |
+
|
| 214 |
+
You can also use the builtin [Handler class](https://rich.readthedocs.io/en/latest/logging.html) to format and colorize output from Python's logging module. Here's an example of the output:
|
| 215 |
+
|
| 216 |
+

|
| 217 |
+
|
| 218 |
+
</details>
|
| 219 |
+
|
| 220 |
+
<details>
|
| 221 |
+
<summary>Emoji</summary>
|
| 222 |
+
|
| 223 |
+
To insert an emoji in to console output place the name between two colons. Here's an example:
|
| 224 |
+
|
| 225 |
+
```python
|
| 226 |
+
>>> console.print(":smiley: :vampire: :pile_of_poo: :thumbs_up: :raccoon:")
|
| 227 |
+
😃 🧛 💩 👍 🦝
|
| 228 |
+
```
|
| 229 |
+
|
| 230 |
+
Please use this feature wisely.
|
| 231 |
+
|
| 232 |
+
</details>
|
| 233 |
+
|
| 234 |
+
<details>
|
| 235 |
+
<summary>Tables</summary>
|
| 236 |
+
|
| 237 |
+
Rich can render flexible [tables](https://rich.readthedocs.io/en/latest/tables.html) with unicode box characters. There is a large variety of formatting options for borders, styles, cell alignment etc.
|
| 238 |
+
|
| 239 |
+

|
| 240 |
+
|
| 241 |
+
The animation above was generated with [table_movie.py](https://github.com/textualize/rich/blob/master/examples/table_movie.py) in the examples directory.
|
| 242 |
+
|
| 243 |
+
Here's a simpler table example:
|
| 244 |
+
|
| 245 |
+
```python
|
| 246 |
+
from rich.console import Console
|
| 247 |
+
from rich.table import Table
|
| 248 |
+
|
| 249 |
+
console = Console()
|
| 250 |
+
|
| 251 |
+
table = Table(show_header=True, header_style="bold magenta")
|
| 252 |
+
table.add_column("Date", style="dim", width=12)
|
| 253 |
+
table.add_column("Title")
|
| 254 |
+
table.add_column("Production Budget", justify="right")
|
| 255 |
+
table.add_column("Box Office", justify="right")
|
| 256 |
+
table.add_row(
|
| 257 |
+
"Dec 20, 2019", "Star Wars: The Rise of Skywalker", "$275,000,000", "$375,126,118"
|
| 258 |
+
)
|
| 259 |
+
table.add_row(
|
| 260 |
+
"May 25, 2018",
|
| 261 |
+
"[red]Solo[/red]: A Star Wars Story",
|
| 262 |
+
"$275,000,000",
|
| 263 |
+
"$393,151,347",
|
| 264 |
+
)
|
| 265 |
+
table.add_row(
|
| 266 |
+
"Dec 15, 2017",
|
| 267 |
+
"Star Wars Ep. VIII: The Last Jedi",
|
| 268 |
+
"$262,000,000",
|
| 269 |
+
"[bold]$1,332,539,889[/bold]",
|
| 270 |
+
)
|
| 271 |
+
|
| 272 |
+
console.print(table)
|
| 273 |
+
```
|
| 274 |
+
|
| 275 |
+
This produces the following output:
|
| 276 |
+
|
| 277 |
+

|
| 278 |
+
|
| 279 |
+
Note that console markup is rendered in the same way as `print()` and `log()`. In fact, anything that is renderable by Rich may be included in the headers / rows (even other tables).
|
| 280 |
+
|
| 281 |
+
The `Table` class is smart enough to resize columns to fit the available width of the terminal, wrapping text as required. Here's the same example, with the terminal made smaller than the table above:
|
| 282 |
+
|
| 283 |
+

|
| 284 |
+
|
| 285 |
+
</details>
|
| 286 |
+
|
| 287 |
+
<details>
|
| 288 |
+
<summary>Progress Bars</summary>
|
| 289 |
+
|
| 290 |
+
Rich can render multiple flicker-free [progress](https://rich.readthedocs.io/en/latest/progress.html) bars to track long-running tasks.
|
| 291 |
+
|
| 292 |
+
For basic usage, wrap any sequence in the `track` function and iterate over the result. Here's an example:
|
| 293 |
+
|
| 294 |
+
```python
|
| 295 |
+
from rich.progress import track
|
| 296 |
+
|
| 297 |
+
for step in track(range(100)):
|
| 298 |
+
do_step(step)
|
| 299 |
+
```
|
| 300 |
+
|
| 301 |
+
It's not much harder to add multiple progress bars. Here's an example taken from the docs:
|
| 302 |
+
|
| 303 |
+

|
| 304 |
+
|
| 305 |
+
The columns may be configured to show any details you want. Built-in columns include percentage complete, file size, file speed, and time remaining. Here's another example showing a download in progress:
|
| 306 |
+
|
| 307 |
+

|
| 308 |
+
|
| 309 |
+
To try this out yourself, see [examples/downloader.py](https://github.com/textualize/rich/blob/master/examples/downloader.py) which can download multiple URLs simultaneously while displaying progress.
|
| 310 |
+
|
| 311 |
+
</details>
|
| 312 |
+
|
| 313 |
+
<details>
|
| 314 |
+
<summary>Status</summary>
|
| 315 |
+
|
| 316 |
+
For situations where it is hard to calculate progress, you can use the [status](https://rich.readthedocs.io/en/latest/reference/console.html#rich.console.Console.status) method which will display a 'spinner' animation and message. The animation won't prevent you from using the console as normal. Here's an example:
|
| 317 |
+
|
| 318 |
+
```python
|
| 319 |
+
from time import sleep
|
| 320 |
+
from rich.console import Console
|
| 321 |
+
|
| 322 |
+
console = Console()
|
| 323 |
+
tasks = [f"task {n}" for n in range(1, 11)]
|
| 324 |
+
|
| 325 |
+
with console.status("[bold green]Working on tasks...") as status:
|
| 326 |
+
while tasks:
|
| 327 |
+
task = tasks.pop(0)
|
| 328 |
+
sleep(1)
|
| 329 |
+
console.log(f"{task} complete")
|
| 330 |
+
```
|
| 331 |
+
|
| 332 |
+
This generates the following output in the terminal.
|
| 333 |
+
|
| 334 |
+

|
| 335 |
+
|
| 336 |
+
The spinner animations were borrowed from [cli-spinners](https://www.npmjs.com/package/cli-spinners). You can select a spinner by specifying the `spinner` parameter. Run the following command to see the available values:
|
| 337 |
+
|
| 338 |
+
```
|
| 339 |
+
python -m rich.spinner
|
| 340 |
+
```
|
| 341 |
+
|
| 342 |
+
The above command generates the following output in the terminal:
|
| 343 |
+
|
| 344 |
+

|
| 345 |
+
|
| 346 |
+
</details>
|
| 347 |
+
|
| 348 |
+
<details>
|
| 349 |
+
<summary>Tree</summary>
|
| 350 |
+
|
| 351 |
+
Rich can render a [tree](https://rich.readthedocs.io/en/latest/tree.html) with guide lines. A tree is ideal for displaying a file structure, or any other hierarchical data.
|
| 352 |
+
|
| 353 |
+
The labels of the tree can be simple text or anything else Rich can render. Run the following for a demonstration:
|
| 354 |
+
|
| 355 |
+
```
|
| 356 |
+
python -m rich.tree
|
| 357 |
+
```
|
| 358 |
+
|
| 359 |
+
This generates the following output:
|
| 360 |
+
|
| 361 |
+

|
| 362 |
+
|
| 363 |
+
See the [tree.py](https://github.com/textualize/rich/blob/master/examples/tree.py) example for a script that displays a tree view of any directory, similar to the linux `tree` command.
|
| 364 |
+
|
| 365 |
+
</details>
|
| 366 |
+
|
| 367 |
+
<details>
|
| 368 |
+
<summary>Columns</summary>
|
| 369 |
+
|
| 370 |
+
Rich can render content in neat [columns](https://rich.readthedocs.io/en/latest/columns.html) with equal or optimal width. Here's a very basic clone of the (MacOS / Linux) `ls` command which displays a directory listing in columns:
|
| 371 |
+
|
| 372 |
+
```python
|
| 373 |
+
import os
|
| 374 |
+
import sys
|
| 375 |
+
|
| 376 |
+
from rich import print
|
| 377 |
+
from rich.columns import Columns
|
| 378 |
+
|
| 379 |
+
directory = os.listdir(sys.argv[1])
|
| 380 |
+
print(Columns(directory))
|
| 381 |
+
```
|
| 382 |
+
|
| 383 |
+
The following screenshot is the output from the [columns example](https://github.com/textualize/rich/blob/master/examples/columns.py) which displays data pulled from an API in columns:
|
| 384 |
+
|
| 385 |
+

|
| 386 |
+
|
| 387 |
+
</details>
|
| 388 |
+
|
| 389 |
+
<details>
|
| 390 |
+
<summary>Markdown</summary>
|
| 391 |
+
|
| 392 |
+
Rich can render [markdown](https://rich.readthedocs.io/en/latest/markdown.html) and does a reasonable job of translating the formatting to the terminal.
|
| 393 |
+
|
| 394 |
+
To render markdown import the `Markdown` class and construct it with a string containing markdown code. Then print it to the console. Here's an example:
|
| 395 |
+
|
| 396 |
+
```python
|
| 397 |
+
from rich.console import Console
|
| 398 |
+
from rich.markdown import Markdown
|
| 399 |
+
|
| 400 |
+
console = Console()
|
| 401 |
+
with open("README.md") as readme:
|
| 402 |
+
markdown = Markdown(readme.read())
|
| 403 |
+
console.print(markdown)
|
| 404 |
+
```
|
| 405 |
+
|
| 406 |
+
This will produce output something like the following:
|
| 407 |
+
|
| 408 |
+

|
| 409 |
+
|
| 410 |
+
</details>
|
| 411 |
+
|
| 412 |
+
<details>
|
| 413 |
+
<summary>Syntax Highlighting</summary>
|
| 414 |
+
|
| 415 |
+
Rich uses the [pygments](https://pygments.org/) library to implement [syntax highlighting](https://rich.readthedocs.io/en/latest/syntax.html). Usage is similar to rendering markdown; construct a `Syntax` object and print it to the console. Here's an example:
|
| 416 |
+
|
| 417 |
+
```python
|
| 418 |
+
from rich.console import Console
|
| 419 |
+
from rich.syntax import Syntax
|
| 420 |
+
|
| 421 |
+
my_code = '''
|
| 422 |
+
def iter_first_last(values: Iterable[T]) -> Iterable[Tuple[bool, bool, T]]:
|
| 423 |
+
"""Iterate and generate a tuple with a flag for first and last value."""
|
| 424 |
+
iter_values = iter(values)
|
| 425 |
+
try:
|
| 426 |
+
previous_value = next(iter_values)
|
| 427 |
+
except StopIteration:
|
| 428 |
+
return
|
| 429 |
+
first = True
|
| 430 |
+
for value in iter_values:
|
| 431 |
+
yield first, False, previous_value
|
| 432 |
+
first = False
|
| 433 |
+
previous_value = value
|
| 434 |
+
yield first, True, previous_value
|
| 435 |
+
'''
|
| 436 |
+
syntax = Syntax(my_code, "python", theme="monokai", line_numbers=True)
|
| 437 |
+
console = Console()
|
| 438 |
+
console.print(syntax)
|
| 439 |
+
```
|
| 440 |
+
|
| 441 |
+
This will produce the following output:
|
| 442 |
+
|
| 443 |
+

|
| 444 |
+
|
| 445 |
+
</details>
|
| 446 |
+
|
| 447 |
+
<details>
|
| 448 |
+
<summary>Tracebacks</summary>
|
| 449 |
+
|
| 450 |
+
Rich can render [beautiful tracebacks](https://rich.readthedocs.io/en/latest/traceback.html) which are easier to read and show more code than standard Python tracebacks. You can set Rich as the default traceback handler so all uncaught exceptions will be rendered by Rich.
|
| 451 |
+
|
| 452 |
+
Here's what it looks like on OSX (similar on Linux):
|
| 453 |
+
|
| 454 |
+

|
| 455 |
+
|
| 456 |
+
</details>
|
| 457 |
+
|
| 458 |
+
All Rich renderables make use of the [Console Protocol](https://rich.readthedocs.io/en/latest/protocol.html), which you can also use to implement your own Rich content.
|
| 459 |
+
|
| 460 |
+
# Rich CLI
|
| 461 |
+
|
| 462 |
+
|
| 463 |
+
See also [Rich CLI](https://github.com/textualize/rich-cli) for a command line application powered by Rich. Syntax highlight code, render markdown, display CSVs in tables, and more, directly from the command prompt.
|
| 464 |
+
|
| 465 |
+
|
| 466 |
+

|
| 467 |
+
|
| 468 |
+
# Textual
|
| 469 |
+
|
| 470 |
+
See also Rich's sister project, [Textual](https://github.com/Textualize/textual), which you can use to build sophisticated User Interfaces in the terminal.
|
| 471 |
+
|
| 472 |
+

|
| 473 |
+
|
| 474 |
+
# Toad
|
| 475 |
+
|
| 476 |
+
[Toad](https://github.com/batrachianai/toad) is a unified interface for agentic coding. Built with Rich and Textual.
|
| 477 |
+
|
| 478 |
+

|
| 479 |
+
|
venv/lib/python3.11/site-packages/rich-15.0.0.dist-info/RECORD
ADDED
|
@@ -0,0 +1,206 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
rich-15.0.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
|
| 2 |
+
rich-15.0.0.dist-info/METADATA,sha256=-tNPxgP6xEgb-B-N1ilJL8MCwOwxkJyGZEdRUSr7Ljs,18445
|
| 3 |
+
rich-15.0.0.dist-info/RECORD,,
|
| 4 |
+
rich-15.0.0.dist-info/WHEEL,sha256=kJCRJT_g0adfAJzTx2GUMmS80rTJIVHRCfG0DQgLq3o,88
|
| 5 |
+
rich-15.0.0.dist-info/licenses/LICENSE,sha256=3u18F6QxgVgZCj6iOcyHmlpQJxzruYrnAl9I--WNyhU,1056
|
| 6 |
+
rich/__init__.py,sha256=j7AA9_z_PANQbmRTwTkWZc_DVdqtBBHxBqGrMsz21CI,6131
|
| 7 |
+
rich/__main__.py,sha256=kcy8BtBEUkYLCogRkwhCdJs0VNx6KF1n8kFU2g-7plg,7725
|
| 8 |
+
rich/__pycache__/__init__.cpython-311.pyc,,
|
| 9 |
+
rich/__pycache__/__main__.cpython-311.pyc,,
|
| 10 |
+
rich/__pycache__/_emoji_codes.cpython-311.pyc,,
|
| 11 |
+
rich/__pycache__/_emoji_replace.cpython-311.pyc,,
|
| 12 |
+
rich/__pycache__/_export_format.cpython-311.pyc,,
|
| 13 |
+
rich/__pycache__/_extension.cpython-311.pyc,,
|
| 14 |
+
rich/__pycache__/_fileno.cpython-311.pyc,,
|
| 15 |
+
rich/__pycache__/_inspect.cpython-311.pyc,,
|
| 16 |
+
rich/__pycache__/_log_render.cpython-311.pyc,,
|
| 17 |
+
rich/__pycache__/_loop.cpython-311.pyc,,
|
| 18 |
+
rich/__pycache__/_null_file.cpython-311.pyc,,
|
| 19 |
+
rich/__pycache__/_palettes.cpython-311.pyc,,
|
| 20 |
+
rich/__pycache__/_pick.cpython-311.pyc,,
|
| 21 |
+
rich/__pycache__/_ratio.cpython-311.pyc,,
|
| 22 |
+
rich/__pycache__/_spinners.cpython-311.pyc,,
|
| 23 |
+
rich/__pycache__/_stack.cpython-311.pyc,,
|
| 24 |
+
rich/__pycache__/_timer.cpython-311.pyc,,
|
| 25 |
+
rich/__pycache__/_win32_console.cpython-311.pyc,,
|
| 26 |
+
rich/__pycache__/_windows.cpython-311.pyc,,
|
| 27 |
+
rich/__pycache__/_windows_renderer.cpython-311.pyc,,
|
| 28 |
+
rich/__pycache__/_wrap.cpython-311.pyc,,
|
| 29 |
+
rich/__pycache__/abc.cpython-311.pyc,,
|
| 30 |
+
rich/__pycache__/align.cpython-311.pyc,,
|
| 31 |
+
rich/__pycache__/ansi.cpython-311.pyc,,
|
| 32 |
+
rich/__pycache__/bar.cpython-311.pyc,,
|
| 33 |
+
rich/__pycache__/box.cpython-311.pyc,,
|
| 34 |
+
rich/__pycache__/cells.cpython-311.pyc,,
|
| 35 |
+
rich/__pycache__/color.cpython-311.pyc,,
|
| 36 |
+
rich/__pycache__/color_triplet.cpython-311.pyc,,
|
| 37 |
+
rich/__pycache__/columns.cpython-311.pyc,,
|
| 38 |
+
rich/__pycache__/console.cpython-311.pyc,,
|
| 39 |
+
rich/__pycache__/constrain.cpython-311.pyc,,
|
| 40 |
+
rich/__pycache__/containers.cpython-311.pyc,,
|
| 41 |
+
rich/__pycache__/control.cpython-311.pyc,,
|
| 42 |
+
rich/__pycache__/default_styles.cpython-311.pyc,,
|
| 43 |
+
rich/__pycache__/diagnose.cpython-311.pyc,,
|
| 44 |
+
rich/__pycache__/emoji.cpython-311.pyc,,
|
| 45 |
+
rich/__pycache__/errors.cpython-311.pyc,,
|
| 46 |
+
rich/__pycache__/file_proxy.cpython-311.pyc,,
|
| 47 |
+
rich/__pycache__/filesize.cpython-311.pyc,,
|
| 48 |
+
rich/__pycache__/highlighter.cpython-311.pyc,,
|
| 49 |
+
rich/__pycache__/json.cpython-311.pyc,,
|
| 50 |
+
rich/__pycache__/jupyter.cpython-311.pyc,,
|
| 51 |
+
rich/__pycache__/layout.cpython-311.pyc,,
|
| 52 |
+
rich/__pycache__/live.cpython-311.pyc,,
|
| 53 |
+
rich/__pycache__/live_render.cpython-311.pyc,,
|
| 54 |
+
rich/__pycache__/logging.cpython-311.pyc,,
|
| 55 |
+
rich/__pycache__/markdown.cpython-311.pyc,,
|
| 56 |
+
rich/__pycache__/markup.cpython-311.pyc,,
|
| 57 |
+
rich/__pycache__/measure.cpython-311.pyc,,
|
| 58 |
+
rich/__pycache__/padding.cpython-311.pyc,,
|
| 59 |
+
rich/__pycache__/pager.cpython-311.pyc,,
|
| 60 |
+
rich/__pycache__/palette.cpython-311.pyc,,
|
| 61 |
+
rich/__pycache__/panel.cpython-311.pyc,,
|
| 62 |
+
rich/__pycache__/pretty.cpython-311.pyc,,
|
| 63 |
+
rich/__pycache__/progress.cpython-311.pyc,,
|
| 64 |
+
rich/__pycache__/progress_bar.cpython-311.pyc,,
|
| 65 |
+
rich/__pycache__/prompt.cpython-311.pyc,,
|
| 66 |
+
rich/__pycache__/protocol.cpython-311.pyc,,
|
| 67 |
+
rich/__pycache__/region.cpython-311.pyc,,
|
| 68 |
+
rich/__pycache__/repr.cpython-311.pyc,,
|
| 69 |
+
rich/__pycache__/rule.cpython-311.pyc,,
|
| 70 |
+
rich/__pycache__/scope.cpython-311.pyc,,
|
| 71 |
+
rich/__pycache__/screen.cpython-311.pyc,,
|
| 72 |
+
rich/__pycache__/segment.cpython-311.pyc,,
|
| 73 |
+
rich/__pycache__/spinner.cpython-311.pyc,,
|
| 74 |
+
rich/__pycache__/status.cpython-311.pyc,,
|
| 75 |
+
rich/__pycache__/style.cpython-311.pyc,,
|
| 76 |
+
rich/__pycache__/styled.cpython-311.pyc,,
|
| 77 |
+
rich/__pycache__/syntax.cpython-311.pyc,,
|
| 78 |
+
rich/__pycache__/table.cpython-311.pyc,,
|
| 79 |
+
rich/__pycache__/terminal_theme.cpython-311.pyc,,
|
| 80 |
+
rich/__pycache__/text.cpython-311.pyc,,
|
| 81 |
+
rich/__pycache__/theme.cpython-311.pyc,,
|
| 82 |
+
rich/__pycache__/themes.cpython-311.pyc,,
|
| 83 |
+
rich/__pycache__/traceback.cpython-311.pyc,,
|
| 84 |
+
rich/__pycache__/tree.cpython-311.pyc,,
|
| 85 |
+
rich/_emoji_codes.py,sha256=hu1VL9nbVdppJrVoijVshRlcRRe_v3dju3Mmd2sKZdY,140235
|
| 86 |
+
rich/_emoji_replace.py,sha256=ysSn8smSqQW22XEfCH0lJ80vogUYZKr9dPImfUG2e6Y,1067
|
| 87 |
+
rich/_export_format.py,sha256=RI08pSrm5tBSzPMvnbTqbD9WIalaOoN5d4M1RTmLq1Y,2128
|
| 88 |
+
rich/_extension.py,sha256=G66PkbH_QdTJh6jD-J228O76CmAnr2hLQv72CgPPuzE,241
|
| 89 |
+
rich/_fileno.py,sha256=HWZxP5C2ajMbHryvAQZseflVfQoGzsKOHzKGsLD8ynQ,799
|
| 90 |
+
rich/_inspect.py,sha256=5pUYCqveN4ekb_mgHOYCipyZCrMGEJZYZs3y5QqmCf0,9894
|
| 91 |
+
rich/_log_render.py,sha256=xBKCxqiO4FZk8eG56f8crFdrmJxFrJsQE3V3F-fFekc,3213
|
| 92 |
+
rich/_loop.py,sha256=hV_6CLdoPm0va22Wpw4zKqM0RYsz3TZxXj0PoS-9eDQ,1236
|
| 93 |
+
rich/_null_file.py,sha256=ADGKp1yt-k70FMKV6tnqCqecB-rSJzp-WQsD7LPL-kg,1394
|
| 94 |
+
rich/_palettes.py,sha256=cdev1JQKZ0JvlguV9ipHgznTdnvlIzUFDBb0It2PzjI,7063
|
| 95 |
+
rich/_pick.py,sha256=evDt8QN4lF5CiwrUIXlOJCntitBCOsI3ZLPEIAVRLJU,423
|
| 96 |
+
rich/_ratio.py,sha256=IOtl78sQCYZsmHyxhe45krkb68u9xVz7zFsXVJD-b2Y,5325
|
| 97 |
+
rich/_spinners.py,sha256=U2r1_g_1zSjsjiUdAESc2iAMc3i4ri_S8PYP6kQ5z1I,19919
|
| 98 |
+
rich/_stack.py,sha256=-C8OK7rxn3sIUdVwxZBBpeHhIzX0eI-VM3MemYfaXm0,351
|
| 99 |
+
rich/_timer.py,sha256=zelxbT6oPFZnNrwWPpc1ktUeAT-Vc4fuFcRZLQGLtMI,417
|
| 100 |
+
rich/_unicode_data/__init__.py,sha256=40PhAFp3b88yPnRtTG6i9g5xj-5w98CET3C4Ip1LJAI,2631
|
| 101 |
+
rich/_unicode_data/__pycache__/__init__.cpython-311.pyc,,
|
| 102 |
+
rich/_unicode_data/__pycache__/_versions.cpython-311.pyc,,
|
| 103 |
+
rich/_unicode_data/__pycache__/unicode10-0-0.cpython-311.pyc,,
|
| 104 |
+
rich/_unicode_data/__pycache__/unicode11-0-0.cpython-311.pyc,,
|
| 105 |
+
rich/_unicode_data/__pycache__/unicode12-0-0.cpython-311.pyc,,
|
| 106 |
+
rich/_unicode_data/__pycache__/unicode12-1-0.cpython-311.pyc,,
|
| 107 |
+
rich/_unicode_data/__pycache__/unicode13-0-0.cpython-311.pyc,,
|
| 108 |
+
rich/_unicode_data/__pycache__/unicode14-0-0.cpython-311.pyc,,
|
| 109 |
+
rich/_unicode_data/__pycache__/unicode15-0-0.cpython-311.pyc,,
|
| 110 |
+
rich/_unicode_data/__pycache__/unicode15-1-0.cpython-311.pyc,,
|
| 111 |
+
rich/_unicode_data/__pycache__/unicode16-0-0.cpython-311.pyc,,
|
| 112 |
+
rich/_unicode_data/__pycache__/unicode17-0-0.cpython-311.pyc,,
|
| 113 |
+
rich/_unicode_data/__pycache__/unicode4-1-0.cpython-311.pyc,,
|
| 114 |
+
rich/_unicode_data/__pycache__/unicode5-0-0.cpython-311.pyc,,
|
| 115 |
+
rich/_unicode_data/__pycache__/unicode5-1-0.cpython-311.pyc,,
|
| 116 |
+
rich/_unicode_data/__pycache__/unicode5-2-0.cpython-311.pyc,,
|
| 117 |
+
rich/_unicode_data/__pycache__/unicode6-0-0.cpython-311.pyc,,
|
| 118 |
+
rich/_unicode_data/__pycache__/unicode6-1-0.cpython-311.pyc,,
|
| 119 |
+
rich/_unicode_data/__pycache__/unicode6-2-0.cpython-311.pyc,,
|
| 120 |
+
rich/_unicode_data/__pycache__/unicode6-3-0.cpython-311.pyc,,
|
| 121 |
+
rich/_unicode_data/__pycache__/unicode7-0-0.cpython-311.pyc,,
|
| 122 |
+
rich/_unicode_data/__pycache__/unicode8-0-0.cpython-311.pyc,,
|
| 123 |
+
rich/_unicode_data/__pycache__/unicode9-0-0.cpython-311.pyc,,
|
| 124 |
+
rich/_unicode_data/_versions.py,sha256=ftILR3G5dqmlQmCJYNovuyXfFneJY2eH2RvpV19tyYE,298
|
| 125 |
+
rich/_unicode_data/unicode10-0-0.py,sha256=FUstYPZwDF15BEuAERqXHqIPvC1KY1SL20qLj999Fzo,14496
|
| 126 |
+
rich/_unicode_data/unicode11-0-0.py,sha256=jp8SRKFBlIaHMafxAfhLiU7FizwdcgPVvytR3kSFtZo,14874
|
| 127 |
+
rich/_unicode_data/unicode12-0-0.py,sha256=0XHXSjW5EXue6Qfgl_u0bK7NstiSdmqrR_F_Wqhs5bE,15216
|
| 128 |
+
rich/_unicode_data/unicode12-1-0.py,sha256=kWcRGh1UVwsmK9qflfGsO_aM8AuNhLthJcsyXAOQryI,15189
|
| 129 |
+
rich/_unicode_data/unicode13-0-0.py,sha256=DokduALtgaB-WvapW7X7PmM3kZFbgnCo9ifINWZtuDs,15519
|
| 130 |
+
rich/_unicode_data/unicode14-0-0.py,sha256=Ni-3JnGf5sB4kGl8ip-Iyqoum-awJjZV0RoSNuo0yu8,15884
|
| 131 |
+
rich/_unicode_data/unicode15-0-0.py,sha256=DBHkV5Si9vmtv_MiW6NmPQb8yUeP4N-9hNt2juZr4ZE,16156
|
| 132 |
+
rich/_unicode_data/unicode15-1-0.py,sha256=uyCZLYrg0q7wGt3-uBdsF0Ay_x8MTMvFqK6aMOkl9rA,16129
|
| 133 |
+
rich/_unicode_data/unicode16-0-0.py,sha256=5iGpbczVQ7BD2QGYb6k1h_OdILQXXuhcvI6dQFLKbMc,16480
|
| 134 |
+
rich/_unicode_data/unicode17-0-0.py,sha256=NXbjFsAaTYdj6TYgk5Q9disv40LZHbedFGRl_48_9Y0,16704
|
| 135 |
+
rich/_unicode_data/unicode4-1-0.py,sha256=yIApQGEG7VOFYY2FFfvOdPprE6VpDusjLlTlCy4G_Rw,9488
|
| 136 |
+
rich/_unicode_data/unicode5-0-0.py,sha256=PkEI1x4RGwXSmgqHiu88jyz14VQT8bWiOtBDrECaVZg,9613
|
| 137 |
+
rich/_unicode_data/unicode5-1-0.py,sha256=C0-PWziqpkVkf3PkPz2GWNwidCrjef5AHQGBpqTPkuY,9650
|
| 138 |
+
rich/_unicode_data/unicode5-2-0.py,sha256=gM88qri3_9b0I37DGK1-ah-0SUed2VmvxUddB5UZLto,10390
|
| 139 |
+
rich/_unicode_data/unicode6-0-0.py,sha256=hhcAipqKU81dZ4YbDXIlT7KEK9yNG_Lx-5GLgNTF75g,10604
|
| 140 |
+
rich/_unicode_data/unicode6-1-0.py,sha256=PtUJYxwtU5S2A44YY_69Ka_wTkq-c7QCa-yibmkHvJs,10899
|
| 141 |
+
rich/_unicode_data/unicode6-2-0.py,sha256=TdTOctGwO-OYVGif1DoRJvsaQISHw5EXHPt58fjB55g,10899
|
| 142 |
+
rich/_unicode_data/unicode6-3-0.py,sha256=G9l8chu2MJTwZ_d_0tmH7PBg8KYYHaeuJCJNCHGHkDc,10924
|
| 143 |
+
rich/_unicode_data/unicode7-0-0.py,sha256=po9GGYW7ilGU9MwGE6fny-OofqbDwelQrnOIm-IusjI,11630
|
| 144 |
+
rich/_unicode_data/unicode8-0-0.py,sha256=4PjyI-w2Uj9xtanNlZm1d_2khcetMQlIefaoU2joGkY,11864
|
| 145 |
+
rich/_unicode_data/unicode9-0-0.py,sha256=A-pQjvkTICUGXEDOiWNMqa6z6vv1E__HJffzu7zLi9c,14148
|
| 146 |
+
rich/_win32_console.py,sha256=o2QN_IRx10biGP3Ap1neaqX8FBGlUKSmWM6Kw4OSg-U,22719
|
| 147 |
+
rich/_windows.py,sha256=is3WpbHMj8WaTHYB11hc6lP2t4hlvt4TViTlHSmjsi0,1901
|
| 148 |
+
rich/_windows_renderer.py,sha256=d799xOnxLbCCCzGu9-U7YLmIQkxtxQIBFQQ6iu4veSc,2759
|
| 149 |
+
rich/_wrap.py,sha256=FlSsom5EX0LVkA3KWy34yHnCfLtqX-ZIepXKh-70rpc,3404
|
| 150 |
+
rich/abc.py,sha256=dALMOGfKVNeAbvqq66IpTQxQUerxD7AE4FKwqd0eQKk,878
|
| 151 |
+
rich/align.py,sha256=a8MbP-iJjoOFonxqgoP3YketKMWU3WFZaxjqAv2Qc5E,10726
|
| 152 |
+
rich/ansi.py,sha256=TQ7pdksq0b3XPcw_tSGvL_QthPxNLKOYQImPQYWp6pM,6947
|
| 153 |
+
rich/bar.py,sha256=ldbVHOzKJOnflVNuv1xS7g6dLX2E3wMnXkdPbpzJTcs,3263
|
| 154 |
+
rich/box.py,sha256=SSolg8_pzHzY9QvJQo-qp0tbPsnj8O_2W4hmi1l-Zo0,10650
|
| 155 |
+
rich/cells.py,sha256=fPRSnquYlCO4THgmUokOJOhNlcx8C4NZ2Xv9JM_7GbE,12335
|
| 156 |
+
rich/color.py,sha256=3HSULVDj7qQkXUdFWv78JOiSZzfy5y1nkcYhna296V0,18211
|
| 157 |
+
rich/color_triplet.py,sha256=3lhQkdJbvWPoLDO-AnYImAWmJvV5dlgYNCVZ97ORaN4,1054
|
| 158 |
+
rich/columns.py,sha256=HUX0KcMm9dsKNi11fTbiM_h2iDtl8ySCaVcxlalEzq8,7131
|
| 159 |
+
rich/console.py,sha256=RTP8ZpY2I6KiFEe1Adb1H4z-5-FHdReAk6Xm62HcE1o,101361
|
| 160 |
+
rich/constrain.py,sha256=1VIPuC8AgtKWrcncQrjBdYqA3JVWysu6jZo1rrh7c7Q,1288
|
| 161 |
+
rich/containers.py,sha256=c_56TxcedGYqDepHBMTuZdUIijitAQgnox-Qde0Z1qo,5502
|
| 162 |
+
rich/control.py,sha256=HnsraFTzBaUQDzKJWXsfPv-PPmgGypSgSv7oANackqs,6475
|
| 163 |
+
rich/default_styles.py,sha256=DqEUiGrj4N0eAcgDwjGeUSe8BLMxZw57L9RXnTCroTs,8401
|
| 164 |
+
rich/diagnose.py,sha256=1RWnQoppPXjC_49AB4vtV048DK3ksQSq671C83Y6f-g,977
|
| 165 |
+
rich/emoji.py,sha256=z7ABu0_61WJPWOM_dxhUHNaA0B6RQuZX3reljs1iWE8,2388
|
| 166 |
+
rich/errors.py,sha256=5pP3Kc5d4QJ_c0KFsxrfyhjiPVe7J1zOqSFbFAzcV-Y,642
|
| 167 |
+
rich/file_proxy.py,sha256=MvlB3tSsuVmH4qCWXK9SK3S_OohVRIczUw_Fufmsdt8,1750
|
| 168 |
+
rich/filesize.py,sha256=_iz9lIpRgvW7MNSeCZnLg-HwzbP4GETg543WqD8SFs0,2484
|
| 169 |
+
rich/highlighter.py,sha256=MIapWwjR8ahUcsDicgN4xLRbanbh5x_Qzh5kfdDrKKk,9729
|
| 170 |
+
rich/json.py,sha256=omC2WHTgURxEosna1ftoSJCne2EX7MDuQtCdswS3qsk,5019
|
| 171 |
+
rich/jupyter.py,sha256=G9pOJmR4ESIFYSd4MKGqmHqCtstx0oRWpyeTgv54-Xc,3228
|
| 172 |
+
rich/layout.py,sha256=WR8PCSroYnteIT3zawxQ3k3ad1sQO5wGG1SZOoeBuBM,13944
|
| 173 |
+
rich/live.py,sha256=UKvqLSuSzNHIBz5pxRrU7SPsnG48vJJx2TMHiaHlmnI,15317
|
| 174 |
+
rich/live_render.py,sha256=jQO3X_p2wemGI2bdCAY_e5j9xXNTwDxuujbpoSRsH6c,3803
|
| 175 |
+
rich/logging.py,sha256=7vhk7r_LhWTcwteyjLLM5Nfc839fwBuIiISvBZcGwzo,12622
|
| 176 |
+
rich/markdown.py,sha256=MmbNh8IhWgdGNQkeNTHWNR470KQVACt_9aJu6TMourA,26549
|
| 177 |
+
rich/markup.py,sha256=btpr271BLhiCR1jNglRnv2BpIzVcNefYwSMeW9teDbc,8427
|
| 178 |
+
rich/measure.py,sha256=HmrIJX8sWRTHbgh8MxEay_83VkqNW_70s8aKP5ZcYI8,5305
|
| 179 |
+
rich/padding.py,sha256=h8XnIivLrNtlxI3vQPKHXh4hAwjOJqZx0slM0z3g1_M,4896
|
| 180 |
+
rich/pager.py,sha256=SO_ETBFKbg3n_AgOzXm41Sv36YxXAyI3_R-KOY2_uSc,828
|
| 181 |
+
rich/palette.py,sha256=Ar6ZUrYHiFt6-Rr2k-k9F8V7hxgJYHNdqjk2vVXsLgc,3288
|
| 182 |
+
rich/panel.py,sha256=9sQl00hPIqH5G2gALQo4NepFwpP0k9wT-s_gOms5pIc,11157
|
| 183 |
+
rich/pretty.py,sha256=lxW_bhBfDTKe-grtzP1KQhQsqPZxfZN14th4JRVoLzQ,36349
|
| 184 |
+
rich/progress.py,sha256=Z6Yz6pYO26LFXx24cXKvk2bEX6FkjK2Z5e2fy0Bt78s,60393
|
| 185 |
+
rich/progress_bar.py,sha256=mZTPpJUwcfcdgQCTTz3kyY-fc79ddLwtx6Ghhxfo064,8162
|
| 186 |
+
rich/prompt.py,sha256=1SIuBEelovvwCG2wp22PZwskA3IkmAsOxf0ruFkOhOk,12448
|
| 187 |
+
rich/protocol.py,sha256=9OHzfZXAnidZqaZgSFsX5KsJg8JHHNUc8jk9dsxa1ik,1348
|
| 188 |
+
rich/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
| 189 |
+
rich/region.py,sha256=rNT9xZrVZTYIXZC0NYn41CJQwYNbR-KecPOxTgQvB8Y,166
|
| 190 |
+
rich/repr.py,sha256=mFexGTVledesZiMD3jBBBBoICoWh-XPFAUq3Hu7iX4U,4436
|
| 191 |
+
rich/rule.py,sha256=umO21Wjw0FcYAeTB3UumNLCsDWhejzxnjlf2VwiXiDI,4590
|
| 192 |
+
rich/scope.py,sha256=x-jkKIE-j7ZxA9I07lya5iVAuDAyUKM58HWtNZQUzRc,3239
|
| 193 |
+
rich/screen.py,sha256=rL_j2wX-4SeuIOI2oOlc418QP9EAvD59GInUmEAE6jQ,1579
|
| 194 |
+
rich/segment.py,sha256=17JAw4bmsV_LrJ8PnhI9XH2DaN-fOEPF-8mgx7joLDM,25740
|
| 195 |
+
rich/spinner.py,sha256=onIhpKlljRHppTZasxO8kXgtYyCHUkpSgKglRJ3o51g,4214
|
| 196 |
+
rich/status.py,sha256=kkPph3YeAZBo-X-4wPp8gTqZyU466NLwZBA4PZTTewo,4424
|
| 197 |
+
rich/style.py,sha256=yp4TsNKNPUxBytoFWfy7kzE2Gh_9TYA7fs2ULXfbm00,27068
|
| 198 |
+
rich/styled.py,sha256=wljVsVTXbABMMZvkzkO43ZEk_-irzEtvUiQ-sNnikQ8,1234
|
| 199 |
+
rich/syntax.py,sha256=ytgeGUt91fdr8LaHKOdkaNMewrPRxgoci5mMd3MPE4I,36305
|
| 200 |
+
rich/table.py,sha256=6yv7wMLXZgOsGgzEDpKXpecXQOwcLBHNOn-MYcbo1Zk,40033
|
| 201 |
+
rich/terminal_theme.py,sha256=1j5-ufJfnvlAo5Qsi_ACZiXDmwMXzqgmFByObT9-yJY,3370
|
| 202 |
+
rich/text.py,sha256=t2J8iMquwR0BUUggm-cVNp30Wxw5M8fIF_p0jioYRV0,47655
|
| 203 |
+
rich/theme.py,sha256=biYZWd_Wu1KW8VtT7UsTQDrDU89RxAK5_Vz1y3ztGYI,3780
|
| 204 |
+
rich/themes.py,sha256=0xgTLozfabebYtcJtDdC5QkX5IVUEaviqDUJJh4YVFk,102
|
| 205 |
+
rich/traceback.py,sha256=TT03eLKEj5XapXFp9kgf0bBwNupIFrHquKxZtwBhz_8,37535
|
| 206 |
+
rich/tree.py,sha256=QoOwg424FkdwGfR8K0tZ6Q7qtzWNAUP_m4sFaYuG6nw,9391
|
venv/lib/python3.11/site-packages/rich-15.0.0.dist-info/WHEEL
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
Wheel-Version: 1.0
|
| 2 |
+
Generator: poetry-core 2.3.1
|
| 3 |
+
Root-Is-Purelib: true
|
| 4 |
+
Tag: py3-none-any
|
venv/lib/python3.11/site-packages/rich-15.0.0.dist-info/licenses/LICENSE
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
Copyright (c) 2020 Will McGugan
|
| 2 |
+
|
| 3 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
| 4 |
+
of this software and associated documentation files (the "Software"), to deal
|
| 5 |
+
in the Software without restriction, including without limitation the rights
|
| 6 |
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
| 7 |
+
copies of the Software, and to permit persons to whom the Software is
|
| 8 |
+
furnished to do so, subject to the following conditions:
|
| 9 |
+
|
| 10 |
+
The above copyright notice and this permission notice shall be included in all
|
| 11 |
+
copies or substantial portions of the Software.
|
| 12 |
+
|
| 13 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
| 14 |
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
| 15 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
| 16 |
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
| 17 |
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
| 18 |
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
| 19 |
+
SOFTWARE.
|
venv/lib/python3.11/site-packages/rich/__main__.py
ADDED
|
@@ -0,0 +1,245 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import colorsys
|
| 2 |
+
import io
|
| 3 |
+
from time import process_time
|
| 4 |
+
|
| 5 |
+
from rich import box
|
| 6 |
+
from rich.color import Color
|
| 7 |
+
from rich.console import Console, ConsoleOptions, Group, RenderableType, RenderResult
|
| 8 |
+
from rich.markdown import Markdown
|
| 9 |
+
from rich.measure import Measurement
|
| 10 |
+
from rich.pretty import Pretty
|
| 11 |
+
from rich.segment import Segment
|
| 12 |
+
from rich.style import Style
|
| 13 |
+
from rich.syntax import Syntax
|
| 14 |
+
from rich.table import Table
|
| 15 |
+
from rich.text import Text
|
| 16 |
+
|
| 17 |
+
|
| 18 |
+
class ColorBox:
|
| 19 |
+
def __rich_console__(
|
| 20 |
+
self, console: Console, options: ConsoleOptions
|
| 21 |
+
) -> RenderResult:
|
| 22 |
+
for y in range(0, 5):
|
| 23 |
+
for x in range(options.max_width):
|
| 24 |
+
h = x / options.max_width
|
| 25 |
+
l = 0.1 + ((y / 5) * 0.7)
|
| 26 |
+
r1, g1, b1 = colorsys.hls_to_rgb(h, l, 1.0)
|
| 27 |
+
r2, g2, b2 = colorsys.hls_to_rgb(h, l + 0.7 / 10, 1.0)
|
| 28 |
+
bgcolor = Color.from_rgb(r1 * 255, g1 * 255, b1 * 255)
|
| 29 |
+
color = Color.from_rgb(r2 * 255, g2 * 255, b2 * 255)
|
| 30 |
+
yield Segment("▄", Style(color=color, bgcolor=bgcolor))
|
| 31 |
+
yield Segment.line()
|
| 32 |
+
|
| 33 |
+
def __rich_measure__(
|
| 34 |
+
self, console: "Console", options: ConsoleOptions
|
| 35 |
+
) -> Measurement:
|
| 36 |
+
return Measurement(1, options.max_width)
|
| 37 |
+
|
| 38 |
+
|
| 39 |
+
def make_test_card() -> Table:
|
| 40 |
+
"""Get a renderable that demonstrates a number of features."""
|
| 41 |
+
table = Table.grid(padding=1, pad_edge=True)
|
| 42 |
+
table.title = "Rich features"
|
| 43 |
+
table.add_column("Feature", no_wrap=True, justify="center", style="bold red")
|
| 44 |
+
table.add_column("Demonstration")
|
| 45 |
+
|
| 46 |
+
color_table = Table(
|
| 47 |
+
box=None,
|
| 48 |
+
expand=False,
|
| 49 |
+
show_header=False,
|
| 50 |
+
show_edge=False,
|
| 51 |
+
pad_edge=False,
|
| 52 |
+
)
|
| 53 |
+
color_table.add_row(
|
| 54 |
+
(
|
| 55 |
+
"✓ [bold green]4-bit color[/]\n"
|
| 56 |
+
"✓ [bold blue]8-bit color[/]\n"
|
| 57 |
+
"✓ [bold magenta]Truecolor (16.7 million)[/]\n"
|
| 58 |
+
"✓ [bold yellow]Dumb terminals[/]\n"
|
| 59 |
+
"✓ [bold cyan]Automatic color conversion"
|
| 60 |
+
),
|
| 61 |
+
ColorBox(),
|
| 62 |
+
)
|
| 63 |
+
|
| 64 |
+
table.add_row("Colors", color_table)
|
| 65 |
+
|
| 66 |
+
table.add_row(
|
| 67 |
+
"Styles",
|
| 68 |
+
"All ansi styles: [bold]bold[/], [dim]dim[/], [italic]italic[/italic], [underline]underline[/], [strike]strikethrough[/], [reverse]reverse[/], and even [blink]blink[/].",
|
| 69 |
+
)
|
| 70 |
+
|
| 71 |
+
lorem = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque in metus sed sapien ultricies pretium a at justo. Maecenas luctus velit et auctor maximus."
|
| 72 |
+
lorem_table = Table.grid(padding=1, collapse_padding=True)
|
| 73 |
+
lorem_table.pad_edge = False
|
| 74 |
+
lorem_table.add_row(
|
| 75 |
+
Text(lorem, justify="left", style="green"),
|
| 76 |
+
Text(lorem, justify="center", style="yellow"),
|
| 77 |
+
Text(lorem, justify="right", style="blue"),
|
| 78 |
+
Text(lorem, justify="full", style="red"),
|
| 79 |
+
)
|
| 80 |
+
table.add_row(
|
| 81 |
+
"Text",
|
| 82 |
+
Group(
|
| 83 |
+
Text.from_markup(
|
| 84 |
+
"""Word wrap text. Justify [green]left[/], [yellow]center[/], [blue]right[/] or [red]full[/].\n"""
|
| 85 |
+
),
|
| 86 |
+
lorem_table,
|
| 87 |
+
),
|
| 88 |
+
)
|
| 89 |
+
|
| 90 |
+
def comparison(renderable1: RenderableType, renderable2: RenderableType) -> Table:
|
| 91 |
+
table = Table(show_header=False, pad_edge=False, box=None, expand=True)
|
| 92 |
+
table.add_column("1", ratio=1)
|
| 93 |
+
table.add_column("2", ratio=1)
|
| 94 |
+
table.add_row(renderable1, renderable2)
|
| 95 |
+
return table
|
| 96 |
+
|
| 97 |
+
table.add_row(
|
| 98 |
+
"Asian\nlanguage\nsupport",
|
| 99 |
+
":flag_for_china: 该库支持中文,日文和韩文文本!\n:flag_for_japan: ライブラリは中国語、日本語、韓国語のテキストをサポートしています\n:flag_for_south_korea: 이 라이브러리는 중국어, 일본어 및 한국어 텍스트를 지원합니다",
|
| 100 |
+
)
|
| 101 |
+
|
| 102 |
+
markup_example = (
|
| 103 |
+
"[bold magenta]Rich[/] supports a simple [i]bbcode[/i]-like [b]markup[/b] for [yellow]color[/], [underline]style[/], and emoji! "
|
| 104 |
+
":+1: :apple: :ant: :bear: :baguette_bread: :bus: "
|
| 105 |
+
)
|
| 106 |
+
table.add_row("Markup", markup_example)
|
| 107 |
+
|
| 108 |
+
example_table = Table(
|
| 109 |
+
show_edge=False,
|
| 110 |
+
show_header=True,
|
| 111 |
+
expand=False,
|
| 112 |
+
row_styles=["none", "dim"],
|
| 113 |
+
box=box.SIMPLE,
|
| 114 |
+
)
|
| 115 |
+
example_table.add_column("[green]Date", style="green", no_wrap=True)
|
| 116 |
+
example_table.add_column("[blue]Title", style="blue")
|
| 117 |
+
example_table.add_column(
|
| 118 |
+
"[cyan]Production Budget",
|
| 119 |
+
style="cyan",
|
| 120 |
+
justify="right",
|
| 121 |
+
no_wrap=True,
|
| 122 |
+
)
|
| 123 |
+
example_table.add_column(
|
| 124 |
+
"[magenta]Box Office",
|
| 125 |
+
style="magenta",
|
| 126 |
+
justify="right",
|
| 127 |
+
no_wrap=True,
|
| 128 |
+
)
|
| 129 |
+
example_table.add_row(
|
| 130 |
+
"Dec 20, 2019",
|
| 131 |
+
"Star Wars: The Rise of Skywalker",
|
| 132 |
+
"$275,000,000",
|
| 133 |
+
"$375,126,118",
|
| 134 |
+
)
|
| 135 |
+
example_table.add_row(
|
| 136 |
+
"May 25, 2018",
|
| 137 |
+
"[b]Solo[/]: A Star Wars Story",
|
| 138 |
+
"$275,000,000",
|
| 139 |
+
"$393,151,347",
|
| 140 |
+
)
|
| 141 |
+
example_table.add_row(
|
| 142 |
+
"Dec 15, 2017",
|
| 143 |
+
"Star Wars Ep. VIII: The Last Jedi",
|
| 144 |
+
"$262,000,000",
|
| 145 |
+
"[bold]$1,332,539,889[/bold]",
|
| 146 |
+
)
|
| 147 |
+
example_table.add_row(
|
| 148 |
+
"May 19, 1999",
|
| 149 |
+
"Star Wars Ep. [b]I[/b]: [i]The phantom Menace",
|
| 150 |
+
"$115,000,000",
|
| 151 |
+
"$1,027,044,677",
|
| 152 |
+
)
|
| 153 |
+
|
| 154 |
+
table.add_row("Tables", example_table)
|
| 155 |
+
|
| 156 |
+
code = '''\
|
| 157 |
+
def iter_last(values: Iterable[T]) -> Iterable[Tuple[bool, T]]:
|
| 158 |
+
"""Iterate and generate a tuple with a flag for last value."""
|
| 159 |
+
iter_values = iter(values)
|
| 160 |
+
try:
|
| 161 |
+
previous_value = next(iter_values)
|
| 162 |
+
except StopIteration:
|
| 163 |
+
return
|
| 164 |
+
for value in iter_values:
|
| 165 |
+
yield False, previous_value
|
| 166 |
+
previous_value = value
|
| 167 |
+
yield True, previous_value'''
|
| 168 |
+
|
| 169 |
+
pretty_data = {
|
| 170 |
+
"foo": [
|
| 171 |
+
3.1427,
|
| 172 |
+
(
|
| 173 |
+
"Paul Atreides",
|
| 174 |
+
"Vladimir Harkonnen",
|
| 175 |
+
"Thufir Hawat",
|
| 176 |
+
),
|
| 177 |
+
],
|
| 178 |
+
"atomic": (False, True, None),
|
| 179 |
+
}
|
| 180 |
+
table.add_row(
|
| 181 |
+
"Syntax\nhighlighting\n&\npretty\nprinting",
|
| 182 |
+
comparison(
|
| 183 |
+
Syntax(code, "python3", line_numbers=True, indent_guides=True),
|
| 184 |
+
Pretty(pretty_data, indent_guides=True),
|
| 185 |
+
),
|
| 186 |
+
)
|
| 187 |
+
|
| 188 |
+
markdown_example = """\
|
| 189 |
+
# Markdown
|
| 190 |
+
|
| 191 |
+
Supports much of the *markdown* __syntax__!
|
| 192 |
+
|
| 193 |
+
- Headers
|
| 194 |
+
- Basic formatting: **bold**, *italic*, `code`
|
| 195 |
+
- Block quotes
|
| 196 |
+
- Lists, and more...
|
| 197 |
+
"""
|
| 198 |
+
table.add_row(
|
| 199 |
+
"Markdown", comparison("[cyan]" + markdown_example, Markdown(markdown_example))
|
| 200 |
+
)
|
| 201 |
+
|
| 202 |
+
table.add_row(
|
| 203 |
+
"+more!",
|
| 204 |
+
"""Progress bars, columns, styled logging handler, tracebacks, etc...""",
|
| 205 |
+
)
|
| 206 |
+
return table
|
| 207 |
+
|
| 208 |
+
|
| 209 |
+
if __name__ == "__main__": # pragma: no cover
|
| 210 |
+
from rich.panel import Panel
|
| 211 |
+
|
| 212 |
+
console = Console(
|
| 213 |
+
file=io.StringIO(),
|
| 214 |
+
force_terminal=True,
|
| 215 |
+
)
|
| 216 |
+
test_card = make_test_card()
|
| 217 |
+
|
| 218 |
+
# Print once to warm cache
|
| 219 |
+
start = process_time()
|
| 220 |
+
console.print(test_card)
|
| 221 |
+
pre_cache_taken = round((process_time() - start) * 1000.0, 1)
|
| 222 |
+
|
| 223 |
+
console.file = io.StringIO()
|
| 224 |
+
|
| 225 |
+
start = process_time()
|
| 226 |
+
console.print(test_card)
|
| 227 |
+
taken = round((process_time() - start) * 1000.0, 1)
|
| 228 |
+
|
| 229 |
+
c = Console(record=True)
|
| 230 |
+
c.print(test_card)
|
| 231 |
+
|
| 232 |
+
console = Console()
|
| 233 |
+
console.print(f"[dim]rendered in [not dim]{pre_cache_taken}ms[/] (cold cache)")
|
| 234 |
+
console.print(f"[dim]rendered in [not dim]{taken}ms[/] (warm cache)")
|
| 235 |
+
console.print()
|
| 236 |
+
console.print(
|
| 237 |
+
Panel(
|
| 238 |
+
"[b magenta]Hope you enjoy using Rich![/]\n\n"
|
| 239 |
+
"Consider sponsoring to ensure this project is maintained.\n\n"
|
| 240 |
+
"[cyan]https://github.com/sponsors/willmcgugan[/cyan]",
|
| 241 |
+
border_style="green",
|
| 242 |
+
title="Help ensure Rich is maintained",
|
| 243 |
+
padding=(1, 2),
|
| 244 |
+
)
|
| 245 |
+
)
|
venv/lib/python3.11/site-packages/rich/_emoji_codes.py
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
venv/lib/python3.11/site-packages/rich/_emoji_replace.py
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import re
|
| 2 |
+
from typing import Callable, Match, Optional
|
| 3 |
+
|
| 4 |
+
_ReStringMatch = Match[str] # regex match object
|
| 5 |
+
_ReSubCallable = Callable[[_ReStringMatch], str] # Callable invoked by re.sub
|
| 6 |
+
_EmojiSubMethod = Callable[[_ReSubCallable, str], str] # Sub method of a compiled re
|
| 7 |
+
|
| 8 |
+
|
| 9 |
+
def _emoji_replace(
|
| 10 |
+
text: str,
|
| 11 |
+
default_variant: Optional[str] = None,
|
| 12 |
+
_emoji_sub: _EmojiSubMethod = re.compile(r"(:(\S*?)(?:(?:\-)(emoji|text))?:)").sub,
|
| 13 |
+
) -> str:
|
| 14 |
+
"""Replace emoji code in text."""
|
| 15 |
+
from ._emoji_codes import EMOJI
|
| 16 |
+
|
| 17 |
+
get_emoji = EMOJI.__getitem__
|
| 18 |
+
variants = {"text": "\ufe0e", "emoji": "\ufe0f"}
|
| 19 |
+
get_variant = variants.get
|
| 20 |
+
default_variant_code = variants.get(default_variant, "") if default_variant else ""
|
| 21 |
+
|
| 22 |
+
def do_replace(match: Match[str]) -> str:
|
| 23 |
+
emoji_code, emoji_name, variant = match.groups()
|
| 24 |
+
try:
|
| 25 |
+
return get_emoji(emoji_name.lower()) + get_variant(
|
| 26 |
+
variant, default_variant_code
|
| 27 |
+
)
|
| 28 |
+
except KeyError:
|
| 29 |
+
return emoji_code
|
| 30 |
+
|
| 31 |
+
return _emoji_sub(do_replace, text)
|
venv/lib/python3.11/site-packages/rich/_export_format.py
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
CONSOLE_HTML_FORMAT = """\
|
| 2 |
+
<!DOCTYPE html>
|
| 3 |
+
<html>
|
| 4 |
+
<head>
|
| 5 |
+
<meta charset="UTF-8">
|
| 6 |
+
<style>
|
| 7 |
+
{stylesheet}
|
| 8 |
+
body {{
|
| 9 |
+
color: {foreground};
|
| 10 |
+
background-color: {background};
|
| 11 |
+
}}
|
| 12 |
+
</style>
|
| 13 |
+
</head>
|
| 14 |
+
<body>
|
| 15 |
+
<pre style="font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace"><code style="font-family:inherit">{code}</code></pre>
|
| 16 |
+
</body>
|
| 17 |
+
</html>
|
| 18 |
+
"""
|
| 19 |
+
|
| 20 |
+
CONSOLE_SVG_FORMAT = """\
|
| 21 |
+
<svg class="rich-terminal" viewBox="0 0 {width} {height}" xmlns="http://www.w3.org/2000/svg">
|
| 22 |
+
<!-- Generated with Rich https://www.textualize.io -->
|
| 23 |
+
<style>
|
| 24 |
+
|
| 25 |
+
@font-face {{
|
| 26 |
+
font-family: "Fira Code";
|
| 27 |
+
src: local("FiraCode-Regular"),
|
| 28 |
+
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Regular.woff2") format("woff2"),
|
| 29 |
+
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Regular.woff") format("woff");
|
| 30 |
+
font-style: normal;
|
| 31 |
+
font-weight: 400;
|
| 32 |
+
}}
|
| 33 |
+
@font-face {{
|
| 34 |
+
font-family: "Fira Code";
|
| 35 |
+
src: local("FiraCode-Bold"),
|
| 36 |
+
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Bold.woff2") format("woff2"),
|
| 37 |
+
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Bold.woff") format("woff");
|
| 38 |
+
font-style: bold;
|
| 39 |
+
font-weight: 700;
|
| 40 |
+
}}
|
| 41 |
+
|
| 42 |
+
.{unique_id}-matrix {{
|
| 43 |
+
font-family: Fira Code, monospace;
|
| 44 |
+
font-size: {char_height}px;
|
| 45 |
+
line-height: {line_height}px;
|
| 46 |
+
font-variant-east-asian: full-width;
|
| 47 |
+
}}
|
| 48 |
+
|
| 49 |
+
.{unique_id}-title {{
|
| 50 |
+
font-size: 18px;
|
| 51 |
+
font-weight: bold;
|
| 52 |
+
font-family: arial;
|
| 53 |
+
}}
|
| 54 |
+
|
| 55 |
+
{styles}
|
| 56 |
+
</style>
|
| 57 |
+
|
| 58 |
+
<defs>
|
| 59 |
+
<clipPath id="{unique_id}-clip-terminal">
|
| 60 |
+
<rect x="0" y="0" width="{terminal_width}" height="{terminal_height}" />
|
| 61 |
+
</clipPath>
|
| 62 |
+
{lines}
|
| 63 |
+
</defs>
|
| 64 |
+
|
| 65 |
+
{chrome}
|
| 66 |
+
<g transform="translate({terminal_x}, {terminal_y})" clip-path="url(#{unique_id}-clip-terminal)">
|
| 67 |
+
{backgrounds}
|
| 68 |
+
<g class="{unique_id}-matrix">
|
| 69 |
+
{matrix}
|
| 70 |
+
</g>
|
| 71 |
+
</g>
|
| 72 |
+
</svg>
|
| 73 |
+
"""
|
| 74 |
+
|
| 75 |
+
_SVG_FONT_FAMILY = "Rich Fira Code"
|
| 76 |
+
_SVG_CLASSES_PREFIX = "rich-svg"
|
venv/lib/python3.11/site-packages/rich/_extension.py
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from typing import Any
|
| 2 |
+
|
| 3 |
+
|
| 4 |
+
def load_ipython_extension(ip: Any) -> None: # pragma: no cover
|
| 5 |
+
# prevent circular import
|
| 6 |
+
from rich.pretty import install
|
| 7 |
+
from rich.traceback import install as tr_install
|
| 8 |
+
|
| 9 |
+
install()
|
| 10 |
+
tr_install()
|
venv/lib/python3.11/site-packages/rich/_fileno.py
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from __future__ import annotations
|
| 2 |
+
|
| 3 |
+
from typing import IO, Callable
|
| 4 |
+
|
| 5 |
+
|
| 6 |
+
def get_fileno(file_like: IO[str]) -> int | None:
|
| 7 |
+
"""Get fileno() from a file, accounting for poorly implemented file-like objects.
|
| 8 |
+
|
| 9 |
+
Args:
|
| 10 |
+
file_like (IO): A file-like object.
|
| 11 |
+
|
| 12 |
+
Returns:
|
| 13 |
+
int | None: The result of fileno if available, or None if operation failed.
|
| 14 |
+
"""
|
| 15 |
+
fileno: Callable[[], int] | None = getattr(file_like, "fileno", None)
|
| 16 |
+
if fileno is not None:
|
| 17 |
+
try:
|
| 18 |
+
return fileno()
|
| 19 |
+
except Exception:
|
| 20 |
+
# `fileno` is documented as potentially raising a OSError
|
| 21 |
+
# Alas, from the issues, there are so many poorly implemented file-like objects,
|
| 22 |
+
# that `fileno()` can raise just about anything.
|
| 23 |
+
return None
|
| 24 |
+
return None
|
venv/lib/python3.11/site-packages/rich/_inspect.py
ADDED
|
@@ -0,0 +1,272 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import inspect
|
| 2 |
+
from inspect import cleandoc, getdoc, getfile, isclass, ismodule, signature
|
| 3 |
+
from typing import Any, Collection, Iterable, Optional, Tuple, Type, Union
|
| 4 |
+
|
| 5 |
+
from .console import Group, RenderableType
|
| 6 |
+
from .control import escape_control_codes
|
| 7 |
+
from .highlighter import ReprHighlighter
|
| 8 |
+
from .jupyter import JupyterMixin
|
| 9 |
+
from .panel import Panel
|
| 10 |
+
from .pretty import Pretty
|
| 11 |
+
from .table import Table
|
| 12 |
+
from .text import Text, TextType
|
| 13 |
+
|
| 14 |
+
|
| 15 |
+
def _first_paragraph(doc: str) -> str:
|
| 16 |
+
"""Get the first paragraph from a docstring."""
|
| 17 |
+
paragraph, _, _ = doc.partition("\n\n")
|
| 18 |
+
return paragraph
|
| 19 |
+
|
| 20 |
+
|
| 21 |
+
class Inspect(JupyterMixin):
|
| 22 |
+
"""A renderable to inspect any Python Object.
|
| 23 |
+
|
| 24 |
+
Args:
|
| 25 |
+
obj (Any): An object to inspect.
|
| 26 |
+
title (str, optional): Title to display over inspect result, or None use type. Defaults to None.
|
| 27 |
+
help (bool, optional): Show full help text rather than just first paragraph. Defaults to False.
|
| 28 |
+
methods (bool, optional): Enable inspection of callables. Defaults to False.
|
| 29 |
+
docs (bool, optional): Also render doc strings. Defaults to True.
|
| 30 |
+
private (bool, optional): Show private attributes (beginning with underscore). Defaults to False.
|
| 31 |
+
dunder (bool, optional): Show attributes starting with double underscore. Defaults to False.
|
| 32 |
+
sort (bool, optional): Sort attributes alphabetically, callables at the top, leading and trailing underscores ignored. Defaults to True.
|
| 33 |
+
all (bool, optional): Show all attributes. Defaults to False.
|
| 34 |
+
value (bool, optional): Pretty print value of object. Defaults to True.
|
| 35 |
+
"""
|
| 36 |
+
|
| 37 |
+
def __init__(
|
| 38 |
+
self,
|
| 39 |
+
obj: Any,
|
| 40 |
+
*,
|
| 41 |
+
title: Optional[TextType] = None,
|
| 42 |
+
help: bool = False,
|
| 43 |
+
methods: bool = False,
|
| 44 |
+
docs: bool = True,
|
| 45 |
+
private: bool = False,
|
| 46 |
+
dunder: bool = False,
|
| 47 |
+
sort: bool = True,
|
| 48 |
+
all: bool = True,
|
| 49 |
+
value: bool = True,
|
| 50 |
+
) -> None:
|
| 51 |
+
self.highlighter = ReprHighlighter()
|
| 52 |
+
self.obj = obj
|
| 53 |
+
self.title = title or self._make_title(obj)
|
| 54 |
+
if all:
|
| 55 |
+
methods = private = dunder = True
|
| 56 |
+
self.help = help
|
| 57 |
+
self.methods = methods
|
| 58 |
+
self.docs = docs or help
|
| 59 |
+
self.private = private or dunder
|
| 60 |
+
self.dunder = dunder
|
| 61 |
+
self.sort = sort
|
| 62 |
+
self.value = value
|
| 63 |
+
|
| 64 |
+
def _make_title(self, obj: Any) -> Text:
|
| 65 |
+
"""Make a default title."""
|
| 66 |
+
title_str = (
|
| 67 |
+
str(obj)
|
| 68 |
+
if (isclass(obj) or callable(obj) or ismodule(obj))
|
| 69 |
+
else str(type(obj))
|
| 70 |
+
)
|
| 71 |
+
title_text = self.highlighter(title_str)
|
| 72 |
+
return title_text
|
| 73 |
+
|
| 74 |
+
def __rich__(self) -> Panel:
|
| 75 |
+
return Panel.fit(
|
| 76 |
+
Group(*self._render()),
|
| 77 |
+
title=self.title,
|
| 78 |
+
border_style="scope.border",
|
| 79 |
+
padding=(0, 1),
|
| 80 |
+
)
|
| 81 |
+
|
| 82 |
+
def _get_signature(self, name: str, obj: Any) -> Optional[Text]:
|
| 83 |
+
"""Get a signature for a callable."""
|
| 84 |
+
try:
|
| 85 |
+
_signature = str(signature(obj)) + ":"
|
| 86 |
+
except ValueError:
|
| 87 |
+
_signature = "(...)"
|
| 88 |
+
except TypeError:
|
| 89 |
+
return None
|
| 90 |
+
|
| 91 |
+
source_filename: Optional[str] = None
|
| 92 |
+
try:
|
| 93 |
+
source_filename = getfile(obj)
|
| 94 |
+
except (OSError, TypeError):
|
| 95 |
+
# OSError is raised if obj has no source file, e.g. when defined in REPL.
|
| 96 |
+
pass
|
| 97 |
+
|
| 98 |
+
callable_name = Text(name, style="inspect.callable")
|
| 99 |
+
if source_filename:
|
| 100 |
+
callable_name.stylize(f"link file://{source_filename}")
|
| 101 |
+
signature_text = self.highlighter(_signature)
|
| 102 |
+
|
| 103 |
+
qualname = name or getattr(obj, "__qualname__", name)
|
| 104 |
+
if not isinstance(qualname, str):
|
| 105 |
+
qualname = getattr(obj, "__name__", name)
|
| 106 |
+
if not isinstance(qualname, str):
|
| 107 |
+
qualname = name
|
| 108 |
+
|
| 109 |
+
# If obj is a module, there may be classes (which are callable) to display
|
| 110 |
+
if inspect.isclass(obj):
|
| 111 |
+
prefix = "class"
|
| 112 |
+
elif inspect.iscoroutinefunction(obj):
|
| 113 |
+
prefix = "async def"
|
| 114 |
+
else:
|
| 115 |
+
prefix = "def"
|
| 116 |
+
|
| 117 |
+
qual_signature = Text.assemble(
|
| 118 |
+
(f"{prefix} ", f"inspect.{prefix.replace(' ', '_')}"),
|
| 119 |
+
(qualname, "inspect.callable"),
|
| 120 |
+
signature_text,
|
| 121 |
+
)
|
| 122 |
+
|
| 123 |
+
return qual_signature
|
| 124 |
+
|
| 125 |
+
def _render(self) -> Iterable[RenderableType]:
|
| 126 |
+
"""Render object."""
|
| 127 |
+
|
| 128 |
+
def sort_items(item: Tuple[str, Any]) -> Tuple[bool, str]:
|
| 129 |
+
key, (_error, value) = item
|
| 130 |
+
return (callable(value), key.strip("_").lower())
|
| 131 |
+
|
| 132 |
+
def safe_getattr(attr_name: str) -> Tuple[Any, Any]:
|
| 133 |
+
"""Get attribute or any exception."""
|
| 134 |
+
try:
|
| 135 |
+
return (None, getattr(obj, attr_name))
|
| 136 |
+
except Exception as error:
|
| 137 |
+
return (error, None)
|
| 138 |
+
|
| 139 |
+
obj = self.obj
|
| 140 |
+
keys = dir(obj)
|
| 141 |
+
total_items = len(keys)
|
| 142 |
+
if not self.dunder:
|
| 143 |
+
keys = [key for key in keys if not key.startswith("__")]
|
| 144 |
+
if not self.private:
|
| 145 |
+
keys = [key for key in keys if not key.startswith("_")]
|
| 146 |
+
not_shown_count = total_items - len(keys)
|
| 147 |
+
items = [(key, safe_getattr(key)) for key in keys]
|
| 148 |
+
if self.sort:
|
| 149 |
+
items.sort(key=sort_items)
|
| 150 |
+
|
| 151 |
+
items_table = Table.grid(padding=(0, 1), expand=False)
|
| 152 |
+
items_table.add_column(justify="right")
|
| 153 |
+
add_row = items_table.add_row
|
| 154 |
+
highlighter = self.highlighter
|
| 155 |
+
|
| 156 |
+
if callable(obj):
|
| 157 |
+
signature = self._get_signature("", obj)
|
| 158 |
+
if signature is not None:
|
| 159 |
+
yield signature
|
| 160 |
+
yield ""
|
| 161 |
+
|
| 162 |
+
if self.docs:
|
| 163 |
+
_doc = self._get_formatted_doc(obj)
|
| 164 |
+
if _doc is not None:
|
| 165 |
+
doc_text = Text(_doc, style="inspect.help")
|
| 166 |
+
doc_text = highlighter(doc_text)
|
| 167 |
+
yield doc_text
|
| 168 |
+
yield ""
|
| 169 |
+
|
| 170 |
+
if self.value and not (isclass(obj) or callable(obj) or ismodule(obj)):
|
| 171 |
+
yield Panel(
|
| 172 |
+
Pretty(obj, indent_guides=True, max_length=10, max_string=60),
|
| 173 |
+
border_style="inspect.value.border",
|
| 174 |
+
)
|
| 175 |
+
yield ""
|
| 176 |
+
|
| 177 |
+
for key, (error, value) in items:
|
| 178 |
+
key_text = Text.assemble(
|
| 179 |
+
(
|
| 180 |
+
key,
|
| 181 |
+
"inspect.attr.dunder" if key.startswith("__") else "inspect.attr",
|
| 182 |
+
),
|
| 183 |
+
(" =", "inspect.equals"),
|
| 184 |
+
)
|
| 185 |
+
if error is not None:
|
| 186 |
+
warning = key_text.copy()
|
| 187 |
+
warning.stylize("inspect.error")
|
| 188 |
+
add_row(warning, highlighter(repr(error)))
|
| 189 |
+
continue
|
| 190 |
+
|
| 191 |
+
if callable(value):
|
| 192 |
+
if not self.methods:
|
| 193 |
+
continue
|
| 194 |
+
|
| 195 |
+
_signature_text = self._get_signature(key, value)
|
| 196 |
+
if _signature_text is None:
|
| 197 |
+
add_row(key_text, Pretty(value, highlighter=highlighter))
|
| 198 |
+
else:
|
| 199 |
+
if self.docs:
|
| 200 |
+
docs = self._get_formatted_doc(value)
|
| 201 |
+
if docs is not None:
|
| 202 |
+
_signature_text.append("\n" if "\n" in docs else " ")
|
| 203 |
+
doc = highlighter(docs)
|
| 204 |
+
doc.stylize("inspect.doc")
|
| 205 |
+
_signature_text.append(doc)
|
| 206 |
+
|
| 207 |
+
add_row(key_text, _signature_text)
|
| 208 |
+
else:
|
| 209 |
+
add_row(key_text, Pretty(value, highlighter=highlighter))
|
| 210 |
+
if items_table.row_count:
|
| 211 |
+
yield items_table
|
| 212 |
+
elif not_shown_count:
|
| 213 |
+
yield Text.from_markup(
|
| 214 |
+
f"[b cyan]{not_shown_count}[/][i] attribute(s) not shown.[/i] "
|
| 215 |
+
f"Run [b][magenta]inspect[/]([not b]inspect[/])[/b] for options."
|
| 216 |
+
)
|
| 217 |
+
|
| 218 |
+
def _get_formatted_doc(self, object_: Any) -> Optional[str]:
|
| 219 |
+
"""
|
| 220 |
+
Extract the docstring of an object, process it and returns it.
|
| 221 |
+
The processing consists in cleaning up the docstring's indentation,
|
| 222 |
+
taking only its 1st paragraph if `self.help` is not True,
|
| 223 |
+
and escape its control codes.
|
| 224 |
+
|
| 225 |
+
Args:
|
| 226 |
+
object_ (Any): the object to get the docstring from.
|
| 227 |
+
|
| 228 |
+
Returns:
|
| 229 |
+
Optional[str]: the processed docstring, or None if no docstring was found.
|
| 230 |
+
"""
|
| 231 |
+
docs = getdoc(object_)
|
| 232 |
+
if docs is None:
|
| 233 |
+
return None
|
| 234 |
+
docs = cleandoc(docs).strip()
|
| 235 |
+
if not self.help:
|
| 236 |
+
docs = _first_paragraph(docs)
|
| 237 |
+
return escape_control_codes(docs)
|
| 238 |
+
|
| 239 |
+
|
| 240 |
+
def get_object_types_mro(obj: Union[object, Type[Any]]) -> Tuple[type, ...]:
|
| 241 |
+
"""Returns the MRO of an object's class, or of the object itself if it's a class."""
|
| 242 |
+
if not hasattr(obj, "__mro__"):
|
| 243 |
+
# N.B. we cannot use `if type(obj) is type` here because it doesn't work with
|
| 244 |
+
# some types of classes, such as the ones that use abc.ABCMeta.
|
| 245 |
+
obj = type(obj)
|
| 246 |
+
return getattr(obj, "__mro__", ())
|
| 247 |
+
|
| 248 |
+
|
| 249 |
+
def get_object_types_mro_as_strings(obj: object) -> Collection[str]:
|
| 250 |
+
"""
|
| 251 |
+
Returns the MRO of an object's class as full qualified names, or of the object itself if it's a class.
|
| 252 |
+
|
| 253 |
+
Examples:
|
| 254 |
+
`object_types_mro_as_strings(JSONDecoder)` will return `['json.decoder.JSONDecoder', 'builtins.object']`
|
| 255 |
+
"""
|
| 256 |
+
return [
|
| 257 |
+
f'{getattr(type_, "__module__", "")}.{getattr(type_, "__qualname__", "")}'
|
| 258 |
+
for type_ in get_object_types_mro(obj)
|
| 259 |
+
]
|
| 260 |
+
|
| 261 |
+
|
| 262 |
+
def is_object_one_of_types(
|
| 263 |
+
obj: object, fully_qualified_types_names: Collection[str]
|
| 264 |
+
) -> bool:
|
| 265 |
+
"""
|
| 266 |
+
Returns `True` if the given object's class (or the object itself, if it's a class) has one of the
|
| 267 |
+
fully qualified names in its MRO.
|
| 268 |
+
"""
|
| 269 |
+
for type_name in get_object_types_mro_as_strings(obj):
|
| 270 |
+
if type_name in fully_qualified_types_names:
|
| 271 |
+
return True
|
| 272 |
+
return False
|
venv/lib/python3.11/site-packages/rich/_log_render.py
ADDED
|
@@ -0,0 +1,94 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from datetime import datetime
|
| 2 |
+
from typing import Iterable, List, Optional, TYPE_CHECKING, Union, Callable
|
| 3 |
+
|
| 4 |
+
|
| 5 |
+
from .text import Text, TextType
|
| 6 |
+
|
| 7 |
+
if TYPE_CHECKING:
|
| 8 |
+
from .console import Console, ConsoleRenderable, RenderableType
|
| 9 |
+
from .table import Table
|
| 10 |
+
|
| 11 |
+
FormatTimeCallable = Callable[[datetime], Text]
|
| 12 |
+
|
| 13 |
+
|
| 14 |
+
class LogRender:
|
| 15 |
+
def __init__(
|
| 16 |
+
self,
|
| 17 |
+
show_time: bool = True,
|
| 18 |
+
show_level: bool = False,
|
| 19 |
+
show_path: bool = True,
|
| 20 |
+
time_format: Union[str, FormatTimeCallable] = "[%x %X]",
|
| 21 |
+
omit_repeated_times: bool = True,
|
| 22 |
+
level_width: Optional[int] = 8,
|
| 23 |
+
) -> None:
|
| 24 |
+
self.show_time = show_time
|
| 25 |
+
self.show_level = show_level
|
| 26 |
+
self.show_path = show_path
|
| 27 |
+
self.time_format = time_format
|
| 28 |
+
self.omit_repeated_times = omit_repeated_times
|
| 29 |
+
self.level_width = level_width
|
| 30 |
+
self._last_time: Optional[Text] = None
|
| 31 |
+
|
| 32 |
+
def __call__(
|
| 33 |
+
self,
|
| 34 |
+
console: "Console",
|
| 35 |
+
renderables: Iterable["ConsoleRenderable"],
|
| 36 |
+
log_time: Optional[datetime] = None,
|
| 37 |
+
time_format: Optional[Union[str, FormatTimeCallable]] = None,
|
| 38 |
+
level: TextType = "",
|
| 39 |
+
path: Optional[str] = None,
|
| 40 |
+
line_no: Optional[int] = None,
|
| 41 |
+
link_path: Optional[str] = None,
|
| 42 |
+
) -> "Table":
|
| 43 |
+
from .containers import Renderables
|
| 44 |
+
from .table import Table
|
| 45 |
+
|
| 46 |
+
output = Table.grid(padding=(0, 1))
|
| 47 |
+
output.expand = True
|
| 48 |
+
if self.show_time:
|
| 49 |
+
output.add_column(style="log.time")
|
| 50 |
+
if self.show_level:
|
| 51 |
+
output.add_column(style="log.level", width=self.level_width)
|
| 52 |
+
output.add_column(ratio=1, style="log.message", overflow="fold")
|
| 53 |
+
if self.show_path and path:
|
| 54 |
+
output.add_column(style="log.path")
|
| 55 |
+
row: List["RenderableType"] = []
|
| 56 |
+
if self.show_time:
|
| 57 |
+
log_time = log_time or console.get_datetime()
|
| 58 |
+
time_format = time_format or self.time_format
|
| 59 |
+
if callable(time_format):
|
| 60 |
+
log_time_display = time_format(log_time)
|
| 61 |
+
else:
|
| 62 |
+
log_time_display = Text(log_time.strftime(time_format))
|
| 63 |
+
if log_time_display == self._last_time and self.omit_repeated_times:
|
| 64 |
+
row.append(Text(" " * len(log_time_display)))
|
| 65 |
+
else:
|
| 66 |
+
row.append(log_time_display)
|
| 67 |
+
self._last_time = log_time_display
|
| 68 |
+
if self.show_level:
|
| 69 |
+
row.append(level)
|
| 70 |
+
|
| 71 |
+
row.append(Renderables(renderables))
|
| 72 |
+
if self.show_path and path:
|
| 73 |
+
path_text = Text()
|
| 74 |
+
path_text.append(
|
| 75 |
+
path, style=f"link file://{link_path}" if link_path else ""
|
| 76 |
+
)
|
| 77 |
+
if line_no:
|
| 78 |
+
path_text.append(":")
|
| 79 |
+
path_text.append(
|
| 80 |
+
f"{line_no}",
|
| 81 |
+
style=f"link file://{link_path}#{line_no}" if link_path else "",
|
| 82 |
+
)
|
| 83 |
+
row.append(path_text)
|
| 84 |
+
|
| 85 |
+
output.add_row(*row)
|
| 86 |
+
return output
|
| 87 |
+
|
| 88 |
+
|
| 89 |
+
if __name__ == "__main__": # pragma: no cover
|
| 90 |
+
from rich.console import Console
|
| 91 |
+
|
| 92 |
+
c = Console()
|
| 93 |
+
c.print("[on blue]Hello", justify="right")
|
| 94 |
+
c.log("[on blue]hello", justify="right")
|
venv/lib/python3.11/site-packages/rich/_loop.py
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from typing import Iterable, Tuple, TypeVar
|
| 2 |
+
|
| 3 |
+
T = TypeVar("T")
|
| 4 |
+
|
| 5 |
+
|
| 6 |
+
def loop_first(values: Iterable[T]) -> Iterable[Tuple[bool, T]]:
|
| 7 |
+
"""Iterate and generate a tuple with a flag for first value."""
|
| 8 |
+
iter_values = iter(values)
|
| 9 |
+
try:
|
| 10 |
+
value = next(iter_values)
|
| 11 |
+
except StopIteration:
|
| 12 |
+
return
|
| 13 |
+
yield True, value
|
| 14 |
+
for value in iter_values:
|
| 15 |
+
yield False, value
|
| 16 |
+
|
| 17 |
+
|
| 18 |
+
def loop_last(values: Iterable[T]) -> Iterable[Tuple[bool, T]]:
|
| 19 |
+
"""Iterate and generate a tuple with a flag for last value."""
|
| 20 |
+
iter_values = iter(values)
|
| 21 |
+
try:
|
| 22 |
+
previous_value = next(iter_values)
|
| 23 |
+
except StopIteration:
|
| 24 |
+
return
|
| 25 |
+
for value in iter_values:
|
| 26 |
+
yield False, previous_value
|
| 27 |
+
previous_value = value
|
| 28 |
+
yield True, previous_value
|
| 29 |
+
|
| 30 |
+
|
| 31 |
+
def loop_first_last(values: Iterable[T]) -> Iterable[Tuple[bool, bool, T]]:
|
| 32 |
+
"""Iterate and generate a tuple with a flag for first and last value."""
|
| 33 |
+
iter_values = iter(values)
|
| 34 |
+
try:
|
| 35 |
+
previous_value = next(iter_values)
|
| 36 |
+
except StopIteration:
|
| 37 |
+
return
|
| 38 |
+
first = True
|
| 39 |
+
for value in iter_values:
|
| 40 |
+
yield first, False, previous_value
|
| 41 |
+
first = False
|
| 42 |
+
previous_value = value
|
| 43 |
+
yield first, True, previous_value
|
venv/lib/python3.11/site-packages/rich/_null_file.py
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from types import TracebackType
|
| 2 |
+
from typing import IO, Iterable, Iterator, List, Optional, Type
|
| 3 |
+
|
| 4 |
+
|
| 5 |
+
class NullFile(IO[str]):
|
| 6 |
+
def close(self) -> None:
|
| 7 |
+
pass
|
| 8 |
+
|
| 9 |
+
def isatty(self) -> bool:
|
| 10 |
+
return False
|
| 11 |
+
|
| 12 |
+
def read(self, __n: int = 1) -> str:
|
| 13 |
+
return ""
|
| 14 |
+
|
| 15 |
+
def readable(self) -> bool:
|
| 16 |
+
return False
|
| 17 |
+
|
| 18 |
+
def readline(self, __limit: int = 1) -> str:
|
| 19 |
+
return ""
|
| 20 |
+
|
| 21 |
+
def readlines(self, __hint: int = 1) -> List[str]:
|
| 22 |
+
return []
|
| 23 |
+
|
| 24 |
+
def seek(self, __offset: int, __whence: int = 1) -> int:
|
| 25 |
+
return 0
|
| 26 |
+
|
| 27 |
+
def seekable(self) -> bool:
|
| 28 |
+
return False
|
| 29 |
+
|
| 30 |
+
def tell(self) -> int:
|
| 31 |
+
return 0
|
| 32 |
+
|
| 33 |
+
def truncate(self, __size: Optional[int] = 1) -> int:
|
| 34 |
+
return 0
|
| 35 |
+
|
| 36 |
+
def writable(self) -> bool:
|
| 37 |
+
return False
|
| 38 |
+
|
| 39 |
+
def writelines(self, __lines: Iterable[str]) -> None:
|
| 40 |
+
pass
|
| 41 |
+
|
| 42 |
+
def __next__(self) -> str:
|
| 43 |
+
return ""
|
| 44 |
+
|
| 45 |
+
def __iter__(self) -> Iterator[str]:
|
| 46 |
+
return iter([""])
|
| 47 |
+
|
| 48 |
+
def __enter__(self) -> IO[str]:
|
| 49 |
+
return self
|
| 50 |
+
|
| 51 |
+
def __exit__(
|
| 52 |
+
self,
|
| 53 |
+
__t: Optional[Type[BaseException]],
|
| 54 |
+
__value: Optional[BaseException],
|
| 55 |
+
__traceback: Optional[TracebackType],
|
| 56 |
+
) -> None:
|
| 57 |
+
pass
|
| 58 |
+
|
| 59 |
+
def write(self, text: str) -> int:
|
| 60 |
+
return 0
|
| 61 |
+
|
| 62 |
+
def flush(self) -> None:
|
| 63 |
+
pass
|
| 64 |
+
|
| 65 |
+
def fileno(self) -> int:
|
| 66 |
+
return -1
|
| 67 |
+
|
| 68 |
+
|
| 69 |
+
NULL_FILE = NullFile()
|
venv/lib/python3.11/site-packages/rich/_palettes.py
ADDED
|
@@ -0,0 +1,309 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from .palette import Palette
|
| 2 |
+
|
| 3 |
+
|
| 4 |
+
# Taken from https://en.wikipedia.org/wiki/ANSI_escape_code (Windows 10 column)
|
| 5 |
+
WINDOWS_PALETTE = Palette(
|
| 6 |
+
[
|
| 7 |
+
(12, 12, 12),
|
| 8 |
+
(197, 15, 31),
|
| 9 |
+
(19, 161, 14),
|
| 10 |
+
(193, 156, 0),
|
| 11 |
+
(0, 55, 218),
|
| 12 |
+
(136, 23, 152),
|
| 13 |
+
(58, 150, 221),
|
| 14 |
+
(204, 204, 204),
|
| 15 |
+
(118, 118, 118),
|
| 16 |
+
(231, 72, 86),
|
| 17 |
+
(22, 198, 12),
|
| 18 |
+
(249, 241, 165),
|
| 19 |
+
(59, 120, 255),
|
| 20 |
+
(180, 0, 158),
|
| 21 |
+
(97, 214, 214),
|
| 22 |
+
(242, 242, 242),
|
| 23 |
+
]
|
| 24 |
+
)
|
| 25 |
+
|
| 26 |
+
# # The standard ansi colors (including bright variants)
|
| 27 |
+
STANDARD_PALETTE = Palette(
|
| 28 |
+
[
|
| 29 |
+
(0, 0, 0),
|
| 30 |
+
(170, 0, 0),
|
| 31 |
+
(0, 170, 0),
|
| 32 |
+
(170, 85, 0),
|
| 33 |
+
(0, 0, 170),
|
| 34 |
+
(170, 0, 170),
|
| 35 |
+
(0, 170, 170),
|
| 36 |
+
(170, 170, 170),
|
| 37 |
+
(85, 85, 85),
|
| 38 |
+
(255, 85, 85),
|
| 39 |
+
(85, 255, 85),
|
| 40 |
+
(255, 255, 85),
|
| 41 |
+
(85, 85, 255),
|
| 42 |
+
(255, 85, 255),
|
| 43 |
+
(85, 255, 255),
|
| 44 |
+
(255, 255, 255),
|
| 45 |
+
]
|
| 46 |
+
)
|
| 47 |
+
|
| 48 |
+
|
| 49 |
+
# The 256 color palette
|
| 50 |
+
EIGHT_BIT_PALETTE = Palette(
|
| 51 |
+
[
|
| 52 |
+
(0, 0, 0),
|
| 53 |
+
(128, 0, 0),
|
| 54 |
+
(0, 128, 0),
|
| 55 |
+
(128, 128, 0),
|
| 56 |
+
(0, 0, 128),
|
| 57 |
+
(128, 0, 128),
|
| 58 |
+
(0, 128, 128),
|
| 59 |
+
(192, 192, 192),
|
| 60 |
+
(128, 128, 128),
|
| 61 |
+
(255, 0, 0),
|
| 62 |
+
(0, 255, 0),
|
| 63 |
+
(255, 255, 0),
|
| 64 |
+
(0, 0, 255),
|
| 65 |
+
(255, 0, 255),
|
| 66 |
+
(0, 255, 255),
|
| 67 |
+
(255, 255, 255),
|
| 68 |
+
(0, 0, 0),
|
| 69 |
+
(0, 0, 95),
|
| 70 |
+
(0, 0, 135),
|
| 71 |
+
(0, 0, 175),
|
| 72 |
+
(0, 0, 215),
|
| 73 |
+
(0, 0, 255),
|
| 74 |
+
(0, 95, 0),
|
| 75 |
+
(0, 95, 95),
|
| 76 |
+
(0, 95, 135),
|
| 77 |
+
(0, 95, 175),
|
| 78 |
+
(0, 95, 215),
|
| 79 |
+
(0, 95, 255),
|
| 80 |
+
(0, 135, 0),
|
| 81 |
+
(0, 135, 95),
|
| 82 |
+
(0, 135, 135),
|
| 83 |
+
(0, 135, 175),
|
| 84 |
+
(0, 135, 215),
|
| 85 |
+
(0, 135, 255),
|
| 86 |
+
(0, 175, 0),
|
| 87 |
+
(0, 175, 95),
|
| 88 |
+
(0, 175, 135),
|
| 89 |
+
(0, 175, 175),
|
| 90 |
+
(0, 175, 215),
|
| 91 |
+
(0, 175, 255),
|
| 92 |
+
(0, 215, 0),
|
| 93 |
+
(0, 215, 95),
|
| 94 |
+
(0, 215, 135),
|
| 95 |
+
(0, 215, 175),
|
| 96 |
+
(0, 215, 215),
|
| 97 |
+
(0, 215, 255),
|
| 98 |
+
(0, 255, 0),
|
| 99 |
+
(0, 255, 95),
|
| 100 |
+
(0, 255, 135),
|
| 101 |
+
(0, 255, 175),
|
| 102 |
+
(0, 255, 215),
|
| 103 |
+
(0, 255, 255),
|
| 104 |
+
(95, 0, 0),
|
| 105 |
+
(95, 0, 95),
|
| 106 |
+
(95, 0, 135),
|
| 107 |
+
(95, 0, 175),
|
| 108 |
+
(95, 0, 215),
|
| 109 |
+
(95, 0, 255),
|
| 110 |
+
(95, 95, 0),
|
| 111 |
+
(95, 95, 95),
|
| 112 |
+
(95, 95, 135),
|
| 113 |
+
(95, 95, 175),
|
| 114 |
+
(95, 95, 215),
|
| 115 |
+
(95, 95, 255),
|
| 116 |
+
(95, 135, 0),
|
| 117 |
+
(95, 135, 95),
|
| 118 |
+
(95, 135, 135),
|
| 119 |
+
(95, 135, 175),
|
| 120 |
+
(95, 135, 215),
|
| 121 |
+
(95, 135, 255),
|
| 122 |
+
(95, 175, 0),
|
| 123 |
+
(95, 175, 95),
|
| 124 |
+
(95, 175, 135),
|
| 125 |
+
(95, 175, 175),
|
| 126 |
+
(95, 175, 215),
|
| 127 |
+
(95, 175, 255),
|
| 128 |
+
(95, 215, 0),
|
| 129 |
+
(95, 215, 95),
|
| 130 |
+
(95, 215, 135),
|
| 131 |
+
(95, 215, 175),
|
| 132 |
+
(95, 215, 215),
|
| 133 |
+
(95, 215, 255),
|
| 134 |
+
(95, 255, 0),
|
| 135 |
+
(95, 255, 95),
|
| 136 |
+
(95, 255, 135),
|
| 137 |
+
(95, 255, 175),
|
| 138 |
+
(95, 255, 215),
|
| 139 |
+
(95, 255, 255),
|
| 140 |
+
(135, 0, 0),
|
| 141 |
+
(135, 0, 95),
|
| 142 |
+
(135, 0, 135),
|
| 143 |
+
(135, 0, 175),
|
| 144 |
+
(135, 0, 215),
|
| 145 |
+
(135, 0, 255),
|
| 146 |
+
(135, 95, 0),
|
| 147 |
+
(135, 95, 95),
|
| 148 |
+
(135, 95, 135),
|
| 149 |
+
(135, 95, 175),
|
| 150 |
+
(135, 95, 215),
|
| 151 |
+
(135, 95, 255),
|
| 152 |
+
(135, 135, 0),
|
| 153 |
+
(135, 135, 95),
|
| 154 |
+
(135, 135, 135),
|
| 155 |
+
(135, 135, 175),
|
| 156 |
+
(135, 135, 215),
|
| 157 |
+
(135, 135, 255),
|
| 158 |
+
(135, 175, 0),
|
| 159 |
+
(135, 175, 95),
|
| 160 |
+
(135, 175, 135),
|
| 161 |
+
(135, 175, 175),
|
| 162 |
+
(135, 175, 215),
|
| 163 |
+
(135, 175, 255),
|
| 164 |
+
(135, 215, 0),
|
| 165 |
+
(135, 215, 95),
|
| 166 |
+
(135, 215, 135),
|
| 167 |
+
(135, 215, 175),
|
| 168 |
+
(135, 215, 215),
|
| 169 |
+
(135, 215, 255),
|
| 170 |
+
(135, 255, 0),
|
| 171 |
+
(135, 255, 95),
|
| 172 |
+
(135, 255, 135),
|
| 173 |
+
(135, 255, 175),
|
| 174 |
+
(135, 255, 215),
|
| 175 |
+
(135, 255, 255),
|
| 176 |
+
(175, 0, 0),
|
| 177 |
+
(175, 0, 95),
|
| 178 |
+
(175, 0, 135),
|
| 179 |
+
(175, 0, 175),
|
| 180 |
+
(175, 0, 215),
|
| 181 |
+
(175, 0, 255),
|
| 182 |
+
(175, 95, 0),
|
| 183 |
+
(175, 95, 95),
|
| 184 |
+
(175, 95, 135),
|
| 185 |
+
(175, 95, 175),
|
| 186 |
+
(175, 95, 215),
|
| 187 |
+
(175, 95, 255),
|
| 188 |
+
(175, 135, 0),
|
| 189 |
+
(175, 135, 95),
|
| 190 |
+
(175, 135, 135),
|
| 191 |
+
(175, 135, 175),
|
| 192 |
+
(175, 135, 215),
|
| 193 |
+
(175, 135, 255),
|
| 194 |
+
(175, 175, 0),
|
| 195 |
+
(175, 175, 95),
|
| 196 |
+
(175, 175, 135),
|
| 197 |
+
(175, 175, 175),
|
| 198 |
+
(175, 175, 215),
|
| 199 |
+
(175, 175, 255),
|
| 200 |
+
(175, 215, 0),
|
| 201 |
+
(175, 215, 95),
|
| 202 |
+
(175, 215, 135),
|
| 203 |
+
(175, 215, 175),
|
| 204 |
+
(175, 215, 215),
|
| 205 |
+
(175, 215, 255),
|
| 206 |
+
(175, 255, 0),
|
| 207 |
+
(175, 255, 95),
|
| 208 |
+
(175, 255, 135),
|
| 209 |
+
(175, 255, 175),
|
| 210 |
+
(175, 255, 215),
|
| 211 |
+
(175, 255, 255),
|
| 212 |
+
(215, 0, 0),
|
| 213 |
+
(215, 0, 95),
|
| 214 |
+
(215, 0, 135),
|
| 215 |
+
(215, 0, 175),
|
| 216 |
+
(215, 0, 215),
|
| 217 |
+
(215, 0, 255),
|
| 218 |
+
(215, 95, 0),
|
| 219 |
+
(215, 95, 95),
|
| 220 |
+
(215, 95, 135),
|
| 221 |
+
(215, 95, 175),
|
| 222 |
+
(215, 95, 215),
|
| 223 |
+
(215, 95, 255),
|
| 224 |
+
(215, 135, 0),
|
| 225 |
+
(215, 135, 95),
|
| 226 |
+
(215, 135, 135),
|
| 227 |
+
(215, 135, 175),
|
| 228 |
+
(215, 135, 215),
|
| 229 |
+
(215, 135, 255),
|
| 230 |
+
(215, 175, 0),
|
| 231 |
+
(215, 175, 95),
|
| 232 |
+
(215, 175, 135),
|
| 233 |
+
(215, 175, 175),
|
| 234 |
+
(215, 175, 215),
|
| 235 |
+
(215, 175, 255),
|
| 236 |
+
(215, 215, 0),
|
| 237 |
+
(215, 215, 95),
|
| 238 |
+
(215, 215, 135),
|
| 239 |
+
(215, 215, 175),
|
| 240 |
+
(215, 215, 215),
|
| 241 |
+
(215, 215, 255),
|
| 242 |
+
(215, 255, 0),
|
| 243 |
+
(215, 255, 95),
|
| 244 |
+
(215, 255, 135),
|
| 245 |
+
(215, 255, 175),
|
| 246 |
+
(215, 255, 215),
|
| 247 |
+
(215, 255, 255),
|
| 248 |
+
(255, 0, 0),
|
| 249 |
+
(255, 0, 95),
|
| 250 |
+
(255, 0, 135),
|
| 251 |
+
(255, 0, 175),
|
| 252 |
+
(255, 0, 215),
|
| 253 |
+
(255, 0, 255),
|
| 254 |
+
(255, 95, 0),
|
| 255 |
+
(255, 95, 95),
|
| 256 |
+
(255, 95, 135),
|
| 257 |
+
(255, 95, 175),
|
| 258 |
+
(255, 95, 215),
|
| 259 |
+
(255, 95, 255),
|
| 260 |
+
(255, 135, 0),
|
| 261 |
+
(255, 135, 95),
|
| 262 |
+
(255, 135, 135),
|
| 263 |
+
(255, 135, 175),
|
| 264 |
+
(255, 135, 215),
|
| 265 |
+
(255, 135, 255),
|
| 266 |
+
(255, 175, 0),
|
| 267 |
+
(255, 175, 95),
|
| 268 |
+
(255, 175, 135),
|
| 269 |
+
(255, 175, 175),
|
| 270 |
+
(255, 175, 215),
|
| 271 |
+
(255, 175, 255),
|
| 272 |
+
(255, 215, 0),
|
| 273 |
+
(255, 215, 95),
|
| 274 |
+
(255, 215, 135),
|
| 275 |
+
(255, 215, 175),
|
| 276 |
+
(255, 215, 215),
|
| 277 |
+
(255, 215, 255),
|
| 278 |
+
(255, 255, 0),
|
| 279 |
+
(255, 255, 95),
|
| 280 |
+
(255, 255, 135),
|
| 281 |
+
(255, 255, 175),
|
| 282 |
+
(255, 255, 215),
|
| 283 |
+
(255, 255, 255),
|
| 284 |
+
(8, 8, 8),
|
| 285 |
+
(18, 18, 18),
|
| 286 |
+
(28, 28, 28),
|
| 287 |
+
(38, 38, 38),
|
| 288 |
+
(48, 48, 48),
|
| 289 |
+
(58, 58, 58),
|
| 290 |
+
(68, 68, 68),
|
| 291 |
+
(78, 78, 78),
|
| 292 |
+
(88, 88, 88),
|
| 293 |
+
(98, 98, 98),
|
| 294 |
+
(108, 108, 108),
|
| 295 |
+
(118, 118, 118),
|
| 296 |
+
(128, 128, 128),
|
| 297 |
+
(138, 138, 138),
|
| 298 |
+
(148, 148, 148),
|
| 299 |
+
(158, 158, 158),
|
| 300 |
+
(168, 168, 168),
|
| 301 |
+
(178, 178, 178),
|
| 302 |
+
(188, 188, 188),
|
| 303 |
+
(198, 198, 198),
|
| 304 |
+
(208, 208, 208),
|
| 305 |
+
(218, 218, 218),
|
| 306 |
+
(228, 228, 228),
|
| 307 |
+
(238, 238, 238),
|
| 308 |
+
]
|
| 309 |
+
)
|
venv/lib/python3.11/site-packages/rich/_pick.py
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from typing import Optional
|
| 2 |
+
|
| 3 |
+
|
| 4 |
+
def pick_bool(*values: Optional[bool]) -> bool:
|
| 5 |
+
"""Pick the first non-none bool or return the last value.
|
| 6 |
+
|
| 7 |
+
Args:
|
| 8 |
+
*values (bool): Any number of boolean or None values.
|
| 9 |
+
|
| 10 |
+
Returns:
|
| 11 |
+
bool: First non-none boolean.
|
| 12 |
+
"""
|
| 13 |
+
assert values, "1 or more values required"
|
| 14 |
+
for value in values:
|
| 15 |
+
if value is not None:
|
| 16 |
+
return value
|
| 17 |
+
return bool(value)
|
venv/lib/python3.11/site-packages/rich/_ratio.py
ADDED
|
@@ -0,0 +1,153 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from fractions import Fraction
|
| 2 |
+
from math import ceil
|
| 3 |
+
from typing import cast, List, Optional, Sequence, Protocol
|
| 4 |
+
|
| 5 |
+
|
| 6 |
+
class Edge(Protocol):
|
| 7 |
+
"""Any object that defines an edge (such as Layout)."""
|
| 8 |
+
|
| 9 |
+
size: Optional[int] = None
|
| 10 |
+
ratio: int = 1
|
| 11 |
+
minimum_size: int = 1
|
| 12 |
+
|
| 13 |
+
|
| 14 |
+
def ratio_resolve(total: int, edges: Sequence[Edge]) -> List[int]:
|
| 15 |
+
"""Divide total space to satisfy size, ratio, and minimum_size, constraints.
|
| 16 |
+
|
| 17 |
+
The returned list of integers should add up to total in most cases, unless it is
|
| 18 |
+
impossible to satisfy all the constraints. For instance, if there are two edges
|
| 19 |
+
with a minimum size of 20 each and `total` is 30 then the returned list will be
|
| 20 |
+
greater than total. In practice, this would mean that a Layout object would
|
| 21 |
+
clip the rows that would overflow the screen height.
|
| 22 |
+
|
| 23 |
+
Args:
|
| 24 |
+
total (int): Total number of characters.
|
| 25 |
+
edges (List[Edge]): Edges within total space.
|
| 26 |
+
|
| 27 |
+
Returns:
|
| 28 |
+
List[int]: Number of characters for each edge.
|
| 29 |
+
"""
|
| 30 |
+
# Size of edge or None for yet to be determined
|
| 31 |
+
sizes = [(edge.size or None) for edge in edges]
|
| 32 |
+
|
| 33 |
+
_Fraction = Fraction
|
| 34 |
+
|
| 35 |
+
# While any edges haven't been calculated
|
| 36 |
+
while None in sizes:
|
| 37 |
+
# Get flexible edges and index to map these back on to sizes list
|
| 38 |
+
flexible_edges = [
|
| 39 |
+
(index, edge)
|
| 40 |
+
for index, (size, edge) in enumerate(zip(sizes, edges))
|
| 41 |
+
if size is None
|
| 42 |
+
]
|
| 43 |
+
# Remaining space in total
|
| 44 |
+
remaining = total - sum(size or 0 for size in sizes)
|
| 45 |
+
if remaining <= 0:
|
| 46 |
+
# No room for flexible edges
|
| 47 |
+
return [
|
| 48 |
+
((edge.minimum_size or 1) if size is None else size)
|
| 49 |
+
for size, edge in zip(sizes, edges)
|
| 50 |
+
]
|
| 51 |
+
# Calculate number of characters in a ratio portion
|
| 52 |
+
portion = _Fraction(
|
| 53 |
+
remaining, sum((edge.ratio or 1) for _, edge in flexible_edges)
|
| 54 |
+
)
|
| 55 |
+
|
| 56 |
+
# If any edges will be less than their minimum, replace size with the minimum
|
| 57 |
+
for index, edge in flexible_edges:
|
| 58 |
+
if portion * edge.ratio <= edge.minimum_size:
|
| 59 |
+
sizes[index] = edge.minimum_size
|
| 60 |
+
# New fixed size will invalidate calculations, so we need to repeat the process
|
| 61 |
+
break
|
| 62 |
+
else:
|
| 63 |
+
# Distribute flexible space and compensate for rounding error
|
| 64 |
+
# Since edge sizes can only be integers we need to add the remainder
|
| 65 |
+
# to the following line
|
| 66 |
+
remainder = _Fraction(0)
|
| 67 |
+
for index, edge in flexible_edges:
|
| 68 |
+
size, remainder = divmod(portion * edge.ratio + remainder, 1)
|
| 69 |
+
sizes[index] = size
|
| 70 |
+
break
|
| 71 |
+
# Sizes now contains integers only
|
| 72 |
+
return cast(List[int], sizes)
|
| 73 |
+
|
| 74 |
+
|
| 75 |
+
def ratio_reduce(
|
| 76 |
+
total: int, ratios: List[int], maximums: List[int], values: List[int]
|
| 77 |
+
) -> List[int]:
|
| 78 |
+
"""Divide an integer total in to parts based on ratios.
|
| 79 |
+
|
| 80 |
+
Args:
|
| 81 |
+
total (int): The total to divide.
|
| 82 |
+
ratios (List[int]): A list of integer ratios.
|
| 83 |
+
maximums (List[int]): List of maximums values for each slot.
|
| 84 |
+
values (List[int]): List of values
|
| 85 |
+
|
| 86 |
+
Returns:
|
| 87 |
+
List[int]: A list of integers guaranteed to sum to total.
|
| 88 |
+
"""
|
| 89 |
+
ratios = [ratio if _max else 0 for ratio, _max in zip(ratios, maximums)]
|
| 90 |
+
total_ratio = sum(ratios)
|
| 91 |
+
if not total_ratio:
|
| 92 |
+
return values[:]
|
| 93 |
+
total_remaining = total
|
| 94 |
+
result: List[int] = []
|
| 95 |
+
append = result.append
|
| 96 |
+
for ratio, maximum, value in zip(ratios, maximums, values):
|
| 97 |
+
if ratio and total_ratio > 0:
|
| 98 |
+
distributed = min(maximum, round(ratio * total_remaining / total_ratio))
|
| 99 |
+
append(value - distributed)
|
| 100 |
+
total_remaining -= distributed
|
| 101 |
+
total_ratio -= ratio
|
| 102 |
+
else:
|
| 103 |
+
append(value)
|
| 104 |
+
return result
|
| 105 |
+
|
| 106 |
+
|
| 107 |
+
def ratio_distribute(
|
| 108 |
+
total: int, ratios: List[int], minimums: Optional[List[int]] = None
|
| 109 |
+
) -> List[int]:
|
| 110 |
+
"""Distribute an integer total in to parts based on ratios.
|
| 111 |
+
|
| 112 |
+
Args:
|
| 113 |
+
total (int): The total to divide.
|
| 114 |
+
ratios (List[int]): A list of integer ratios.
|
| 115 |
+
minimums (List[int]): List of minimum values for each slot.
|
| 116 |
+
|
| 117 |
+
Returns:
|
| 118 |
+
List[int]: A list of integers guaranteed to sum to total.
|
| 119 |
+
"""
|
| 120 |
+
if minimums:
|
| 121 |
+
ratios = [ratio if _min else 0 for ratio, _min in zip(ratios, minimums)]
|
| 122 |
+
total_ratio = sum(ratios)
|
| 123 |
+
assert total_ratio > 0, "Sum of ratios must be > 0"
|
| 124 |
+
|
| 125 |
+
total_remaining = total
|
| 126 |
+
distributed_total: List[int] = []
|
| 127 |
+
append = distributed_total.append
|
| 128 |
+
if minimums is None:
|
| 129 |
+
_minimums = [0] * len(ratios)
|
| 130 |
+
else:
|
| 131 |
+
_minimums = minimums
|
| 132 |
+
for ratio, minimum in zip(ratios, _minimums):
|
| 133 |
+
if total_ratio > 0:
|
| 134 |
+
distributed = max(minimum, ceil(ratio * total_remaining / total_ratio))
|
| 135 |
+
else:
|
| 136 |
+
distributed = total_remaining
|
| 137 |
+
append(distributed)
|
| 138 |
+
total_ratio -= ratio
|
| 139 |
+
total_remaining -= distributed
|
| 140 |
+
return distributed_total
|
| 141 |
+
|
| 142 |
+
|
| 143 |
+
if __name__ == "__main__":
|
| 144 |
+
from dataclasses import dataclass
|
| 145 |
+
|
| 146 |
+
@dataclass
|
| 147 |
+
class E:
|
| 148 |
+
size: Optional[int] = None
|
| 149 |
+
ratio: int = 1
|
| 150 |
+
minimum_size: int = 1
|
| 151 |
+
|
| 152 |
+
resolved = ratio_resolve(110, [E(None, 1, 1), E(None, 1, 1), E(None, 1, 1)])
|
| 153 |
+
print(sum(resolved))
|
venv/lib/python3.11/site-packages/rich/_spinners.py
ADDED
|
@@ -0,0 +1,482 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"""
|
| 2 |
+
Spinners are from:
|
| 3 |
+
* cli-spinners:
|
| 4 |
+
MIT License
|
| 5 |
+
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
|
| 6 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
| 7 |
+
of this software and associated documentation files (the "Software"), to deal
|
| 8 |
+
in the Software without restriction, including without limitation the rights to
|
| 9 |
+
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
| 10 |
+
the Software, and to permit persons to whom the Software is furnished to do so,
|
| 11 |
+
subject to the following conditions:
|
| 12 |
+
The above copyright notice and this permission notice shall be included
|
| 13 |
+
in all copies or substantial portions of the Software.
|
| 14 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
| 15 |
+
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
| 16 |
+
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
|
| 17 |
+
FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
| 18 |
+
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
| 19 |
+
IN THE SOFTWARE.
|
| 20 |
+
"""
|
| 21 |
+
|
| 22 |
+
SPINNERS = {
|
| 23 |
+
"dots": {
|
| 24 |
+
"interval": 80,
|
| 25 |
+
"frames": "⠋⠙⠹⠸⠼⠴⠦⠧⠇⠏",
|
| 26 |
+
},
|
| 27 |
+
"dots2": {"interval": 80, "frames": "⣾⣽⣻⢿⡿⣟⣯⣷"},
|
| 28 |
+
"dots3": {
|
| 29 |
+
"interval": 80,
|
| 30 |
+
"frames": "⠋⠙⠚⠞⠖⠦⠴⠲⠳⠓",
|
| 31 |
+
},
|
| 32 |
+
"dots4": {
|
| 33 |
+
"interval": 80,
|
| 34 |
+
"frames": "⠄⠆⠇⠋⠙⠸⠰⠠⠰⠸⠙⠋⠇⠆",
|
| 35 |
+
},
|
| 36 |
+
"dots5": {
|
| 37 |
+
"interval": 80,
|
| 38 |
+
"frames": "⠋⠙⠚⠒⠂⠂⠒⠲⠴⠦⠖⠒⠐⠐⠒⠓⠋",
|
| 39 |
+
},
|
| 40 |
+
"dots6": {
|
| 41 |
+
"interval": 80,
|
| 42 |
+
"frames": "⠁⠉⠙⠚⠒⠂⠂⠒⠲⠴⠤⠄⠄⠤⠴⠲⠒⠂⠂⠒⠚⠙⠉⠁",
|
| 43 |
+
},
|
| 44 |
+
"dots7": {
|
| 45 |
+
"interval": 80,
|
| 46 |
+
"frames": "⠈⠉⠋⠓⠒⠐⠐⠒⠖⠦⠤⠠⠠⠤⠦⠖⠒⠐⠐⠒⠓⠋⠉⠈",
|
| 47 |
+
},
|
| 48 |
+
"dots8": {
|
| 49 |
+
"interval": 80,
|
| 50 |
+
"frames": "⠁⠁⠉⠙⠚⠒⠂⠂⠒⠲⠴⠤⠄⠄⠤⠠⠠⠤⠦⠖⠒⠐⠐⠒⠓⠋⠉⠈⠈",
|
| 51 |
+
},
|
| 52 |
+
"dots9": {"interval": 80, "frames": "⢹⢺⢼⣸⣇⡧⡗⡏"},
|
| 53 |
+
"dots10": {"interval": 80, "frames": "⢄⢂⢁⡁⡈⡐⡠"},
|
| 54 |
+
"dots11": {"interval": 100, "frames": "⠁⠂⠄⡀⢀⠠⠐⠈"},
|
| 55 |
+
"dots12": {
|
| 56 |
+
"interval": 80,
|
| 57 |
+
"frames": [
|
| 58 |
+
"⢀⠀",
|
| 59 |
+
"⡀⠀",
|
| 60 |
+
"⠄⠀",
|
| 61 |
+
"⢂⠀",
|
| 62 |
+
"⡂⠀",
|
| 63 |
+
"⠅⠀",
|
| 64 |
+
"⢃⠀",
|
| 65 |
+
"⡃⠀",
|
| 66 |
+
"⠍⠀",
|
| 67 |
+
"⢋⠀",
|
| 68 |
+
"⡋⠀",
|
| 69 |
+
"⠍⠁",
|
| 70 |
+
"⢋⠁",
|
| 71 |
+
"⡋⠁",
|
| 72 |
+
"⠍⠉",
|
| 73 |
+
"⠋⠉",
|
| 74 |
+
"⠋⠉",
|
| 75 |
+
"⠉⠙",
|
| 76 |
+
"⠉⠙",
|
| 77 |
+
"⠉⠩",
|
| 78 |
+
"⠈⢙",
|
| 79 |
+
"⠈⡙",
|
| 80 |
+
"⢈⠩",
|
| 81 |
+
"⡀⢙",
|
| 82 |
+
"⠄⡙",
|
| 83 |
+
"⢂⠩",
|
| 84 |
+
"⡂⢘",
|
| 85 |
+
"⠅⡘",
|
| 86 |
+
"⢃⠨",
|
| 87 |
+
"⡃⢐",
|
| 88 |
+
"⠍⡐",
|
| 89 |
+
"⢋⠠",
|
| 90 |
+
"⡋⢀",
|
| 91 |
+
"⠍⡁",
|
| 92 |
+
"⢋⠁",
|
| 93 |
+
"⡋⠁",
|
| 94 |
+
"⠍⠉",
|
| 95 |
+
"⠋⠉",
|
| 96 |
+
"⠋⠉",
|
| 97 |
+
"⠉⠙",
|
| 98 |
+
"⠉⠙",
|
| 99 |
+
"⠉⠩",
|
| 100 |
+
"⠈⢙",
|
| 101 |
+
"⠈⡙",
|
| 102 |
+
"⠈⠩",
|
| 103 |
+
"⠀⢙",
|
| 104 |
+
"⠀⡙",
|
| 105 |
+
"⠀⠩",
|
| 106 |
+
"⠀⢘",
|
| 107 |
+
"⠀⡘",
|
| 108 |
+
"⠀⠨",
|
| 109 |
+
"⠀⢐",
|
| 110 |
+
"⠀⡐",
|
| 111 |
+
"⠀⠠",
|
| 112 |
+
"⠀⢀",
|
| 113 |
+
"⠀⡀",
|
| 114 |
+
],
|
| 115 |
+
},
|
| 116 |
+
"dots8Bit": {
|
| 117 |
+
"interval": 80,
|
| 118 |
+
"frames": "⠀⠁⠂⠃⠄⠅⠆⠇⡀⡁⡂⡃⡄⡅⡆⡇⠈⠉⠊⠋⠌⠍⠎⠏⡈⡉⡊⡋⡌⡍⡎⡏⠐⠑⠒⠓⠔⠕⠖⠗⡐⡑⡒⡓⡔⡕⡖⡗⠘⠙⠚⠛⠜⠝⠞⠟⡘⡙"
|
| 119 |
+
"⡚⡛⡜⡝⡞⡟⠠⠡⠢⠣⠤⠥⠦⠧⡠⡡⡢⡣⡤⡥⡦⡧⠨⠩⠪⠫⠬⠭⠮⠯⡨⡩⡪⡫⡬⡭⡮⡯⠰⠱⠲⠳⠴⠵⠶⠷⡰⡱⡲⡳⡴⡵⡶⡷⠸⠹⠺⠻"
|
| 120 |
+
"⠼⠽⠾⠿⡸⡹⡺⡻⡼⡽⡾⡿⢀⢁⢂⢃⢄⢅⢆⢇⣀⣁⣂⣃⣄⣅⣆⣇⢈⢉⢊⢋⢌⢍⢎⢏⣈⣉⣊⣋⣌⣍⣎⣏⢐⢑⢒⢓⢔⢕⢖⢗⣐⣑⣒⣓⣔⣕"
|
| 121 |
+
"⣖⣗⢘⢙⢚⢛⢜⢝⢞⢟⣘⣙⣚⣛⣜⣝⣞⣟⢠⢡⢢⢣⢤⢥⢦⢧⣠⣡⣢⣣⣤⣥⣦⣧⢨⢩⢪⢫⢬⢭⢮⢯⣨⣩⣪⣫⣬⣭⣮⣯⢰⢱⢲⢳⢴⢵⢶⢷"
|
| 122 |
+
"⣰⣱⣲⣳⣴⣵⣶⣷⢸⢹⢺⢻⢼⢽⢾⢿⣸⣹⣺⣻⣼⣽⣾⣿",
|
| 123 |
+
},
|
| 124 |
+
"line": {"interval": 130, "frames": ["-", "\\", "|", "/"]},
|
| 125 |
+
"line2": {"interval": 100, "frames": "⠂-–—–-"},
|
| 126 |
+
"pipe": {"interval": 100, "frames": "┤┘┴└├┌┬┐"},
|
| 127 |
+
"simpleDots": {"interval": 400, "frames": [". ", ".. ", "...", " "]},
|
| 128 |
+
"simpleDotsScrolling": {
|
| 129 |
+
"interval": 200,
|
| 130 |
+
"frames": [". ", ".. ", "...", " ..", " .", " "],
|
| 131 |
+
},
|
| 132 |
+
"star": {"interval": 70, "frames": "✶✸✹✺✹✷"},
|
| 133 |
+
"star2": {"interval": 80, "frames": "+x*"},
|
| 134 |
+
"flip": {
|
| 135 |
+
"interval": 70,
|
| 136 |
+
"frames": "___-``'´-___",
|
| 137 |
+
},
|
| 138 |
+
"hamburger": {"interval": 100, "frames": "☱☲☴"},
|
| 139 |
+
"growVertical": {
|
| 140 |
+
"interval": 120,
|
| 141 |
+
"frames": "▁▃▄▅▆▇▆▅▄▃",
|
| 142 |
+
},
|
| 143 |
+
"growHorizontal": {
|
| 144 |
+
"interval": 120,
|
| 145 |
+
"frames": "▏▎▍▌▋▊▉▊▋▌▍▎",
|
| 146 |
+
},
|
| 147 |
+
"balloon": {"interval": 140, "frames": " .oO@* "},
|
| 148 |
+
"balloon2": {"interval": 120, "frames": ".oO°Oo."},
|
| 149 |
+
"noise": {"interval": 100, "frames": "▓▒░"},
|
| 150 |
+
"bounce": {"interval": 120, "frames": "⠁⠂⠄⠂"},
|
| 151 |
+
"boxBounce": {"interval": 120, "frames": "▖▘▝▗"},
|
| 152 |
+
"boxBounce2": {"interval": 100, "frames": "▌▀▐▄"},
|
| 153 |
+
"triangle": {"interval": 50, "frames": "◢◣◤◥"},
|
| 154 |
+
"arc": {"interval": 100, "frames": "◜◠◝◞◡◟"},
|
| 155 |
+
"circle": {"interval": 120, "frames": "◡⊙◠"},
|
| 156 |
+
"squareCorners": {"interval": 180, "frames": "◰◳◲◱"},
|
| 157 |
+
"circleQuarters": {"interval": 120, "frames": "◴◷◶◵"},
|
| 158 |
+
"circleHalves": {"interval": 50, "frames": "◐◓◑◒"},
|
| 159 |
+
"squish": {"interval": 100, "frames": "╫╪"},
|
| 160 |
+
"toggle": {"interval": 250, "frames": "⊶⊷"},
|
| 161 |
+
"toggle2": {"interval": 80, "frames": "▫▪"},
|
| 162 |
+
"toggle3": {"interval": 120, "frames": "□■"},
|
| 163 |
+
"toggle4": {"interval": 100, "frames": "■□▪▫"},
|
| 164 |
+
"toggle5": {"interval": 100, "frames": "▮▯"},
|
| 165 |
+
"toggle6": {"interval": 300, "frames": "ဝ၀"},
|
| 166 |
+
"toggle7": {"interval": 80, "frames": "⦾⦿"},
|
| 167 |
+
"toggle8": {"interval": 100, "frames": "◍◌"},
|
| 168 |
+
"toggle9": {"interval": 100, "frames": "◉◎"},
|
| 169 |
+
"toggle10": {"interval": 100, "frames": "㊂㊀㊁"},
|
| 170 |
+
"toggle11": {"interval": 50, "frames": "⧇⧆"},
|
| 171 |
+
"toggle12": {"interval": 120, "frames": "☗☖"},
|
| 172 |
+
"toggle13": {"interval": 80, "frames": "=*-"},
|
| 173 |
+
"arrow": {"interval": 100, "frames": "←↖↑↗→↘↓↙"},
|
| 174 |
+
"arrow2": {
|
| 175 |
+
"interval": 80,
|
| 176 |
+
"frames": ["⬆️ ", "↗️ ", "➡️ ", "↘️ ", "⬇️ ", "↙️ ", "⬅️ ", "↖️ "],
|
| 177 |
+
},
|
| 178 |
+
"arrow3": {
|
| 179 |
+
"interval": 120,
|
| 180 |
+
"frames": ["▹▹▹▹▹", "▸▹▹▹▹", "▹▸▹▹▹", "▹▹▸▹▹", "▹▹▹▸▹", "▹▹▹▹▸"],
|
| 181 |
+
},
|
| 182 |
+
"bouncingBar": {
|
| 183 |
+
"interval": 80,
|
| 184 |
+
"frames": [
|
| 185 |
+
"[ ]",
|
| 186 |
+
"[= ]",
|
| 187 |
+
"[== ]",
|
| 188 |
+
"[=== ]",
|
| 189 |
+
"[ ===]",
|
| 190 |
+
"[ ==]",
|
| 191 |
+
"[ =]",
|
| 192 |
+
"[ ]",
|
| 193 |
+
"[ =]",
|
| 194 |
+
"[ ==]",
|
| 195 |
+
"[ ===]",
|
| 196 |
+
"[====]",
|
| 197 |
+
"[=== ]",
|
| 198 |
+
"[== ]",
|
| 199 |
+
"[= ]",
|
| 200 |
+
],
|
| 201 |
+
},
|
| 202 |
+
"bouncingBall": {
|
| 203 |
+
"interval": 80,
|
| 204 |
+
"frames": [
|
| 205 |
+
"( ● )",
|
| 206 |
+
"( ● )",
|
| 207 |
+
"( ● )",
|
| 208 |
+
"( ● )",
|
| 209 |
+
"( ●)",
|
| 210 |
+
"( ● )",
|
| 211 |
+
"( ● )",
|
| 212 |
+
"( ● )",
|
| 213 |
+
"( ● )",
|
| 214 |
+
"(● )",
|
| 215 |
+
],
|
| 216 |
+
},
|
| 217 |
+
"smiley": {"interval": 200, "frames": ["😄 ", "😝 "]},
|
| 218 |
+
"monkey": {"interval": 300, "frames": ["🙈 ", "🙈 ", "🙉 ", "🙊 "]},
|
| 219 |
+
"hearts": {"interval": 100, "frames": ["💛 ", "💙 ", "💜 ", "💚 ", "❤️ "]},
|
| 220 |
+
"clock": {
|
| 221 |
+
"interval": 100,
|
| 222 |
+
"frames": [
|
| 223 |
+
"🕛 ",
|
| 224 |
+
"🕐 ",
|
| 225 |
+
"🕑 ",
|
| 226 |
+
"🕒 ",
|
| 227 |
+
"🕓 ",
|
| 228 |
+
"🕔 ",
|
| 229 |
+
"🕕 ",
|
| 230 |
+
"🕖 ",
|
| 231 |
+
"🕗 ",
|
| 232 |
+
"🕘 ",
|
| 233 |
+
"🕙 ",
|
| 234 |
+
"🕚 ",
|
| 235 |
+
],
|
| 236 |
+
},
|
| 237 |
+
"earth": {"interval": 180, "frames": ["🌍 ", "🌎 ", "🌏 "]},
|
| 238 |
+
"material": {
|
| 239 |
+
"interval": 17,
|
| 240 |
+
"frames": [
|
| 241 |
+
"█▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
|
| 242 |
+
"██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
|
| 243 |
+
"███▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
|
| 244 |
+
"████▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
|
| 245 |
+
"██████▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
|
| 246 |
+
"██████▁▁▁▁▁▁▁▁▁▁▁▁▁▁",
|
| 247 |
+
"███████▁▁▁▁▁▁▁▁▁▁▁▁▁",
|
| 248 |
+
"████████▁▁▁▁▁▁▁▁▁▁▁▁",
|
| 249 |
+
"█████████▁▁▁▁▁▁▁▁▁▁▁",
|
| 250 |
+
"█████████▁▁▁▁▁▁▁▁▁▁▁",
|
| 251 |
+
"██████████▁▁▁▁▁▁▁▁▁▁",
|
| 252 |
+
"███████████▁▁▁▁▁▁▁▁▁",
|
| 253 |
+
"█████████████▁▁▁▁▁▁▁",
|
| 254 |
+
"██████████████▁▁▁▁▁▁",
|
| 255 |
+
"██████████████▁▁▁▁▁▁",
|
| 256 |
+
"▁██████████████▁▁▁▁▁",
|
| 257 |
+
"▁██████████████▁▁▁▁▁",
|
| 258 |
+
"▁██████████████▁▁▁▁▁",
|
| 259 |
+
"▁▁██████████████▁▁▁▁",
|
| 260 |
+
"▁▁▁██████████████▁▁▁",
|
| 261 |
+
"▁▁▁▁█████████████▁▁▁",
|
| 262 |
+
"▁▁▁▁██████████████▁▁",
|
| 263 |
+
"▁▁▁▁██████████████▁▁",
|
| 264 |
+
"▁▁▁▁▁██████████████▁",
|
| 265 |
+
"▁▁▁▁▁██████████████▁",
|
| 266 |
+
"▁▁▁▁▁██████████████▁",
|
| 267 |
+
"▁▁▁▁▁▁██████████████",
|
| 268 |
+
"▁▁▁▁▁▁██████████████",
|
| 269 |
+
"▁▁▁▁▁▁▁█████████████",
|
| 270 |
+
"▁▁▁▁▁▁▁█████████████",
|
| 271 |
+
"▁▁▁▁▁▁▁▁████████████",
|
| 272 |
+
"▁▁▁▁▁▁▁▁████████████",
|
| 273 |
+
"▁▁▁▁▁▁▁▁▁███████████",
|
| 274 |
+
"▁▁▁▁▁▁▁▁▁███████████",
|
| 275 |
+
"▁▁▁▁▁▁▁▁▁▁██████████",
|
| 276 |
+
"▁▁▁▁▁▁▁▁▁▁██████████",
|
| 277 |
+
"▁▁▁▁▁▁▁▁▁▁▁▁████████",
|
| 278 |
+
"▁▁▁▁▁▁▁▁▁▁▁▁▁███████",
|
| 279 |
+
"▁▁▁▁▁▁▁▁▁▁▁▁▁▁██████",
|
| 280 |
+
"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█████",
|
| 281 |
+
"▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁█████",
|
| 282 |
+
"█▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁████",
|
| 283 |
+
"██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
|
| 284 |
+
"██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
|
| 285 |
+
"███▁▁▁▁▁▁▁▁▁▁▁▁▁▁███",
|
| 286 |
+
"████▁▁▁▁▁▁▁▁▁▁▁▁▁▁██",
|
| 287 |
+
"█████▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
|
| 288 |
+
"█████▁▁▁▁▁▁▁▁▁▁▁▁▁▁█",
|
| 289 |
+
"██████▁▁▁▁▁▁▁▁▁▁▁▁▁█",
|
| 290 |
+
"████████▁▁▁▁▁▁▁▁▁▁▁▁",
|
| 291 |
+
"█████████▁▁▁▁▁▁▁▁▁▁▁",
|
| 292 |
+
"█████████▁▁▁▁▁▁▁▁▁▁▁",
|
| 293 |
+
"█████████▁▁▁▁▁▁▁▁▁▁▁",
|
| 294 |
+
"█████████▁▁▁▁▁▁▁▁▁▁▁",
|
| 295 |
+
"███████████▁▁▁▁▁▁▁▁▁",
|
| 296 |
+
"████████████▁▁▁▁▁▁▁▁",
|
| 297 |
+
"████████████▁▁▁▁▁▁▁▁",
|
| 298 |
+
"██████████████▁▁▁▁▁▁",
|
| 299 |
+
"██████████████▁▁▁▁▁▁",
|
| 300 |
+
"▁██████████████▁▁▁▁▁",
|
| 301 |
+
"▁██████████████▁▁▁▁▁",
|
| 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 |
+
"moon": {
|
| 336 |
+
"interval": 80,
|
| 337 |
+
"frames": ["🌑 ", "🌒 ", "🌓 ", "🌔 ", "🌕 ", "🌖 ", "🌗 ", "🌘 "],
|
| 338 |
+
},
|
| 339 |
+
"runner": {"interval": 140, "frames": ["🚶 ", "🏃 "]},
|
| 340 |
+
"pong": {
|
| 341 |
+
"interval": 80,
|
| 342 |
+
"frames": [
|
| 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 |
+
"shark": {
|
| 376 |
+
"interval": 120,
|
| 377 |
+
"frames": [
|
| 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 |
+
"dqpb": {"interval": 100, "frames": "dqpb"},
|
| 407 |
+
"weather": {
|
| 408 |
+
"interval": 100,
|
| 409 |
+
"frames": [
|
| 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 |
+
"christmas": {"interval": 400, "frames": "🌲🎄"},
|
| 436 |
+
"grenade": {
|
| 437 |
+
"interval": 80,
|
| 438 |
+
"frames": [
|
| 439 |
+
"، ",
|
| 440 |
+
"′ ",
|
| 441 |
+
" ´ ",
|
| 442 |
+
" ‾ ",
|
| 443 |
+
" ⸌",
|
| 444 |
+
" ⸊",
|
| 445 |
+
" |",
|
| 446 |
+
" ⁎",
|
| 447 |
+
" ⁕",
|
| 448 |
+
" ෴ ",
|
| 449 |
+
" ⁓",
|
| 450 |
+
" ",
|
| 451 |
+
" ",
|
| 452 |
+
" ",
|
| 453 |
+
],
|
| 454 |
+
},
|
| 455 |
+
"point": {"interval": 125, "frames": ["∙∙∙", "●∙∙", "∙●∙", "∙∙●", "∙∙∙"]},
|
| 456 |
+
"layer": {"interval": 150, "frames": "-=≡"},
|
| 457 |
+
"betaWave": {
|
| 458 |
+
"interval": 80,
|
| 459 |
+
"frames": [
|
| 460 |
+
"ρββββββ",
|
| 461 |
+
"βρβββββ",
|
| 462 |
+
"ββρββββ",
|
| 463 |
+
"βββρβββ",
|
| 464 |
+
"ββββρββ",
|
| 465 |
+
"βββββρβ",
|
| 466 |
+
"ββββββρ",
|
| 467 |
+
],
|
| 468 |
+
},
|
| 469 |
+
"aesthetic": {
|
| 470 |
+
"interval": 80,
|
| 471 |
+
"frames": [
|
| 472 |
+
"▰▱▱▱▱▱▱",
|
| 473 |
+
"▰▰▱▱▱▱▱",
|
| 474 |
+
"▰▰▰▱▱▱▱",
|
| 475 |
+
"▰▰▰▰▱▱▱",
|
| 476 |
+
"▰▰▰▰▰▱▱",
|
| 477 |
+
"▰▰▰▰▰▰▱",
|
| 478 |
+
"▰▰▰▰▰▰▰",
|
| 479 |
+
"▰▱▱▱▱▱▱",
|
| 480 |
+
],
|
| 481 |
+
},
|
| 482 |
+
}
|
venv/lib/python3.11/site-packages/rich/_stack.py
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from typing import List, TypeVar
|
| 2 |
+
|
| 3 |
+
T = TypeVar("T")
|
| 4 |
+
|
| 5 |
+
|
| 6 |
+
class Stack(List[T]):
|
| 7 |
+
"""A small shim over builtin list."""
|
| 8 |
+
|
| 9 |
+
@property
|
| 10 |
+
def top(self) -> T:
|
| 11 |
+
"""Get top of stack."""
|
| 12 |
+
return self[-1]
|
| 13 |
+
|
| 14 |
+
def push(self, item: T) -> None:
|
| 15 |
+
"""Push an item on to the stack (append in stack nomenclature)."""
|
| 16 |
+
self.append(item)
|
venv/lib/python3.11/site-packages/rich/_timer.py
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"""
|
| 2 |
+
Timer context manager, only used in debug.
|
| 3 |
+
|
| 4 |
+
"""
|
| 5 |
+
|
| 6 |
+
from time import time
|
| 7 |
+
|
| 8 |
+
import contextlib
|
| 9 |
+
from typing import Generator
|
| 10 |
+
|
| 11 |
+
|
| 12 |
+
@contextlib.contextmanager
|
| 13 |
+
def timer(subject: str = "time") -> Generator[None, None, None]:
|
| 14 |
+
"""print the elapsed time. (only used in debugging)"""
|
| 15 |
+
start = time()
|
| 16 |
+
yield
|
| 17 |
+
elapsed = time() - start
|
| 18 |
+
elapsed_ms = elapsed * 1000
|
| 19 |
+
print(f"{subject} elapsed {elapsed_ms:.1f}ms")
|
venv/lib/python3.11/site-packages/rich/_unicode_data/__init__.py
ADDED
|
@@ -0,0 +1,93 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from __future__ import annotations
|
| 2 |
+
|
| 3 |
+
import bisect
|
| 4 |
+
import os
|
| 5 |
+
import sys
|
| 6 |
+
|
| 7 |
+
if sys.version_info[:2] >= (3, 9):
|
| 8 |
+
from functools import cache
|
| 9 |
+
else:
|
| 10 |
+
from functools import lru_cache as cache # pragma: no cover
|
| 11 |
+
|
| 12 |
+
from importlib import import_module
|
| 13 |
+
from typing import TYPE_CHECKING, cast
|
| 14 |
+
|
| 15 |
+
from rich._unicode_data._versions import VERSIONS
|
| 16 |
+
|
| 17 |
+
if TYPE_CHECKING:
|
| 18 |
+
from rich.cells import CellTable
|
| 19 |
+
|
| 20 |
+
VERSION_ORDER = sorted(
|
| 21 |
+
[
|
| 22 |
+
tuple(
|
| 23 |
+
map(int, version.split(".")),
|
| 24 |
+
)
|
| 25 |
+
for version in VERSIONS
|
| 26 |
+
]
|
| 27 |
+
)
|
| 28 |
+
VERSION_SET = frozenset(VERSIONS)
|
| 29 |
+
|
| 30 |
+
|
| 31 |
+
def _parse_version(version: str) -> tuple[int, int, int]:
|
| 32 |
+
"""Parse a version string into a tuple of 3 integers.
|
| 33 |
+
|
| 34 |
+
Args:
|
| 35 |
+
version: A version string.
|
| 36 |
+
|
| 37 |
+
Raises:
|
| 38 |
+
ValueError: If the version string is invalid.
|
| 39 |
+
|
| 40 |
+
Returns:
|
| 41 |
+
A tuple of 3 integers.
|
| 42 |
+
"""
|
| 43 |
+
version_integers: tuple[int, ...]
|
| 44 |
+
try:
|
| 45 |
+
version_integers = tuple(
|
| 46 |
+
map(int, version.split(".")),
|
| 47 |
+
)
|
| 48 |
+
except ValueError:
|
| 49 |
+
raise ValueError(
|
| 50 |
+
f"unicode version string {version!r} is badly formatted"
|
| 51 |
+
) from None
|
| 52 |
+
while len(version_integers) < 3:
|
| 53 |
+
version_integers = version_integers + (0,)
|
| 54 |
+
triple = cast("tuple[int, int, int]", version_integers[:3])
|
| 55 |
+
return triple
|
| 56 |
+
|
| 57 |
+
|
| 58 |
+
@cache
|
| 59 |
+
def load(unicode_version: str = "auto") -> CellTable:
|
| 60 |
+
"""Load a cell table for the given unicode version.
|
| 61 |
+
|
| 62 |
+
Args:
|
| 63 |
+
unicode_version: Unicode version, or `None` to auto-detect.
|
| 64 |
+
|
| 65 |
+
"""
|
| 66 |
+
if unicode_version == "auto":
|
| 67 |
+
unicode_version = os.environ.get("UNICODE_VERSION", "latest")
|
| 68 |
+
try:
|
| 69 |
+
_parse_version(unicode_version)
|
| 70 |
+
except ValueError:
|
| 71 |
+
# The environment variable is invalid
|
| 72 |
+
# Fallback to using the latest version seems reasonable
|
| 73 |
+
unicode_version = "latest"
|
| 74 |
+
|
| 75 |
+
if unicode_version == "latest":
|
| 76 |
+
version = VERSIONS[-1]
|
| 77 |
+
else:
|
| 78 |
+
try:
|
| 79 |
+
version_numbers = _parse_version(unicode_version)
|
| 80 |
+
except ValueError:
|
| 81 |
+
version_numbers = _parse_version(VERSIONS[-1])
|
| 82 |
+
major, minor, patch = version_numbers
|
| 83 |
+
version = f"{major}.{minor}.{patch}"
|
| 84 |
+
if version not in VERSION_SET:
|
| 85 |
+
insert_position = bisect.bisect_left(VERSION_ORDER, version_numbers)
|
| 86 |
+
version = VERSIONS[max(0, insert_position - 1)]
|
| 87 |
+
|
| 88 |
+
version_path_component = version.replace(".", "-")
|
| 89 |
+
module_name = f".unicode{version_path_component}"
|
| 90 |
+
module = import_module(module_name, "rich._unicode_data")
|
| 91 |
+
if TYPE_CHECKING:
|
| 92 |
+
assert isinstance(module.cell_table, CellTable)
|
| 93 |
+
return module.cell_table
|
venv/lib/python3.11/site-packages/rich/_unicode_data/_versions.py
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
VERSIONS = (
|
| 2 |
+
"4.1.0",
|
| 3 |
+
"5.0.0",
|
| 4 |
+
"5.1.0",
|
| 5 |
+
"5.2.0",
|
| 6 |
+
"6.0.0",
|
| 7 |
+
"6.1.0",
|
| 8 |
+
"6.2.0",
|
| 9 |
+
"6.3.0",
|
| 10 |
+
"7.0.0",
|
| 11 |
+
"8.0.0",
|
| 12 |
+
"9.0.0",
|
| 13 |
+
"10.0.0",
|
| 14 |
+
"11.0.0",
|
| 15 |
+
"12.0.0",
|
| 16 |
+
"12.1.0",
|
| 17 |
+
"13.0.0",
|
| 18 |
+
"14.0.0",
|
| 19 |
+
"15.0.0",
|
| 20 |
+
"15.1.0",
|
| 21 |
+
"16.0.0",
|
| 22 |
+
"17.0.0",
|
| 23 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode10-0-0.py
ADDED
|
@@ -0,0 +1,611 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"10.0.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1552, 1562, 0),
|
| 18 |
+
(1564, 1564, 0),
|
| 19 |
+
(1611, 1631, 0),
|
| 20 |
+
(1648, 1648, 0),
|
| 21 |
+
(1750, 1756, 0),
|
| 22 |
+
(1759, 1764, 0),
|
| 23 |
+
(1767, 1768, 0),
|
| 24 |
+
(1770, 1773, 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 |
+
(2260, 2273, 0),
|
| 35 |
+
(2275, 2307, 0),
|
| 36 |
+
(2362, 2364, 0),
|
| 37 |
+
(2366, 2383, 0),
|
| 38 |
+
(2385, 2391, 0),
|
| 39 |
+
(2402, 2403, 0),
|
| 40 |
+
(2433, 2435, 0),
|
| 41 |
+
(2492, 2492, 0),
|
| 42 |
+
(2494, 2500, 0),
|
| 43 |
+
(2503, 2504, 0),
|
| 44 |
+
(2507, 2509, 0),
|
| 45 |
+
(2519, 2519, 0),
|
| 46 |
+
(2530, 2531, 0),
|
| 47 |
+
(2561, 2563, 0),
|
| 48 |
+
(2620, 2620, 0),
|
| 49 |
+
(2622, 2626, 0),
|
| 50 |
+
(2631, 2632, 0),
|
| 51 |
+
(2635, 2637, 0),
|
| 52 |
+
(2641, 2641, 0),
|
| 53 |
+
(2672, 2673, 0),
|
| 54 |
+
(2677, 2677, 0),
|
| 55 |
+
(2689, 2691, 0),
|
| 56 |
+
(2748, 2748, 0),
|
| 57 |
+
(2750, 2757, 0),
|
| 58 |
+
(2759, 2761, 0),
|
| 59 |
+
(2763, 2765, 0),
|
| 60 |
+
(2786, 2787, 0),
|
| 61 |
+
(2810, 2815, 0),
|
| 62 |
+
(2817, 2819, 0),
|
| 63 |
+
(2876, 2876, 0),
|
| 64 |
+
(2878, 2884, 0),
|
| 65 |
+
(2887, 2888, 0),
|
| 66 |
+
(2891, 2893, 0),
|
| 67 |
+
(2902, 2903, 0),
|
| 68 |
+
(2914, 2915, 0),
|
| 69 |
+
(2946, 2946, 0),
|
| 70 |
+
(3006, 3010, 0),
|
| 71 |
+
(3014, 3016, 0),
|
| 72 |
+
(3018, 3021, 0),
|
| 73 |
+
(3031, 3031, 0),
|
| 74 |
+
(3072, 3075, 0),
|
| 75 |
+
(3134, 3140, 0),
|
| 76 |
+
(3142, 3144, 0),
|
| 77 |
+
(3146, 3149, 0),
|
| 78 |
+
(3157, 3158, 0),
|
| 79 |
+
(3170, 3171, 0),
|
| 80 |
+
(3201, 3203, 0),
|
| 81 |
+
(3260, 3260, 0),
|
| 82 |
+
(3262, 3268, 0),
|
| 83 |
+
(3270, 3272, 0),
|
| 84 |
+
(3274, 3277, 0),
|
| 85 |
+
(3285, 3286, 0),
|
| 86 |
+
(3298, 3299, 0),
|
| 87 |
+
(3328, 3331, 0),
|
| 88 |
+
(3387, 3388, 0),
|
| 89 |
+
(3390, 3396, 0),
|
| 90 |
+
(3398, 3400, 0),
|
| 91 |
+
(3402, 3405, 0),
|
| 92 |
+
(3415, 3415, 0),
|
| 93 |
+
(3426, 3427, 0),
|
| 94 |
+
(3458, 3459, 0),
|
| 95 |
+
(3530, 3530, 0),
|
| 96 |
+
(3535, 3540, 0),
|
| 97 |
+
(3542, 3542, 0),
|
| 98 |
+
(3544, 3551, 0),
|
| 99 |
+
(3570, 3571, 0),
|
| 100 |
+
(3633, 3633, 0),
|
| 101 |
+
(3636, 3642, 0),
|
| 102 |
+
(3655, 3662, 0),
|
| 103 |
+
(3761, 3761, 0),
|
| 104 |
+
(3764, 3769, 0),
|
| 105 |
+
(3771, 3772, 0),
|
| 106 |
+
(3784, 3789, 0),
|
| 107 |
+
(3864, 3865, 0),
|
| 108 |
+
(3893, 3893, 0),
|
| 109 |
+
(3895, 3895, 0),
|
| 110 |
+
(3897, 3897, 0),
|
| 111 |
+
(3902, 3903, 0),
|
| 112 |
+
(3953, 3972, 0),
|
| 113 |
+
(3974, 3975, 0),
|
| 114 |
+
(3981, 3991, 0),
|
| 115 |
+
(3993, 4028, 0),
|
| 116 |
+
(4038, 4038, 0),
|
| 117 |
+
(4139, 4158, 0),
|
| 118 |
+
(4182, 4185, 0),
|
| 119 |
+
(4190, 4192, 0),
|
| 120 |
+
(4194, 4196, 0),
|
| 121 |
+
(4199, 4205, 0),
|
| 122 |
+
(4209, 4212, 0),
|
| 123 |
+
(4226, 4237, 0),
|
| 124 |
+
(4239, 4239, 0),
|
| 125 |
+
(4250, 4253, 0),
|
| 126 |
+
(4352, 4447, 2),
|
| 127 |
+
(4448, 4607, 0),
|
| 128 |
+
(4957, 4959, 0),
|
| 129 |
+
(5906, 5908, 0),
|
| 130 |
+
(5938, 5940, 0),
|
| 131 |
+
(5970, 5971, 0),
|
| 132 |
+
(6002, 6003, 0),
|
| 133 |
+
(6068, 6099, 0),
|
| 134 |
+
(6109, 6109, 0),
|
| 135 |
+
(6155, 6158, 0),
|
| 136 |
+
(6277, 6278, 0),
|
| 137 |
+
(6313, 6313, 0),
|
| 138 |
+
(6432, 6443, 0),
|
| 139 |
+
(6448, 6459, 0),
|
| 140 |
+
(6679, 6683, 0),
|
| 141 |
+
(6741, 6750, 0),
|
| 142 |
+
(6752, 6780, 0),
|
| 143 |
+
(6783, 6783, 0),
|
| 144 |
+
(6832, 6846, 0),
|
| 145 |
+
(6912, 6916, 0),
|
| 146 |
+
(6964, 6980, 0),
|
| 147 |
+
(7019, 7027, 0),
|
| 148 |
+
(7040, 7042, 0),
|
| 149 |
+
(7073, 7085, 0),
|
| 150 |
+
(7142, 7155, 0),
|
| 151 |
+
(7204, 7223, 0),
|
| 152 |
+
(7376, 7378, 0),
|
| 153 |
+
(7380, 7400, 0),
|
| 154 |
+
(7405, 7405, 0),
|
| 155 |
+
(7410, 7412, 0),
|
| 156 |
+
(7415, 7417, 0),
|
| 157 |
+
(7616, 7673, 0),
|
| 158 |
+
(7675, 7679, 0),
|
| 159 |
+
(8203, 8207, 0),
|
| 160 |
+
(8232, 8238, 0),
|
| 161 |
+
(8288, 8303, 0),
|
| 162 |
+
(8400, 8432, 0),
|
| 163 |
+
(8986, 8987, 2),
|
| 164 |
+
(9001, 9002, 2),
|
| 165 |
+
(9193, 9196, 2),
|
| 166 |
+
(9200, 9200, 2),
|
| 167 |
+
(9203, 9203, 2),
|
| 168 |
+
(9725, 9726, 2),
|
| 169 |
+
(9748, 9749, 2),
|
| 170 |
+
(9800, 9811, 2),
|
| 171 |
+
(9855, 9855, 2),
|
| 172 |
+
(9875, 9875, 2),
|
| 173 |
+
(9889, 9889, 2),
|
| 174 |
+
(9898, 9899, 2),
|
| 175 |
+
(9917, 9918, 2),
|
| 176 |
+
(9924, 9925, 2),
|
| 177 |
+
(9934, 9934, 2),
|
| 178 |
+
(9940, 9940, 2),
|
| 179 |
+
(9962, 9962, 2),
|
| 180 |
+
(9970, 9971, 2),
|
| 181 |
+
(9973, 9973, 2),
|
| 182 |
+
(9978, 9978, 2),
|
| 183 |
+
(9981, 9981, 2),
|
| 184 |
+
(9989, 9989, 2),
|
| 185 |
+
(9994, 9995, 2),
|
| 186 |
+
(10024, 10024, 2),
|
| 187 |
+
(10060, 10060, 2),
|
| 188 |
+
(10062, 10062, 2),
|
| 189 |
+
(10067, 10069, 2),
|
| 190 |
+
(10071, 10071, 2),
|
| 191 |
+
(10133, 10135, 2),
|
| 192 |
+
(10160, 10160, 2),
|
| 193 |
+
(10175, 10175, 2),
|
| 194 |
+
(11035, 11036, 2),
|
| 195 |
+
(11088, 11088, 2),
|
| 196 |
+
(11093, 11093, 2),
|
| 197 |
+
(11503, 11505, 0),
|
| 198 |
+
(11647, 11647, 0),
|
| 199 |
+
(11744, 11775, 0),
|
| 200 |
+
(11904, 11929, 2),
|
| 201 |
+
(11931, 12019, 2),
|
| 202 |
+
(12032, 12245, 2),
|
| 203 |
+
(12272, 12283, 2),
|
| 204 |
+
(12288, 12329, 2),
|
| 205 |
+
(12330, 12335, 0),
|
| 206 |
+
(12336, 12350, 2),
|
| 207 |
+
(12353, 12438, 2),
|
| 208 |
+
(12441, 12442, 0),
|
| 209 |
+
(12443, 12543, 2),
|
| 210 |
+
(12549, 12590, 2),
|
| 211 |
+
(12593, 12643, 2),
|
| 212 |
+
(12644, 12644, 0),
|
| 213 |
+
(12645, 12686, 2),
|
| 214 |
+
(12688, 12730, 2),
|
| 215 |
+
(12736, 12771, 2),
|
| 216 |
+
(12784, 12830, 2),
|
| 217 |
+
(12832, 12871, 2),
|
| 218 |
+
(12880, 13054, 2),
|
| 219 |
+
(13056, 19903, 2),
|
| 220 |
+
(19968, 42124, 2),
|
| 221 |
+
(42128, 42182, 2),
|
| 222 |
+
(42607, 42610, 0),
|
| 223 |
+
(42612, 42621, 0),
|
| 224 |
+
(42654, 42655, 0),
|
| 225 |
+
(42736, 42737, 0),
|
| 226 |
+
(43010, 43010, 0),
|
| 227 |
+
(43014, 43014, 0),
|
| 228 |
+
(43019, 43019, 0),
|
| 229 |
+
(43043, 43047, 0),
|
| 230 |
+
(43136, 43137, 0),
|
| 231 |
+
(43188, 43205, 0),
|
| 232 |
+
(43232, 43249, 0),
|
| 233 |
+
(43302, 43309, 0),
|
| 234 |
+
(43335, 43347, 0),
|
| 235 |
+
(43360, 43388, 2),
|
| 236 |
+
(43392, 43395, 0),
|
| 237 |
+
(43443, 43456, 0),
|
| 238 |
+
(43493, 43493, 0),
|
| 239 |
+
(43561, 43574, 0),
|
| 240 |
+
(43587, 43587, 0),
|
| 241 |
+
(43596, 43597, 0),
|
| 242 |
+
(43643, 43645, 0),
|
| 243 |
+
(43696, 43696, 0),
|
| 244 |
+
(43698, 43700, 0),
|
| 245 |
+
(43703, 43704, 0),
|
| 246 |
+
(43710, 43711, 0),
|
| 247 |
+
(43713, 43713, 0),
|
| 248 |
+
(43755, 43759, 0),
|
| 249 |
+
(43765, 43766, 0),
|
| 250 |
+
(44003, 44010, 0),
|
| 251 |
+
(44012, 44013, 0),
|
| 252 |
+
(44032, 55203, 2),
|
| 253 |
+
(55216, 55295, 0),
|
| 254 |
+
(63744, 64255, 2),
|
| 255 |
+
(64286, 64286, 0),
|
| 256 |
+
(65024, 65039, 0),
|
| 257 |
+
(65040, 65049, 2),
|
| 258 |
+
(65056, 65071, 0),
|
| 259 |
+
(65072, 65106, 2),
|
| 260 |
+
(65108, 65126, 2),
|
| 261 |
+
(65128, 65131, 2),
|
| 262 |
+
(65279, 65279, 0),
|
| 263 |
+
(65281, 65376, 2),
|
| 264 |
+
(65440, 65440, 0),
|
| 265 |
+
(65504, 65510, 2),
|
| 266 |
+
(65520, 65531, 0),
|
| 267 |
+
(66045, 66045, 0),
|
| 268 |
+
(66272, 66272, 0),
|
| 269 |
+
(66422, 66426, 0),
|
| 270 |
+
(68097, 68099, 0),
|
| 271 |
+
(68101, 68102, 0),
|
| 272 |
+
(68108, 68111, 0),
|
| 273 |
+
(68152, 68154, 0),
|
| 274 |
+
(68159, 68159, 0),
|
| 275 |
+
(68325, 68326, 0),
|
| 276 |
+
(69632, 69634, 0),
|
| 277 |
+
(69688, 69702, 0),
|
| 278 |
+
(69759, 69762, 0),
|
| 279 |
+
(69808, 69818, 0),
|
| 280 |
+
(69888, 69890, 0),
|
| 281 |
+
(69927, 69940, 0),
|
| 282 |
+
(70003, 70003, 0),
|
| 283 |
+
(70016, 70018, 0),
|
| 284 |
+
(70067, 70080, 0),
|
| 285 |
+
(70090, 70092, 0),
|
| 286 |
+
(70188, 70199, 0),
|
| 287 |
+
(70206, 70206, 0),
|
| 288 |
+
(70367, 70378, 0),
|
| 289 |
+
(70400, 70403, 0),
|
| 290 |
+
(70460, 70460, 0),
|
| 291 |
+
(70462, 70468, 0),
|
| 292 |
+
(70471, 70472, 0),
|
| 293 |
+
(70475, 70477, 0),
|
| 294 |
+
(70487, 70487, 0),
|
| 295 |
+
(70498, 70499, 0),
|
| 296 |
+
(70502, 70508, 0),
|
| 297 |
+
(70512, 70516, 0),
|
| 298 |
+
(70709, 70726, 0),
|
| 299 |
+
(70832, 70851, 0),
|
| 300 |
+
(71087, 71093, 0),
|
| 301 |
+
(71096, 71104, 0),
|
| 302 |
+
(71132, 71133, 0),
|
| 303 |
+
(71216, 71232, 0),
|
| 304 |
+
(71339, 71351, 0),
|
| 305 |
+
(71453, 71467, 0),
|
| 306 |
+
(72193, 72202, 0),
|
| 307 |
+
(72243, 72249, 0),
|
| 308 |
+
(72251, 72254, 0),
|
| 309 |
+
(72263, 72263, 0),
|
| 310 |
+
(72273, 72283, 0),
|
| 311 |
+
(72330, 72345, 0),
|
| 312 |
+
(72751, 72758, 0),
|
| 313 |
+
(72760, 72767, 0),
|
| 314 |
+
(72850, 72871, 0),
|
| 315 |
+
(72873, 72886, 0),
|
| 316 |
+
(73009, 73014, 0),
|
| 317 |
+
(73018, 73018, 0),
|
| 318 |
+
(73020, 73021, 0),
|
| 319 |
+
(73023, 73029, 0),
|
| 320 |
+
(73031, 73031, 0),
|
| 321 |
+
(92912, 92916, 0),
|
| 322 |
+
(92976, 92982, 0),
|
| 323 |
+
(94033, 94078, 0),
|
| 324 |
+
(94095, 94098, 0),
|
| 325 |
+
(94176, 94177, 2),
|
| 326 |
+
(94208, 100332, 2),
|
| 327 |
+
(100352, 101106, 2),
|
| 328 |
+
(110592, 110878, 2),
|
| 329 |
+
(110960, 111355, 2),
|
| 330 |
+
(113821, 113822, 0),
|
| 331 |
+
(113824, 113827, 0),
|
| 332 |
+
(119141, 119145, 0),
|
| 333 |
+
(119149, 119170, 0),
|
| 334 |
+
(119173, 119179, 0),
|
| 335 |
+
(119210, 119213, 0),
|
| 336 |
+
(119362, 119364, 0),
|
| 337 |
+
(121344, 121398, 0),
|
| 338 |
+
(121403, 121452, 0),
|
| 339 |
+
(121461, 121461, 0),
|
| 340 |
+
(121476, 121476, 0),
|
| 341 |
+
(121499, 121503, 0),
|
| 342 |
+
(121505, 121519, 0),
|
| 343 |
+
(122880, 122886, 0),
|
| 344 |
+
(122888, 122904, 0),
|
| 345 |
+
(122907, 122913, 0),
|
| 346 |
+
(122915, 122916, 0),
|
| 347 |
+
(122918, 122922, 0),
|
| 348 |
+
(125136, 125142, 0),
|
| 349 |
+
(125252, 125258, 0),
|
| 350 |
+
(126980, 126980, 2),
|
| 351 |
+
(127183, 127183, 2),
|
| 352 |
+
(127374, 127374, 2),
|
| 353 |
+
(127377, 127386, 2),
|
| 354 |
+
(127488, 127490, 2),
|
| 355 |
+
(127504, 127547, 2),
|
| 356 |
+
(127552, 127560, 2),
|
| 357 |
+
(127568, 127569, 2),
|
| 358 |
+
(127584, 127589, 2),
|
| 359 |
+
(127744, 127776, 2),
|
| 360 |
+
(127789, 127797, 2),
|
| 361 |
+
(127799, 127868, 2),
|
| 362 |
+
(127870, 127891, 2),
|
| 363 |
+
(127904, 127946, 2),
|
| 364 |
+
(127951, 127955, 2),
|
| 365 |
+
(127968, 127984, 2),
|
| 366 |
+
(127988, 127988, 2),
|
| 367 |
+
(127992, 127994, 2),
|
| 368 |
+
(127995, 127999, 0),
|
| 369 |
+
(128000, 128062, 2),
|
| 370 |
+
(128064, 128064, 2),
|
| 371 |
+
(128066, 128252, 2),
|
| 372 |
+
(128255, 128317, 2),
|
| 373 |
+
(128331, 128334, 2),
|
| 374 |
+
(128336, 128359, 2),
|
| 375 |
+
(128378, 128378, 2),
|
| 376 |
+
(128405, 128406, 2),
|
| 377 |
+
(128420, 128420, 2),
|
| 378 |
+
(128507, 128591, 2),
|
| 379 |
+
(128640, 128709, 2),
|
| 380 |
+
(128716, 128716, 2),
|
| 381 |
+
(128720, 128722, 2),
|
| 382 |
+
(128747, 128748, 2),
|
| 383 |
+
(128756, 128760, 2),
|
| 384 |
+
(129296, 129342, 2),
|
| 385 |
+
(129344, 129356, 2),
|
| 386 |
+
(129360, 129387, 2),
|
| 387 |
+
(129408, 129431, 2),
|
| 388 |
+
(129472, 129472, 2),
|
| 389 |
+
(129488, 129510, 2),
|
| 390 |
+
(131072, 196605, 2),
|
| 391 |
+
(196608, 262141, 2),
|
| 392 |
+
(917504, 921599, 0),
|
| 393 |
+
],
|
| 394 |
+
frozenset(
|
| 395 |
+
[
|
| 396 |
+
"#",
|
| 397 |
+
"*",
|
| 398 |
+
"0",
|
| 399 |
+
"1",
|
| 400 |
+
"2",
|
| 401 |
+
"3",
|
| 402 |
+
"4",
|
| 403 |
+
"5",
|
| 404 |
+
"6",
|
| 405 |
+
"7",
|
| 406 |
+
"8",
|
| 407 |
+
"9",
|
| 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 |
+
"❇",
|
| 506 |
+
"❣",
|
| 507 |
+
"❤",
|
| 508 |
+
"➡",
|
| 509 |
+
"⤴",
|
| 510 |
+
"⤵",
|
| 511 |
+
"⬅",
|
| 512 |
+
"⬆",
|
| 513 |
+
"⬇",
|
| 514 |
+
"🅰",
|
| 515 |
+
"🅱",
|
| 516 |
+
"🅾",
|
| 517 |
+
"🅿",
|
| 518 |
+
"🌡",
|
| 519 |
+
"🌤",
|
| 520 |
+
"🌥",
|
| 521 |
+
"🌦",
|
| 522 |
+
"🌧",
|
| 523 |
+
"🌨",
|
| 524 |
+
"🌩",
|
| 525 |
+
"🌪",
|
| 526 |
+
"🌫",
|
| 527 |
+
"🌬",
|
| 528 |
+
"🌶",
|
| 529 |
+
"🍽",
|
| 530 |
+
"🎖",
|
| 531 |
+
"🎗",
|
| 532 |
+
"🎙",
|
| 533 |
+
"🎚",
|
| 534 |
+
"🎛",
|
| 535 |
+
"🎞",
|
| 536 |
+
"🎟",
|
| 537 |
+
"🏋",
|
| 538 |
+
"🏌",
|
| 539 |
+
"🏍",
|
| 540 |
+
"🏎",
|
| 541 |
+
"🏔",
|
| 542 |
+
"🏕",
|
| 543 |
+
"🏖",
|
| 544 |
+
"🏗",
|
| 545 |
+
"🏘",
|
| 546 |
+
"🏙",
|
| 547 |
+
"🏚",
|
| 548 |
+
"🏛",
|
| 549 |
+
"🏜",
|
| 550 |
+
"🏝",
|
| 551 |
+
"🏞",
|
| 552 |
+
"🏟",
|
| 553 |
+
"🏳",
|
| 554 |
+
"🏵",
|
| 555 |
+
"🏷",
|
| 556 |
+
"🐿",
|
| 557 |
+
"👁",
|
| 558 |
+
"📽",
|
| 559 |
+
"🕉",
|
| 560 |
+
"🕊",
|
| 561 |
+
"🕯",
|
| 562 |
+
"🕰",
|
| 563 |
+
"🕳",
|
| 564 |
+
"🕴",
|
| 565 |
+
"🕵",
|
| 566 |
+
"🕶",
|
| 567 |
+
"🕷",
|
| 568 |
+
"🕸",
|
| 569 |
+
"🕹",
|
| 570 |
+
"🖇",
|
| 571 |
+
"🖊",
|
| 572 |
+
"🖋",
|
| 573 |
+
"🖌",
|
| 574 |
+
"🖍",
|
| 575 |
+
"🖐",
|
| 576 |
+
"🖥",
|
| 577 |
+
"🖨",
|
| 578 |
+
"🖱",
|
| 579 |
+
"🖲",
|
| 580 |
+
"🖼",
|
| 581 |
+
"🗂",
|
| 582 |
+
"🗃",
|
| 583 |
+
"🗄",
|
| 584 |
+
"🗑",
|
| 585 |
+
"🗒",
|
| 586 |
+
"🗓",
|
| 587 |
+
"🗜",
|
| 588 |
+
"🗝",
|
| 589 |
+
"🗞",
|
| 590 |
+
"🗡",
|
| 591 |
+
"🗣",
|
| 592 |
+
"🗨",
|
| 593 |
+
"🗯",
|
| 594 |
+
"🗳",
|
| 595 |
+
"🗺",
|
| 596 |
+
"🛋",
|
| 597 |
+
"🛍",
|
| 598 |
+
"🛎",
|
| 599 |
+
"🛏",
|
| 600 |
+
"🛠",
|
| 601 |
+
"🛡",
|
| 602 |
+
"🛢",
|
| 603 |
+
"🛣",
|
| 604 |
+
"🛤",
|
| 605 |
+
"🛥",
|
| 606 |
+
"🛩",
|
| 607 |
+
"🛰",
|
| 608 |
+
"🛳",
|
| 609 |
+
]
|
| 610 |
+
),
|
| 611 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode11-0-0.py
ADDED
|
@@ -0,0 +1,625 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"11.0.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1552, 1562, 0),
|
| 18 |
+
(1564, 1564, 0),
|
| 19 |
+
(1611, 1631, 0),
|
| 20 |
+
(1648, 1648, 0),
|
| 21 |
+
(1750, 1756, 0),
|
| 22 |
+
(1759, 1764, 0),
|
| 23 |
+
(1767, 1768, 0),
|
| 24 |
+
(1770, 1773, 0),
|
| 25 |
+
(1809, 1809, 0),
|
| 26 |
+
(1840, 1866, 0),
|
| 27 |
+
(1958, 1968, 0),
|
| 28 |
+
(2027, 2035, 0),
|
| 29 |
+
(2045, 2045, 0),
|
| 30 |
+
(2070, 2073, 0),
|
| 31 |
+
(2075, 2083, 0),
|
| 32 |
+
(2085, 2087, 0),
|
| 33 |
+
(2089, 2093, 0),
|
| 34 |
+
(2137, 2139, 0),
|
| 35 |
+
(2259, 2273, 0),
|
| 36 |
+
(2275, 2307, 0),
|
| 37 |
+
(2362, 2364, 0),
|
| 38 |
+
(2366, 2383, 0),
|
| 39 |
+
(2385, 2391, 0),
|
| 40 |
+
(2402, 2403, 0),
|
| 41 |
+
(2433, 2435, 0),
|
| 42 |
+
(2492, 2492, 0),
|
| 43 |
+
(2494, 2500, 0),
|
| 44 |
+
(2503, 2504, 0),
|
| 45 |
+
(2507, 2509, 0),
|
| 46 |
+
(2519, 2519, 0),
|
| 47 |
+
(2530, 2531, 0),
|
| 48 |
+
(2558, 2558, 0),
|
| 49 |
+
(2561, 2563, 0),
|
| 50 |
+
(2620, 2620, 0),
|
| 51 |
+
(2622, 2626, 0),
|
| 52 |
+
(2631, 2632, 0),
|
| 53 |
+
(2635, 2637, 0),
|
| 54 |
+
(2641, 2641, 0),
|
| 55 |
+
(2672, 2673, 0),
|
| 56 |
+
(2677, 2677, 0),
|
| 57 |
+
(2689, 2691, 0),
|
| 58 |
+
(2748, 2748, 0),
|
| 59 |
+
(2750, 2757, 0),
|
| 60 |
+
(2759, 2761, 0),
|
| 61 |
+
(2763, 2765, 0),
|
| 62 |
+
(2786, 2787, 0),
|
| 63 |
+
(2810, 2815, 0),
|
| 64 |
+
(2817, 2819, 0),
|
| 65 |
+
(2876, 2876, 0),
|
| 66 |
+
(2878, 2884, 0),
|
| 67 |
+
(2887, 2888, 0),
|
| 68 |
+
(2891, 2893, 0),
|
| 69 |
+
(2902, 2903, 0),
|
| 70 |
+
(2914, 2915, 0),
|
| 71 |
+
(2946, 2946, 0),
|
| 72 |
+
(3006, 3010, 0),
|
| 73 |
+
(3014, 3016, 0),
|
| 74 |
+
(3018, 3021, 0),
|
| 75 |
+
(3031, 3031, 0),
|
| 76 |
+
(3072, 3076, 0),
|
| 77 |
+
(3134, 3140, 0),
|
| 78 |
+
(3142, 3144, 0),
|
| 79 |
+
(3146, 3149, 0),
|
| 80 |
+
(3157, 3158, 0),
|
| 81 |
+
(3170, 3171, 0),
|
| 82 |
+
(3201, 3203, 0),
|
| 83 |
+
(3260, 3260, 0),
|
| 84 |
+
(3262, 3268, 0),
|
| 85 |
+
(3270, 3272, 0),
|
| 86 |
+
(3274, 3277, 0),
|
| 87 |
+
(3285, 3286, 0),
|
| 88 |
+
(3298, 3299, 0),
|
| 89 |
+
(3328, 3331, 0),
|
| 90 |
+
(3387, 3388, 0),
|
| 91 |
+
(3390, 3396, 0),
|
| 92 |
+
(3398, 3400, 0),
|
| 93 |
+
(3402, 3405, 0),
|
| 94 |
+
(3415, 3415, 0),
|
| 95 |
+
(3426, 3427, 0),
|
| 96 |
+
(3458, 3459, 0),
|
| 97 |
+
(3530, 3530, 0),
|
| 98 |
+
(3535, 3540, 0),
|
| 99 |
+
(3542, 3542, 0),
|
| 100 |
+
(3544, 3551, 0),
|
| 101 |
+
(3570, 3571, 0),
|
| 102 |
+
(3633, 3633, 0),
|
| 103 |
+
(3636, 3642, 0),
|
| 104 |
+
(3655, 3662, 0),
|
| 105 |
+
(3761, 3761, 0),
|
| 106 |
+
(3764, 3769, 0),
|
| 107 |
+
(3771, 3772, 0),
|
| 108 |
+
(3784, 3789, 0),
|
| 109 |
+
(3864, 3865, 0),
|
| 110 |
+
(3893, 3893, 0),
|
| 111 |
+
(3895, 3895, 0),
|
| 112 |
+
(3897, 3897, 0),
|
| 113 |
+
(3902, 3903, 0),
|
| 114 |
+
(3953, 3972, 0),
|
| 115 |
+
(3974, 3975, 0),
|
| 116 |
+
(3981, 3991, 0),
|
| 117 |
+
(3993, 4028, 0),
|
| 118 |
+
(4038, 4038, 0),
|
| 119 |
+
(4139, 4158, 0),
|
| 120 |
+
(4182, 4185, 0),
|
| 121 |
+
(4190, 4192, 0),
|
| 122 |
+
(4194, 4196, 0),
|
| 123 |
+
(4199, 4205, 0),
|
| 124 |
+
(4209, 4212, 0),
|
| 125 |
+
(4226, 4237, 0),
|
| 126 |
+
(4239, 4239, 0),
|
| 127 |
+
(4250, 4253, 0),
|
| 128 |
+
(4352, 4447, 2),
|
| 129 |
+
(4448, 4607, 0),
|
| 130 |
+
(4957, 4959, 0),
|
| 131 |
+
(5906, 5908, 0),
|
| 132 |
+
(5938, 5940, 0),
|
| 133 |
+
(5970, 5971, 0),
|
| 134 |
+
(6002, 6003, 0),
|
| 135 |
+
(6068, 6099, 0),
|
| 136 |
+
(6109, 6109, 0),
|
| 137 |
+
(6155, 6158, 0),
|
| 138 |
+
(6277, 6278, 0),
|
| 139 |
+
(6313, 6313, 0),
|
| 140 |
+
(6432, 6443, 0),
|
| 141 |
+
(6448, 6459, 0),
|
| 142 |
+
(6679, 6683, 0),
|
| 143 |
+
(6741, 6750, 0),
|
| 144 |
+
(6752, 6780, 0),
|
| 145 |
+
(6783, 6783, 0),
|
| 146 |
+
(6832, 6846, 0),
|
| 147 |
+
(6912, 6916, 0),
|
| 148 |
+
(6964, 6980, 0),
|
| 149 |
+
(7019, 7027, 0),
|
| 150 |
+
(7040, 7042, 0),
|
| 151 |
+
(7073, 7085, 0),
|
| 152 |
+
(7142, 7155, 0),
|
| 153 |
+
(7204, 7223, 0),
|
| 154 |
+
(7376, 7378, 0),
|
| 155 |
+
(7380, 7400, 0),
|
| 156 |
+
(7405, 7405, 0),
|
| 157 |
+
(7410, 7412, 0),
|
| 158 |
+
(7415, 7417, 0),
|
| 159 |
+
(7616, 7673, 0),
|
| 160 |
+
(7675, 7679, 0),
|
| 161 |
+
(8203, 8207, 0),
|
| 162 |
+
(8232, 8238, 0),
|
| 163 |
+
(8288, 8303, 0),
|
| 164 |
+
(8400, 8432, 0),
|
| 165 |
+
(8986, 8987, 2),
|
| 166 |
+
(9001, 9002, 2),
|
| 167 |
+
(9193, 9196, 2),
|
| 168 |
+
(9200, 9200, 2),
|
| 169 |
+
(9203, 9203, 2),
|
| 170 |
+
(9725, 9726, 2),
|
| 171 |
+
(9748, 9749, 2),
|
| 172 |
+
(9800, 9811, 2),
|
| 173 |
+
(9855, 9855, 2),
|
| 174 |
+
(9875, 9875, 2),
|
| 175 |
+
(9889, 9889, 2),
|
| 176 |
+
(9898, 9899, 2),
|
| 177 |
+
(9917, 9918, 2),
|
| 178 |
+
(9924, 9925, 2),
|
| 179 |
+
(9934, 9934, 2),
|
| 180 |
+
(9940, 9940, 2),
|
| 181 |
+
(9962, 9962, 2),
|
| 182 |
+
(9970, 9971, 2),
|
| 183 |
+
(9973, 9973, 2),
|
| 184 |
+
(9978, 9978, 2),
|
| 185 |
+
(9981, 9981, 2),
|
| 186 |
+
(9989, 9989, 2),
|
| 187 |
+
(9994, 9995, 2),
|
| 188 |
+
(10024, 10024, 2),
|
| 189 |
+
(10060, 10060, 2),
|
| 190 |
+
(10062, 10062, 2),
|
| 191 |
+
(10067, 10069, 2),
|
| 192 |
+
(10071, 10071, 2),
|
| 193 |
+
(10133, 10135, 2),
|
| 194 |
+
(10160, 10160, 2),
|
| 195 |
+
(10175, 10175, 2),
|
| 196 |
+
(11035, 11036, 2),
|
| 197 |
+
(11088, 11088, 2),
|
| 198 |
+
(11093, 11093, 2),
|
| 199 |
+
(11503, 11505, 0),
|
| 200 |
+
(11647, 11647, 0),
|
| 201 |
+
(11744, 11775, 0),
|
| 202 |
+
(11904, 11929, 2),
|
| 203 |
+
(11931, 12019, 2),
|
| 204 |
+
(12032, 12245, 2),
|
| 205 |
+
(12272, 12283, 2),
|
| 206 |
+
(12288, 12329, 2),
|
| 207 |
+
(12330, 12335, 0),
|
| 208 |
+
(12336, 12350, 2),
|
| 209 |
+
(12353, 12438, 2),
|
| 210 |
+
(12441, 12442, 0),
|
| 211 |
+
(12443, 12543, 2),
|
| 212 |
+
(12549, 12591, 2),
|
| 213 |
+
(12593, 12643, 2),
|
| 214 |
+
(12644, 12644, 0),
|
| 215 |
+
(12645, 12686, 2),
|
| 216 |
+
(12688, 12730, 2),
|
| 217 |
+
(12736, 12771, 2),
|
| 218 |
+
(12784, 12830, 2),
|
| 219 |
+
(12832, 12871, 2),
|
| 220 |
+
(12880, 13054, 2),
|
| 221 |
+
(13056, 19903, 2),
|
| 222 |
+
(19968, 42124, 2),
|
| 223 |
+
(42128, 42182, 2),
|
| 224 |
+
(42607, 42610, 0),
|
| 225 |
+
(42612, 42621, 0),
|
| 226 |
+
(42654, 42655, 0),
|
| 227 |
+
(42736, 42737, 0),
|
| 228 |
+
(43010, 43010, 0),
|
| 229 |
+
(43014, 43014, 0),
|
| 230 |
+
(43019, 43019, 0),
|
| 231 |
+
(43043, 43047, 0),
|
| 232 |
+
(43136, 43137, 0),
|
| 233 |
+
(43188, 43205, 0),
|
| 234 |
+
(43232, 43249, 0),
|
| 235 |
+
(43263, 43263, 0),
|
| 236 |
+
(43302, 43309, 0),
|
| 237 |
+
(43335, 43347, 0),
|
| 238 |
+
(43360, 43388, 2),
|
| 239 |
+
(43392, 43395, 0),
|
| 240 |
+
(43443, 43456, 0),
|
| 241 |
+
(43493, 43493, 0),
|
| 242 |
+
(43561, 43574, 0),
|
| 243 |
+
(43587, 43587, 0),
|
| 244 |
+
(43596, 43597, 0),
|
| 245 |
+
(43643, 43645, 0),
|
| 246 |
+
(43696, 43696, 0),
|
| 247 |
+
(43698, 43700, 0),
|
| 248 |
+
(43703, 43704, 0),
|
| 249 |
+
(43710, 43711, 0),
|
| 250 |
+
(43713, 43713, 0),
|
| 251 |
+
(43755, 43759, 0),
|
| 252 |
+
(43765, 43766, 0),
|
| 253 |
+
(44003, 44010, 0),
|
| 254 |
+
(44012, 44013, 0),
|
| 255 |
+
(44032, 55203, 2),
|
| 256 |
+
(55216, 55295, 0),
|
| 257 |
+
(63744, 64255, 2),
|
| 258 |
+
(64286, 64286, 0),
|
| 259 |
+
(65024, 65039, 0),
|
| 260 |
+
(65040, 65049, 2),
|
| 261 |
+
(65056, 65071, 0),
|
| 262 |
+
(65072, 65106, 2),
|
| 263 |
+
(65108, 65126, 2),
|
| 264 |
+
(65128, 65131, 2),
|
| 265 |
+
(65279, 65279, 0),
|
| 266 |
+
(65281, 65376, 2),
|
| 267 |
+
(65440, 65440, 0),
|
| 268 |
+
(65504, 65510, 2),
|
| 269 |
+
(65520, 65531, 0),
|
| 270 |
+
(66045, 66045, 0),
|
| 271 |
+
(66272, 66272, 0),
|
| 272 |
+
(66422, 66426, 0),
|
| 273 |
+
(68097, 68099, 0),
|
| 274 |
+
(68101, 68102, 0),
|
| 275 |
+
(68108, 68111, 0),
|
| 276 |
+
(68152, 68154, 0),
|
| 277 |
+
(68159, 68159, 0),
|
| 278 |
+
(68325, 68326, 0),
|
| 279 |
+
(68900, 68903, 0),
|
| 280 |
+
(69446, 69456, 0),
|
| 281 |
+
(69632, 69634, 0),
|
| 282 |
+
(69688, 69702, 0),
|
| 283 |
+
(69759, 69762, 0),
|
| 284 |
+
(69808, 69818, 0),
|
| 285 |
+
(69888, 69890, 0),
|
| 286 |
+
(69927, 69940, 0),
|
| 287 |
+
(69957, 69958, 0),
|
| 288 |
+
(70003, 70003, 0),
|
| 289 |
+
(70016, 70018, 0),
|
| 290 |
+
(70067, 70080, 0),
|
| 291 |
+
(70089, 70092, 0),
|
| 292 |
+
(70188, 70199, 0),
|
| 293 |
+
(70206, 70206, 0),
|
| 294 |
+
(70367, 70378, 0),
|
| 295 |
+
(70400, 70403, 0),
|
| 296 |
+
(70459, 70460, 0),
|
| 297 |
+
(70462, 70468, 0),
|
| 298 |
+
(70471, 70472, 0),
|
| 299 |
+
(70475, 70477, 0),
|
| 300 |
+
(70487, 70487, 0),
|
| 301 |
+
(70498, 70499, 0),
|
| 302 |
+
(70502, 70508, 0),
|
| 303 |
+
(70512, 70516, 0),
|
| 304 |
+
(70709, 70726, 0),
|
| 305 |
+
(70750, 70750, 0),
|
| 306 |
+
(70832, 70851, 0),
|
| 307 |
+
(71087, 71093, 0),
|
| 308 |
+
(71096, 71104, 0),
|
| 309 |
+
(71132, 71133, 0),
|
| 310 |
+
(71216, 71232, 0),
|
| 311 |
+
(71339, 71351, 0),
|
| 312 |
+
(71453, 71467, 0),
|
| 313 |
+
(71724, 71738, 0),
|
| 314 |
+
(72193, 72202, 0),
|
| 315 |
+
(72243, 72249, 0),
|
| 316 |
+
(72251, 72254, 0),
|
| 317 |
+
(72263, 72263, 0),
|
| 318 |
+
(72273, 72283, 0),
|
| 319 |
+
(72330, 72345, 0),
|
| 320 |
+
(72751, 72758, 0),
|
| 321 |
+
(72760, 72767, 0),
|
| 322 |
+
(72850, 72871, 0),
|
| 323 |
+
(72873, 72886, 0),
|
| 324 |
+
(73009, 73014, 0),
|
| 325 |
+
(73018, 73018, 0),
|
| 326 |
+
(73020, 73021, 0),
|
| 327 |
+
(73023, 73029, 0),
|
| 328 |
+
(73031, 73031, 0),
|
| 329 |
+
(73098, 73102, 0),
|
| 330 |
+
(73104, 73105, 0),
|
| 331 |
+
(73107, 73111, 0),
|
| 332 |
+
(73459, 73462, 0),
|
| 333 |
+
(92912, 92916, 0),
|
| 334 |
+
(92976, 92982, 0),
|
| 335 |
+
(94033, 94078, 0),
|
| 336 |
+
(94095, 94098, 0),
|
| 337 |
+
(94176, 94177, 2),
|
| 338 |
+
(94208, 100337, 2),
|
| 339 |
+
(100352, 101106, 2),
|
| 340 |
+
(110592, 110878, 2),
|
| 341 |
+
(110960, 111355, 2),
|
| 342 |
+
(113821, 113822, 0),
|
| 343 |
+
(113824, 113827, 0),
|
| 344 |
+
(119141, 119145, 0),
|
| 345 |
+
(119149, 119170, 0),
|
| 346 |
+
(119173, 119179, 0),
|
| 347 |
+
(119210, 119213, 0),
|
| 348 |
+
(119362, 119364, 0),
|
| 349 |
+
(121344, 121398, 0),
|
| 350 |
+
(121403, 121452, 0),
|
| 351 |
+
(121461, 121461, 0),
|
| 352 |
+
(121476, 121476, 0),
|
| 353 |
+
(121499, 121503, 0),
|
| 354 |
+
(121505, 121519, 0),
|
| 355 |
+
(122880, 122886, 0),
|
| 356 |
+
(122888, 122904, 0),
|
| 357 |
+
(122907, 122913, 0),
|
| 358 |
+
(122915, 122916, 0),
|
| 359 |
+
(122918, 122922, 0),
|
| 360 |
+
(125136, 125142, 0),
|
| 361 |
+
(125252, 125258, 0),
|
| 362 |
+
(126980, 126980, 2),
|
| 363 |
+
(127183, 127183, 2),
|
| 364 |
+
(127374, 127374, 2),
|
| 365 |
+
(127377, 127386, 2),
|
| 366 |
+
(127488, 127490, 2),
|
| 367 |
+
(127504, 127547, 2),
|
| 368 |
+
(127552, 127560, 2),
|
| 369 |
+
(127568, 127569, 2),
|
| 370 |
+
(127584, 127589, 2),
|
| 371 |
+
(127744, 127776, 2),
|
| 372 |
+
(127789, 127797, 2),
|
| 373 |
+
(127799, 127868, 2),
|
| 374 |
+
(127870, 127891, 2),
|
| 375 |
+
(127904, 127946, 2),
|
| 376 |
+
(127951, 127955, 2),
|
| 377 |
+
(127968, 127984, 2),
|
| 378 |
+
(127988, 127988, 2),
|
| 379 |
+
(127992, 127994, 2),
|
| 380 |
+
(127995, 127999, 0),
|
| 381 |
+
(128000, 128062, 2),
|
| 382 |
+
(128064, 128064, 2),
|
| 383 |
+
(128066, 128252, 2),
|
| 384 |
+
(128255, 128317, 2),
|
| 385 |
+
(128331, 128334, 2),
|
| 386 |
+
(128336, 128359, 2),
|
| 387 |
+
(128378, 128378, 2),
|
| 388 |
+
(128405, 128406, 2),
|
| 389 |
+
(128420, 128420, 2),
|
| 390 |
+
(128507, 128591, 2),
|
| 391 |
+
(128640, 128709, 2),
|
| 392 |
+
(128716, 128716, 2),
|
| 393 |
+
(128720, 128722, 2),
|
| 394 |
+
(128747, 128748, 2),
|
| 395 |
+
(128756, 128761, 2),
|
| 396 |
+
(129296, 129342, 2),
|
| 397 |
+
(129344, 129392, 2),
|
| 398 |
+
(129395, 129398, 2),
|
| 399 |
+
(129402, 129402, 2),
|
| 400 |
+
(129404, 129442, 2),
|
| 401 |
+
(129456, 129465, 2),
|
| 402 |
+
(129472, 129474, 2),
|
| 403 |
+
(129488, 129535, 2),
|
| 404 |
+
(131072, 196605, 2),
|
| 405 |
+
(196608, 262141, 2),
|
| 406 |
+
(917504, 921599, 0),
|
| 407 |
+
],
|
| 408 |
+
frozenset(
|
| 409 |
+
[
|
| 410 |
+
"#",
|
| 411 |
+
"*",
|
| 412 |
+
"0",
|
| 413 |
+
"1",
|
| 414 |
+
"2",
|
| 415 |
+
"3",
|
| 416 |
+
"4",
|
| 417 |
+
"5",
|
| 418 |
+
"6",
|
| 419 |
+
"7",
|
| 420 |
+
"8",
|
| 421 |
+
"9",
|
| 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 |
+
"✂",
|
| 506 |
+
"✈",
|
| 507 |
+
"✉",
|
| 508 |
+
"✌",
|
| 509 |
+
"✍",
|
| 510 |
+
"✏",
|
| 511 |
+
"✒",
|
| 512 |
+
"✔",
|
| 513 |
+
"✖",
|
| 514 |
+
"✝",
|
| 515 |
+
"✡",
|
| 516 |
+
"✳",
|
| 517 |
+
"✴",
|
| 518 |
+
"❄",
|
| 519 |
+
"❇",
|
| 520 |
+
"❣",
|
| 521 |
+
"❤",
|
| 522 |
+
"➡",
|
| 523 |
+
"⤴",
|
| 524 |
+
"⤵",
|
| 525 |
+
"⬅",
|
| 526 |
+
"⬆",
|
| 527 |
+
"⬇",
|
| 528 |
+
"🅰",
|
| 529 |
+
"🅱",
|
| 530 |
+
"🅾",
|
| 531 |
+
"🅿",
|
| 532 |
+
"🌡",
|
| 533 |
+
"🌤",
|
| 534 |
+
"🌥",
|
| 535 |
+
"🌦",
|
| 536 |
+
"🌧",
|
| 537 |
+
"🌨",
|
| 538 |
+
"🌩",
|
| 539 |
+
"🌪",
|
| 540 |
+
"🌫",
|
| 541 |
+
"🌬",
|
| 542 |
+
"🌶",
|
| 543 |
+
"🍽",
|
| 544 |
+
"🎖",
|
| 545 |
+
"🎗",
|
| 546 |
+
"🎙",
|
| 547 |
+
"🎚",
|
| 548 |
+
"🎛",
|
| 549 |
+
"🎞",
|
| 550 |
+
"🎟",
|
| 551 |
+
"🏋",
|
| 552 |
+
"🏌",
|
| 553 |
+
"🏍",
|
| 554 |
+
"🏎",
|
| 555 |
+
"🏔",
|
| 556 |
+
"🏕",
|
| 557 |
+
"🏖",
|
| 558 |
+
"🏗",
|
| 559 |
+
"🏘",
|
| 560 |
+
"🏙",
|
| 561 |
+
"🏚",
|
| 562 |
+
"🏛",
|
| 563 |
+
"🏜",
|
| 564 |
+
"🏝",
|
| 565 |
+
"🏞",
|
| 566 |
+
"🏟",
|
| 567 |
+
"🏳",
|
| 568 |
+
"🏵",
|
| 569 |
+
"🏷",
|
| 570 |
+
"🐿",
|
| 571 |
+
"👁",
|
| 572 |
+
"📽",
|
| 573 |
+
"🕉",
|
| 574 |
+
"🕊",
|
| 575 |
+
"🕯",
|
| 576 |
+
"🕰",
|
| 577 |
+
"🕳",
|
| 578 |
+
"🕴",
|
| 579 |
+
"🕵",
|
| 580 |
+
"🕶",
|
| 581 |
+
"🕷",
|
| 582 |
+
"🕸",
|
| 583 |
+
"🕹",
|
| 584 |
+
"🖇",
|
| 585 |
+
"🖊",
|
| 586 |
+
"🖋",
|
| 587 |
+
"🖌",
|
| 588 |
+
"🖍",
|
| 589 |
+
"🖐",
|
| 590 |
+
"🖥",
|
| 591 |
+
"🖨",
|
| 592 |
+
"🖱",
|
| 593 |
+
"🖲",
|
| 594 |
+
"🖼",
|
| 595 |
+
"🗂",
|
| 596 |
+
"🗃",
|
| 597 |
+
"🗄",
|
| 598 |
+
"🗑",
|
| 599 |
+
"🗒",
|
| 600 |
+
"🗓",
|
| 601 |
+
"🗜",
|
| 602 |
+
"🗝",
|
| 603 |
+
"🗞",
|
| 604 |
+
"🗡",
|
| 605 |
+
"🗣",
|
| 606 |
+
"🗨",
|
| 607 |
+
"🗯",
|
| 608 |
+
"🗳",
|
| 609 |
+
"🗺",
|
| 610 |
+
"🛋",
|
| 611 |
+
"🛍",
|
| 612 |
+
"🛎",
|
| 613 |
+
"🛏",
|
| 614 |
+
"🛠",
|
| 615 |
+
"🛡",
|
| 616 |
+
"🛢",
|
| 617 |
+
"🛣",
|
| 618 |
+
"🛤",
|
| 619 |
+
"🛥",
|
| 620 |
+
"🛩",
|
| 621 |
+
"🛰",
|
| 622 |
+
"🛳",
|
| 623 |
+
]
|
| 624 |
+
),
|
| 625 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode12-0-0.py
ADDED
|
@@ -0,0 +1,637 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"12.0.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1552, 1562, 0),
|
| 18 |
+
(1564, 1564, 0),
|
| 19 |
+
(1611, 1631, 0),
|
| 20 |
+
(1648, 1648, 0),
|
| 21 |
+
(1750, 1756, 0),
|
| 22 |
+
(1759, 1764, 0),
|
| 23 |
+
(1767, 1768, 0),
|
| 24 |
+
(1770, 1773, 0),
|
| 25 |
+
(1809, 1809, 0),
|
| 26 |
+
(1840, 1866, 0),
|
| 27 |
+
(1958, 1968, 0),
|
| 28 |
+
(2027, 2035, 0),
|
| 29 |
+
(2045, 2045, 0),
|
| 30 |
+
(2070, 2073, 0),
|
| 31 |
+
(2075, 2083, 0),
|
| 32 |
+
(2085, 2087, 0),
|
| 33 |
+
(2089, 2093, 0),
|
| 34 |
+
(2137, 2139, 0),
|
| 35 |
+
(2259, 2273, 0),
|
| 36 |
+
(2275, 2307, 0),
|
| 37 |
+
(2362, 2364, 0),
|
| 38 |
+
(2366, 2383, 0),
|
| 39 |
+
(2385, 2391, 0),
|
| 40 |
+
(2402, 2403, 0),
|
| 41 |
+
(2433, 2435, 0),
|
| 42 |
+
(2492, 2492, 0),
|
| 43 |
+
(2494, 2500, 0),
|
| 44 |
+
(2503, 2504, 0),
|
| 45 |
+
(2507, 2509, 0),
|
| 46 |
+
(2519, 2519, 0),
|
| 47 |
+
(2530, 2531, 0),
|
| 48 |
+
(2558, 2558, 0),
|
| 49 |
+
(2561, 2563, 0),
|
| 50 |
+
(2620, 2620, 0),
|
| 51 |
+
(2622, 2626, 0),
|
| 52 |
+
(2631, 2632, 0),
|
| 53 |
+
(2635, 2637, 0),
|
| 54 |
+
(2641, 2641, 0),
|
| 55 |
+
(2672, 2673, 0),
|
| 56 |
+
(2677, 2677, 0),
|
| 57 |
+
(2689, 2691, 0),
|
| 58 |
+
(2748, 2748, 0),
|
| 59 |
+
(2750, 2757, 0),
|
| 60 |
+
(2759, 2761, 0),
|
| 61 |
+
(2763, 2765, 0),
|
| 62 |
+
(2786, 2787, 0),
|
| 63 |
+
(2810, 2815, 0),
|
| 64 |
+
(2817, 2819, 0),
|
| 65 |
+
(2876, 2876, 0),
|
| 66 |
+
(2878, 2884, 0),
|
| 67 |
+
(2887, 2888, 0),
|
| 68 |
+
(2891, 2893, 0),
|
| 69 |
+
(2902, 2903, 0),
|
| 70 |
+
(2914, 2915, 0),
|
| 71 |
+
(2946, 2946, 0),
|
| 72 |
+
(3006, 3010, 0),
|
| 73 |
+
(3014, 3016, 0),
|
| 74 |
+
(3018, 3021, 0),
|
| 75 |
+
(3031, 3031, 0),
|
| 76 |
+
(3072, 3076, 0),
|
| 77 |
+
(3134, 3140, 0),
|
| 78 |
+
(3142, 3144, 0),
|
| 79 |
+
(3146, 3149, 0),
|
| 80 |
+
(3157, 3158, 0),
|
| 81 |
+
(3170, 3171, 0),
|
| 82 |
+
(3201, 3203, 0),
|
| 83 |
+
(3260, 3260, 0),
|
| 84 |
+
(3262, 3268, 0),
|
| 85 |
+
(3270, 3272, 0),
|
| 86 |
+
(3274, 3277, 0),
|
| 87 |
+
(3285, 3286, 0),
|
| 88 |
+
(3298, 3299, 0),
|
| 89 |
+
(3328, 3331, 0),
|
| 90 |
+
(3387, 3388, 0),
|
| 91 |
+
(3390, 3396, 0),
|
| 92 |
+
(3398, 3400, 0),
|
| 93 |
+
(3402, 3405, 0),
|
| 94 |
+
(3415, 3415, 0),
|
| 95 |
+
(3426, 3427, 0),
|
| 96 |
+
(3458, 3459, 0),
|
| 97 |
+
(3530, 3530, 0),
|
| 98 |
+
(3535, 3540, 0),
|
| 99 |
+
(3542, 3542, 0),
|
| 100 |
+
(3544, 3551, 0),
|
| 101 |
+
(3570, 3571, 0),
|
| 102 |
+
(3633, 3633, 0),
|
| 103 |
+
(3636, 3642, 0),
|
| 104 |
+
(3655, 3662, 0),
|
| 105 |
+
(3761, 3761, 0),
|
| 106 |
+
(3764, 3772, 0),
|
| 107 |
+
(3784, 3789, 0),
|
| 108 |
+
(3864, 3865, 0),
|
| 109 |
+
(3893, 3893, 0),
|
| 110 |
+
(3895, 3895, 0),
|
| 111 |
+
(3897, 3897, 0),
|
| 112 |
+
(3902, 3903, 0),
|
| 113 |
+
(3953, 3972, 0),
|
| 114 |
+
(3974, 3975, 0),
|
| 115 |
+
(3981, 3991, 0),
|
| 116 |
+
(3993, 4028, 0),
|
| 117 |
+
(4038, 4038, 0),
|
| 118 |
+
(4139, 4158, 0),
|
| 119 |
+
(4182, 4185, 0),
|
| 120 |
+
(4190, 4192, 0),
|
| 121 |
+
(4194, 4196, 0),
|
| 122 |
+
(4199, 4205, 0),
|
| 123 |
+
(4209, 4212, 0),
|
| 124 |
+
(4226, 4237, 0),
|
| 125 |
+
(4239, 4239, 0),
|
| 126 |
+
(4250, 4253, 0),
|
| 127 |
+
(4352, 4447, 2),
|
| 128 |
+
(4448, 4607, 0),
|
| 129 |
+
(4957, 4959, 0),
|
| 130 |
+
(5906, 5908, 0),
|
| 131 |
+
(5938, 5940, 0),
|
| 132 |
+
(5970, 5971, 0),
|
| 133 |
+
(6002, 6003, 0),
|
| 134 |
+
(6068, 6099, 0),
|
| 135 |
+
(6109, 6109, 0),
|
| 136 |
+
(6155, 6158, 0),
|
| 137 |
+
(6277, 6278, 0),
|
| 138 |
+
(6313, 6313, 0),
|
| 139 |
+
(6432, 6443, 0),
|
| 140 |
+
(6448, 6459, 0),
|
| 141 |
+
(6679, 6683, 0),
|
| 142 |
+
(6741, 6750, 0),
|
| 143 |
+
(6752, 6780, 0),
|
| 144 |
+
(6783, 6783, 0),
|
| 145 |
+
(6832, 6846, 0),
|
| 146 |
+
(6912, 6916, 0),
|
| 147 |
+
(6964, 6980, 0),
|
| 148 |
+
(7019, 7027, 0),
|
| 149 |
+
(7040, 7042, 0),
|
| 150 |
+
(7073, 7085, 0),
|
| 151 |
+
(7142, 7155, 0),
|
| 152 |
+
(7204, 7223, 0),
|
| 153 |
+
(7376, 7378, 0),
|
| 154 |
+
(7380, 7400, 0),
|
| 155 |
+
(7405, 7405, 0),
|
| 156 |
+
(7412, 7412, 0),
|
| 157 |
+
(7415, 7417, 0),
|
| 158 |
+
(7616, 7673, 0),
|
| 159 |
+
(7675, 7679, 0),
|
| 160 |
+
(8203, 8207, 0),
|
| 161 |
+
(8232, 8238, 0),
|
| 162 |
+
(8288, 8303, 0),
|
| 163 |
+
(8400, 8432, 0),
|
| 164 |
+
(8986, 8987, 2),
|
| 165 |
+
(9001, 9002, 2),
|
| 166 |
+
(9193, 9196, 2),
|
| 167 |
+
(9200, 9200, 2),
|
| 168 |
+
(9203, 9203, 2),
|
| 169 |
+
(9725, 9726, 2),
|
| 170 |
+
(9748, 9749, 2),
|
| 171 |
+
(9800, 9811, 2),
|
| 172 |
+
(9855, 9855, 2),
|
| 173 |
+
(9875, 9875, 2),
|
| 174 |
+
(9889, 9889, 2),
|
| 175 |
+
(9898, 9899, 2),
|
| 176 |
+
(9917, 9918, 2),
|
| 177 |
+
(9924, 9925, 2),
|
| 178 |
+
(9934, 9934, 2),
|
| 179 |
+
(9940, 9940, 2),
|
| 180 |
+
(9962, 9962, 2),
|
| 181 |
+
(9970, 9971, 2),
|
| 182 |
+
(9973, 9973, 2),
|
| 183 |
+
(9978, 9978, 2),
|
| 184 |
+
(9981, 9981, 2),
|
| 185 |
+
(9989, 9989, 2),
|
| 186 |
+
(9994, 9995, 2),
|
| 187 |
+
(10024, 10024, 2),
|
| 188 |
+
(10060, 10060, 2),
|
| 189 |
+
(10062, 10062, 2),
|
| 190 |
+
(10067, 10069, 2),
|
| 191 |
+
(10071, 10071, 2),
|
| 192 |
+
(10133, 10135, 2),
|
| 193 |
+
(10160, 10160, 2),
|
| 194 |
+
(10175, 10175, 2),
|
| 195 |
+
(11035, 11036, 2),
|
| 196 |
+
(11088, 11088, 2),
|
| 197 |
+
(11093, 11093, 2),
|
| 198 |
+
(11503, 11505, 0),
|
| 199 |
+
(11647, 11647, 0),
|
| 200 |
+
(11744, 11775, 0),
|
| 201 |
+
(11904, 11929, 2),
|
| 202 |
+
(11931, 12019, 2),
|
| 203 |
+
(12032, 12245, 2),
|
| 204 |
+
(12272, 12283, 2),
|
| 205 |
+
(12288, 12329, 2),
|
| 206 |
+
(12330, 12335, 0),
|
| 207 |
+
(12336, 12350, 2),
|
| 208 |
+
(12353, 12438, 2),
|
| 209 |
+
(12441, 12442, 0),
|
| 210 |
+
(12443, 12543, 2),
|
| 211 |
+
(12549, 12591, 2),
|
| 212 |
+
(12593, 12643, 2),
|
| 213 |
+
(12644, 12644, 0),
|
| 214 |
+
(12645, 12686, 2),
|
| 215 |
+
(12688, 12730, 2),
|
| 216 |
+
(12736, 12771, 2),
|
| 217 |
+
(12784, 12830, 2),
|
| 218 |
+
(12832, 12871, 2),
|
| 219 |
+
(12880, 13054, 2),
|
| 220 |
+
(13056, 19903, 2),
|
| 221 |
+
(19968, 42124, 2),
|
| 222 |
+
(42128, 42182, 2),
|
| 223 |
+
(42607, 42610, 0),
|
| 224 |
+
(42612, 42621, 0),
|
| 225 |
+
(42654, 42655, 0),
|
| 226 |
+
(42736, 42737, 0),
|
| 227 |
+
(43010, 43010, 0),
|
| 228 |
+
(43014, 43014, 0),
|
| 229 |
+
(43019, 43019, 0),
|
| 230 |
+
(43043, 43047, 0),
|
| 231 |
+
(43136, 43137, 0),
|
| 232 |
+
(43188, 43205, 0),
|
| 233 |
+
(43232, 43249, 0),
|
| 234 |
+
(43263, 43263, 0),
|
| 235 |
+
(43302, 43309, 0),
|
| 236 |
+
(43335, 43347, 0),
|
| 237 |
+
(43360, 43388, 2),
|
| 238 |
+
(43392, 43395, 0),
|
| 239 |
+
(43443, 43456, 0),
|
| 240 |
+
(43493, 43493, 0),
|
| 241 |
+
(43561, 43574, 0),
|
| 242 |
+
(43587, 43587, 0),
|
| 243 |
+
(43596, 43597, 0),
|
| 244 |
+
(43643, 43645, 0),
|
| 245 |
+
(43696, 43696, 0),
|
| 246 |
+
(43698, 43700, 0),
|
| 247 |
+
(43703, 43704, 0),
|
| 248 |
+
(43710, 43711, 0),
|
| 249 |
+
(43713, 43713, 0),
|
| 250 |
+
(43755, 43759, 0),
|
| 251 |
+
(43765, 43766, 0),
|
| 252 |
+
(44003, 44010, 0),
|
| 253 |
+
(44012, 44013, 0),
|
| 254 |
+
(44032, 55203, 2),
|
| 255 |
+
(55216, 55295, 0),
|
| 256 |
+
(63744, 64255, 2),
|
| 257 |
+
(64286, 64286, 0),
|
| 258 |
+
(65024, 65039, 0),
|
| 259 |
+
(65040, 65049, 2),
|
| 260 |
+
(65056, 65071, 0),
|
| 261 |
+
(65072, 65106, 2),
|
| 262 |
+
(65108, 65126, 2),
|
| 263 |
+
(65128, 65131, 2),
|
| 264 |
+
(65279, 65279, 0),
|
| 265 |
+
(65281, 65376, 2),
|
| 266 |
+
(65440, 65440, 0),
|
| 267 |
+
(65504, 65510, 2),
|
| 268 |
+
(65520, 65531, 0),
|
| 269 |
+
(66045, 66045, 0),
|
| 270 |
+
(66272, 66272, 0),
|
| 271 |
+
(66422, 66426, 0),
|
| 272 |
+
(68097, 68099, 0),
|
| 273 |
+
(68101, 68102, 0),
|
| 274 |
+
(68108, 68111, 0),
|
| 275 |
+
(68152, 68154, 0),
|
| 276 |
+
(68159, 68159, 0),
|
| 277 |
+
(68325, 68326, 0),
|
| 278 |
+
(68900, 68903, 0),
|
| 279 |
+
(69446, 69456, 0),
|
| 280 |
+
(69632, 69634, 0),
|
| 281 |
+
(69688, 69702, 0),
|
| 282 |
+
(69759, 69762, 0),
|
| 283 |
+
(69808, 69818, 0),
|
| 284 |
+
(69888, 69890, 0),
|
| 285 |
+
(69927, 69940, 0),
|
| 286 |
+
(69957, 69958, 0),
|
| 287 |
+
(70003, 70003, 0),
|
| 288 |
+
(70016, 70018, 0),
|
| 289 |
+
(70067, 70080, 0),
|
| 290 |
+
(70089, 70092, 0),
|
| 291 |
+
(70188, 70199, 0),
|
| 292 |
+
(70206, 70206, 0),
|
| 293 |
+
(70367, 70378, 0),
|
| 294 |
+
(70400, 70403, 0),
|
| 295 |
+
(70459, 70460, 0),
|
| 296 |
+
(70462, 70468, 0),
|
| 297 |
+
(70471, 70472, 0),
|
| 298 |
+
(70475, 70477, 0),
|
| 299 |
+
(70487, 70487, 0),
|
| 300 |
+
(70498, 70499, 0),
|
| 301 |
+
(70502, 70508, 0),
|
| 302 |
+
(70512, 70516, 0),
|
| 303 |
+
(70709, 70726, 0),
|
| 304 |
+
(70750, 70750, 0),
|
| 305 |
+
(70832, 70851, 0),
|
| 306 |
+
(71087, 71093, 0),
|
| 307 |
+
(71096, 71104, 0),
|
| 308 |
+
(71132, 71133, 0),
|
| 309 |
+
(71216, 71232, 0),
|
| 310 |
+
(71339, 71351, 0),
|
| 311 |
+
(71453, 71467, 0),
|
| 312 |
+
(71724, 71738, 0),
|
| 313 |
+
(72145, 72151, 0),
|
| 314 |
+
(72154, 72160, 0),
|
| 315 |
+
(72164, 72164, 0),
|
| 316 |
+
(72193, 72202, 0),
|
| 317 |
+
(72243, 72249, 0),
|
| 318 |
+
(72251, 72254, 0),
|
| 319 |
+
(72263, 72263, 0),
|
| 320 |
+
(72273, 72283, 0),
|
| 321 |
+
(72330, 72345, 0),
|
| 322 |
+
(72751, 72758, 0),
|
| 323 |
+
(72760, 72767, 0),
|
| 324 |
+
(72850, 72871, 0),
|
| 325 |
+
(72873, 72886, 0),
|
| 326 |
+
(73009, 73014, 0),
|
| 327 |
+
(73018, 73018, 0),
|
| 328 |
+
(73020, 73021, 0),
|
| 329 |
+
(73023, 73029, 0),
|
| 330 |
+
(73031, 73031, 0),
|
| 331 |
+
(73098, 73102, 0),
|
| 332 |
+
(73104, 73105, 0),
|
| 333 |
+
(73107, 73111, 0),
|
| 334 |
+
(73459, 73462, 0),
|
| 335 |
+
(78896, 78904, 0),
|
| 336 |
+
(92912, 92916, 0),
|
| 337 |
+
(92976, 92982, 0),
|
| 338 |
+
(94031, 94031, 0),
|
| 339 |
+
(94033, 94087, 0),
|
| 340 |
+
(94095, 94098, 0),
|
| 341 |
+
(94176, 94179, 2),
|
| 342 |
+
(94208, 100343, 2),
|
| 343 |
+
(100352, 101106, 2),
|
| 344 |
+
(110592, 110878, 2),
|
| 345 |
+
(110928, 110930, 2),
|
| 346 |
+
(110948, 110951, 2),
|
| 347 |
+
(110960, 111355, 2),
|
| 348 |
+
(113821, 113822, 0),
|
| 349 |
+
(113824, 113827, 0),
|
| 350 |
+
(119141, 119145, 0),
|
| 351 |
+
(119149, 119170, 0),
|
| 352 |
+
(119173, 119179, 0),
|
| 353 |
+
(119210, 119213, 0),
|
| 354 |
+
(119362, 119364, 0),
|
| 355 |
+
(121344, 121398, 0),
|
| 356 |
+
(121403, 121452, 0),
|
| 357 |
+
(121461, 121461, 0),
|
| 358 |
+
(121476, 121476, 0),
|
| 359 |
+
(121499, 121503, 0),
|
| 360 |
+
(121505, 121519, 0),
|
| 361 |
+
(122880, 122886, 0),
|
| 362 |
+
(122888, 122904, 0),
|
| 363 |
+
(122907, 122913, 0),
|
| 364 |
+
(122915, 122916, 0),
|
| 365 |
+
(122918, 122922, 0),
|
| 366 |
+
(123184, 123190, 0),
|
| 367 |
+
(123628, 123631, 0),
|
| 368 |
+
(125136, 125142, 0),
|
| 369 |
+
(125252, 125258, 0),
|
| 370 |
+
(126980, 126980, 2),
|
| 371 |
+
(127183, 127183, 2),
|
| 372 |
+
(127374, 127374, 2),
|
| 373 |
+
(127377, 127386, 2),
|
| 374 |
+
(127488, 127490, 2),
|
| 375 |
+
(127504, 127547, 2),
|
| 376 |
+
(127552, 127560, 2),
|
| 377 |
+
(127568, 127569, 2),
|
| 378 |
+
(127584, 127589, 2),
|
| 379 |
+
(127744, 127776, 2),
|
| 380 |
+
(127789, 127797, 2),
|
| 381 |
+
(127799, 127868, 2),
|
| 382 |
+
(127870, 127891, 2),
|
| 383 |
+
(127904, 127946, 2),
|
| 384 |
+
(127951, 127955, 2),
|
| 385 |
+
(127968, 127984, 2),
|
| 386 |
+
(127988, 127988, 2),
|
| 387 |
+
(127992, 127994, 2),
|
| 388 |
+
(127995, 127999, 0),
|
| 389 |
+
(128000, 128062, 2),
|
| 390 |
+
(128064, 128064, 2),
|
| 391 |
+
(128066, 128252, 2),
|
| 392 |
+
(128255, 128317, 2),
|
| 393 |
+
(128331, 128334, 2),
|
| 394 |
+
(128336, 128359, 2),
|
| 395 |
+
(128378, 128378, 2),
|
| 396 |
+
(128405, 128406, 2),
|
| 397 |
+
(128420, 128420, 2),
|
| 398 |
+
(128507, 128591, 2),
|
| 399 |
+
(128640, 128709, 2),
|
| 400 |
+
(128716, 128716, 2),
|
| 401 |
+
(128720, 128722, 2),
|
| 402 |
+
(128725, 128725, 2),
|
| 403 |
+
(128747, 128748, 2),
|
| 404 |
+
(128756, 128762, 2),
|
| 405 |
+
(128992, 129003, 2),
|
| 406 |
+
(129293, 129393, 2),
|
| 407 |
+
(129395, 129398, 2),
|
| 408 |
+
(129402, 129442, 2),
|
| 409 |
+
(129445, 129450, 2),
|
| 410 |
+
(129454, 129482, 2),
|
| 411 |
+
(129485, 129535, 2),
|
| 412 |
+
(129648, 129651, 2),
|
| 413 |
+
(129656, 129658, 2),
|
| 414 |
+
(129664, 129666, 2),
|
| 415 |
+
(129680, 129685, 2),
|
| 416 |
+
(131072, 196605, 2),
|
| 417 |
+
(196608, 262141, 2),
|
| 418 |
+
(917504, 921599, 0),
|
| 419 |
+
],
|
| 420 |
+
frozenset(
|
| 421 |
+
[
|
| 422 |
+
"#",
|
| 423 |
+
"*",
|
| 424 |
+
"0",
|
| 425 |
+
"1",
|
| 426 |
+
"2",
|
| 427 |
+
"3",
|
| 428 |
+
"4",
|
| 429 |
+
"5",
|
| 430 |
+
"6",
|
| 431 |
+
"7",
|
| 432 |
+
"8",
|
| 433 |
+
"9",
|
| 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 |
+
"⚱",
|
| 506 |
+
"⛈",
|
| 507 |
+
"⛏",
|
| 508 |
+
"⛑",
|
| 509 |
+
"⛓",
|
| 510 |
+
"⛩",
|
| 511 |
+
"⛰",
|
| 512 |
+
"⛱",
|
| 513 |
+
"⛴",
|
| 514 |
+
"⛷",
|
| 515 |
+
"⛸",
|
| 516 |
+
"⛹",
|
| 517 |
+
"✂",
|
| 518 |
+
"✈",
|
| 519 |
+
"✉",
|
| 520 |
+
"✌",
|
| 521 |
+
"✍",
|
| 522 |
+
"✏",
|
| 523 |
+
"✒",
|
| 524 |
+
"✔",
|
| 525 |
+
"✖",
|
| 526 |
+
"✝",
|
| 527 |
+
"✡",
|
| 528 |
+
"✳",
|
| 529 |
+
"✴",
|
| 530 |
+
"❄",
|
| 531 |
+
"❇",
|
| 532 |
+
"❣",
|
| 533 |
+
"❤",
|
| 534 |
+
"➡",
|
| 535 |
+
"⤴",
|
| 536 |
+
"⤵",
|
| 537 |
+
"⬅",
|
| 538 |
+
"⬆",
|
| 539 |
+
"⬇",
|
| 540 |
+
"🅰",
|
| 541 |
+
"🅱",
|
| 542 |
+
"🅾",
|
| 543 |
+
"🅿",
|
| 544 |
+
"🌡",
|
| 545 |
+
"🌤",
|
| 546 |
+
"🌥",
|
| 547 |
+
"🌦",
|
| 548 |
+
"🌧",
|
| 549 |
+
"🌨",
|
| 550 |
+
"🌩",
|
| 551 |
+
"🌪",
|
| 552 |
+
"🌫",
|
| 553 |
+
"🌬",
|
| 554 |
+
"🌶",
|
| 555 |
+
"🍽",
|
| 556 |
+
"🎖",
|
| 557 |
+
"🎗",
|
| 558 |
+
"🎙",
|
| 559 |
+
"🎚",
|
| 560 |
+
"🎛",
|
| 561 |
+
"🎞",
|
| 562 |
+
"🎟",
|
| 563 |
+
"🏋",
|
| 564 |
+
"🏌",
|
| 565 |
+
"🏍",
|
| 566 |
+
"🏎",
|
| 567 |
+
"🏔",
|
| 568 |
+
"🏕",
|
| 569 |
+
"🏖",
|
| 570 |
+
"🏗",
|
| 571 |
+
"🏘",
|
| 572 |
+
"🏙",
|
| 573 |
+
"🏚",
|
| 574 |
+
"🏛",
|
| 575 |
+
"🏜",
|
| 576 |
+
"🏝",
|
| 577 |
+
"🏞",
|
| 578 |
+
"🏟",
|
| 579 |
+
"🏳",
|
| 580 |
+
"🏵",
|
| 581 |
+
"🏷",
|
| 582 |
+
"🐿",
|
| 583 |
+
"👁",
|
| 584 |
+
"📽",
|
| 585 |
+
"🕉",
|
| 586 |
+
"🕊",
|
| 587 |
+
"🕯",
|
| 588 |
+
"🕰",
|
| 589 |
+
"🕳",
|
| 590 |
+
"🕴",
|
| 591 |
+
"🕵",
|
| 592 |
+
"🕶",
|
| 593 |
+
"🕷",
|
| 594 |
+
"🕸",
|
| 595 |
+
"🕹",
|
| 596 |
+
"🖇",
|
| 597 |
+
"🖊",
|
| 598 |
+
"🖋",
|
| 599 |
+
"🖌",
|
| 600 |
+
"🖍",
|
| 601 |
+
"🖐",
|
| 602 |
+
"🖥",
|
| 603 |
+
"🖨",
|
| 604 |
+
"🖱",
|
| 605 |
+
"🖲",
|
| 606 |
+
"🖼",
|
| 607 |
+
"🗂",
|
| 608 |
+
"🗃",
|
| 609 |
+
"🗄",
|
| 610 |
+
"🗑",
|
| 611 |
+
"����",
|
| 612 |
+
"🗓",
|
| 613 |
+
"🗜",
|
| 614 |
+
"🗝",
|
| 615 |
+
"🗞",
|
| 616 |
+
"🗡",
|
| 617 |
+
"🗣",
|
| 618 |
+
"🗨",
|
| 619 |
+
"🗯",
|
| 620 |
+
"🗳",
|
| 621 |
+
"🗺",
|
| 622 |
+
"🛋",
|
| 623 |
+
"🛍",
|
| 624 |
+
"🛎",
|
| 625 |
+
"🛏",
|
| 626 |
+
"🛠",
|
| 627 |
+
"🛡",
|
| 628 |
+
"🛢",
|
| 629 |
+
"🛣",
|
| 630 |
+
"🛤",
|
| 631 |
+
"🛥",
|
| 632 |
+
"🛩",
|
| 633 |
+
"🛰",
|
| 634 |
+
"🛳",
|
| 635 |
+
]
|
| 636 |
+
),
|
| 637 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode12-1-0.py
ADDED
|
@@ -0,0 +1,636 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"12.1.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1552, 1562, 0),
|
| 18 |
+
(1564, 1564, 0),
|
| 19 |
+
(1611, 1631, 0),
|
| 20 |
+
(1648, 1648, 0),
|
| 21 |
+
(1750, 1756, 0),
|
| 22 |
+
(1759, 1764, 0),
|
| 23 |
+
(1767, 1768, 0),
|
| 24 |
+
(1770, 1773, 0),
|
| 25 |
+
(1809, 1809, 0),
|
| 26 |
+
(1840, 1866, 0),
|
| 27 |
+
(1958, 1968, 0),
|
| 28 |
+
(2027, 2035, 0),
|
| 29 |
+
(2045, 2045, 0),
|
| 30 |
+
(2070, 2073, 0),
|
| 31 |
+
(2075, 2083, 0),
|
| 32 |
+
(2085, 2087, 0),
|
| 33 |
+
(2089, 2093, 0),
|
| 34 |
+
(2137, 2139, 0),
|
| 35 |
+
(2259, 2273, 0),
|
| 36 |
+
(2275, 2307, 0),
|
| 37 |
+
(2362, 2364, 0),
|
| 38 |
+
(2366, 2383, 0),
|
| 39 |
+
(2385, 2391, 0),
|
| 40 |
+
(2402, 2403, 0),
|
| 41 |
+
(2433, 2435, 0),
|
| 42 |
+
(2492, 2492, 0),
|
| 43 |
+
(2494, 2500, 0),
|
| 44 |
+
(2503, 2504, 0),
|
| 45 |
+
(2507, 2509, 0),
|
| 46 |
+
(2519, 2519, 0),
|
| 47 |
+
(2530, 2531, 0),
|
| 48 |
+
(2558, 2558, 0),
|
| 49 |
+
(2561, 2563, 0),
|
| 50 |
+
(2620, 2620, 0),
|
| 51 |
+
(2622, 2626, 0),
|
| 52 |
+
(2631, 2632, 0),
|
| 53 |
+
(2635, 2637, 0),
|
| 54 |
+
(2641, 2641, 0),
|
| 55 |
+
(2672, 2673, 0),
|
| 56 |
+
(2677, 2677, 0),
|
| 57 |
+
(2689, 2691, 0),
|
| 58 |
+
(2748, 2748, 0),
|
| 59 |
+
(2750, 2757, 0),
|
| 60 |
+
(2759, 2761, 0),
|
| 61 |
+
(2763, 2765, 0),
|
| 62 |
+
(2786, 2787, 0),
|
| 63 |
+
(2810, 2815, 0),
|
| 64 |
+
(2817, 2819, 0),
|
| 65 |
+
(2876, 2876, 0),
|
| 66 |
+
(2878, 2884, 0),
|
| 67 |
+
(2887, 2888, 0),
|
| 68 |
+
(2891, 2893, 0),
|
| 69 |
+
(2902, 2903, 0),
|
| 70 |
+
(2914, 2915, 0),
|
| 71 |
+
(2946, 2946, 0),
|
| 72 |
+
(3006, 3010, 0),
|
| 73 |
+
(3014, 3016, 0),
|
| 74 |
+
(3018, 3021, 0),
|
| 75 |
+
(3031, 3031, 0),
|
| 76 |
+
(3072, 3076, 0),
|
| 77 |
+
(3134, 3140, 0),
|
| 78 |
+
(3142, 3144, 0),
|
| 79 |
+
(3146, 3149, 0),
|
| 80 |
+
(3157, 3158, 0),
|
| 81 |
+
(3170, 3171, 0),
|
| 82 |
+
(3201, 3203, 0),
|
| 83 |
+
(3260, 3260, 0),
|
| 84 |
+
(3262, 3268, 0),
|
| 85 |
+
(3270, 3272, 0),
|
| 86 |
+
(3274, 3277, 0),
|
| 87 |
+
(3285, 3286, 0),
|
| 88 |
+
(3298, 3299, 0),
|
| 89 |
+
(3328, 3331, 0),
|
| 90 |
+
(3387, 3388, 0),
|
| 91 |
+
(3390, 3396, 0),
|
| 92 |
+
(3398, 3400, 0),
|
| 93 |
+
(3402, 3405, 0),
|
| 94 |
+
(3415, 3415, 0),
|
| 95 |
+
(3426, 3427, 0),
|
| 96 |
+
(3458, 3459, 0),
|
| 97 |
+
(3530, 3530, 0),
|
| 98 |
+
(3535, 3540, 0),
|
| 99 |
+
(3542, 3542, 0),
|
| 100 |
+
(3544, 3551, 0),
|
| 101 |
+
(3570, 3571, 0),
|
| 102 |
+
(3633, 3633, 0),
|
| 103 |
+
(3636, 3642, 0),
|
| 104 |
+
(3655, 3662, 0),
|
| 105 |
+
(3761, 3761, 0),
|
| 106 |
+
(3764, 3772, 0),
|
| 107 |
+
(3784, 3789, 0),
|
| 108 |
+
(3864, 3865, 0),
|
| 109 |
+
(3893, 3893, 0),
|
| 110 |
+
(3895, 3895, 0),
|
| 111 |
+
(3897, 3897, 0),
|
| 112 |
+
(3902, 3903, 0),
|
| 113 |
+
(3953, 3972, 0),
|
| 114 |
+
(3974, 3975, 0),
|
| 115 |
+
(3981, 3991, 0),
|
| 116 |
+
(3993, 4028, 0),
|
| 117 |
+
(4038, 4038, 0),
|
| 118 |
+
(4139, 4158, 0),
|
| 119 |
+
(4182, 4185, 0),
|
| 120 |
+
(4190, 4192, 0),
|
| 121 |
+
(4194, 4196, 0),
|
| 122 |
+
(4199, 4205, 0),
|
| 123 |
+
(4209, 4212, 0),
|
| 124 |
+
(4226, 4237, 0),
|
| 125 |
+
(4239, 4239, 0),
|
| 126 |
+
(4250, 4253, 0),
|
| 127 |
+
(4352, 4447, 2),
|
| 128 |
+
(4448, 4607, 0),
|
| 129 |
+
(4957, 4959, 0),
|
| 130 |
+
(5906, 5908, 0),
|
| 131 |
+
(5938, 5940, 0),
|
| 132 |
+
(5970, 5971, 0),
|
| 133 |
+
(6002, 6003, 0),
|
| 134 |
+
(6068, 6099, 0),
|
| 135 |
+
(6109, 6109, 0),
|
| 136 |
+
(6155, 6158, 0),
|
| 137 |
+
(6277, 6278, 0),
|
| 138 |
+
(6313, 6313, 0),
|
| 139 |
+
(6432, 6443, 0),
|
| 140 |
+
(6448, 6459, 0),
|
| 141 |
+
(6679, 6683, 0),
|
| 142 |
+
(6741, 6750, 0),
|
| 143 |
+
(6752, 6780, 0),
|
| 144 |
+
(6783, 6783, 0),
|
| 145 |
+
(6832, 6846, 0),
|
| 146 |
+
(6912, 6916, 0),
|
| 147 |
+
(6964, 6980, 0),
|
| 148 |
+
(7019, 7027, 0),
|
| 149 |
+
(7040, 7042, 0),
|
| 150 |
+
(7073, 7085, 0),
|
| 151 |
+
(7142, 7155, 0),
|
| 152 |
+
(7204, 7223, 0),
|
| 153 |
+
(7376, 7378, 0),
|
| 154 |
+
(7380, 7400, 0),
|
| 155 |
+
(7405, 7405, 0),
|
| 156 |
+
(7412, 7412, 0),
|
| 157 |
+
(7415, 7417, 0),
|
| 158 |
+
(7616, 7673, 0),
|
| 159 |
+
(7675, 7679, 0),
|
| 160 |
+
(8203, 8207, 0),
|
| 161 |
+
(8232, 8238, 0),
|
| 162 |
+
(8288, 8303, 0),
|
| 163 |
+
(8400, 8432, 0),
|
| 164 |
+
(8986, 8987, 2),
|
| 165 |
+
(9001, 9002, 2),
|
| 166 |
+
(9193, 9196, 2),
|
| 167 |
+
(9200, 9200, 2),
|
| 168 |
+
(9203, 9203, 2),
|
| 169 |
+
(9725, 9726, 2),
|
| 170 |
+
(9748, 9749, 2),
|
| 171 |
+
(9800, 9811, 2),
|
| 172 |
+
(9855, 9855, 2),
|
| 173 |
+
(9875, 9875, 2),
|
| 174 |
+
(9889, 9889, 2),
|
| 175 |
+
(9898, 9899, 2),
|
| 176 |
+
(9917, 9918, 2),
|
| 177 |
+
(9924, 9925, 2),
|
| 178 |
+
(9934, 9934, 2),
|
| 179 |
+
(9940, 9940, 2),
|
| 180 |
+
(9962, 9962, 2),
|
| 181 |
+
(9970, 9971, 2),
|
| 182 |
+
(9973, 9973, 2),
|
| 183 |
+
(9978, 9978, 2),
|
| 184 |
+
(9981, 9981, 2),
|
| 185 |
+
(9989, 9989, 2),
|
| 186 |
+
(9994, 9995, 2),
|
| 187 |
+
(10024, 10024, 2),
|
| 188 |
+
(10060, 10060, 2),
|
| 189 |
+
(10062, 10062, 2),
|
| 190 |
+
(10067, 10069, 2),
|
| 191 |
+
(10071, 10071, 2),
|
| 192 |
+
(10133, 10135, 2),
|
| 193 |
+
(10160, 10160, 2),
|
| 194 |
+
(10175, 10175, 2),
|
| 195 |
+
(11035, 11036, 2),
|
| 196 |
+
(11088, 11088, 2),
|
| 197 |
+
(11093, 11093, 2),
|
| 198 |
+
(11503, 11505, 0),
|
| 199 |
+
(11647, 11647, 0),
|
| 200 |
+
(11744, 11775, 0),
|
| 201 |
+
(11904, 11929, 2),
|
| 202 |
+
(11931, 12019, 2),
|
| 203 |
+
(12032, 12245, 2),
|
| 204 |
+
(12272, 12283, 2),
|
| 205 |
+
(12288, 12329, 2),
|
| 206 |
+
(12330, 12335, 0),
|
| 207 |
+
(12336, 12350, 2),
|
| 208 |
+
(12353, 12438, 2),
|
| 209 |
+
(12441, 12442, 0),
|
| 210 |
+
(12443, 12543, 2),
|
| 211 |
+
(12549, 12591, 2),
|
| 212 |
+
(12593, 12643, 2),
|
| 213 |
+
(12644, 12644, 0),
|
| 214 |
+
(12645, 12686, 2),
|
| 215 |
+
(12688, 12730, 2),
|
| 216 |
+
(12736, 12771, 2),
|
| 217 |
+
(12784, 12830, 2),
|
| 218 |
+
(12832, 12871, 2),
|
| 219 |
+
(12880, 19903, 2),
|
| 220 |
+
(19968, 42124, 2),
|
| 221 |
+
(42128, 42182, 2),
|
| 222 |
+
(42607, 42610, 0),
|
| 223 |
+
(42612, 42621, 0),
|
| 224 |
+
(42654, 42655, 0),
|
| 225 |
+
(42736, 42737, 0),
|
| 226 |
+
(43010, 43010, 0),
|
| 227 |
+
(43014, 43014, 0),
|
| 228 |
+
(43019, 43019, 0),
|
| 229 |
+
(43043, 43047, 0),
|
| 230 |
+
(43136, 43137, 0),
|
| 231 |
+
(43188, 43205, 0),
|
| 232 |
+
(43232, 43249, 0),
|
| 233 |
+
(43263, 43263, 0),
|
| 234 |
+
(43302, 43309, 0),
|
| 235 |
+
(43335, 43347, 0),
|
| 236 |
+
(43360, 43388, 2),
|
| 237 |
+
(43392, 43395, 0),
|
| 238 |
+
(43443, 43456, 0),
|
| 239 |
+
(43493, 43493, 0),
|
| 240 |
+
(43561, 43574, 0),
|
| 241 |
+
(43587, 43587, 0),
|
| 242 |
+
(43596, 43597, 0),
|
| 243 |
+
(43643, 43645, 0),
|
| 244 |
+
(43696, 43696, 0),
|
| 245 |
+
(43698, 43700, 0),
|
| 246 |
+
(43703, 43704, 0),
|
| 247 |
+
(43710, 43711, 0),
|
| 248 |
+
(43713, 43713, 0),
|
| 249 |
+
(43755, 43759, 0),
|
| 250 |
+
(43765, 43766, 0),
|
| 251 |
+
(44003, 44010, 0),
|
| 252 |
+
(44012, 44013, 0),
|
| 253 |
+
(44032, 55203, 2),
|
| 254 |
+
(55216, 55295, 0),
|
| 255 |
+
(63744, 64255, 2),
|
| 256 |
+
(64286, 64286, 0),
|
| 257 |
+
(65024, 65039, 0),
|
| 258 |
+
(65040, 65049, 2),
|
| 259 |
+
(65056, 65071, 0),
|
| 260 |
+
(65072, 65106, 2),
|
| 261 |
+
(65108, 65126, 2),
|
| 262 |
+
(65128, 65131, 2),
|
| 263 |
+
(65279, 65279, 0),
|
| 264 |
+
(65281, 65376, 2),
|
| 265 |
+
(65440, 65440, 0),
|
| 266 |
+
(65504, 65510, 2),
|
| 267 |
+
(65520, 65531, 0),
|
| 268 |
+
(66045, 66045, 0),
|
| 269 |
+
(66272, 66272, 0),
|
| 270 |
+
(66422, 66426, 0),
|
| 271 |
+
(68097, 68099, 0),
|
| 272 |
+
(68101, 68102, 0),
|
| 273 |
+
(68108, 68111, 0),
|
| 274 |
+
(68152, 68154, 0),
|
| 275 |
+
(68159, 68159, 0),
|
| 276 |
+
(68325, 68326, 0),
|
| 277 |
+
(68900, 68903, 0),
|
| 278 |
+
(69446, 69456, 0),
|
| 279 |
+
(69632, 69634, 0),
|
| 280 |
+
(69688, 69702, 0),
|
| 281 |
+
(69759, 69762, 0),
|
| 282 |
+
(69808, 69818, 0),
|
| 283 |
+
(69888, 69890, 0),
|
| 284 |
+
(69927, 69940, 0),
|
| 285 |
+
(69957, 69958, 0),
|
| 286 |
+
(70003, 70003, 0),
|
| 287 |
+
(70016, 70018, 0),
|
| 288 |
+
(70067, 70080, 0),
|
| 289 |
+
(70089, 70092, 0),
|
| 290 |
+
(70188, 70199, 0),
|
| 291 |
+
(70206, 70206, 0),
|
| 292 |
+
(70367, 70378, 0),
|
| 293 |
+
(70400, 70403, 0),
|
| 294 |
+
(70459, 70460, 0),
|
| 295 |
+
(70462, 70468, 0),
|
| 296 |
+
(70471, 70472, 0),
|
| 297 |
+
(70475, 70477, 0),
|
| 298 |
+
(70487, 70487, 0),
|
| 299 |
+
(70498, 70499, 0),
|
| 300 |
+
(70502, 70508, 0),
|
| 301 |
+
(70512, 70516, 0),
|
| 302 |
+
(70709, 70726, 0),
|
| 303 |
+
(70750, 70750, 0),
|
| 304 |
+
(70832, 70851, 0),
|
| 305 |
+
(71087, 71093, 0),
|
| 306 |
+
(71096, 71104, 0),
|
| 307 |
+
(71132, 71133, 0),
|
| 308 |
+
(71216, 71232, 0),
|
| 309 |
+
(71339, 71351, 0),
|
| 310 |
+
(71453, 71467, 0),
|
| 311 |
+
(71724, 71738, 0),
|
| 312 |
+
(72145, 72151, 0),
|
| 313 |
+
(72154, 72160, 0),
|
| 314 |
+
(72164, 72164, 0),
|
| 315 |
+
(72193, 72202, 0),
|
| 316 |
+
(72243, 72249, 0),
|
| 317 |
+
(72251, 72254, 0),
|
| 318 |
+
(72263, 72263, 0),
|
| 319 |
+
(72273, 72283, 0),
|
| 320 |
+
(72330, 72345, 0),
|
| 321 |
+
(72751, 72758, 0),
|
| 322 |
+
(72760, 72767, 0),
|
| 323 |
+
(72850, 72871, 0),
|
| 324 |
+
(72873, 72886, 0),
|
| 325 |
+
(73009, 73014, 0),
|
| 326 |
+
(73018, 73018, 0),
|
| 327 |
+
(73020, 73021, 0),
|
| 328 |
+
(73023, 73029, 0),
|
| 329 |
+
(73031, 73031, 0),
|
| 330 |
+
(73098, 73102, 0),
|
| 331 |
+
(73104, 73105, 0),
|
| 332 |
+
(73107, 73111, 0),
|
| 333 |
+
(73459, 73462, 0),
|
| 334 |
+
(78896, 78904, 0),
|
| 335 |
+
(92912, 92916, 0),
|
| 336 |
+
(92976, 92982, 0),
|
| 337 |
+
(94031, 94031, 0),
|
| 338 |
+
(94033, 94087, 0),
|
| 339 |
+
(94095, 94098, 0),
|
| 340 |
+
(94176, 94179, 2),
|
| 341 |
+
(94208, 100343, 2),
|
| 342 |
+
(100352, 101106, 2),
|
| 343 |
+
(110592, 110878, 2),
|
| 344 |
+
(110928, 110930, 2),
|
| 345 |
+
(110948, 110951, 2),
|
| 346 |
+
(110960, 111355, 2),
|
| 347 |
+
(113821, 113822, 0),
|
| 348 |
+
(113824, 113827, 0),
|
| 349 |
+
(119141, 119145, 0),
|
| 350 |
+
(119149, 119170, 0),
|
| 351 |
+
(119173, 119179, 0),
|
| 352 |
+
(119210, 119213, 0),
|
| 353 |
+
(119362, 119364, 0),
|
| 354 |
+
(121344, 121398, 0),
|
| 355 |
+
(121403, 121452, 0),
|
| 356 |
+
(121461, 121461, 0),
|
| 357 |
+
(121476, 121476, 0),
|
| 358 |
+
(121499, 121503, 0),
|
| 359 |
+
(121505, 121519, 0),
|
| 360 |
+
(122880, 122886, 0),
|
| 361 |
+
(122888, 122904, 0),
|
| 362 |
+
(122907, 122913, 0),
|
| 363 |
+
(122915, 122916, 0),
|
| 364 |
+
(122918, 122922, 0),
|
| 365 |
+
(123184, 123190, 0),
|
| 366 |
+
(123628, 123631, 0),
|
| 367 |
+
(125136, 125142, 0),
|
| 368 |
+
(125252, 125258, 0),
|
| 369 |
+
(126980, 126980, 2),
|
| 370 |
+
(127183, 127183, 2),
|
| 371 |
+
(127374, 127374, 2),
|
| 372 |
+
(127377, 127386, 2),
|
| 373 |
+
(127488, 127490, 2),
|
| 374 |
+
(127504, 127547, 2),
|
| 375 |
+
(127552, 127560, 2),
|
| 376 |
+
(127568, 127569, 2),
|
| 377 |
+
(127584, 127589, 2),
|
| 378 |
+
(127744, 127776, 2),
|
| 379 |
+
(127789, 127797, 2),
|
| 380 |
+
(127799, 127868, 2),
|
| 381 |
+
(127870, 127891, 2),
|
| 382 |
+
(127904, 127946, 2),
|
| 383 |
+
(127951, 127955, 2),
|
| 384 |
+
(127968, 127984, 2),
|
| 385 |
+
(127988, 127988, 2),
|
| 386 |
+
(127992, 127994, 2),
|
| 387 |
+
(127995, 127999, 0),
|
| 388 |
+
(128000, 128062, 2),
|
| 389 |
+
(128064, 128064, 2),
|
| 390 |
+
(128066, 128252, 2),
|
| 391 |
+
(128255, 128317, 2),
|
| 392 |
+
(128331, 128334, 2),
|
| 393 |
+
(128336, 128359, 2),
|
| 394 |
+
(128378, 128378, 2),
|
| 395 |
+
(128405, 128406, 2),
|
| 396 |
+
(128420, 128420, 2),
|
| 397 |
+
(128507, 128591, 2),
|
| 398 |
+
(128640, 128709, 2),
|
| 399 |
+
(128716, 128716, 2),
|
| 400 |
+
(128720, 128722, 2),
|
| 401 |
+
(128725, 128725, 2),
|
| 402 |
+
(128747, 128748, 2),
|
| 403 |
+
(128756, 128762, 2),
|
| 404 |
+
(128992, 129003, 2),
|
| 405 |
+
(129293, 129393, 2),
|
| 406 |
+
(129395, 129398, 2),
|
| 407 |
+
(129402, 129442, 2),
|
| 408 |
+
(129445, 129450, 2),
|
| 409 |
+
(129454, 129482, 2),
|
| 410 |
+
(129485, 129535, 2),
|
| 411 |
+
(129648, 129651, 2),
|
| 412 |
+
(129656, 129658, 2),
|
| 413 |
+
(129664, 129666, 2),
|
| 414 |
+
(129680, 129685, 2),
|
| 415 |
+
(131072, 196605, 2),
|
| 416 |
+
(196608, 262141, 2),
|
| 417 |
+
(917504, 921599, 0),
|
| 418 |
+
],
|
| 419 |
+
frozenset(
|
| 420 |
+
[
|
| 421 |
+
"#",
|
| 422 |
+
"*",
|
| 423 |
+
"0",
|
| 424 |
+
"1",
|
| 425 |
+
"2",
|
| 426 |
+
"3",
|
| 427 |
+
"4",
|
| 428 |
+
"5",
|
| 429 |
+
"6",
|
| 430 |
+
"7",
|
| 431 |
+
"8",
|
| 432 |
+
"9",
|
| 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 |
+
"⛈",
|
| 506 |
+
"⛏",
|
| 507 |
+
"⛑",
|
| 508 |
+
"⛓",
|
| 509 |
+
"⛩",
|
| 510 |
+
"⛰",
|
| 511 |
+
"⛱",
|
| 512 |
+
"⛴",
|
| 513 |
+
"⛷",
|
| 514 |
+
"⛸",
|
| 515 |
+
"⛹",
|
| 516 |
+
"✂",
|
| 517 |
+
"✈",
|
| 518 |
+
"✉",
|
| 519 |
+
"✌",
|
| 520 |
+
"✍",
|
| 521 |
+
"✏",
|
| 522 |
+
"✒",
|
| 523 |
+
"✔",
|
| 524 |
+
"✖",
|
| 525 |
+
"✝",
|
| 526 |
+
"✡",
|
| 527 |
+
"✳",
|
| 528 |
+
"✴",
|
| 529 |
+
"❄",
|
| 530 |
+
"❇",
|
| 531 |
+
"❣",
|
| 532 |
+
"❤",
|
| 533 |
+
"➡",
|
| 534 |
+
"⤴",
|
| 535 |
+
"⤵",
|
| 536 |
+
"⬅",
|
| 537 |
+
"⬆",
|
| 538 |
+
"⬇",
|
| 539 |
+
"🅰",
|
| 540 |
+
"🅱",
|
| 541 |
+
"🅾",
|
| 542 |
+
"🅿",
|
| 543 |
+
"🌡",
|
| 544 |
+
"🌤",
|
| 545 |
+
"🌥",
|
| 546 |
+
"🌦",
|
| 547 |
+
"🌧",
|
| 548 |
+
"🌨",
|
| 549 |
+
"🌩",
|
| 550 |
+
"🌪",
|
| 551 |
+
"🌫",
|
| 552 |
+
"🌬",
|
| 553 |
+
"🌶",
|
| 554 |
+
"🍽",
|
| 555 |
+
"🎖",
|
| 556 |
+
"🎗",
|
| 557 |
+
"🎙",
|
| 558 |
+
"🎚",
|
| 559 |
+
"🎛",
|
| 560 |
+
"🎞",
|
| 561 |
+
"🎟",
|
| 562 |
+
"🏋",
|
| 563 |
+
"🏌",
|
| 564 |
+
"🏍",
|
| 565 |
+
"🏎",
|
| 566 |
+
"🏔",
|
| 567 |
+
"🏕",
|
| 568 |
+
"🏖",
|
| 569 |
+
"🏗",
|
| 570 |
+
"🏘",
|
| 571 |
+
"🏙",
|
| 572 |
+
"🏚",
|
| 573 |
+
"🏛",
|
| 574 |
+
"🏜",
|
| 575 |
+
"🏝",
|
| 576 |
+
"🏞",
|
| 577 |
+
"🏟",
|
| 578 |
+
"🏳",
|
| 579 |
+
"🏵",
|
| 580 |
+
"🏷",
|
| 581 |
+
"🐿",
|
| 582 |
+
"👁",
|
| 583 |
+
"📽",
|
| 584 |
+
"🕉",
|
| 585 |
+
"🕊",
|
| 586 |
+
"🕯",
|
| 587 |
+
"🕰",
|
| 588 |
+
"🕳",
|
| 589 |
+
"🕴",
|
| 590 |
+
"🕵",
|
| 591 |
+
"🕶",
|
| 592 |
+
"🕷",
|
| 593 |
+
"🕸",
|
| 594 |
+
"🕹",
|
| 595 |
+
"🖇",
|
| 596 |
+
"🖊",
|
| 597 |
+
"🖋",
|
| 598 |
+
"🖌",
|
| 599 |
+
"🖍",
|
| 600 |
+
"🖐",
|
| 601 |
+
"🖥",
|
| 602 |
+
"🖨",
|
| 603 |
+
"🖱",
|
| 604 |
+
"🖲",
|
| 605 |
+
"🖼",
|
| 606 |
+
"🗂",
|
| 607 |
+
"🗃",
|
| 608 |
+
"🗄",
|
| 609 |
+
"🗑",
|
| 610 |
+
"🗒",
|
| 611 |
+
"🗓",
|
| 612 |
+
"🗜",
|
| 613 |
+
"🗝",
|
| 614 |
+
"🗞",
|
| 615 |
+
"🗡",
|
| 616 |
+
"🗣",
|
| 617 |
+
"🗨",
|
| 618 |
+
"🗯",
|
| 619 |
+
"🗳",
|
| 620 |
+
"🗺",
|
| 621 |
+
"🛋",
|
| 622 |
+
"🛍",
|
| 623 |
+
"🛎",
|
| 624 |
+
"🛏",
|
| 625 |
+
"🛠",
|
| 626 |
+
"🛡",
|
| 627 |
+
"🛢",
|
| 628 |
+
"🛣",
|
| 629 |
+
"🛤",
|
| 630 |
+
"🛥",
|
| 631 |
+
"🛩",
|
| 632 |
+
"🛰",
|
| 633 |
+
"🛳",
|
| 634 |
+
]
|
| 635 |
+
),
|
| 636 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode13-0-0.py
ADDED
|
@@ -0,0 +1,648 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"13.0.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1552, 1562, 0),
|
| 18 |
+
(1564, 1564, 0),
|
| 19 |
+
(1611, 1631, 0),
|
| 20 |
+
(1648, 1648, 0),
|
| 21 |
+
(1750, 1756, 0),
|
| 22 |
+
(1759, 1764, 0),
|
| 23 |
+
(1767, 1768, 0),
|
| 24 |
+
(1770, 1773, 0),
|
| 25 |
+
(1809, 1809, 0),
|
| 26 |
+
(1840, 1866, 0),
|
| 27 |
+
(1958, 1968, 0),
|
| 28 |
+
(2027, 2035, 0),
|
| 29 |
+
(2045, 2045, 0),
|
| 30 |
+
(2070, 2073, 0),
|
| 31 |
+
(2075, 2083, 0),
|
| 32 |
+
(2085, 2087, 0),
|
| 33 |
+
(2089, 2093, 0),
|
| 34 |
+
(2137, 2139, 0),
|
| 35 |
+
(2259, 2273, 0),
|
| 36 |
+
(2275, 2307, 0),
|
| 37 |
+
(2362, 2364, 0),
|
| 38 |
+
(2366, 2383, 0),
|
| 39 |
+
(2385, 2391, 0),
|
| 40 |
+
(2402, 2403, 0),
|
| 41 |
+
(2433, 2435, 0),
|
| 42 |
+
(2492, 2492, 0),
|
| 43 |
+
(2494, 2500, 0),
|
| 44 |
+
(2503, 2504, 0),
|
| 45 |
+
(2507, 2509, 0),
|
| 46 |
+
(2519, 2519, 0),
|
| 47 |
+
(2530, 2531, 0),
|
| 48 |
+
(2558, 2558, 0),
|
| 49 |
+
(2561, 2563, 0),
|
| 50 |
+
(2620, 2620, 0),
|
| 51 |
+
(2622, 2626, 0),
|
| 52 |
+
(2631, 2632, 0),
|
| 53 |
+
(2635, 2637, 0),
|
| 54 |
+
(2641, 2641, 0),
|
| 55 |
+
(2672, 2673, 0),
|
| 56 |
+
(2677, 2677, 0),
|
| 57 |
+
(2689, 2691, 0),
|
| 58 |
+
(2748, 2748, 0),
|
| 59 |
+
(2750, 2757, 0),
|
| 60 |
+
(2759, 2761, 0),
|
| 61 |
+
(2763, 2765, 0),
|
| 62 |
+
(2786, 2787, 0),
|
| 63 |
+
(2810, 2815, 0),
|
| 64 |
+
(2817, 2819, 0),
|
| 65 |
+
(2876, 2876, 0),
|
| 66 |
+
(2878, 2884, 0),
|
| 67 |
+
(2887, 2888, 0),
|
| 68 |
+
(2891, 2893, 0),
|
| 69 |
+
(2901, 2903, 0),
|
| 70 |
+
(2914, 2915, 0),
|
| 71 |
+
(2946, 2946, 0),
|
| 72 |
+
(3006, 3010, 0),
|
| 73 |
+
(3014, 3016, 0),
|
| 74 |
+
(3018, 3021, 0),
|
| 75 |
+
(3031, 3031, 0),
|
| 76 |
+
(3072, 3076, 0),
|
| 77 |
+
(3134, 3140, 0),
|
| 78 |
+
(3142, 3144, 0),
|
| 79 |
+
(3146, 3149, 0),
|
| 80 |
+
(3157, 3158, 0),
|
| 81 |
+
(3170, 3171, 0),
|
| 82 |
+
(3201, 3203, 0),
|
| 83 |
+
(3260, 3260, 0),
|
| 84 |
+
(3262, 3268, 0),
|
| 85 |
+
(3270, 3272, 0),
|
| 86 |
+
(3274, 3277, 0),
|
| 87 |
+
(3285, 3286, 0),
|
| 88 |
+
(3298, 3299, 0),
|
| 89 |
+
(3328, 3331, 0),
|
| 90 |
+
(3387, 3388, 0),
|
| 91 |
+
(3390, 3396, 0),
|
| 92 |
+
(3398, 3400, 0),
|
| 93 |
+
(3402, 3405, 0),
|
| 94 |
+
(3415, 3415, 0),
|
| 95 |
+
(3426, 3427, 0),
|
| 96 |
+
(3457, 3459, 0),
|
| 97 |
+
(3530, 3530, 0),
|
| 98 |
+
(3535, 3540, 0),
|
| 99 |
+
(3542, 3542, 0),
|
| 100 |
+
(3544, 3551, 0),
|
| 101 |
+
(3570, 3571, 0),
|
| 102 |
+
(3633, 3633, 0),
|
| 103 |
+
(3636, 3642, 0),
|
| 104 |
+
(3655, 3662, 0),
|
| 105 |
+
(3761, 3761, 0),
|
| 106 |
+
(3764, 3772, 0),
|
| 107 |
+
(3784, 3789, 0),
|
| 108 |
+
(3864, 3865, 0),
|
| 109 |
+
(3893, 3893, 0),
|
| 110 |
+
(3895, 3895, 0),
|
| 111 |
+
(3897, 3897, 0),
|
| 112 |
+
(3902, 3903, 0),
|
| 113 |
+
(3953, 3972, 0),
|
| 114 |
+
(3974, 3975, 0),
|
| 115 |
+
(3981, 3991, 0),
|
| 116 |
+
(3993, 4028, 0),
|
| 117 |
+
(4038, 4038, 0),
|
| 118 |
+
(4139, 4158, 0),
|
| 119 |
+
(4182, 4185, 0),
|
| 120 |
+
(4190, 4192, 0),
|
| 121 |
+
(4194, 4196, 0),
|
| 122 |
+
(4199, 4205, 0),
|
| 123 |
+
(4209, 4212, 0),
|
| 124 |
+
(4226, 4237, 0),
|
| 125 |
+
(4239, 4239, 0),
|
| 126 |
+
(4250, 4253, 0),
|
| 127 |
+
(4352, 4447, 2),
|
| 128 |
+
(4448, 4607, 0),
|
| 129 |
+
(4957, 4959, 0),
|
| 130 |
+
(5906, 5908, 0),
|
| 131 |
+
(5938, 5940, 0),
|
| 132 |
+
(5970, 5971, 0),
|
| 133 |
+
(6002, 6003, 0),
|
| 134 |
+
(6068, 6099, 0),
|
| 135 |
+
(6109, 6109, 0),
|
| 136 |
+
(6155, 6158, 0),
|
| 137 |
+
(6277, 6278, 0),
|
| 138 |
+
(6313, 6313, 0),
|
| 139 |
+
(6432, 6443, 0),
|
| 140 |
+
(6448, 6459, 0),
|
| 141 |
+
(6679, 6683, 0),
|
| 142 |
+
(6741, 6750, 0),
|
| 143 |
+
(6752, 6780, 0),
|
| 144 |
+
(6783, 6783, 0),
|
| 145 |
+
(6832, 6848, 0),
|
| 146 |
+
(6912, 6916, 0),
|
| 147 |
+
(6964, 6980, 0),
|
| 148 |
+
(7019, 7027, 0),
|
| 149 |
+
(7040, 7042, 0),
|
| 150 |
+
(7073, 7085, 0),
|
| 151 |
+
(7142, 7155, 0),
|
| 152 |
+
(7204, 7223, 0),
|
| 153 |
+
(7376, 7378, 0),
|
| 154 |
+
(7380, 7400, 0),
|
| 155 |
+
(7405, 7405, 0),
|
| 156 |
+
(7412, 7412, 0),
|
| 157 |
+
(7415, 7417, 0),
|
| 158 |
+
(7616, 7673, 0),
|
| 159 |
+
(7675, 7679, 0),
|
| 160 |
+
(8203, 8207, 0),
|
| 161 |
+
(8232, 8238, 0),
|
| 162 |
+
(8288, 8303, 0),
|
| 163 |
+
(8400, 8432, 0),
|
| 164 |
+
(8986, 8987, 2),
|
| 165 |
+
(9001, 9002, 2),
|
| 166 |
+
(9193, 9196, 2),
|
| 167 |
+
(9200, 9200, 2),
|
| 168 |
+
(9203, 9203, 2),
|
| 169 |
+
(9725, 9726, 2),
|
| 170 |
+
(9748, 9749, 2),
|
| 171 |
+
(9800, 9811, 2),
|
| 172 |
+
(9855, 9855, 2),
|
| 173 |
+
(9875, 9875, 2),
|
| 174 |
+
(9889, 9889, 2),
|
| 175 |
+
(9898, 9899, 2),
|
| 176 |
+
(9917, 9918, 2),
|
| 177 |
+
(9924, 9925, 2),
|
| 178 |
+
(9934, 9934, 2),
|
| 179 |
+
(9940, 9940, 2),
|
| 180 |
+
(9962, 9962, 2),
|
| 181 |
+
(9970, 9971, 2),
|
| 182 |
+
(9973, 9973, 2),
|
| 183 |
+
(9978, 9978, 2),
|
| 184 |
+
(9981, 9981, 2),
|
| 185 |
+
(9989, 9989, 2),
|
| 186 |
+
(9994, 9995, 2),
|
| 187 |
+
(10024, 10024, 2),
|
| 188 |
+
(10060, 10060, 2),
|
| 189 |
+
(10062, 10062, 2),
|
| 190 |
+
(10067, 10069, 2),
|
| 191 |
+
(10071, 10071, 2),
|
| 192 |
+
(10133, 10135, 2),
|
| 193 |
+
(10160, 10160, 2),
|
| 194 |
+
(10175, 10175, 2),
|
| 195 |
+
(11035, 11036, 2),
|
| 196 |
+
(11088, 11088, 2),
|
| 197 |
+
(11093, 11093, 2),
|
| 198 |
+
(11503, 11505, 0),
|
| 199 |
+
(11647, 11647, 0),
|
| 200 |
+
(11744, 11775, 0),
|
| 201 |
+
(11904, 11929, 2),
|
| 202 |
+
(11931, 12019, 2),
|
| 203 |
+
(12032, 12245, 2),
|
| 204 |
+
(12272, 12283, 2),
|
| 205 |
+
(12288, 12329, 2),
|
| 206 |
+
(12330, 12335, 0),
|
| 207 |
+
(12336, 12350, 2),
|
| 208 |
+
(12353, 12438, 2),
|
| 209 |
+
(12441, 12442, 0),
|
| 210 |
+
(12443, 12543, 2),
|
| 211 |
+
(12549, 12591, 2),
|
| 212 |
+
(12593, 12643, 2),
|
| 213 |
+
(12644, 12644, 0),
|
| 214 |
+
(12645, 12686, 2),
|
| 215 |
+
(12688, 12771, 2),
|
| 216 |
+
(12784, 12830, 2),
|
| 217 |
+
(12832, 12871, 2),
|
| 218 |
+
(12880, 19903, 2),
|
| 219 |
+
(19968, 42124, 2),
|
| 220 |
+
(42128, 42182, 2),
|
| 221 |
+
(42607, 42610, 0),
|
| 222 |
+
(42612, 42621, 0),
|
| 223 |
+
(42654, 42655, 0),
|
| 224 |
+
(42736, 42737, 0),
|
| 225 |
+
(43010, 43010, 0),
|
| 226 |
+
(43014, 43014, 0),
|
| 227 |
+
(43019, 43019, 0),
|
| 228 |
+
(43043, 43047, 0),
|
| 229 |
+
(43052, 43052, 0),
|
| 230 |
+
(43136, 43137, 0),
|
| 231 |
+
(43188, 43205, 0),
|
| 232 |
+
(43232, 43249, 0),
|
| 233 |
+
(43263, 43263, 0),
|
| 234 |
+
(43302, 43309, 0),
|
| 235 |
+
(43335, 43347, 0),
|
| 236 |
+
(43360, 43388, 2),
|
| 237 |
+
(43392, 43395, 0),
|
| 238 |
+
(43443, 43456, 0),
|
| 239 |
+
(43493, 43493, 0),
|
| 240 |
+
(43561, 43574, 0),
|
| 241 |
+
(43587, 43587, 0),
|
| 242 |
+
(43596, 43597, 0),
|
| 243 |
+
(43643, 43645, 0),
|
| 244 |
+
(43696, 43696, 0),
|
| 245 |
+
(43698, 43700, 0),
|
| 246 |
+
(43703, 43704, 0),
|
| 247 |
+
(43710, 43711, 0),
|
| 248 |
+
(43713, 43713, 0),
|
| 249 |
+
(43755, 43759, 0),
|
| 250 |
+
(43765, 43766, 0),
|
| 251 |
+
(44003, 44010, 0),
|
| 252 |
+
(44012, 44013, 0),
|
| 253 |
+
(44032, 55203, 2),
|
| 254 |
+
(55216, 55295, 0),
|
| 255 |
+
(63744, 64255, 2),
|
| 256 |
+
(64286, 64286, 0),
|
| 257 |
+
(65024, 65039, 0),
|
| 258 |
+
(65040, 65049, 2),
|
| 259 |
+
(65056, 65071, 0),
|
| 260 |
+
(65072, 65106, 2),
|
| 261 |
+
(65108, 65126, 2),
|
| 262 |
+
(65128, 65131, 2),
|
| 263 |
+
(65279, 65279, 0),
|
| 264 |
+
(65281, 65376, 2),
|
| 265 |
+
(65440, 65440, 0),
|
| 266 |
+
(65504, 65510, 2),
|
| 267 |
+
(65520, 65531, 0),
|
| 268 |
+
(66045, 66045, 0),
|
| 269 |
+
(66272, 66272, 0),
|
| 270 |
+
(66422, 66426, 0),
|
| 271 |
+
(68097, 68099, 0),
|
| 272 |
+
(68101, 68102, 0),
|
| 273 |
+
(68108, 68111, 0),
|
| 274 |
+
(68152, 68154, 0),
|
| 275 |
+
(68159, 68159, 0),
|
| 276 |
+
(68325, 68326, 0),
|
| 277 |
+
(68900, 68903, 0),
|
| 278 |
+
(69291, 69292, 0),
|
| 279 |
+
(69446, 69456, 0),
|
| 280 |
+
(69632, 69634, 0),
|
| 281 |
+
(69688, 69702, 0),
|
| 282 |
+
(69759, 69762, 0),
|
| 283 |
+
(69808, 69818, 0),
|
| 284 |
+
(69888, 69890, 0),
|
| 285 |
+
(69927, 69940, 0),
|
| 286 |
+
(69957, 69958, 0),
|
| 287 |
+
(70003, 70003, 0),
|
| 288 |
+
(70016, 70018, 0),
|
| 289 |
+
(70067, 70080, 0),
|
| 290 |
+
(70089, 70092, 0),
|
| 291 |
+
(70094, 70095, 0),
|
| 292 |
+
(70188, 70199, 0),
|
| 293 |
+
(70206, 70206, 0),
|
| 294 |
+
(70367, 70378, 0),
|
| 295 |
+
(70400, 70403, 0),
|
| 296 |
+
(70459, 70460, 0),
|
| 297 |
+
(70462, 70468, 0),
|
| 298 |
+
(70471, 70472, 0),
|
| 299 |
+
(70475, 70477, 0),
|
| 300 |
+
(70487, 70487, 0),
|
| 301 |
+
(70498, 70499, 0),
|
| 302 |
+
(70502, 70508, 0),
|
| 303 |
+
(70512, 70516, 0),
|
| 304 |
+
(70709, 70726, 0),
|
| 305 |
+
(70750, 70750, 0),
|
| 306 |
+
(70832, 70851, 0),
|
| 307 |
+
(71087, 71093, 0),
|
| 308 |
+
(71096, 71104, 0),
|
| 309 |
+
(71132, 71133, 0),
|
| 310 |
+
(71216, 71232, 0),
|
| 311 |
+
(71339, 71351, 0),
|
| 312 |
+
(71453, 71467, 0),
|
| 313 |
+
(71724, 71738, 0),
|
| 314 |
+
(71984, 71989, 0),
|
| 315 |
+
(71991, 71992, 0),
|
| 316 |
+
(71995, 71998, 0),
|
| 317 |
+
(72000, 72000, 0),
|
| 318 |
+
(72002, 72003, 0),
|
| 319 |
+
(72145, 72151, 0),
|
| 320 |
+
(72154, 72160, 0),
|
| 321 |
+
(72164, 72164, 0),
|
| 322 |
+
(72193, 72202, 0),
|
| 323 |
+
(72243, 72249, 0),
|
| 324 |
+
(72251, 72254, 0),
|
| 325 |
+
(72263, 72263, 0),
|
| 326 |
+
(72273, 72283, 0),
|
| 327 |
+
(72330, 72345, 0),
|
| 328 |
+
(72751, 72758, 0),
|
| 329 |
+
(72760, 72767, 0),
|
| 330 |
+
(72850, 72871, 0),
|
| 331 |
+
(72873, 72886, 0),
|
| 332 |
+
(73009, 73014, 0),
|
| 333 |
+
(73018, 73018, 0),
|
| 334 |
+
(73020, 73021, 0),
|
| 335 |
+
(73023, 73029, 0),
|
| 336 |
+
(73031, 73031, 0),
|
| 337 |
+
(73098, 73102, 0),
|
| 338 |
+
(73104, 73105, 0),
|
| 339 |
+
(73107, 73111, 0),
|
| 340 |
+
(73459, 73462, 0),
|
| 341 |
+
(78896, 78904, 0),
|
| 342 |
+
(92912, 92916, 0),
|
| 343 |
+
(92976, 92982, 0),
|
| 344 |
+
(94031, 94031, 0),
|
| 345 |
+
(94033, 94087, 0),
|
| 346 |
+
(94095, 94098, 0),
|
| 347 |
+
(94176, 94179, 2),
|
| 348 |
+
(94180, 94180, 0),
|
| 349 |
+
(94192, 94193, 0),
|
| 350 |
+
(94208, 100343, 2),
|
| 351 |
+
(100352, 101589, 2),
|
| 352 |
+
(101632, 101640, 2),
|
| 353 |
+
(110592, 110878, 2),
|
| 354 |
+
(110928, 110930, 2),
|
| 355 |
+
(110948, 110951, 2),
|
| 356 |
+
(110960, 111355, 2),
|
| 357 |
+
(113821, 113822, 0),
|
| 358 |
+
(113824, 113827, 0),
|
| 359 |
+
(119141, 119145, 0),
|
| 360 |
+
(119149, 119170, 0),
|
| 361 |
+
(119173, 119179, 0),
|
| 362 |
+
(119210, 119213, 0),
|
| 363 |
+
(119362, 119364, 0),
|
| 364 |
+
(121344, 121398, 0),
|
| 365 |
+
(121403, 121452, 0),
|
| 366 |
+
(121461, 121461, 0),
|
| 367 |
+
(121476, 121476, 0),
|
| 368 |
+
(121499, 121503, 0),
|
| 369 |
+
(121505, 121519, 0),
|
| 370 |
+
(122880, 122886, 0),
|
| 371 |
+
(122888, 122904, 0),
|
| 372 |
+
(122907, 122913, 0),
|
| 373 |
+
(122915, 122916, 0),
|
| 374 |
+
(122918, 122922, 0),
|
| 375 |
+
(123184, 123190, 0),
|
| 376 |
+
(123628, 123631, 0),
|
| 377 |
+
(125136, 125142, 0),
|
| 378 |
+
(125252, 125258, 0),
|
| 379 |
+
(126980, 126980, 2),
|
| 380 |
+
(127183, 127183, 2),
|
| 381 |
+
(127374, 127374, 2),
|
| 382 |
+
(127377, 127386, 2),
|
| 383 |
+
(127488, 127490, 2),
|
| 384 |
+
(127504, 127547, 2),
|
| 385 |
+
(127552, 127560, 2),
|
| 386 |
+
(127568, 127569, 2),
|
| 387 |
+
(127584, 127589, 2),
|
| 388 |
+
(127744, 127776, 2),
|
| 389 |
+
(127789, 127797, 2),
|
| 390 |
+
(127799, 127868, 2),
|
| 391 |
+
(127870, 127891, 2),
|
| 392 |
+
(127904, 127946, 2),
|
| 393 |
+
(127951, 127955, 2),
|
| 394 |
+
(127968, 127984, 2),
|
| 395 |
+
(127988, 127988, 2),
|
| 396 |
+
(127992, 127994, 2),
|
| 397 |
+
(127995, 127999, 0),
|
| 398 |
+
(128000, 128062, 2),
|
| 399 |
+
(128064, 128064, 2),
|
| 400 |
+
(128066, 128252, 2),
|
| 401 |
+
(128255, 128317, 2),
|
| 402 |
+
(128331, 128334, 2),
|
| 403 |
+
(128336, 128359, 2),
|
| 404 |
+
(128378, 128378, 2),
|
| 405 |
+
(128405, 128406, 2),
|
| 406 |
+
(128420, 128420, 2),
|
| 407 |
+
(128507, 128591, 2),
|
| 408 |
+
(128640, 128709, 2),
|
| 409 |
+
(128716, 128716, 2),
|
| 410 |
+
(128720, 128722, 2),
|
| 411 |
+
(128725, 128727, 2),
|
| 412 |
+
(128747, 128748, 2),
|
| 413 |
+
(128756, 128764, 2),
|
| 414 |
+
(128992, 129003, 2),
|
| 415 |
+
(129292, 129338, 2),
|
| 416 |
+
(129340, 129349, 2),
|
| 417 |
+
(129351, 129400, 2),
|
| 418 |
+
(129402, 129483, 2),
|
| 419 |
+
(129485, 129535, 2),
|
| 420 |
+
(129648, 129652, 2),
|
| 421 |
+
(129656, 129658, 2),
|
| 422 |
+
(129664, 129670, 2),
|
| 423 |
+
(129680, 129704, 2),
|
| 424 |
+
(129712, 129718, 2),
|
| 425 |
+
(129728, 129730, 2),
|
| 426 |
+
(129744, 129750, 2),
|
| 427 |
+
(131072, 196605, 2),
|
| 428 |
+
(196608, 262141, 2),
|
| 429 |
+
(917504, 921599, 0),
|
| 430 |
+
],
|
| 431 |
+
frozenset(
|
| 432 |
+
[
|
| 433 |
+
"#",
|
| 434 |
+
"*",
|
| 435 |
+
"0",
|
| 436 |
+
"1",
|
| 437 |
+
"2",
|
| 438 |
+
"3",
|
| 439 |
+
"4",
|
| 440 |
+
"5",
|
| 441 |
+
"6",
|
| 442 |
+
"7",
|
| 443 |
+
"8",
|
| 444 |
+
"9",
|
| 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 |
+
"⚒",
|
| 506 |
+
"⚔",
|
| 507 |
+
"⚕",
|
| 508 |
+
"⚖",
|
| 509 |
+
"⚗",
|
| 510 |
+
"⚙",
|
| 511 |
+
"⚛",
|
| 512 |
+
"⚜",
|
| 513 |
+
"⚠",
|
| 514 |
+
"⚧",
|
| 515 |
+
"⚰",
|
| 516 |
+
"⚱",
|
| 517 |
+
"⛈",
|
| 518 |
+
"⛏",
|
| 519 |
+
"⛑",
|
| 520 |
+
"⛓",
|
| 521 |
+
"⛩",
|
| 522 |
+
"⛰",
|
| 523 |
+
"⛱",
|
| 524 |
+
"⛴",
|
| 525 |
+
"⛷",
|
| 526 |
+
"⛸",
|
| 527 |
+
"⛹",
|
| 528 |
+
"✂",
|
| 529 |
+
"✈",
|
| 530 |
+
"✉",
|
| 531 |
+
"✌",
|
| 532 |
+
"✍",
|
| 533 |
+
"✏",
|
| 534 |
+
"✒",
|
| 535 |
+
"✔",
|
| 536 |
+
"✖",
|
| 537 |
+
"✝",
|
| 538 |
+
"✡",
|
| 539 |
+
"✳",
|
| 540 |
+
"✴",
|
| 541 |
+
"❄",
|
| 542 |
+
"❇",
|
| 543 |
+
"❣",
|
| 544 |
+
"❤",
|
| 545 |
+
"➡",
|
| 546 |
+
"⤴",
|
| 547 |
+
"⤵",
|
| 548 |
+
"⬅",
|
| 549 |
+
"⬆",
|
| 550 |
+
"⬇",
|
| 551 |
+
"🅰",
|
| 552 |
+
"🅱",
|
| 553 |
+
"🅾",
|
| 554 |
+
"🅿",
|
| 555 |
+
"🌡",
|
| 556 |
+
"🌤",
|
| 557 |
+
"🌥",
|
| 558 |
+
"🌦",
|
| 559 |
+
"🌧",
|
| 560 |
+
"🌨",
|
| 561 |
+
"🌩",
|
| 562 |
+
"🌪",
|
| 563 |
+
"🌫",
|
| 564 |
+
"🌬",
|
| 565 |
+
"🌶",
|
| 566 |
+
"🍽",
|
| 567 |
+
"🎖",
|
| 568 |
+
"🎗",
|
| 569 |
+
"🎙",
|
| 570 |
+
"🎚",
|
| 571 |
+
"🎛",
|
| 572 |
+
"🎞",
|
| 573 |
+
"🎟",
|
| 574 |
+
"🏋",
|
| 575 |
+
"🏌",
|
| 576 |
+
"🏍",
|
| 577 |
+
"🏎",
|
| 578 |
+
"🏔",
|
| 579 |
+
"🏕",
|
| 580 |
+
"🏖",
|
| 581 |
+
"🏗",
|
| 582 |
+
"🏘",
|
| 583 |
+
"🏙",
|
| 584 |
+
"🏚",
|
| 585 |
+
"🏛",
|
| 586 |
+
"🏜",
|
| 587 |
+
"🏝",
|
| 588 |
+
"🏞",
|
| 589 |
+
"🏟",
|
| 590 |
+
"🏳",
|
| 591 |
+
"🏵",
|
| 592 |
+
"🏷",
|
| 593 |
+
"🐿",
|
| 594 |
+
"👁",
|
| 595 |
+
"📽",
|
| 596 |
+
"🕉",
|
| 597 |
+
"🕊",
|
| 598 |
+
"🕯",
|
| 599 |
+
"🕰",
|
| 600 |
+
"🕳",
|
| 601 |
+
"🕴",
|
| 602 |
+
"🕵",
|
| 603 |
+
"🕶",
|
| 604 |
+
"🕷",
|
| 605 |
+
"🕸",
|
| 606 |
+
"🕹",
|
| 607 |
+
"���",
|
| 608 |
+
"🖊",
|
| 609 |
+
"🖋",
|
| 610 |
+
"🖌",
|
| 611 |
+
"🖍",
|
| 612 |
+
"🖐",
|
| 613 |
+
"🖥",
|
| 614 |
+
"🖨",
|
| 615 |
+
"🖱",
|
| 616 |
+
"🖲",
|
| 617 |
+
"🖼",
|
| 618 |
+
"🗂",
|
| 619 |
+
"🗃",
|
| 620 |
+
"🗄",
|
| 621 |
+
"🗑",
|
| 622 |
+
"🗒",
|
| 623 |
+
"🗓",
|
| 624 |
+
"🗜",
|
| 625 |
+
"🗝",
|
| 626 |
+
"🗞",
|
| 627 |
+
"🗡",
|
| 628 |
+
"🗣",
|
| 629 |
+
"🗨",
|
| 630 |
+
"🗯",
|
| 631 |
+
"🗳",
|
| 632 |
+
"🗺",
|
| 633 |
+
"🛋",
|
| 634 |
+
"🛍",
|
| 635 |
+
"🛎",
|
| 636 |
+
"🛏",
|
| 637 |
+
"🛠",
|
| 638 |
+
"🛡",
|
| 639 |
+
"🛢",
|
| 640 |
+
"🛣",
|
| 641 |
+
"🛤",
|
| 642 |
+
"🛥",
|
| 643 |
+
"🛩",
|
| 644 |
+
"🛰",
|
| 645 |
+
"🛳",
|
| 646 |
+
]
|
| 647 |
+
),
|
| 648 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode14-0-0.py
ADDED
|
@@ -0,0 +1,661 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"14.0.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1552, 1562, 0),
|
| 18 |
+
(1564, 1564, 0),
|
| 19 |
+
(1611, 1631, 0),
|
| 20 |
+
(1648, 1648, 0),
|
| 21 |
+
(1750, 1756, 0),
|
| 22 |
+
(1759, 1764, 0),
|
| 23 |
+
(1767, 1768, 0),
|
| 24 |
+
(1770, 1773, 0),
|
| 25 |
+
(1809, 1809, 0),
|
| 26 |
+
(1840, 1866, 0),
|
| 27 |
+
(1958, 1968, 0),
|
| 28 |
+
(2027, 2035, 0),
|
| 29 |
+
(2045, 2045, 0),
|
| 30 |
+
(2070, 2073, 0),
|
| 31 |
+
(2075, 2083, 0),
|
| 32 |
+
(2085, 2087, 0),
|
| 33 |
+
(2089, 2093, 0),
|
| 34 |
+
(2137, 2139, 0),
|
| 35 |
+
(2200, 2207, 0),
|
| 36 |
+
(2250, 2273, 0),
|
| 37 |
+
(2275, 2307, 0),
|
| 38 |
+
(2362, 2364, 0),
|
| 39 |
+
(2366, 2383, 0),
|
| 40 |
+
(2385, 2391, 0),
|
| 41 |
+
(2402, 2403, 0),
|
| 42 |
+
(2433, 2435, 0),
|
| 43 |
+
(2492, 2492, 0),
|
| 44 |
+
(2494, 2500, 0),
|
| 45 |
+
(2503, 2504, 0),
|
| 46 |
+
(2507, 2509, 0),
|
| 47 |
+
(2519, 2519, 0),
|
| 48 |
+
(2530, 2531, 0),
|
| 49 |
+
(2558, 2558, 0),
|
| 50 |
+
(2561, 2563, 0),
|
| 51 |
+
(2620, 2620, 0),
|
| 52 |
+
(2622, 2626, 0),
|
| 53 |
+
(2631, 2632, 0),
|
| 54 |
+
(2635, 2637, 0),
|
| 55 |
+
(2641, 2641, 0),
|
| 56 |
+
(2672, 2673, 0),
|
| 57 |
+
(2677, 2677, 0),
|
| 58 |
+
(2689, 2691, 0),
|
| 59 |
+
(2748, 2748, 0),
|
| 60 |
+
(2750, 2757, 0),
|
| 61 |
+
(2759, 2761, 0),
|
| 62 |
+
(2763, 2765, 0),
|
| 63 |
+
(2786, 2787, 0),
|
| 64 |
+
(2810, 2815, 0),
|
| 65 |
+
(2817, 2819, 0),
|
| 66 |
+
(2876, 2876, 0),
|
| 67 |
+
(2878, 2884, 0),
|
| 68 |
+
(2887, 2888, 0),
|
| 69 |
+
(2891, 2893, 0),
|
| 70 |
+
(2901, 2903, 0),
|
| 71 |
+
(2914, 2915, 0),
|
| 72 |
+
(2946, 2946, 0),
|
| 73 |
+
(3006, 3010, 0),
|
| 74 |
+
(3014, 3016, 0),
|
| 75 |
+
(3018, 3021, 0),
|
| 76 |
+
(3031, 3031, 0),
|
| 77 |
+
(3072, 3076, 0),
|
| 78 |
+
(3132, 3132, 0),
|
| 79 |
+
(3134, 3140, 0),
|
| 80 |
+
(3142, 3144, 0),
|
| 81 |
+
(3146, 3149, 0),
|
| 82 |
+
(3157, 3158, 0),
|
| 83 |
+
(3170, 3171, 0),
|
| 84 |
+
(3201, 3203, 0),
|
| 85 |
+
(3260, 3260, 0),
|
| 86 |
+
(3262, 3268, 0),
|
| 87 |
+
(3270, 3272, 0),
|
| 88 |
+
(3274, 3277, 0),
|
| 89 |
+
(3285, 3286, 0),
|
| 90 |
+
(3298, 3299, 0),
|
| 91 |
+
(3328, 3331, 0),
|
| 92 |
+
(3387, 3388, 0),
|
| 93 |
+
(3390, 3396, 0),
|
| 94 |
+
(3398, 3400, 0),
|
| 95 |
+
(3402, 3405, 0),
|
| 96 |
+
(3415, 3415, 0),
|
| 97 |
+
(3426, 3427, 0),
|
| 98 |
+
(3457, 3459, 0),
|
| 99 |
+
(3530, 3530, 0),
|
| 100 |
+
(3535, 3540, 0),
|
| 101 |
+
(3542, 3542, 0),
|
| 102 |
+
(3544, 3551, 0),
|
| 103 |
+
(3570, 3571, 0),
|
| 104 |
+
(3633, 3633, 0),
|
| 105 |
+
(3636, 3642, 0),
|
| 106 |
+
(3655, 3662, 0),
|
| 107 |
+
(3761, 3761, 0),
|
| 108 |
+
(3764, 3772, 0),
|
| 109 |
+
(3784, 3789, 0),
|
| 110 |
+
(3864, 3865, 0),
|
| 111 |
+
(3893, 3893, 0),
|
| 112 |
+
(3895, 3895, 0),
|
| 113 |
+
(3897, 3897, 0),
|
| 114 |
+
(3902, 3903, 0),
|
| 115 |
+
(3953, 3972, 0),
|
| 116 |
+
(3974, 3975, 0),
|
| 117 |
+
(3981, 3991, 0),
|
| 118 |
+
(3993, 4028, 0),
|
| 119 |
+
(4038, 4038, 0),
|
| 120 |
+
(4139, 4158, 0),
|
| 121 |
+
(4182, 4185, 0),
|
| 122 |
+
(4190, 4192, 0),
|
| 123 |
+
(4194, 4196, 0),
|
| 124 |
+
(4199, 4205, 0),
|
| 125 |
+
(4209, 4212, 0),
|
| 126 |
+
(4226, 4237, 0),
|
| 127 |
+
(4239, 4239, 0),
|
| 128 |
+
(4250, 4253, 0),
|
| 129 |
+
(4352, 4447, 2),
|
| 130 |
+
(4448, 4607, 0),
|
| 131 |
+
(4957, 4959, 0),
|
| 132 |
+
(5906, 5909, 0),
|
| 133 |
+
(5938, 5940, 0),
|
| 134 |
+
(5970, 5971, 0),
|
| 135 |
+
(6002, 6003, 0),
|
| 136 |
+
(6068, 6099, 0),
|
| 137 |
+
(6109, 6109, 0),
|
| 138 |
+
(6155, 6159, 0),
|
| 139 |
+
(6277, 6278, 0),
|
| 140 |
+
(6313, 6313, 0),
|
| 141 |
+
(6432, 6443, 0),
|
| 142 |
+
(6448, 6459, 0),
|
| 143 |
+
(6679, 6683, 0),
|
| 144 |
+
(6741, 6750, 0),
|
| 145 |
+
(6752, 6780, 0),
|
| 146 |
+
(6783, 6783, 0),
|
| 147 |
+
(6832, 6862, 0),
|
| 148 |
+
(6912, 6916, 0),
|
| 149 |
+
(6964, 6980, 0),
|
| 150 |
+
(7019, 7027, 0),
|
| 151 |
+
(7040, 7042, 0),
|
| 152 |
+
(7073, 7085, 0),
|
| 153 |
+
(7142, 7155, 0),
|
| 154 |
+
(7204, 7223, 0),
|
| 155 |
+
(7376, 7378, 0),
|
| 156 |
+
(7380, 7400, 0),
|
| 157 |
+
(7405, 7405, 0),
|
| 158 |
+
(7412, 7412, 0),
|
| 159 |
+
(7415, 7417, 0),
|
| 160 |
+
(7616, 7679, 0),
|
| 161 |
+
(8203, 8207, 0),
|
| 162 |
+
(8232, 8238, 0),
|
| 163 |
+
(8288, 8303, 0),
|
| 164 |
+
(8400, 8432, 0),
|
| 165 |
+
(8986, 8987, 2),
|
| 166 |
+
(9001, 9002, 2),
|
| 167 |
+
(9193, 9196, 2),
|
| 168 |
+
(9200, 9200, 2),
|
| 169 |
+
(9203, 9203, 2),
|
| 170 |
+
(9725, 9726, 2),
|
| 171 |
+
(9748, 9749, 2),
|
| 172 |
+
(9800, 9811, 2),
|
| 173 |
+
(9855, 9855, 2),
|
| 174 |
+
(9875, 9875, 2),
|
| 175 |
+
(9889, 9889, 2),
|
| 176 |
+
(9898, 9899, 2),
|
| 177 |
+
(9917, 9918, 2),
|
| 178 |
+
(9924, 9925, 2),
|
| 179 |
+
(9934, 9934, 2),
|
| 180 |
+
(9940, 9940, 2),
|
| 181 |
+
(9962, 9962, 2),
|
| 182 |
+
(9970, 9971, 2),
|
| 183 |
+
(9973, 9973, 2),
|
| 184 |
+
(9978, 9978, 2),
|
| 185 |
+
(9981, 9981, 2),
|
| 186 |
+
(9989, 9989, 2),
|
| 187 |
+
(9994, 9995, 2),
|
| 188 |
+
(10024, 10024, 2),
|
| 189 |
+
(10060, 10060, 2),
|
| 190 |
+
(10062, 10062, 2),
|
| 191 |
+
(10067, 10069, 2),
|
| 192 |
+
(10071, 10071, 2),
|
| 193 |
+
(10133, 10135, 2),
|
| 194 |
+
(10160, 10160, 2),
|
| 195 |
+
(10175, 10175, 2),
|
| 196 |
+
(11035, 11036, 2),
|
| 197 |
+
(11088, 11088, 2),
|
| 198 |
+
(11093, 11093, 2),
|
| 199 |
+
(11503, 11505, 0),
|
| 200 |
+
(11647, 11647, 0),
|
| 201 |
+
(11744, 11775, 0),
|
| 202 |
+
(11904, 11929, 2),
|
| 203 |
+
(11931, 12019, 2),
|
| 204 |
+
(12032, 12245, 2),
|
| 205 |
+
(12272, 12283, 2),
|
| 206 |
+
(12288, 12329, 2),
|
| 207 |
+
(12330, 12335, 0),
|
| 208 |
+
(12336, 12350, 2),
|
| 209 |
+
(12353, 12438, 2),
|
| 210 |
+
(12441, 12442, 0),
|
| 211 |
+
(12443, 12543, 2),
|
| 212 |
+
(12549, 12591, 2),
|
| 213 |
+
(12593, 12643, 2),
|
| 214 |
+
(12644, 12644, 0),
|
| 215 |
+
(12645, 12686, 2),
|
| 216 |
+
(12688, 12771, 2),
|
| 217 |
+
(12784, 12830, 2),
|
| 218 |
+
(12832, 12871, 2),
|
| 219 |
+
(12880, 19903, 2),
|
| 220 |
+
(19968, 42124, 2),
|
| 221 |
+
(42128, 42182, 2),
|
| 222 |
+
(42607, 42610, 0),
|
| 223 |
+
(42612, 42621, 0),
|
| 224 |
+
(42654, 42655, 0),
|
| 225 |
+
(42736, 42737, 0),
|
| 226 |
+
(43010, 43010, 0),
|
| 227 |
+
(43014, 43014, 0),
|
| 228 |
+
(43019, 43019, 0),
|
| 229 |
+
(43043, 43047, 0),
|
| 230 |
+
(43052, 43052, 0),
|
| 231 |
+
(43136, 43137, 0),
|
| 232 |
+
(43188, 43205, 0),
|
| 233 |
+
(43232, 43249, 0),
|
| 234 |
+
(43263, 43263, 0),
|
| 235 |
+
(43302, 43309, 0),
|
| 236 |
+
(43335, 43347, 0),
|
| 237 |
+
(43360, 43388, 2),
|
| 238 |
+
(43392, 43395, 0),
|
| 239 |
+
(43443, 43456, 0),
|
| 240 |
+
(43493, 43493, 0),
|
| 241 |
+
(43561, 43574, 0),
|
| 242 |
+
(43587, 43587, 0),
|
| 243 |
+
(43596, 43597, 0),
|
| 244 |
+
(43643, 43645, 0),
|
| 245 |
+
(43696, 43696, 0),
|
| 246 |
+
(43698, 43700, 0),
|
| 247 |
+
(43703, 43704, 0),
|
| 248 |
+
(43710, 43711, 0),
|
| 249 |
+
(43713, 43713, 0),
|
| 250 |
+
(43755, 43759, 0),
|
| 251 |
+
(43765, 43766, 0),
|
| 252 |
+
(44003, 44010, 0),
|
| 253 |
+
(44012, 44013, 0),
|
| 254 |
+
(44032, 55203, 2),
|
| 255 |
+
(55216, 55295, 0),
|
| 256 |
+
(63744, 64255, 2),
|
| 257 |
+
(64286, 64286, 0),
|
| 258 |
+
(65024, 65039, 0),
|
| 259 |
+
(65040, 65049, 2),
|
| 260 |
+
(65056, 65071, 0),
|
| 261 |
+
(65072, 65106, 2),
|
| 262 |
+
(65108, 65126, 2),
|
| 263 |
+
(65128, 65131, 2),
|
| 264 |
+
(65279, 65279, 0),
|
| 265 |
+
(65281, 65376, 2),
|
| 266 |
+
(65440, 65440, 0),
|
| 267 |
+
(65504, 65510, 2),
|
| 268 |
+
(65520, 65531, 0),
|
| 269 |
+
(66045, 66045, 0),
|
| 270 |
+
(66272, 66272, 0),
|
| 271 |
+
(66422, 66426, 0),
|
| 272 |
+
(68097, 68099, 0),
|
| 273 |
+
(68101, 68102, 0),
|
| 274 |
+
(68108, 68111, 0),
|
| 275 |
+
(68152, 68154, 0),
|
| 276 |
+
(68159, 68159, 0),
|
| 277 |
+
(68325, 68326, 0),
|
| 278 |
+
(68900, 68903, 0),
|
| 279 |
+
(69291, 69292, 0),
|
| 280 |
+
(69446, 69456, 0),
|
| 281 |
+
(69506, 69509, 0),
|
| 282 |
+
(69632, 69634, 0),
|
| 283 |
+
(69688, 69702, 0),
|
| 284 |
+
(69744, 69744, 0),
|
| 285 |
+
(69747, 69748, 0),
|
| 286 |
+
(69759, 69762, 0),
|
| 287 |
+
(69808, 69818, 0),
|
| 288 |
+
(69826, 69826, 0),
|
| 289 |
+
(69888, 69890, 0),
|
| 290 |
+
(69927, 69940, 0),
|
| 291 |
+
(69957, 69958, 0),
|
| 292 |
+
(70003, 70003, 0),
|
| 293 |
+
(70016, 70018, 0),
|
| 294 |
+
(70067, 70080, 0),
|
| 295 |
+
(70089, 70092, 0),
|
| 296 |
+
(70094, 70095, 0),
|
| 297 |
+
(70188, 70199, 0),
|
| 298 |
+
(70206, 70206, 0),
|
| 299 |
+
(70367, 70378, 0),
|
| 300 |
+
(70400, 70403, 0),
|
| 301 |
+
(70459, 70460, 0),
|
| 302 |
+
(70462, 70468, 0),
|
| 303 |
+
(70471, 70472, 0),
|
| 304 |
+
(70475, 70477, 0),
|
| 305 |
+
(70487, 70487, 0),
|
| 306 |
+
(70498, 70499, 0),
|
| 307 |
+
(70502, 70508, 0),
|
| 308 |
+
(70512, 70516, 0),
|
| 309 |
+
(70709, 70726, 0),
|
| 310 |
+
(70750, 70750, 0),
|
| 311 |
+
(70832, 70851, 0),
|
| 312 |
+
(71087, 71093, 0),
|
| 313 |
+
(71096, 71104, 0),
|
| 314 |
+
(71132, 71133, 0),
|
| 315 |
+
(71216, 71232, 0),
|
| 316 |
+
(71339, 71351, 0),
|
| 317 |
+
(71453, 71467, 0),
|
| 318 |
+
(71724, 71738, 0),
|
| 319 |
+
(71984, 71989, 0),
|
| 320 |
+
(71991, 71992, 0),
|
| 321 |
+
(71995, 71998, 0),
|
| 322 |
+
(72000, 72000, 0),
|
| 323 |
+
(72002, 72003, 0),
|
| 324 |
+
(72145, 72151, 0),
|
| 325 |
+
(72154, 72160, 0),
|
| 326 |
+
(72164, 72164, 0),
|
| 327 |
+
(72193, 72202, 0),
|
| 328 |
+
(72243, 72249, 0),
|
| 329 |
+
(72251, 72254, 0),
|
| 330 |
+
(72263, 72263, 0),
|
| 331 |
+
(72273, 72283, 0),
|
| 332 |
+
(72330, 72345, 0),
|
| 333 |
+
(72751, 72758, 0),
|
| 334 |
+
(72760, 72767, 0),
|
| 335 |
+
(72850, 72871, 0),
|
| 336 |
+
(72873, 72886, 0),
|
| 337 |
+
(73009, 73014, 0),
|
| 338 |
+
(73018, 73018, 0),
|
| 339 |
+
(73020, 73021, 0),
|
| 340 |
+
(73023, 73029, 0),
|
| 341 |
+
(73031, 73031, 0),
|
| 342 |
+
(73098, 73102, 0),
|
| 343 |
+
(73104, 73105, 0),
|
| 344 |
+
(73107, 73111, 0),
|
| 345 |
+
(73459, 73462, 0),
|
| 346 |
+
(78896, 78904, 0),
|
| 347 |
+
(92912, 92916, 0),
|
| 348 |
+
(92976, 92982, 0),
|
| 349 |
+
(94031, 94031, 0),
|
| 350 |
+
(94033, 94087, 0),
|
| 351 |
+
(94095, 94098, 0),
|
| 352 |
+
(94176, 94179, 2),
|
| 353 |
+
(94180, 94180, 0),
|
| 354 |
+
(94192, 94193, 0),
|
| 355 |
+
(94208, 100343, 2),
|
| 356 |
+
(100352, 101589, 2),
|
| 357 |
+
(101632, 101640, 2),
|
| 358 |
+
(110576, 110579, 2),
|
| 359 |
+
(110581, 110587, 2),
|
| 360 |
+
(110589, 110590, 2),
|
| 361 |
+
(110592, 110882, 2),
|
| 362 |
+
(110928, 110930, 2),
|
| 363 |
+
(110948, 110951, 2),
|
| 364 |
+
(110960, 111355, 2),
|
| 365 |
+
(113821, 113822, 0),
|
| 366 |
+
(113824, 113827, 0),
|
| 367 |
+
(118528, 118573, 0),
|
| 368 |
+
(118576, 118598, 0),
|
| 369 |
+
(119141, 119145, 0),
|
| 370 |
+
(119149, 119170, 0),
|
| 371 |
+
(119173, 119179, 0),
|
| 372 |
+
(119210, 119213, 0),
|
| 373 |
+
(119362, 119364, 0),
|
| 374 |
+
(121344, 121398, 0),
|
| 375 |
+
(121403, 121452, 0),
|
| 376 |
+
(121461, 121461, 0),
|
| 377 |
+
(121476, 121476, 0),
|
| 378 |
+
(121499, 121503, 0),
|
| 379 |
+
(121505, 121519, 0),
|
| 380 |
+
(122880, 122886, 0),
|
| 381 |
+
(122888, 122904, 0),
|
| 382 |
+
(122907, 122913, 0),
|
| 383 |
+
(122915, 122916, 0),
|
| 384 |
+
(122918, 122922, 0),
|
| 385 |
+
(123184, 123190, 0),
|
| 386 |
+
(123566, 123566, 0),
|
| 387 |
+
(123628, 123631, 0),
|
| 388 |
+
(125136, 125142, 0),
|
| 389 |
+
(125252, 125258, 0),
|
| 390 |
+
(126980, 126980, 2),
|
| 391 |
+
(127183, 127183, 2),
|
| 392 |
+
(127374, 127374, 2),
|
| 393 |
+
(127377, 127386, 2),
|
| 394 |
+
(127488, 127490, 2),
|
| 395 |
+
(127504, 127547, 2),
|
| 396 |
+
(127552, 127560, 2),
|
| 397 |
+
(127568, 127569, 2),
|
| 398 |
+
(127584, 127589, 2),
|
| 399 |
+
(127744, 127776, 2),
|
| 400 |
+
(127789, 127797, 2),
|
| 401 |
+
(127799, 127868, 2),
|
| 402 |
+
(127870, 127891, 2),
|
| 403 |
+
(127904, 127946, 2),
|
| 404 |
+
(127951, 127955, 2),
|
| 405 |
+
(127968, 127984, 2),
|
| 406 |
+
(127988, 127988, 2),
|
| 407 |
+
(127992, 127994, 2),
|
| 408 |
+
(127995, 127999, 0),
|
| 409 |
+
(128000, 128062, 2),
|
| 410 |
+
(128064, 128064, 2),
|
| 411 |
+
(128066, 128252, 2),
|
| 412 |
+
(128255, 128317, 2),
|
| 413 |
+
(128331, 128334, 2),
|
| 414 |
+
(128336, 128359, 2),
|
| 415 |
+
(128378, 128378, 2),
|
| 416 |
+
(128405, 128406, 2),
|
| 417 |
+
(128420, 128420, 2),
|
| 418 |
+
(128507, 128591, 2),
|
| 419 |
+
(128640, 128709, 2),
|
| 420 |
+
(128716, 128716, 2),
|
| 421 |
+
(128720, 128722, 2),
|
| 422 |
+
(128725, 128727, 2),
|
| 423 |
+
(128733, 128735, 2),
|
| 424 |
+
(128747, 128748, 2),
|
| 425 |
+
(128756, 128764, 2),
|
| 426 |
+
(128992, 129003, 2),
|
| 427 |
+
(129008, 129008, 2),
|
| 428 |
+
(129292, 129338, 2),
|
| 429 |
+
(129340, 129349, 2),
|
| 430 |
+
(129351, 129535, 2),
|
| 431 |
+
(129648, 129652, 2),
|
| 432 |
+
(129656, 129660, 2),
|
| 433 |
+
(129664, 129670, 2),
|
| 434 |
+
(129680, 129708, 2),
|
| 435 |
+
(129712, 129722, 2),
|
| 436 |
+
(129728, 129733, 2),
|
| 437 |
+
(129744, 129753, 2),
|
| 438 |
+
(129760, 129767, 2),
|
| 439 |
+
(129776, 129782, 2),
|
| 440 |
+
(131072, 196605, 2),
|
| 441 |
+
(196608, 262141, 2),
|
| 442 |
+
(917504, 921599, 0),
|
| 443 |
+
],
|
| 444 |
+
frozenset(
|
| 445 |
+
[
|
| 446 |
+
"#",
|
| 447 |
+
"*",
|
| 448 |
+
"0",
|
| 449 |
+
"1",
|
| 450 |
+
"2",
|
| 451 |
+
"3",
|
| 452 |
+
"4",
|
| 453 |
+
"5",
|
| 454 |
+
"6",
|
| 455 |
+
"7",
|
| 456 |
+
"8",
|
| 457 |
+
"9",
|
| 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 |
+
"☸",
|
| 506 |
+
"☹",
|
| 507 |
+
"☺",
|
| 508 |
+
"♀",
|
| 509 |
+
"♂",
|
| 510 |
+
"♟",
|
| 511 |
+
"♠",
|
| 512 |
+
"♣",
|
| 513 |
+
"♥",
|
| 514 |
+
"♦",
|
| 515 |
+
"♨",
|
| 516 |
+
"♻",
|
| 517 |
+
"♾",
|
| 518 |
+
"⚒",
|
| 519 |
+
"⚔",
|
| 520 |
+
"⚕",
|
| 521 |
+
"⚖",
|
| 522 |
+
"⚗",
|
| 523 |
+
"⚙",
|
| 524 |
+
"⚛",
|
| 525 |
+
"⚜",
|
| 526 |
+
"⚠",
|
| 527 |
+
"⚧",
|
| 528 |
+
"⚰",
|
| 529 |
+
"⚱",
|
| 530 |
+
"⛈",
|
| 531 |
+
"⛏",
|
| 532 |
+
"⛑",
|
| 533 |
+
"⛓",
|
| 534 |
+
"⛩",
|
| 535 |
+
"⛰",
|
| 536 |
+
"⛱",
|
| 537 |
+
"⛴",
|
| 538 |
+
"⛷",
|
| 539 |
+
"⛸",
|
| 540 |
+
"⛹",
|
| 541 |
+
"✂",
|
| 542 |
+
"✈",
|
| 543 |
+
"✉",
|
| 544 |
+
"✌",
|
| 545 |
+
"✍",
|
| 546 |
+
"✏",
|
| 547 |
+
"✒",
|
| 548 |
+
"✔",
|
| 549 |
+
"✖",
|
| 550 |
+
"✝",
|
| 551 |
+
"✡",
|
| 552 |
+
"✳",
|
| 553 |
+
"✴",
|
| 554 |
+
"❄",
|
| 555 |
+
"❇",
|
| 556 |
+
"❣",
|
| 557 |
+
"❤",
|
| 558 |
+
"➡",
|
| 559 |
+
"⤴",
|
| 560 |
+
"⤵",
|
| 561 |
+
"⬅",
|
| 562 |
+
"⬆",
|
| 563 |
+
"⬇",
|
| 564 |
+
"🅰",
|
| 565 |
+
"🅱",
|
| 566 |
+
"🅾",
|
| 567 |
+
"🅿",
|
| 568 |
+
"🌡",
|
| 569 |
+
"🌤",
|
| 570 |
+
"🌥",
|
| 571 |
+
"🌦",
|
| 572 |
+
"🌧",
|
| 573 |
+
"🌨",
|
| 574 |
+
"🌩",
|
| 575 |
+
"🌪",
|
| 576 |
+
"🌫",
|
| 577 |
+
"🌬",
|
| 578 |
+
"🌶",
|
| 579 |
+
"🍽",
|
| 580 |
+
"🎖",
|
| 581 |
+
"🎗",
|
| 582 |
+
"🎙",
|
| 583 |
+
"🎚",
|
| 584 |
+
"🎛",
|
| 585 |
+
"🎞",
|
| 586 |
+
"🎟",
|
| 587 |
+
"🏋",
|
| 588 |
+
"🏌",
|
| 589 |
+
"🏍",
|
| 590 |
+
"🏎",
|
| 591 |
+
"🏔",
|
| 592 |
+
"🏕",
|
| 593 |
+
"🏖",
|
| 594 |
+
"🏗",
|
| 595 |
+
"🏘",
|
| 596 |
+
"🏙",
|
| 597 |
+
"🏚",
|
| 598 |
+
"🏛",
|
| 599 |
+
"🏜",
|
| 600 |
+
"🏝",
|
| 601 |
+
"🏞",
|
| 602 |
+
"���",
|
| 603 |
+
"🏳",
|
| 604 |
+
"🏵",
|
| 605 |
+
"🏷",
|
| 606 |
+
"🐿",
|
| 607 |
+
"👁",
|
| 608 |
+
"📽",
|
| 609 |
+
"🕉",
|
| 610 |
+
"🕊",
|
| 611 |
+
"🕯",
|
| 612 |
+
"🕰",
|
| 613 |
+
"🕳",
|
| 614 |
+
"🕴",
|
| 615 |
+
"🕵",
|
| 616 |
+
"🕶",
|
| 617 |
+
"🕷",
|
| 618 |
+
"🕸",
|
| 619 |
+
"🕹",
|
| 620 |
+
"🖇",
|
| 621 |
+
"🖊",
|
| 622 |
+
"🖋",
|
| 623 |
+
"🖌",
|
| 624 |
+
"🖍",
|
| 625 |
+
"🖐",
|
| 626 |
+
"🖥",
|
| 627 |
+
"🖨",
|
| 628 |
+
"🖱",
|
| 629 |
+
"🖲",
|
| 630 |
+
"🖼",
|
| 631 |
+
"🗂",
|
| 632 |
+
"🗃",
|
| 633 |
+
"🗄",
|
| 634 |
+
"🗑",
|
| 635 |
+
"🗒",
|
| 636 |
+
"🗓",
|
| 637 |
+
"🗜",
|
| 638 |
+
"🗝",
|
| 639 |
+
"🗞",
|
| 640 |
+
"🗡",
|
| 641 |
+
"🗣",
|
| 642 |
+
"🗨",
|
| 643 |
+
"🗯",
|
| 644 |
+
"🗳",
|
| 645 |
+
"🗺",
|
| 646 |
+
"🛋",
|
| 647 |
+
"🛍",
|
| 648 |
+
"🛎",
|
| 649 |
+
"🛏",
|
| 650 |
+
"🛠",
|
| 651 |
+
"🛡",
|
| 652 |
+
"🛢",
|
| 653 |
+
"🛣",
|
| 654 |
+
"🛤",
|
| 655 |
+
"🛥",
|
| 656 |
+
"🛩",
|
| 657 |
+
"🛰",
|
| 658 |
+
"🛳",
|
| 659 |
+
]
|
| 660 |
+
),
|
| 661 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode15-0-0.py
ADDED
|
@@ -0,0 +1,671 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"15.0.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1552, 1562, 0),
|
| 18 |
+
(1564, 1564, 0),
|
| 19 |
+
(1611, 1631, 0),
|
| 20 |
+
(1648, 1648, 0),
|
| 21 |
+
(1750, 1756, 0),
|
| 22 |
+
(1759, 1764, 0),
|
| 23 |
+
(1767, 1768, 0),
|
| 24 |
+
(1770, 1773, 0),
|
| 25 |
+
(1809, 1809, 0),
|
| 26 |
+
(1840, 1866, 0),
|
| 27 |
+
(1958, 1968, 0),
|
| 28 |
+
(2027, 2035, 0),
|
| 29 |
+
(2045, 2045, 0),
|
| 30 |
+
(2070, 2073, 0),
|
| 31 |
+
(2075, 2083, 0),
|
| 32 |
+
(2085, 2087, 0),
|
| 33 |
+
(2089, 2093, 0),
|
| 34 |
+
(2137, 2139, 0),
|
| 35 |
+
(2200, 2207, 0),
|
| 36 |
+
(2250, 2273, 0),
|
| 37 |
+
(2275, 2307, 0),
|
| 38 |
+
(2362, 2364, 0),
|
| 39 |
+
(2366, 2383, 0),
|
| 40 |
+
(2385, 2391, 0),
|
| 41 |
+
(2402, 2403, 0),
|
| 42 |
+
(2433, 2435, 0),
|
| 43 |
+
(2492, 2492, 0),
|
| 44 |
+
(2494, 2500, 0),
|
| 45 |
+
(2503, 2504, 0),
|
| 46 |
+
(2507, 2509, 0),
|
| 47 |
+
(2519, 2519, 0),
|
| 48 |
+
(2530, 2531, 0),
|
| 49 |
+
(2558, 2558, 0),
|
| 50 |
+
(2561, 2563, 0),
|
| 51 |
+
(2620, 2620, 0),
|
| 52 |
+
(2622, 2626, 0),
|
| 53 |
+
(2631, 2632, 0),
|
| 54 |
+
(2635, 2637, 0),
|
| 55 |
+
(2641, 2641, 0),
|
| 56 |
+
(2672, 2673, 0),
|
| 57 |
+
(2677, 2677, 0),
|
| 58 |
+
(2689, 2691, 0),
|
| 59 |
+
(2748, 2748, 0),
|
| 60 |
+
(2750, 2757, 0),
|
| 61 |
+
(2759, 2761, 0),
|
| 62 |
+
(2763, 2765, 0),
|
| 63 |
+
(2786, 2787, 0),
|
| 64 |
+
(2810, 2815, 0),
|
| 65 |
+
(2817, 2819, 0),
|
| 66 |
+
(2876, 2876, 0),
|
| 67 |
+
(2878, 2884, 0),
|
| 68 |
+
(2887, 2888, 0),
|
| 69 |
+
(2891, 2893, 0),
|
| 70 |
+
(2901, 2903, 0),
|
| 71 |
+
(2914, 2915, 0),
|
| 72 |
+
(2946, 2946, 0),
|
| 73 |
+
(3006, 3010, 0),
|
| 74 |
+
(3014, 3016, 0),
|
| 75 |
+
(3018, 3021, 0),
|
| 76 |
+
(3031, 3031, 0),
|
| 77 |
+
(3072, 3076, 0),
|
| 78 |
+
(3132, 3132, 0),
|
| 79 |
+
(3134, 3140, 0),
|
| 80 |
+
(3142, 3144, 0),
|
| 81 |
+
(3146, 3149, 0),
|
| 82 |
+
(3157, 3158, 0),
|
| 83 |
+
(3170, 3171, 0),
|
| 84 |
+
(3201, 3203, 0),
|
| 85 |
+
(3260, 3260, 0),
|
| 86 |
+
(3262, 3268, 0),
|
| 87 |
+
(3270, 3272, 0),
|
| 88 |
+
(3274, 3277, 0),
|
| 89 |
+
(3285, 3286, 0),
|
| 90 |
+
(3298, 3299, 0),
|
| 91 |
+
(3315, 3315, 0),
|
| 92 |
+
(3328, 3331, 0),
|
| 93 |
+
(3387, 3388, 0),
|
| 94 |
+
(3390, 3396, 0),
|
| 95 |
+
(3398, 3400, 0),
|
| 96 |
+
(3402, 3405, 0),
|
| 97 |
+
(3415, 3415, 0),
|
| 98 |
+
(3426, 3427, 0),
|
| 99 |
+
(3457, 3459, 0),
|
| 100 |
+
(3530, 3530, 0),
|
| 101 |
+
(3535, 3540, 0),
|
| 102 |
+
(3542, 3542, 0),
|
| 103 |
+
(3544, 3551, 0),
|
| 104 |
+
(3570, 3571, 0),
|
| 105 |
+
(3633, 3633, 0),
|
| 106 |
+
(3636, 3642, 0),
|
| 107 |
+
(3655, 3662, 0),
|
| 108 |
+
(3761, 3761, 0),
|
| 109 |
+
(3764, 3772, 0),
|
| 110 |
+
(3784, 3790, 0),
|
| 111 |
+
(3864, 3865, 0),
|
| 112 |
+
(3893, 3893, 0),
|
| 113 |
+
(3895, 3895, 0),
|
| 114 |
+
(3897, 3897, 0),
|
| 115 |
+
(3902, 3903, 0),
|
| 116 |
+
(3953, 3972, 0),
|
| 117 |
+
(3974, 3975, 0),
|
| 118 |
+
(3981, 3991, 0),
|
| 119 |
+
(3993, 4028, 0),
|
| 120 |
+
(4038, 4038, 0),
|
| 121 |
+
(4139, 4158, 0),
|
| 122 |
+
(4182, 4185, 0),
|
| 123 |
+
(4190, 4192, 0),
|
| 124 |
+
(4194, 4196, 0),
|
| 125 |
+
(4199, 4205, 0),
|
| 126 |
+
(4209, 4212, 0),
|
| 127 |
+
(4226, 4237, 0),
|
| 128 |
+
(4239, 4239, 0),
|
| 129 |
+
(4250, 4253, 0),
|
| 130 |
+
(4352, 4447, 2),
|
| 131 |
+
(4448, 4607, 0),
|
| 132 |
+
(4957, 4959, 0),
|
| 133 |
+
(5906, 5909, 0),
|
| 134 |
+
(5938, 5940, 0),
|
| 135 |
+
(5970, 5971, 0),
|
| 136 |
+
(6002, 6003, 0),
|
| 137 |
+
(6068, 6099, 0),
|
| 138 |
+
(6109, 6109, 0),
|
| 139 |
+
(6155, 6159, 0),
|
| 140 |
+
(6277, 6278, 0),
|
| 141 |
+
(6313, 6313, 0),
|
| 142 |
+
(6432, 6443, 0),
|
| 143 |
+
(6448, 6459, 0),
|
| 144 |
+
(6679, 6683, 0),
|
| 145 |
+
(6741, 6750, 0),
|
| 146 |
+
(6752, 6780, 0),
|
| 147 |
+
(6783, 6783, 0),
|
| 148 |
+
(6832, 6862, 0),
|
| 149 |
+
(6912, 6916, 0),
|
| 150 |
+
(6964, 6980, 0),
|
| 151 |
+
(7019, 7027, 0),
|
| 152 |
+
(7040, 7042, 0),
|
| 153 |
+
(7073, 7085, 0),
|
| 154 |
+
(7142, 7155, 0),
|
| 155 |
+
(7204, 7223, 0),
|
| 156 |
+
(7376, 7378, 0),
|
| 157 |
+
(7380, 7400, 0),
|
| 158 |
+
(7405, 7405, 0),
|
| 159 |
+
(7412, 7412, 0),
|
| 160 |
+
(7415, 7417, 0),
|
| 161 |
+
(7616, 7679, 0),
|
| 162 |
+
(8203, 8207, 0),
|
| 163 |
+
(8232, 8238, 0),
|
| 164 |
+
(8288, 8303, 0),
|
| 165 |
+
(8400, 8432, 0),
|
| 166 |
+
(8986, 8987, 2),
|
| 167 |
+
(9001, 9002, 2),
|
| 168 |
+
(9193, 9196, 2),
|
| 169 |
+
(9200, 9200, 2),
|
| 170 |
+
(9203, 9203, 2),
|
| 171 |
+
(9725, 9726, 2),
|
| 172 |
+
(9748, 9749, 2),
|
| 173 |
+
(9800, 9811, 2),
|
| 174 |
+
(9855, 9855, 2),
|
| 175 |
+
(9875, 9875, 2),
|
| 176 |
+
(9889, 9889, 2),
|
| 177 |
+
(9898, 9899, 2),
|
| 178 |
+
(9917, 9918, 2),
|
| 179 |
+
(9924, 9925, 2),
|
| 180 |
+
(9934, 9934, 2),
|
| 181 |
+
(9940, 9940, 2),
|
| 182 |
+
(9962, 9962, 2),
|
| 183 |
+
(9970, 9971, 2),
|
| 184 |
+
(9973, 9973, 2),
|
| 185 |
+
(9978, 9978, 2),
|
| 186 |
+
(9981, 9981, 2),
|
| 187 |
+
(9989, 9989, 2),
|
| 188 |
+
(9994, 9995, 2),
|
| 189 |
+
(10024, 10024, 2),
|
| 190 |
+
(10060, 10060, 2),
|
| 191 |
+
(10062, 10062, 2),
|
| 192 |
+
(10067, 10069, 2),
|
| 193 |
+
(10071, 10071, 2),
|
| 194 |
+
(10133, 10135, 2),
|
| 195 |
+
(10160, 10160, 2),
|
| 196 |
+
(10175, 10175, 2),
|
| 197 |
+
(11035, 11036, 2),
|
| 198 |
+
(11088, 11088, 2),
|
| 199 |
+
(11093, 11093, 2),
|
| 200 |
+
(11503, 11505, 0),
|
| 201 |
+
(11647, 11647, 0),
|
| 202 |
+
(11744, 11775, 0),
|
| 203 |
+
(11904, 11929, 2),
|
| 204 |
+
(11931, 12019, 2),
|
| 205 |
+
(12032, 12245, 2),
|
| 206 |
+
(12272, 12283, 2),
|
| 207 |
+
(12288, 12329, 2),
|
| 208 |
+
(12330, 12335, 0),
|
| 209 |
+
(12336, 12350, 2),
|
| 210 |
+
(12353, 12438, 2),
|
| 211 |
+
(12441, 12442, 0),
|
| 212 |
+
(12443, 12543, 2),
|
| 213 |
+
(12549, 12591, 2),
|
| 214 |
+
(12593, 12643, 2),
|
| 215 |
+
(12644, 12644, 0),
|
| 216 |
+
(12645, 12686, 2),
|
| 217 |
+
(12688, 12771, 2),
|
| 218 |
+
(12784, 12830, 2),
|
| 219 |
+
(12832, 12871, 2),
|
| 220 |
+
(12880, 19903, 2),
|
| 221 |
+
(19968, 42124, 2),
|
| 222 |
+
(42128, 42182, 2),
|
| 223 |
+
(42607, 42610, 0),
|
| 224 |
+
(42612, 42621, 0),
|
| 225 |
+
(42654, 42655, 0),
|
| 226 |
+
(42736, 42737, 0),
|
| 227 |
+
(43010, 43010, 0),
|
| 228 |
+
(43014, 43014, 0),
|
| 229 |
+
(43019, 43019, 0),
|
| 230 |
+
(43043, 43047, 0),
|
| 231 |
+
(43052, 43052, 0),
|
| 232 |
+
(43136, 43137, 0),
|
| 233 |
+
(43188, 43205, 0),
|
| 234 |
+
(43232, 43249, 0),
|
| 235 |
+
(43263, 43263, 0),
|
| 236 |
+
(43302, 43309, 0),
|
| 237 |
+
(43335, 43347, 0),
|
| 238 |
+
(43360, 43388, 2),
|
| 239 |
+
(43392, 43395, 0),
|
| 240 |
+
(43443, 43456, 0),
|
| 241 |
+
(43493, 43493, 0),
|
| 242 |
+
(43561, 43574, 0),
|
| 243 |
+
(43587, 43587, 0),
|
| 244 |
+
(43596, 43597, 0),
|
| 245 |
+
(43643, 43645, 0),
|
| 246 |
+
(43696, 43696, 0),
|
| 247 |
+
(43698, 43700, 0),
|
| 248 |
+
(43703, 43704, 0),
|
| 249 |
+
(43710, 43711, 0),
|
| 250 |
+
(43713, 43713, 0),
|
| 251 |
+
(43755, 43759, 0),
|
| 252 |
+
(43765, 43766, 0),
|
| 253 |
+
(44003, 44010, 0),
|
| 254 |
+
(44012, 44013, 0),
|
| 255 |
+
(44032, 55203, 2),
|
| 256 |
+
(55216, 55295, 0),
|
| 257 |
+
(63744, 64255, 2),
|
| 258 |
+
(64286, 64286, 0),
|
| 259 |
+
(65024, 65039, 0),
|
| 260 |
+
(65040, 65049, 2),
|
| 261 |
+
(65056, 65071, 0),
|
| 262 |
+
(65072, 65106, 2),
|
| 263 |
+
(65108, 65126, 2),
|
| 264 |
+
(65128, 65131, 2),
|
| 265 |
+
(65279, 65279, 0),
|
| 266 |
+
(65281, 65376, 2),
|
| 267 |
+
(65440, 65440, 0),
|
| 268 |
+
(65504, 65510, 2),
|
| 269 |
+
(65520, 65531, 0),
|
| 270 |
+
(66045, 66045, 0),
|
| 271 |
+
(66272, 66272, 0),
|
| 272 |
+
(66422, 66426, 0),
|
| 273 |
+
(68097, 68099, 0),
|
| 274 |
+
(68101, 68102, 0),
|
| 275 |
+
(68108, 68111, 0),
|
| 276 |
+
(68152, 68154, 0),
|
| 277 |
+
(68159, 68159, 0),
|
| 278 |
+
(68325, 68326, 0),
|
| 279 |
+
(68900, 68903, 0),
|
| 280 |
+
(69291, 69292, 0),
|
| 281 |
+
(69373, 69375, 0),
|
| 282 |
+
(69446, 69456, 0),
|
| 283 |
+
(69506, 69509, 0),
|
| 284 |
+
(69632, 69634, 0),
|
| 285 |
+
(69688, 69702, 0),
|
| 286 |
+
(69744, 69744, 0),
|
| 287 |
+
(69747, 69748, 0),
|
| 288 |
+
(69759, 69762, 0),
|
| 289 |
+
(69808, 69818, 0),
|
| 290 |
+
(69826, 69826, 0),
|
| 291 |
+
(69888, 69890, 0),
|
| 292 |
+
(69927, 69940, 0),
|
| 293 |
+
(69957, 69958, 0),
|
| 294 |
+
(70003, 70003, 0),
|
| 295 |
+
(70016, 70018, 0),
|
| 296 |
+
(70067, 70080, 0),
|
| 297 |
+
(70089, 70092, 0),
|
| 298 |
+
(70094, 70095, 0),
|
| 299 |
+
(70188, 70199, 0),
|
| 300 |
+
(70206, 70206, 0),
|
| 301 |
+
(70209, 70209, 0),
|
| 302 |
+
(70367, 70378, 0),
|
| 303 |
+
(70400, 70403, 0),
|
| 304 |
+
(70459, 70460, 0),
|
| 305 |
+
(70462, 70468, 0),
|
| 306 |
+
(70471, 70472, 0),
|
| 307 |
+
(70475, 70477, 0),
|
| 308 |
+
(70487, 70487, 0),
|
| 309 |
+
(70498, 70499, 0),
|
| 310 |
+
(70502, 70508, 0),
|
| 311 |
+
(70512, 70516, 0),
|
| 312 |
+
(70709, 70726, 0),
|
| 313 |
+
(70750, 70750, 0),
|
| 314 |
+
(70832, 70851, 0),
|
| 315 |
+
(71087, 71093, 0),
|
| 316 |
+
(71096, 71104, 0),
|
| 317 |
+
(71132, 71133, 0),
|
| 318 |
+
(71216, 71232, 0),
|
| 319 |
+
(71339, 71351, 0),
|
| 320 |
+
(71453, 71467, 0),
|
| 321 |
+
(71724, 71738, 0),
|
| 322 |
+
(71984, 71989, 0),
|
| 323 |
+
(71991, 71992, 0),
|
| 324 |
+
(71995, 71998, 0),
|
| 325 |
+
(72000, 72000, 0),
|
| 326 |
+
(72002, 72003, 0),
|
| 327 |
+
(72145, 72151, 0),
|
| 328 |
+
(72154, 72160, 0),
|
| 329 |
+
(72164, 72164, 0),
|
| 330 |
+
(72193, 72202, 0),
|
| 331 |
+
(72243, 72249, 0),
|
| 332 |
+
(72251, 72254, 0),
|
| 333 |
+
(72263, 72263, 0),
|
| 334 |
+
(72273, 72283, 0),
|
| 335 |
+
(72330, 72345, 0),
|
| 336 |
+
(72751, 72758, 0),
|
| 337 |
+
(72760, 72767, 0),
|
| 338 |
+
(72850, 72871, 0),
|
| 339 |
+
(72873, 72886, 0),
|
| 340 |
+
(73009, 73014, 0),
|
| 341 |
+
(73018, 73018, 0),
|
| 342 |
+
(73020, 73021, 0),
|
| 343 |
+
(73023, 73029, 0),
|
| 344 |
+
(73031, 73031, 0),
|
| 345 |
+
(73098, 73102, 0),
|
| 346 |
+
(73104, 73105, 0),
|
| 347 |
+
(73107, 73111, 0),
|
| 348 |
+
(73459, 73462, 0),
|
| 349 |
+
(73472, 73473, 0),
|
| 350 |
+
(73475, 73475, 0),
|
| 351 |
+
(73524, 73530, 0),
|
| 352 |
+
(73534, 73538, 0),
|
| 353 |
+
(78896, 78912, 0),
|
| 354 |
+
(78919, 78933, 0),
|
| 355 |
+
(92912, 92916, 0),
|
| 356 |
+
(92976, 92982, 0),
|
| 357 |
+
(94031, 94031, 0),
|
| 358 |
+
(94033, 94087, 0),
|
| 359 |
+
(94095, 94098, 0),
|
| 360 |
+
(94176, 94179, 2),
|
| 361 |
+
(94180, 94180, 0),
|
| 362 |
+
(94192, 94193, 0),
|
| 363 |
+
(94208, 100343, 2),
|
| 364 |
+
(100352, 101589, 2),
|
| 365 |
+
(101632, 101640, 2),
|
| 366 |
+
(110576, 110579, 2),
|
| 367 |
+
(110581, 110587, 2),
|
| 368 |
+
(110589, 110590, 2),
|
| 369 |
+
(110592, 110882, 2),
|
| 370 |
+
(110898, 110898, 2),
|
| 371 |
+
(110928, 110930, 2),
|
| 372 |
+
(110933, 110933, 2),
|
| 373 |
+
(110948, 110951, 2),
|
| 374 |
+
(110960, 111355, 2),
|
| 375 |
+
(113821, 113822, 0),
|
| 376 |
+
(113824, 113827, 0),
|
| 377 |
+
(118528, 118573, 0),
|
| 378 |
+
(118576, 118598, 0),
|
| 379 |
+
(119141, 119145, 0),
|
| 380 |
+
(119149, 119170, 0),
|
| 381 |
+
(119173, 119179, 0),
|
| 382 |
+
(119210, 119213, 0),
|
| 383 |
+
(119362, 119364, 0),
|
| 384 |
+
(121344, 121398, 0),
|
| 385 |
+
(121403, 121452, 0),
|
| 386 |
+
(121461, 121461, 0),
|
| 387 |
+
(121476, 121476, 0),
|
| 388 |
+
(121499, 121503, 0),
|
| 389 |
+
(121505, 121519, 0),
|
| 390 |
+
(122880, 122886, 0),
|
| 391 |
+
(122888, 122904, 0),
|
| 392 |
+
(122907, 122913, 0),
|
| 393 |
+
(122915, 122916, 0),
|
| 394 |
+
(122918, 122922, 0),
|
| 395 |
+
(123023, 123023, 0),
|
| 396 |
+
(123184, 123190, 0),
|
| 397 |
+
(123566, 123566, 0),
|
| 398 |
+
(123628, 123631, 0),
|
| 399 |
+
(124140, 124143, 0),
|
| 400 |
+
(125136, 125142, 0),
|
| 401 |
+
(125252, 125258, 0),
|
| 402 |
+
(126980, 126980, 2),
|
| 403 |
+
(127183, 127183, 2),
|
| 404 |
+
(127374, 127374, 2),
|
| 405 |
+
(127377, 127386, 2),
|
| 406 |
+
(127488, 127490, 2),
|
| 407 |
+
(127504, 127547, 2),
|
| 408 |
+
(127552, 127560, 2),
|
| 409 |
+
(127568, 127569, 2),
|
| 410 |
+
(127584, 127589, 2),
|
| 411 |
+
(127744, 127776, 2),
|
| 412 |
+
(127789, 127797, 2),
|
| 413 |
+
(127799, 127868, 2),
|
| 414 |
+
(127870, 127891, 2),
|
| 415 |
+
(127904, 127946, 2),
|
| 416 |
+
(127951, 127955, 2),
|
| 417 |
+
(127968, 127984, 2),
|
| 418 |
+
(127988, 127988, 2),
|
| 419 |
+
(127992, 127994, 2),
|
| 420 |
+
(127995, 127999, 0),
|
| 421 |
+
(128000, 128062, 2),
|
| 422 |
+
(128064, 128064, 2),
|
| 423 |
+
(128066, 128252, 2),
|
| 424 |
+
(128255, 128317, 2),
|
| 425 |
+
(128331, 128334, 2),
|
| 426 |
+
(128336, 128359, 2),
|
| 427 |
+
(128378, 128378, 2),
|
| 428 |
+
(128405, 128406, 2),
|
| 429 |
+
(128420, 128420, 2),
|
| 430 |
+
(128507, 128591, 2),
|
| 431 |
+
(128640, 128709, 2),
|
| 432 |
+
(128716, 128716, 2),
|
| 433 |
+
(128720, 128722, 2),
|
| 434 |
+
(128725, 128727, 2),
|
| 435 |
+
(128732, 128735, 2),
|
| 436 |
+
(128747, 128748, 2),
|
| 437 |
+
(128756, 128764, 2),
|
| 438 |
+
(128992, 129003, 2),
|
| 439 |
+
(129008, 129008, 2),
|
| 440 |
+
(129292, 129338, 2),
|
| 441 |
+
(129340, 129349, 2),
|
| 442 |
+
(129351, 129535, 2),
|
| 443 |
+
(129648, 129660, 2),
|
| 444 |
+
(129664, 129672, 2),
|
| 445 |
+
(129680, 129725, 2),
|
| 446 |
+
(129727, 129733, 2),
|
| 447 |
+
(129742, 129755, 2),
|
| 448 |
+
(129760, 129768, 2),
|
| 449 |
+
(129776, 129784, 2),
|
| 450 |
+
(131072, 196605, 2),
|
| 451 |
+
(196608, 262141, 2),
|
| 452 |
+
(917504, 921599, 0),
|
| 453 |
+
],
|
| 454 |
+
frozenset(
|
| 455 |
+
[
|
| 456 |
+
"#",
|
| 457 |
+
"*",
|
| 458 |
+
"0",
|
| 459 |
+
"1",
|
| 460 |
+
"2",
|
| 461 |
+
"3",
|
| 462 |
+
"4",
|
| 463 |
+
"5",
|
| 464 |
+
"6",
|
| 465 |
+
"7",
|
| 466 |
+
"8",
|
| 467 |
+
"9",
|
| 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 |
+
"☑",
|
| 506 |
+
"☘",
|
| 507 |
+
"☝",
|
| 508 |
+
"☠",
|
| 509 |
+
"☢",
|
| 510 |
+
"☣",
|
| 511 |
+
"☦",
|
| 512 |
+
"☪",
|
| 513 |
+
"☮",
|
| 514 |
+
"☯",
|
| 515 |
+
"☸",
|
| 516 |
+
"☹",
|
| 517 |
+
"☺",
|
| 518 |
+
"♀",
|
| 519 |
+
"♂",
|
| 520 |
+
"♟",
|
| 521 |
+
"♠",
|
| 522 |
+
"♣",
|
| 523 |
+
"♥",
|
| 524 |
+
"♦",
|
| 525 |
+
"♨",
|
| 526 |
+
"♻",
|
| 527 |
+
"♾",
|
| 528 |
+
"⚒",
|
| 529 |
+
"⚔",
|
| 530 |
+
"⚕",
|
| 531 |
+
"⚖",
|
| 532 |
+
"⚗",
|
| 533 |
+
"⚙",
|
| 534 |
+
"⚛",
|
| 535 |
+
"⚜",
|
| 536 |
+
"⚠",
|
| 537 |
+
"⚧",
|
| 538 |
+
"⚰",
|
| 539 |
+
"⚱",
|
| 540 |
+
"⛈",
|
| 541 |
+
"⛏",
|
| 542 |
+
"⛑",
|
| 543 |
+
"⛓",
|
| 544 |
+
"⛩",
|
| 545 |
+
"⛰",
|
| 546 |
+
"⛱",
|
| 547 |
+
"⛴",
|
| 548 |
+
"⛷",
|
| 549 |
+
"⛸",
|
| 550 |
+
"⛹",
|
| 551 |
+
"✂",
|
| 552 |
+
"✈",
|
| 553 |
+
"✉",
|
| 554 |
+
"✌",
|
| 555 |
+
"✍",
|
| 556 |
+
"✏",
|
| 557 |
+
"✒",
|
| 558 |
+
"✔",
|
| 559 |
+
"✖",
|
| 560 |
+
"✝",
|
| 561 |
+
"✡",
|
| 562 |
+
"✳",
|
| 563 |
+
"✴",
|
| 564 |
+
"❄",
|
| 565 |
+
"❇",
|
| 566 |
+
"❣",
|
| 567 |
+
"❤",
|
| 568 |
+
"➡",
|
| 569 |
+
"⤴",
|
| 570 |
+
"⤵",
|
| 571 |
+
"⬅",
|
| 572 |
+
"⬆",
|
| 573 |
+
"⬇",
|
| 574 |
+
"🅰",
|
| 575 |
+
"🅱",
|
| 576 |
+
"🅾",
|
| 577 |
+
"🅿",
|
| 578 |
+
"🌡",
|
| 579 |
+
"🌤",
|
| 580 |
+
"🌥",
|
| 581 |
+
"🌦",
|
| 582 |
+
"🌧",
|
| 583 |
+
"🌨",
|
| 584 |
+
"🌩",
|
| 585 |
+
"🌪",
|
| 586 |
+
"🌫",
|
| 587 |
+
"🌬",
|
| 588 |
+
"🌶",
|
| 589 |
+
"🍽",
|
| 590 |
+
"🎖",
|
| 591 |
+
"🎗",
|
| 592 |
+
"🎙",
|
| 593 |
+
"🎚",
|
| 594 |
+
"🎛",
|
| 595 |
+
"🎞",
|
| 596 |
+
"🎟",
|
| 597 |
+
"🏋",
|
| 598 |
+
"🏌",
|
| 599 |
+
"🏍",
|
| 600 |
+
"🏎",
|
| 601 |
+
"🏔",
|
| 602 |
+
"🏕",
|
| 603 |
+
"🏖",
|
| 604 |
+
"🏗",
|
| 605 |
+
"🏘",
|
| 606 |
+
"🏙",
|
| 607 |
+
"🏚",
|
| 608 |
+
"🏛",
|
| 609 |
+
"🏜",
|
| 610 |
+
"🏝",
|
| 611 |
+
"🏞",
|
| 612 |
+
"🏟",
|
| 613 |
+
"🏳",
|
| 614 |
+
"🏵",
|
| 615 |
+
"🏷",
|
| 616 |
+
"🐿",
|
| 617 |
+
"👁",
|
| 618 |
+
"📽",
|
| 619 |
+
"🕉",
|
| 620 |
+
"🕊",
|
| 621 |
+
"🕯",
|
| 622 |
+
"🕰",
|
| 623 |
+
"🕳",
|
| 624 |
+
"🕴",
|
| 625 |
+
"🕵",
|
| 626 |
+
"🕶",
|
| 627 |
+
"🕷",
|
| 628 |
+
"🕸",
|
| 629 |
+
"🕹",
|
| 630 |
+
"🖇",
|
| 631 |
+
"🖊",
|
| 632 |
+
"🖋",
|
| 633 |
+
"🖌",
|
| 634 |
+
"🖍",
|
| 635 |
+
"🖐",
|
| 636 |
+
"🖥",
|
| 637 |
+
"🖨",
|
| 638 |
+
"🖱",
|
| 639 |
+
"🖲",
|
| 640 |
+
"🖼",
|
| 641 |
+
"🗂",
|
| 642 |
+
"🗃",
|
| 643 |
+
"🗄",
|
| 644 |
+
"🗑",
|
| 645 |
+
"🗒",
|
| 646 |
+
"🗓",
|
| 647 |
+
"🗜",
|
| 648 |
+
"🗝",
|
| 649 |
+
"🗞",
|
| 650 |
+
"🗡",
|
| 651 |
+
"🗣",
|
| 652 |
+
"🗨",
|
| 653 |
+
"🗯",
|
| 654 |
+
"🗳",
|
| 655 |
+
"🗺",
|
| 656 |
+
"🛋",
|
| 657 |
+
"🛍",
|
| 658 |
+
"🛎",
|
| 659 |
+
"🛏",
|
| 660 |
+
"🛠",
|
| 661 |
+
"🛡",
|
| 662 |
+
"🛢",
|
| 663 |
+
"🛣",
|
| 664 |
+
"🛤",
|
| 665 |
+
"🛥",
|
| 666 |
+
"🛩",
|
| 667 |
+
"🛰",
|
| 668 |
+
"🛳",
|
| 669 |
+
]
|
| 670 |
+
),
|
| 671 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode15-1-0.py
ADDED
|
@@ -0,0 +1,670 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"15.1.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1552, 1562, 0),
|
| 18 |
+
(1564, 1564, 0),
|
| 19 |
+
(1611, 1631, 0),
|
| 20 |
+
(1648, 1648, 0),
|
| 21 |
+
(1750, 1756, 0),
|
| 22 |
+
(1759, 1764, 0),
|
| 23 |
+
(1767, 1768, 0),
|
| 24 |
+
(1770, 1773, 0),
|
| 25 |
+
(1809, 1809, 0),
|
| 26 |
+
(1840, 1866, 0),
|
| 27 |
+
(1958, 1968, 0),
|
| 28 |
+
(2027, 2035, 0),
|
| 29 |
+
(2045, 2045, 0),
|
| 30 |
+
(2070, 2073, 0),
|
| 31 |
+
(2075, 2083, 0),
|
| 32 |
+
(2085, 2087, 0),
|
| 33 |
+
(2089, 2093, 0),
|
| 34 |
+
(2137, 2139, 0),
|
| 35 |
+
(2200, 2207, 0),
|
| 36 |
+
(2250, 2273, 0),
|
| 37 |
+
(2275, 2307, 0),
|
| 38 |
+
(2362, 2364, 0),
|
| 39 |
+
(2366, 2383, 0),
|
| 40 |
+
(2385, 2391, 0),
|
| 41 |
+
(2402, 2403, 0),
|
| 42 |
+
(2433, 2435, 0),
|
| 43 |
+
(2492, 2492, 0),
|
| 44 |
+
(2494, 2500, 0),
|
| 45 |
+
(2503, 2504, 0),
|
| 46 |
+
(2507, 2509, 0),
|
| 47 |
+
(2519, 2519, 0),
|
| 48 |
+
(2530, 2531, 0),
|
| 49 |
+
(2558, 2558, 0),
|
| 50 |
+
(2561, 2563, 0),
|
| 51 |
+
(2620, 2620, 0),
|
| 52 |
+
(2622, 2626, 0),
|
| 53 |
+
(2631, 2632, 0),
|
| 54 |
+
(2635, 2637, 0),
|
| 55 |
+
(2641, 2641, 0),
|
| 56 |
+
(2672, 2673, 0),
|
| 57 |
+
(2677, 2677, 0),
|
| 58 |
+
(2689, 2691, 0),
|
| 59 |
+
(2748, 2748, 0),
|
| 60 |
+
(2750, 2757, 0),
|
| 61 |
+
(2759, 2761, 0),
|
| 62 |
+
(2763, 2765, 0),
|
| 63 |
+
(2786, 2787, 0),
|
| 64 |
+
(2810, 2815, 0),
|
| 65 |
+
(2817, 2819, 0),
|
| 66 |
+
(2876, 2876, 0),
|
| 67 |
+
(2878, 2884, 0),
|
| 68 |
+
(2887, 2888, 0),
|
| 69 |
+
(2891, 2893, 0),
|
| 70 |
+
(2901, 2903, 0),
|
| 71 |
+
(2914, 2915, 0),
|
| 72 |
+
(2946, 2946, 0),
|
| 73 |
+
(3006, 3010, 0),
|
| 74 |
+
(3014, 3016, 0),
|
| 75 |
+
(3018, 3021, 0),
|
| 76 |
+
(3031, 3031, 0),
|
| 77 |
+
(3072, 3076, 0),
|
| 78 |
+
(3132, 3132, 0),
|
| 79 |
+
(3134, 3140, 0),
|
| 80 |
+
(3142, 3144, 0),
|
| 81 |
+
(3146, 3149, 0),
|
| 82 |
+
(3157, 3158, 0),
|
| 83 |
+
(3170, 3171, 0),
|
| 84 |
+
(3201, 3203, 0),
|
| 85 |
+
(3260, 3260, 0),
|
| 86 |
+
(3262, 3268, 0),
|
| 87 |
+
(3270, 3272, 0),
|
| 88 |
+
(3274, 3277, 0),
|
| 89 |
+
(3285, 3286, 0),
|
| 90 |
+
(3298, 3299, 0),
|
| 91 |
+
(3315, 3315, 0),
|
| 92 |
+
(3328, 3331, 0),
|
| 93 |
+
(3387, 3388, 0),
|
| 94 |
+
(3390, 3396, 0),
|
| 95 |
+
(3398, 3400, 0),
|
| 96 |
+
(3402, 3405, 0),
|
| 97 |
+
(3415, 3415, 0),
|
| 98 |
+
(3426, 3427, 0),
|
| 99 |
+
(3457, 3459, 0),
|
| 100 |
+
(3530, 3530, 0),
|
| 101 |
+
(3535, 3540, 0),
|
| 102 |
+
(3542, 3542, 0),
|
| 103 |
+
(3544, 3551, 0),
|
| 104 |
+
(3570, 3571, 0),
|
| 105 |
+
(3633, 3633, 0),
|
| 106 |
+
(3636, 3642, 0),
|
| 107 |
+
(3655, 3662, 0),
|
| 108 |
+
(3761, 3761, 0),
|
| 109 |
+
(3764, 3772, 0),
|
| 110 |
+
(3784, 3790, 0),
|
| 111 |
+
(3864, 3865, 0),
|
| 112 |
+
(3893, 3893, 0),
|
| 113 |
+
(3895, 3895, 0),
|
| 114 |
+
(3897, 3897, 0),
|
| 115 |
+
(3902, 3903, 0),
|
| 116 |
+
(3953, 3972, 0),
|
| 117 |
+
(3974, 3975, 0),
|
| 118 |
+
(3981, 3991, 0),
|
| 119 |
+
(3993, 4028, 0),
|
| 120 |
+
(4038, 4038, 0),
|
| 121 |
+
(4139, 4158, 0),
|
| 122 |
+
(4182, 4185, 0),
|
| 123 |
+
(4190, 4192, 0),
|
| 124 |
+
(4194, 4196, 0),
|
| 125 |
+
(4199, 4205, 0),
|
| 126 |
+
(4209, 4212, 0),
|
| 127 |
+
(4226, 4237, 0),
|
| 128 |
+
(4239, 4239, 0),
|
| 129 |
+
(4250, 4253, 0),
|
| 130 |
+
(4352, 4447, 2),
|
| 131 |
+
(4448, 4607, 0),
|
| 132 |
+
(4957, 4959, 0),
|
| 133 |
+
(5906, 5909, 0),
|
| 134 |
+
(5938, 5940, 0),
|
| 135 |
+
(5970, 5971, 0),
|
| 136 |
+
(6002, 6003, 0),
|
| 137 |
+
(6068, 6099, 0),
|
| 138 |
+
(6109, 6109, 0),
|
| 139 |
+
(6155, 6159, 0),
|
| 140 |
+
(6277, 6278, 0),
|
| 141 |
+
(6313, 6313, 0),
|
| 142 |
+
(6432, 6443, 0),
|
| 143 |
+
(6448, 6459, 0),
|
| 144 |
+
(6679, 6683, 0),
|
| 145 |
+
(6741, 6750, 0),
|
| 146 |
+
(6752, 6780, 0),
|
| 147 |
+
(6783, 6783, 0),
|
| 148 |
+
(6832, 6862, 0),
|
| 149 |
+
(6912, 6916, 0),
|
| 150 |
+
(6964, 6980, 0),
|
| 151 |
+
(7019, 7027, 0),
|
| 152 |
+
(7040, 7042, 0),
|
| 153 |
+
(7073, 7085, 0),
|
| 154 |
+
(7142, 7155, 0),
|
| 155 |
+
(7204, 7223, 0),
|
| 156 |
+
(7376, 7378, 0),
|
| 157 |
+
(7380, 7400, 0),
|
| 158 |
+
(7405, 7405, 0),
|
| 159 |
+
(7412, 7412, 0),
|
| 160 |
+
(7415, 7417, 0),
|
| 161 |
+
(7616, 7679, 0),
|
| 162 |
+
(8203, 8207, 0),
|
| 163 |
+
(8232, 8238, 0),
|
| 164 |
+
(8288, 8303, 0),
|
| 165 |
+
(8400, 8432, 0),
|
| 166 |
+
(8986, 8987, 2),
|
| 167 |
+
(9001, 9002, 2),
|
| 168 |
+
(9193, 9196, 2),
|
| 169 |
+
(9200, 9200, 2),
|
| 170 |
+
(9203, 9203, 2),
|
| 171 |
+
(9725, 9726, 2),
|
| 172 |
+
(9748, 9749, 2),
|
| 173 |
+
(9800, 9811, 2),
|
| 174 |
+
(9855, 9855, 2),
|
| 175 |
+
(9875, 9875, 2),
|
| 176 |
+
(9889, 9889, 2),
|
| 177 |
+
(9898, 9899, 2),
|
| 178 |
+
(9917, 9918, 2),
|
| 179 |
+
(9924, 9925, 2),
|
| 180 |
+
(9934, 9934, 2),
|
| 181 |
+
(9940, 9940, 2),
|
| 182 |
+
(9962, 9962, 2),
|
| 183 |
+
(9970, 9971, 2),
|
| 184 |
+
(9973, 9973, 2),
|
| 185 |
+
(9978, 9978, 2),
|
| 186 |
+
(9981, 9981, 2),
|
| 187 |
+
(9989, 9989, 2),
|
| 188 |
+
(9994, 9995, 2),
|
| 189 |
+
(10024, 10024, 2),
|
| 190 |
+
(10060, 10060, 2),
|
| 191 |
+
(10062, 10062, 2),
|
| 192 |
+
(10067, 10069, 2),
|
| 193 |
+
(10071, 10071, 2),
|
| 194 |
+
(10133, 10135, 2),
|
| 195 |
+
(10160, 10160, 2),
|
| 196 |
+
(10175, 10175, 2),
|
| 197 |
+
(11035, 11036, 2),
|
| 198 |
+
(11088, 11088, 2),
|
| 199 |
+
(11093, 11093, 2),
|
| 200 |
+
(11503, 11505, 0),
|
| 201 |
+
(11647, 11647, 0),
|
| 202 |
+
(11744, 11775, 0),
|
| 203 |
+
(11904, 11929, 2),
|
| 204 |
+
(11931, 12019, 2),
|
| 205 |
+
(12032, 12245, 2),
|
| 206 |
+
(12272, 12329, 2),
|
| 207 |
+
(12330, 12335, 0),
|
| 208 |
+
(12336, 12350, 2),
|
| 209 |
+
(12353, 12438, 2),
|
| 210 |
+
(12441, 12442, 0),
|
| 211 |
+
(12443, 12543, 2),
|
| 212 |
+
(12549, 12591, 2),
|
| 213 |
+
(12593, 12643, 2),
|
| 214 |
+
(12644, 12644, 0),
|
| 215 |
+
(12645, 12686, 2),
|
| 216 |
+
(12688, 12771, 2),
|
| 217 |
+
(12783, 12830, 2),
|
| 218 |
+
(12832, 12871, 2),
|
| 219 |
+
(12880, 19903, 2),
|
| 220 |
+
(19968, 42124, 2),
|
| 221 |
+
(42128, 42182, 2),
|
| 222 |
+
(42607, 42610, 0),
|
| 223 |
+
(42612, 42621, 0),
|
| 224 |
+
(42654, 42655, 0),
|
| 225 |
+
(42736, 42737, 0),
|
| 226 |
+
(43010, 43010, 0),
|
| 227 |
+
(43014, 43014, 0),
|
| 228 |
+
(43019, 43019, 0),
|
| 229 |
+
(43043, 43047, 0),
|
| 230 |
+
(43052, 43052, 0),
|
| 231 |
+
(43136, 43137, 0),
|
| 232 |
+
(43188, 43205, 0),
|
| 233 |
+
(43232, 43249, 0),
|
| 234 |
+
(43263, 43263, 0),
|
| 235 |
+
(43302, 43309, 0),
|
| 236 |
+
(43335, 43347, 0),
|
| 237 |
+
(43360, 43388, 2),
|
| 238 |
+
(43392, 43395, 0),
|
| 239 |
+
(43443, 43456, 0),
|
| 240 |
+
(43493, 43493, 0),
|
| 241 |
+
(43561, 43574, 0),
|
| 242 |
+
(43587, 43587, 0),
|
| 243 |
+
(43596, 43597, 0),
|
| 244 |
+
(43643, 43645, 0),
|
| 245 |
+
(43696, 43696, 0),
|
| 246 |
+
(43698, 43700, 0),
|
| 247 |
+
(43703, 43704, 0),
|
| 248 |
+
(43710, 43711, 0),
|
| 249 |
+
(43713, 43713, 0),
|
| 250 |
+
(43755, 43759, 0),
|
| 251 |
+
(43765, 43766, 0),
|
| 252 |
+
(44003, 44010, 0),
|
| 253 |
+
(44012, 44013, 0),
|
| 254 |
+
(44032, 55203, 2),
|
| 255 |
+
(55216, 55295, 0),
|
| 256 |
+
(63744, 64255, 2),
|
| 257 |
+
(64286, 64286, 0),
|
| 258 |
+
(65024, 65039, 0),
|
| 259 |
+
(65040, 65049, 2),
|
| 260 |
+
(65056, 65071, 0),
|
| 261 |
+
(65072, 65106, 2),
|
| 262 |
+
(65108, 65126, 2),
|
| 263 |
+
(65128, 65131, 2),
|
| 264 |
+
(65279, 65279, 0),
|
| 265 |
+
(65281, 65376, 2),
|
| 266 |
+
(65440, 65440, 0),
|
| 267 |
+
(65504, 65510, 2),
|
| 268 |
+
(65520, 65531, 0),
|
| 269 |
+
(66045, 66045, 0),
|
| 270 |
+
(66272, 66272, 0),
|
| 271 |
+
(66422, 66426, 0),
|
| 272 |
+
(68097, 68099, 0),
|
| 273 |
+
(68101, 68102, 0),
|
| 274 |
+
(68108, 68111, 0),
|
| 275 |
+
(68152, 68154, 0),
|
| 276 |
+
(68159, 68159, 0),
|
| 277 |
+
(68325, 68326, 0),
|
| 278 |
+
(68900, 68903, 0),
|
| 279 |
+
(69291, 69292, 0),
|
| 280 |
+
(69373, 69375, 0),
|
| 281 |
+
(69446, 69456, 0),
|
| 282 |
+
(69506, 69509, 0),
|
| 283 |
+
(69632, 69634, 0),
|
| 284 |
+
(69688, 69702, 0),
|
| 285 |
+
(69744, 69744, 0),
|
| 286 |
+
(69747, 69748, 0),
|
| 287 |
+
(69759, 69762, 0),
|
| 288 |
+
(69808, 69818, 0),
|
| 289 |
+
(69826, 69826, 0),
|
| 290 |
+
(69888, 69890, 0),
|
| 291 |
+
(69927, 69940, 0),
|
| 292 |
+
(69957, 69958, 0),
|
| 293 |
+
(70003, 70003, 0),
|
| 294 |
+
(70016, 70018, 0),
|
| 295 |
+
(70067, 70080, 0),
|
| 296 |
+
(70089, 70092, 0),
|
| 297 |
+
(70094, 70095, 0),
|
| 298 |
+
(70188, 70199, 0),
|
| 299 |
+
(70206, 70206, 0),
|
| 300 |
+
(70209, 70209, 0),
|
| 301 |
+
(70367, 70378, 0),
|
| 302 |
+
(70400, 70403, 0),
|
| 303 |
+
(70459, 70460, 0),
|
| 304 |
+
(70462, 70468, 0),
|
| 305 |
+
(70471, 70472, 0),
|
| 306 |
+
(70475, 70477, 0),
|
| 307 |
+
(70487, 70487, 0),
|
| 308 |
+
(70498, 70499, 0),
|
| 309 |
+
(70502, 70508, 0),
|
| 310 |
+
(70512, 70516, 0),
|
| 311 |
+
(70709, 70726, 0),
|
| 312 |
+
(70750, 70750, 0),
|
| 313 |
+
(70832, 70851, 0),
|
| 314 |
+
(71087, 71093, 0),
|
| 315 |
+
(71096, 71104, 0),
|
| 316 |
+
(71132, 71133, 0),
|
| 317 |
+
(71216, 71232, 0),
|
| 318 |
+
(71339, 71351, 0),
|
| 319 |
+
(71453, 71467, 0),
|
| 320 |
+
(71724, 71738, 0),
|
| 321 |
+
(71984, 71989, 0),
|
| 322 |
+
(71991, 71992, 0),
|
| 323 |
+
(71995, 71998, 0),
|
| 324 |
+
(72000, 72000, 0),
|
| 325 |
+
(72002, 72003, 0),
|
| 326 |
+
(72145, 72151, 0),
|
| 327 |
+
(72154, 72160, 0),
|
| 328 |
+
(72164, 72164, 0),
|
| 329 |
+
(72193, 72202, 0),
|
| 330 |
+
(72243, 72249, 0),
|
| 331 |
+
(72251, 72254, 0),
|
| 332 |
+
(72263, 72263, 0),
|
| 333 |
+
(72273, 72283, 0),
|
| 334 |
+
(72330, 72345, 0),
|
| 335 |
+
(72751, 72758, 0),
|
| 336 |
+
(72760, 72767, 0),
|
| 337 |
+
(72850, 72871, 0),
|
| 338 |
+
(72873, 72886, 0),
|
| 339 |
+
(73009, 73014, 0),
|
| 340 |
+
(73018, 73018, 0),
|
| 341 |
+
(73020, 73021, 0),
|
| 342 |
+
(73023, 73029, 0),
|
| 343 |
+
(73031, 73031, 0),
|
| 344 |
+
(73098, 73102, 0),
|
| 345 |
+
(73104, 73105, 0),
|
| 346 |
+
(73107, 73111, 0),
|
| 347 |
+
(73459, 73462, 0),
|
| 348 |
+
(73472, 73473, 0),
|
| 349 |
+
(73475, 73475, 0),
|
| 350 |
+
(73524, 73530, 0),
|
| 351 |
+
(73534, 73538, 0),
|
| 352 |
+
(78896, 78912, 0),
|
| 353 |
+
(78919, 78933, 0),
|
| 354 |
+
(92912, 92916, 0),
|
| 355 |
+
(92976, 92982, 0),
|
| 356 |
+
(94031, 94031, 0),
|
| 357 |
+
(94033, 94087, 0),
|
| 358 |
+
(94095, 94098, 0),
|
| 359 |
+
(94176, 94179, 2),
|
| 360 |
+
(94180, 94180, 0),
|
| 361 |
+
(94192, 94193, 0),
|
| 362 |
+
(94208, 100343, 2),
|
| 363 |
+
(100352, 101589, 2),
|
| 364 |
+
(101632, 101640, 2),
|
| 365 |
+
(110576, 110579, 2),
|
| 366 |
+
(110581, 110587, 2),
|
| 367 |
+
(110589, 110590, 2),
|
| 368 |
+
(110592, 110882, 2),
|
| 369 |
+
(110898, 110898, 2),
|
| 370 |
+
(110928, 110930, 2),
|
| 371 |
+
(110933, 110933, 2),
|
| 372 |
+
(110948, 110951, 2),
|
| 373 |
+
(110960, 111355, 2),
|
| 374 |
+
(113821, 113822, 0),
|
| 375 |
+
(113824, 113827, 0),
|
| 376 |
+
(118528, 118573, 0),
|
| 377 |
+
(118576, 118598, 0),
|
| 378 |
+
(119141, 119145, 0),
|
| 379 |
+
(119149, 119170, 0),
|
| 380 |
+
(119173, 119179, 0),
|
| 381 |
+
(119210, 119213, 0),
|
| 382 |
+
(119362, 119364, 0),
|
| 383 |
+
(121344, 121398, 0),
|
| 384 |
+
(121403, 121452, 0),
|
| 385 |
+
(121461, 121461, 0),
|
| 386 |
+
(121476, 121476, 0),
|
| 387 |
+
(121499, 121503, 0),
|
| 388 |
+
(121505, 121519, 0),
|
| 389 |
+
(122880, 122886, 0),
|
| 390 |
+
(122888, 122904, 0),
|
| 391 |
+
(122907, 122913, 0),
|
| 392 |
+
(122915, 122916, 0),
|
| 393 |
+
(122918, 122922, 0),
|
| 394 |
+
(123023, 123023, 0),
|
| 395 |
+
(123184, 123190, 0),
|
| 396 |
+
(123566, 123566, 0),
|
| 397 |
+
(123628, 123631, 0),
|
| 398 |
+
(124140, 124143, 0),
|
| 399 |
+
(125136, 125142, 0),
|
| 400 |
+
(125252, 125258, 0),
|
| 401 |
+
(126980, 126980, 2),
|
| 402 |
+
(127183, 127183, 2),
|
| 403 |
+
(127374, 127374, 2),
|
| 404 |
+
(127377, 127386, 2),
|
| 405 |
+
(127488, 127490, 2),
|
| 406 |
+
(127504, 127547, 2),
|
| 407 |
+
(127552, 127560, 2),
|
| 408 |
+
(127568, 127569, 2),
|
| 409 |
+
(127584, 127589, 2),
|
| 410 |
+
(127744, 127776, 2),
|
| 411 |
+
(127789, 127797, 2),
|
| 412 |
+
(127799, 127868, 2),
|
| 413 |
+
(127870, 127891, 2),
|
| 414 |
+
(127904, 127946, 2),
|
| 415 |
+
(127951, 127955, 2),
|
| 416 |
+
(127968, 127984, 2),
|
| 417 |
+
(127988, 127988, 2),
|
| 418 |
+
(127992, 127994, 2),
|
| 419 |
+
(127995, 127999, 0),
|
| 420 |
+
(128000, 128062, 2),
|
| 421 |
+
(128064, 128064, 2),
|
| 422 |
+
(128066, 128252, 2),
|
| 423 |
+
(128255, 128317, 2),
|
| 424 |
+
(128331, 128334, 2),
|
| 425 |
+
(128336, 128359, 2),
|
| 426 |
+
(128378, 128378, 2),
|
| 427 |
+
(128405, 128406, 2),
|
| 428 |
+
(128420, 128420, 2),
|
| 429 |
+
(128507, 128591, 2),
|
| 430 |
+
(128640, 128709, 2),
|
| 431 |
+
(128716, 128716, 2),
|
| 432 |
+
(128720, 128722, 2),
|
| 433 |
+
(128725, 128727, 2),
|
| 434 |
+
(128732, 128735, 2),
|
| 435 |
+
(128747, 128748, 2),
|
| 436 |
+
(128756, 128764, 2),
|
| 437 |
+
(128992, 129003, 2),
|
| 438 |
+
(129008, 129008, 2),
|
| 439 |
+
(129292, 129338, 2),
|
| 440 |
+
(129340, 129349, 2),
|
| 441 |
+
(129351, 129535, 2),
|
| 442 |
+
(129648, 129660, 2),
|
| 443 |
+
(129664, 129672, 2),
|
| 444 |
+
(129680, 129725, 2),
|
| 445 |
+
(129727, 129733, 2),
|
| 446 |
+
(129742, 129755, 2),
|
| 447 |
+
(129760, 129768, 2),
|
| 448 |
+
(129776, 129784, 2),
|
| 449 |
+
(131072, 196605, 2),
|
| 450 |
+
(196608, 262141, 2),
|
| 451 |
+
(917504, 921599, 0),
|
| 452 |
+
],
|
| 453 |
+
frozenset(
|
| 454 |
+
[
|
| 455 |
+
"#",
|
| 456 |
+
"*",
|
| 457 |
+
"0",
|
| 458 |
+
"1",
|
| 459 |
+
"2",
|
| 460 |
+
"3",
|
| 461 |
+
"4",
|
| 462 |
+
"5",
|
| 463 |
+
"6",
|
| 464 |
+
"7",
|
| 465 |
+
"8",
|
| 466 |
+
"9",
|
| 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 |
+
"☘",
|
| 506 |
+
"☝",
|
| 507 |
+
"☠",
|
| 508 |
+
"☢",
|
| 509 |
+
"☣",
|
| 510 |
+
"☦",
|
| 511 |
+
"☪",
|
| 512 |
+
"☮",
|
| 513 |
+
"☯",
|
| 514 |
+
"☸",
|
| 515 |
+
"☹",
|
| 516 |
+
"☺",
|
| 517 |
+
"♀",
|
| 518 |
+
"♂",
|
| 519 |
+
"♟",
|
| 520 |
+
"♠",
|
| 521 |
+
"♣",
|
| 522 |
+
"♥",
|
| 523 |
+
"♦",
|
| 524 |
+
"♨",
|
| 525 |
+
"♻",
|
| 526 |
+
"♾",
|
| 527 |
+
"⚒",
|
| 528 |
+
"⚔",
|
| 529 |
+
"⚕",
|
| 530 |
+
"⚖",
|
| 531 |
+
"⚗",
|
| 532 |
+
"⚙",
|
| 533 |
+
"⚛",
|
| 534 |
+
"⚜",
|
| 535 |
+
"⚠",
|
| 536 |
+
"⚧",
|
| 537 |
+
"⚰",
|
| 538 |
+
"⚱",
|
| 539 |
+
"⛈",
|
| 540 |
+
"⛏",
|
| 541 |
+
"⛑",
|
| 542 |
+
"⛓",
|
| 543 |
+
"⛩",
|
| 544 |
+
"⛰",
|
| 545 |
+
"⛱",
|
| 546 |
+
"⛴",
|
| 547 |
+
"⛷",
|
| 548 |
+
"⛸",
|
| 549 |
+
"⛹",
|
| 550 |
+
"✂",
|
| 551 |
+
"✈",
|
| 552 |
+
"✉",
|
| 553 |
+
"✌",
|
| 554 |
+
"✍",
|
| 555 |
+
"✏",
|
| 556 |
+
"✒",
|
| 557 |
+
"✔",
|
| 558 |
+
"✖",
|
| 559 |
+
"✝",
|
| 560 |
+
"✡",
|
| 561 |
+
"✳",
|
| 562 |
+
"✴",
|
| 563 |
+
"❄",
|
| 564 |
+
"❇",
|
| 565 |
+
"❣",
|
| 566 |
+
"❤",
|
| 567 |
+
"➡",
|
| 568 |
+
"⤴",
|
| 569 |
+
"⤵",
|
| 570 |
+
"⬅",
|
| 571 |
+
"⬆",
|
| 572 |
+
"⬇",
|
| 573 |
+
"🅰",
|
| 574 |
+
"🅱",
|
| 575 |
+
"🅾",
|
| 576 |
+
"🅿",
|
| 577 |
+
"🌡",
|
| 578 |
+
"🌤",
|
| 579 |
+
"🌥",
|
| 580 |
+
"🌦",
|
| 581 |
+
"🌧",
|
| 582 |
+
"🌨",
|
| 583 |
+
"🌩",
|
| 584 |
+
"🌪",
|
| 585 |
+
"🌫",
|
| 586 |
+
"🌬",
|
| 587 |
+
"🌶",
|
| 588 |
+
"🍽",
|
| 589 |
+
"🎖",
|
| 590 |
+
"🎗",
|
| 591 |
+
"🎙",
|
| 592 |
+
"🎚",
|
| 593 |
+
"🎛",
|
| 594 |
+
"🎞",
|
| 595 |
+
"🎟",
|
| 596 |
+
"🏋",
|
| 597 |
+
"🏌",
|
| 598 |
+
"🏍",
|
| 599 |
+
"🏎",
|
| 600 |
+
"🏔",
|
| 601 |
+
"🏕",
|
| 602 |
+
"🏖",
|
| 603 |
+
"🏗",
|
| 604 |
+
"🏘",
|
| 605 |
+
"🏙",
|
| 606 |
+
"🏚",
|
| 607 |
+
"🏛",
|
| 608 |
+
"🏜",
|
| 609 |
+
"🏝",
|
| 610 |
+
"🏞",
|
| 611 |
+
"🏟",
|
| 612 |
+
"🏳",
|
| 613 |
+
"🏵",
|
| 614 |
+
"🏷",
|
| 615 |
+
"🐿",
|
| 616 |
+
"👁",
|
| 617 |
+
"📽",
|
| 618 |
+
"🕉",
|
| 619 |
+
"🕊",
|
| 620 |
+
"🕯",
|
| 621 |
+
"🕰",
|
| 622 |
+
"🕳",
|
| 623 |
+
"🕴",
|
| 624 |
+
"🕵",
|
| 625 |
+
"🕶",
|
| 626 |
+
"🕷",
|
| 627 |
+
"🕸",
|
| 628 |
+
"🕹",
|
| 629 |
+
"🖇",
|
| 630 |
+
"🖊",
|
| 631 |
+
"🖋",
|
| 632 |
+
"🖌",
|
| 633 |
+
"🖍",
|
| 634 |
+
"🖐",
|
| 635 |
+
"🖥",
|
| 636 |
+
"🖨",
|
| 637 |
+
"🖱",
|
| 638 |
+
"🖲",
|
| 639 |
+
"🖼",
|
| 640 |
+
"🗂",
|
| 641 |
+
"🗃",
|
| 642 |
+
"🗄",
|
| 643 |
+
"🗑",
|
| 644 |
+
"🗒",
|
| 645 |
+
"🗓",
|
| 646 |
+
"🗜",
|
| 647 |
+
"🗝",
|
| 648 |
+
"🗞",
|
| 649 |
+
"🗡",
|
| 650 |
+
"🗣",
|
| 651 |
+
"🗨",
|
| 652 |
+
"🗯",
|
| 653 |
+
"🗳",
|
| 654 |
+
"🗺",
|
| 655 |
+
"🛋",
|
| 656 |
+
"🛍",
|
| 657 |
+
"🛎",
|
| 658 |
+
"🛏",
|
| 659 |
+
"🛠",
|
| 660 |
+
"🛡",
|
| 661 |
+
"🛢",
|
| 662 |
+
"🛣",
|
| 663 |
+
"🛤",
|
| 664 |
+
"🛥",
|
| 665 |
+
"🛩",
|
| 666 |
+
"🛰",
|
| 667 |
+
"🛳",
|
| 668 |
+
]
|
| 669 |
+
),
|
| 670 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode16-0-0.py
ADDED
|
@@ -0,0 +1,683 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"16.0.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1552, 1562, 0),
|
| 18 |
+
(1564, 1564, 0),
|
| 19 |
+
(1611, 1631, 0),
|
| 20 |
+
(1648, 1648, 0),
|
| 21 |
+
(1750, 1756, 0),
|
| 22 |
+
(1759, 1764, 0),
|
| 23 |
+
(1767, 1768, 0),
|
| 24 |
+
(1770, 1773, 0),
|
| 25 |
+
(1809, 1809, 0),
|
| 26 |
+
(1840, 1866, 0),
|
| 27 |
+
(1958, 1968, 0),
|
| 28 |
+
(2027, 2035, 0),
|
| 29 |
+
(2045, 2045, 0),
|
| 30 |
+
(2070, 2073, 0),
|
| 31 |
+
(2075, 2083, 0),
|
| 32 |
+
(2085, 2087, 0),
|
| 33 |
+
(2089, 2093, 0),
|
| 34 |
+
(2137, 2139, 0),
|
| 35 |
+
(2199, 2207, 0),
|
| 36 |
+
(2250, 2273, 0),
|
| 37 |
+
(2275, 2307, 0),
|
| 38 |
+
(2362, 2364, 0),
|
| 39 |
+
(2366, 2383, 0),
|
| 40 |
+
(2385, 2391, 0),
|
| 41 |
+
(2402, 2403, 0),
|
| 42 |
+
(2433, 2435, 0),
|
| 43 |
+
(2492, 2492, 0),
|
| 44 |
+
(2494, 2500, 0),
|
| 45 |
+
(2503, 2504, 0),
|
| 46 |
+
(2507, 2509, 0),
|
| 47 |
+
(2519, 2519, 0),
|
| 48 |
+
(2530, 2531, 0),
|
| 49 |
+
(2558, 2558, 0),
|
| 50 |
+
(2561, 2563, 0),
|
| 51 |
+
(2620, 2620, 0),
|
| 52 |
+
(2622, 2626, 0),
|
| 53 |
+
(2631, 2632, 0),
|
| 54 |
+
(2635, 2637, 0),
|
| 55 |
+
(2641, 2641, 0),
|
| 56 |
+
(2672, 2673, 0),
|
| 57 |
+
(2677, 2677, 0),
|
| 58 |
+
(2689, 2691, 0),
|
| 59 |
+
(2748, 2748, 0),
|
| 60 |
+
(2750, 2757, 0),
|
| 61 |
+
(2759, 2761, 0),
|
| 62 |
+
(2763, 2765, 0),
|
| 63 |
+
(2786, 2787, 0),
|
| 64 |
+
(2810, 2815, 0),
|
| 65 |
+
(2817, 2819, 0),
|
| 66 |
+
(2876, 2876, 0),
|
| 67 |
+
(2878, 2884, 0),
|
| 68 |
+
(2887, 2888, 0),
|
| 69 |
+
(2891, 2893, 0),
|
| 70 |
+
(2901, 2903, 0),
|
| 71 |
+
(2914, 2915, 0),
|
| 72 |
+
(2946, 2946, 0),
|
| 73 |
+
(3006, 3010, 0),
|
| 74 |
+
(3014, 3016, 0),
|
| 75 |
+
(3018, 3021, 0),
|
| 76 |
+
(3031, 3031, 0),
|
| 77 |
+
(3072, 3076, 0),
|
| 78 |
+
(3132, 3132, 0),
|
| 79 |
+
(3134, 3140, 0),
|
| 80 |
+
(3142, 3144, 0),
|
| 81 |
+
(3146, 3149, 0),
|
| 82 |
+
(3157, 3158, 0),
|
| 83 |
+
(3170, 3171, 0),
|
| 84 |
+
(3201, 3203, 0),
|
| 85 |
+
(3260, 3260, 0),
|
| 86 |
+
(3262, 3268, 0),
|
| 87 |
+
(3270, 3272, 0),
|
| 88 |
+
(3274, 3277, 0),
|
| 89 |
+
(3285, 3286, 0),
|
| 90 |
+
(3298, 3299, 0),
|
| 91 |
+
(3315, 3315, 0),
|
| 92 |
+
(3328, 3331, 0),
|
| 93 |
+
(3387, 3388, 0),
|
| 94 |
+
(3390, 3396, 0),
|
| 95 |
+
(3398, 3400, 0),
|
| 96 |
+
(3402, 3405, 0),
|
| 97 |
+
(3415, 3415, 0),
|
| 98 |
+
(3426, 3427, 0),
|
| 99 |
+
(3457, 3459, 0),
|
| 100 |
+
(3530, 3530, 0),
|
| 101 |
+
(3535, 3540, 0),
|
| 102 |
+
(3542, 3542, 0),
|
| 103 |
+
(3544, 3551, 0),
|
| 104 |
+
(3570, 3571, 0),
|
| 105 |
+
(3633, 3633, 0),
|
| 106 |
+
(3636, 3642, 0),
|
| 107 |
+
(3655, 3662, 0),
|
| 108 |
+
(3761, 3761, 0),
|
| 109 |
+
(3764, 3772, 0),
|
| 110 |
+
(3784, 3790, 0),
|
| 111 |
+
(3864, 3865, 0),
|
| 112 |
+
(3893, 3893, 0),
|
| 113 |
+
(3895, 3895, 0),
|
| 114 |
+
(3897, 3897, 0),
|
| 115 |
+
(3902, 3903, 0),
|
| 116 |
+
(3953, 3972, 0),
|
| 117 |
+
(3974, 3975, 0),
|
| 118 |
+
(3981, 3991, 0),
|
| 119 |
+
(3993, 4028, 0),
|
| 120 |
+
(4038, 4038, 0),
|
| 121 |
+
(4139, 4158, 0),
|
| 122 |
+
(4182, 4185, 0),
|
| 123 |
+
(4190, 4192, 0),
|
| 124 |
+
(4194, 4196, 0),
|
| 125 |
+
(4199, 4205, 0),
|
| 126 |
+
(4209, 4212, 0),
|
| 127 |
+
(4226, 4237, 0),
|
| 128 |
+
(4239, 4239, 0),
|
| 129 |
+
(4250, 4253, 0),
|
| 130 |
+
(4352, 4447, 2),
|
| 131 |
+
(4448, 4607, 0),
|
| 132 |
+
(4957, 4959, 0),
|
| 133 |
+
(5906, 5909, 0),
|
| 134 |
+
(5938, 5940, 0),
|
| 135 |
+
(5970, 5971, 0),
|
| 136 |
+
(6002, 6003, 0),
|
| 137 |
+
(6068, 6099, 0),
|
| 138 |
+
(6109, 6109, 0),
|
| 139 |
+
(6155, 6159, 0),
|
| 140 |
+
(6277, 6278, 0),
|
| 141 |
+
(6313, 6313, 0),
|
| 142 |
+
(6432, 6443, 0),
|
| 143 |
+
(6448, 6459, 0),
|
| 144 |
+
(6679, 6683, 0),
|
| 145 |
+
(6741, 6750, 0),
|
| 146 |
+
(6752, 6780, 0),
|
| 147 |
+
(6783, 6783, 0),
|
| 148 |
+
(6832, 6862, 0),
|
| 149 |
+
(6912, 6916, 0),
|
| 150 |
+
(6964, 6980, 0),
|
| 151 |
+
(7019, 7027, 0),
|
| 152 |
+
(7040, 7042, 0),
|
| 153 |
+
(7073, 7085, 0),
|
| 154 |
+
(7142, 7155, 0),
|
| 155 |
+
(7204, 7223, 0),
|
| 156 |
+
(7376, 7378, 0),
|
| 157 |
+
(7380, 7400, 0),
|
| 158 |
+
(7405, 7405, 0),
|
| 159 |
+
(7412, 7412, 0),
|
| 160 |
+
(7415, 7417, 0),
|
| 161 |
+
(7616, 7679, 0),
|
| 162 |
+
(8203, 8207, 0),
|
| 163 |
+
(8232, 8238, 0),
|
| 164 |
+
(8288, 8303, 0),
|
| 165 |
+
(8400, 8432, 0),
|
| 166 |
+
(8986, 8987, 2),
|
| 167 |
+
(9001, 9002, 2),
|
| 168 |
+
(9193, 9196, 2),
|
| 169 |
+
(9200, 9200, 2),
|
| 170 |
+
(9203, 9203, 2),
|
| 171 |
+
(9725, 9726, 2),
|
| 172 |
+
(9748, 9749, 2),
|
| 173 |
+
(9776, 9783, 2),
|
| 174 |
+
(9800, 9811, 2),
|
| 175 |
+
(9855, 9855, 2),
|
| 176 |
+
(9866, 9871, 2),
|
| 177 |
+
(9875, 9875, 2),
|
| 178 |
+
(9889, 9889, 2),
|
| 179 |
+
(9898, 9899, 2),
|
| 180 |
+
(9917, 9918, 2),
|
| 181 |
+
(9924, 9925, 2),
|
| 182 |
+
(9934, 9934, 2),
|
| 183 |
+
(9940, 9940, 2),
|
| 184 |
+
(9962, 9962, 2),
|
| 185 |
+
(9970, 9971, 2),
|
| 186 |
+
(9973, 9973, 2),
|
| 187 |
+
(9978, 9978, 2),
|
| 188 |
+
(9981, 9981, 2),
|
| 189 |
+
(9989, 9989, 2),
|
| 190 |
+
(9994, 9995, 2),
|
| 191 |
+
(10024, 10024, 2),
|
| 192 |
+
(10060, 10060, 2),
|
| 193 |
+
(10062, 10062, 2),
|
| 194 |
+
(10067, 10069, 2),
|
| 195 |
+
(10071, 10071, 2),
|
| 196 |
+
(10133, 10135, 2),
|
| 197 |
+
(10160, 10160, 2),
|
| 198 |
+
(10175, 10175, 2),
|
| 199 |
+
(11035, 11036, 2),
|
| 200 |
+
(11088, 11088, 2),
|
| 201 |
+
(11093, 11093, 2),
|
| 202 |
+
(11503, 11505, 0),
|
| 203 |
+
(11647, 11647, 0),
|
| 204 |
+
(11744, 11775, 0),
|
| 205 |
+
(11904, 11929, 2),
|
| 206 |
+
(11931, 12019, 2),
|
| 207 |
+
(12032, 12245, 2),
|
| 208 |
+
(12272, 12329, 2),
|
| 209 |
+
(12330, 12335, 0),
|
| 210 |
+
(12336, 12350, 2),
|
| 211 |
+
(12353, 12438, 2),
|
| 212 |
+
(12441, 12442, 0),
|
| 213 |
+
(12443, 12543, 2),
|
| 214 |
+
(12549, 12591, 2),
|
| 215 |
+
(12593, 12643, 2),
|
| 216 |
+
(12644, 12644, 0),
|
| 217 |
+
(12645, 12686, 2),
|
| 218 |
+
(12688, 12773, 2),
|
| 219 |
+
(12783, 12830, 2),
|
| 220 |
+
(12832, 12871, 2),
|
| 221 |
+
(12880, 42124, 2),
|
| 222 |
+
(42128, 42182, 2),
|
| 223 |
+
(42607, 42610, 0),
|
| 224 |
+
(42612, 42621, 0),
|
| 225 |
+
(42654, 42655, 0),
|
| 226 |
+
(42736, 42737, 0),
|
| 227 |
+
(43010, 43010, 0),
|
| 228 |
+
(43014, 43014, 0),
|
| 229 |
+
(43019, 43019, 0),
|
| 230 |
+
(43043, 43047, 0),
|
| 231 |
+
(43052, 43052, 0),
|
| 232 |
+
(43136, 43137, 0),
|
| 233 |
+
(43188, 43205, 0),
|
| 234 |
+
(43232, 43249, 0),
|
| 235 |
+
(43263, 43263, 0),
|
| 236 |
+
(43302, 43309, 0),
|
| 237 |
+
(43335, 43347, 0),
|
| 238 |
+
(43360, 43388, 2),
|
| 239 |
+
(43392, 43395, 0),
|
| 240 |
+
(43443, 43456, 0),
|
| 241 |
+
(43493, 43493, 0),
|
| 242 |
+
(43561, 43574, 0),
|
| 243 |
+
(43587, 43587, 0),
|
| 244 |
+
(43596, 43597, 0),
|
| 245 |
+
(43643, 43645, 0),
|
| 246 |
+
(43696, 43696, 0),
|
| 247 |
+
(43698, 43700, 0),
|
| 248 |
+
(43703, 43704, 0),
|
| 249 |
+
(43710, 43711, 0),
|
| 250 |
+
(43713, 43713, 0),
|
| 251 |
+
(43755, 43759, 0),
|
| 252 |
+
(43765, 43766, 0),
|
| 253 |
+
(44003, 44010, 0),
|
| 254 |
+
(44012, 44013, 0),
|
| 255 |
+
(44032, 55203, 2),
|
| 256 |
+
(55216, 55295, 0),
|
| 257 |
+
(63744, 64255, 2),
|
| 258 |
+
(64286, 64286, 0),
|
| 259 |
+
(65024, 65039, 0),
|
| 260 |
+
(65040, 65049, 2),
|
| 261 |
+
(65056, 65071, 0),
|
| 262 |
+
(65072, 65106, 2),
|
| 263 |
+
(65108, 65126, 2),
|
| 264 |
+
(65128, 65131, 2),
|
| 265 |
+
(65279, 65279, 0),
|
| 266 |
+
(65281, 65376, 2),
|
| 267 |
+
(65440, 65440, 0),
|
| 268 |
+
(65504, 65510, 2),
|
| 269 |
+
(65520, 65531, 0),
|
| 270 |
+
(66045, 66045, 0),
|
| 271 |
+
(66272, 66272, 0),
|
| 272 |
+
(66422, 66426, 0),
|
| 273 |
+
(68097, 68099, 0),
|
| 274 |
+
(68101, 68102, 0),
|
| 275 |
+
(68108, 68111, 0),
|
| 276 |
+
(68152, 68154, 0),
|
| 277 |
+
(68159, 68159, 0),
|
| 278 |
+
(68325, 68326, 0),
|
| 279 |
+
(68900, 68903, 0),
|
| 280 |
+
(68969, 68973, 0),
|
| 281 |
+
(69291, 69292, 0),
|
| 282 |
+
(69372, 69375, 0),
|
| 283 |
+
(69446, 69456, 0),
|
| 284 |
+
(69506, 69509, 0),
|
| 285 |
+
(69632, 69634, 0),
|
| 286 |
+
(69688, 69702, 0),
|
| 287 |
+
(69744, 69744, 0),
|
| 288 |
+
(69747, 69748, 0),
|
| 289 |
+
(69759, 69762, 0),
|
| 290 |
+
(69808, 69818, 0),
|
| 291 |
+
(69826, 69826, 0),
|
| 292 |
+
(69888, 69890, 0),
|
| 293 |
+
(69927, 69940, 0),
|
| 294 |
+
(69957, 69958, 0),
|
| 295 |
+
(70003, 70003, 0),
|
| 296 |
+
(70016, 70018, 0),
|
| 297 |
+
(70067, 70080, 0),
|
| 298 |
+
(70089, 70092, 0),
|
| 299 |
+
(70094, 70095, 0),
|
| 300 |
+
(70188, 70199, 0),
|
| 301 |
+
(70206, 70206, 0),
|
| 302 |
+
(70209, 70209, 0),
|
| 303 |
+
(70367, 70378, 0),
|
| 304 |
+
(70400, 70403, 0),
|
| 305 |
+
(70459, 70460, 0),
|
| 306 |
+
(70462, 70468, 0),
|
| 307 |
+
(70471, 70472, 0),
|
| 308 |
+
(70475, 70477, 0),
|
| 309 |
+
(70487, 70487, 0),
|
| 310 |
+
(70498, 70499, 0),
|
| 311 |
+
(70502, 70508, 0),
|
| 312 |
+
(70512, 70516, 0),
|
| 313 |
+
(70584, 70592, 0),
|
| 314 |
+
(70594, 70594, 0),
|
| 315 |
+
(70597, 70597, 0),
|
| 316 |
+
(70599, 70602, 0),
|
| 317 |
+
(70604, 70608, 0),
|
| 318 |
+
(70610, 70610, 0),
|
| 319 |
+
(70625, 70626, 0),
|
| 320 |
+
(70709, 70726, 0),
|
| 321 |
+
(70750, 70750, 0),
|
| 322 |
+
(70832, 70851, 0),
|
| 323 |
+
(71087, 71093, 0),
|
| 324 |
+
(71096, 71104, 0),
|
| 325 |
+
(71132, 71133, 0),
|
| 326 |
+
(71216, 71232, 0),
|
| 327 |
+
(71339, 71351, 0),
|
| 328 |
+
(71453, 71467, 0),
|
| 329 |
+
(71724, 71738, 0),
|
| 330 |
+
(71984, 71989, 0),
|
| 331 |
+
(71991, 71992, 0),
|
| 332 |
+
(71995, 71998, 0),
|
| 333 |
+
(72000, 72000, 0),
|
| 334 |
+
(72002, 72003, 0),
|
| 335 |
+
(72145, 72151, 0),
|
| 336 |
+
(72154, 72160, 0),
|
| 337 |
+
(72164, 72164, 0),
|
| 338 |
+
(72193, 72202, 0),
|
| 339 |
+
(72243, 72249, 0),
|
| 340 |
+
(72251, 72254, 0),
|
| 341 |
+
(72263, 72263, 0),
|
| 342 |
+
(72273, 72283, 0),
|
| 343 |
+
(72330, 72345, 0),
|
| 344 |
+
(72751, 72758, 0),
|
| 345 |
+
(72760, 72767, 0),
|
| 346 |
+
(72850, 72871, 0),
|
| 347 |
+
(72873, 72886, 0),
|
| 348 |
+
(73009, 73014, 0),
|
| 349 |
+
(73018, 73018, 0),
|
| 350 |
+
(73020, 73021, 0),
|
| 351 |
+
(73023, 73029, 0),
|
| 352 |
+
(73031, 73031, 0),
|
| 353 |
+
(73098, 73102, 0),
|
| 354 |
+
(73104, 73105, 0),
|
| 355 |
+
(73107, 73111, 0),
|
| 356 |
+
(73459, 73462, 0),
|
| 357 |
+
(73472, 73473, 0),
|
| 358 |
+
(73475, 73475, 0),
|
| 359 |
+
(73524, 73530, 0),
|
| 360 |
+
(73534, 73538, 0),
|
| 361 |
+
(73562, 73562, 0),
|
| 362 |
+
(78896, 78912, 0),
|
| 363 |
+
(78919, 78933, 0),
|
| 364 |
+
(90398, 90415, 0),
|
| 365 |
+
(92912, 92916, 0),
|
| 366 |
+
(92976, 92982, 0),
|
| 367 |
+
(94031, 94031, 0),
|
| 368 |
+
(94033, 94087, 0),
|
| 369 |
+
(94095, 94098, 0),
|
| 370 |
+
(94176, 94179, 2),
|
| 371 |
+
(94180, 94180, 0),
|
| 372 |
+
(94192, 94193, 0),
|
| 373 |
+
(94208, 100343, 2),
|
| 374 |
+
(100352, 101589, 2),
|
| 375 |
+
(101631, 101640, 2),
|
| 376 |
+
(110576, 110579, 2),
|
| 377 |
+
(110581, 110587, 2),
|
| 378 |
+
(110589, 110590, 2),
|
| 379 |
+
(110592, 110882, 2),
|
| 380 |
+
(110898, 110898, 2),
|
| 381 |
+
(110928, 110930, 2),
|
| 382 |
+
(110933, 110933, 2),
|
| 383 |
+
(110948, 110951, 2),
|
| 384 |
+
(110960, 111355, 2),
|
| 385 |
+
(113821, 113822, 0),
|
| 386 |
+
(113824, 113827, 0),
|
| 387 |
+
(118528, 118573, 0),
|
| 388 |
+
(118576, 118598, 0),
|
| 389 |
+
(119141, 119145, 0),
|
| 390 |
+
(119149, 119170, 0),
|
| 391 |
+
(119173, 119179, 0),
|
| 392 |
+
(119210, 119213, 0),
|
| 393 |
+
(119362, 119364, 0),
|
| 394 |
+
(119552, 119638, 2),
|
| 395 |
+
(119648, 119670, 2),
|
| 396 |
+
(121344, 121398, 0),
|
| 397 |
+
(121403, 121452, 0),
|
| 398 |
+
(121461, 121461, 0),
|
| 399 |
+
(121476, 121476, 0),
|
| 400 |
+
(121499, 121503, 0),
|
| 401 |
+
(121505, 121519, 0),
|
| 402 |
+
(122880, 122886, 0),
|
| 403 |
+
(122888, 122904, 0),
|
| 404 |
+
(122907, 122913, 0),
|
| 405 |
+
(122915, 122916, 0),
|
| 406 |
+
(122918, 122922, 0),
|
| 407 |
+
(123023, 123023, 0),
|
| 408 |
+
(123184, 123190, 0),
|
| 409 |
+
(123566, 123566, 0),
|
| 410 |
+
(123628, 123631, 0),
|
| 411 |
+
(124140, 124143, 0),
|
| 412 |
+
(124398, 124399, 0),
|
| 413 |
+
(125136, 125142, 0),
|
| 414 |
+
(125252, 125258, 0),
|
| 415 |
+
(126980, 126980, 2),
|
| 416 |
+
(127183, 127183, 2),
|
| 417 |
+
(127374, 127374, 2),
|
| 418 |
+
(127377, 127386, 2),
|
| 419 |
+
(127488, 127490, 2),
|
| 420 |
+
(127504, 127547, 2),
|
| 421 |
+
(127552, 127560, 2),
|
| 422 |
+
(127568, 127569, 2),
|
| 423 |
+
(127584, 127589, 2),
|
| 424 |
+
(127744, 127776, 2),
|
| 425 |
+
(127789, 127797, 2),
|
| 426 |
+
(127799, 127868, 2),
|
| 427 |
+
(127870, 127891, 2),
|
| 428 |
+
(127904, 127946, 2),
|
| 429 |
+
(127951, 127955, 2),
|
| 430 |
+
(127968, 127984, 2),
|
| 431 |
+
(127988, 127988, 2),
|
| 432 |
+
(127992, 127994, 2),
|
| 433 |
+
(127995, 127999, 0),
|
| 434 |
+
(128000, 128062, 2),
|
| 435 |
+
(128064, 128064, 2),
|
| 436 |
+
(128066, 128252, 2),
|
| 437 |
+
(128255, 128317, 2),
|
| 438 |
+
(128331, 128334, 2),
|
| 439 |
+
(128336, 128359, 2),
|
| 440 |
+
(128378, 128378, 2),
|
| 441 |
+
(128405, 128406, 2),
|
| 442 |
+
(128420, 128420, 2),
|
| 443 |
+
(128507, 128591, 2),
|
| 444 |
+
(128640, 128709, 2),
|
| 445 |
+
(128716, 128716, 2),
|
| 446 |
+
(128720, 128722, 2),
|
| 447 |
+
(128725, 128727, 2),
|
| 448 |
+
(128732, 128735, 2),
|
| 449 |
+
(128747, 128748, 2),
|
| 450 |
+
(128756, 128764, 2),
|
| 451 |
+
(128992, 129003, 2),
|
| 452 |
+
(129008, 129008, 2),
|
| 453 |
+
(129292, 129338, 2),
|
| 454 |
+
(129340, 129349, 2),
|
| 455 |
+
(129351, 129535, 2),
|
| 456 |
+
(129648, 129660, 2),
|
| 457 |
+
(129664, 129673, 2),
|
| 458 |
+
(129679, 129734, 2),
|
| 459 |
+
(129742, 129756, 2),
|
| 460 |
+
(129759, 129769, 2),
|
| 461 |
+
(129776, 129784, 2),
|
| 462 |
+
(131072, 196605, 2),
|
| 463 |
+
(196608, 262141, 2),
|
| 464 |
+
(917504, 921599, 0),
|
| 465 |
+
],
|
| 466 |
+
frozenset(
|
| 467 |
+
[
|
| 468 |
+
"#",
|
| 469 |
+
"*",
|
| 470 |
+
"0",
|
| 471 |
+
"1",
|
| 472 |
+
"2",
|
| 473 |
+
"3",
|
| 474 |
+
"4",
|
| 475 |
+
"5",
|
| 476 |
+
"6",
|
| 477 |
+
"7",
|
| 478 |
+
"8",
|
| 479 |
+
"9",
|
| 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 |
+
"▪",
|
| 506 |
+
"▫",
|
| 507 |
+
"▶",
|
| 508 |
+
"◀",
|
| 509 |
+
"◻",
|
| 510 |
+
"◼",
|
| 511 |
+
"☀",
|
| 512 |
+
"☁",
|
| 513 |
+
"☂",
|
| 514 |
+
"☃",
|
| 515 |
+
"☄",
|
| 516 |
+
"☎",
|
| 517 |
+
"☑",
|
| 518 |
+
"☘",
|
| 519 |
+
"☝",
|
| 520 |
+
"☠",
|
| 521 |
+
"☢",
|
| 522 |
+
"☣",
|
| 523 |
+
"☦",
|
| 524 |
+
"☪",
|
| 525 |
+
"☮",
|
| 526 |
+
"☯",
|
| 527 |
+
"☸",
|
| 528 |
+
"☹",
|
| 529 |
+
"☺",
|
| 530 |
+
"♀",
|
| 531 |
+
"♂",
|
| 532 |
+
"♟",
|
| 533 |
+
"♠",
|
| 534 |
+
"♣",
|
| 535 |
+
"♥",
|
| 536 |
+
"♦",
|
| 537 |
+
"♨",
|
| 538 |
+
"♻",
|
| 539 |
+
"♾",
|
| 540 |
+
"⚒",
|
| 541 |
+
"⚔",
|
| 542 |
+
"⚕",
|
| 543 |
+
"⚖",
|
| 544 |
+
"⚗",
|
| 545 |
+
"⚙",
|
| 546 |
+
"⚛",
|
| 547 |
+
"⚜",
|
| 548 |
+
"⚠",
|
| 549 |
+
"⚧",
|
| 550 |
+
"⚰",
|
| 551 |
+
"⚱",
|
| 552 |
+
"⛈",
|
| 553 |
+
"⛏",
|
| 554 |
+
"⛑",
|
| 555 |
+
"⛓",
|
| 556 |
+
"⛩",
|
| 557 |
+
"⛰",
|
| 558 |
+
"⛱",
|
| 559 |
+
"⛴",
|
| 560 |
+
"⛷",
|
| 561 |
+
"⛸",
|
| 562 |
+
"⛹",
|
| 563 |
+
"✂",
|
| 564 |
+
"✈",
|
| 565 |
+
"✉",
|
| 566 |
+
"✌",
|
| 567 |
+
"✍",
|
| 568 |
+
"✏",
|
| 569 |
+
"✒",
|
| 570 |
+
"✔",
|
| 571 |
+
"✖",
|
| 572 |
+
"✝",
|
| 573 |
+
"✡",
|
| 574 |
+
"✳",
|
| 575 |
+
"✴",
|
| 576 |
+
"❄",
|
| 577 |
+
"❇",
|
| 578 |
+
"❣",
|
| 579 |
+
"❤",
|
| 580 |
+
"➡",
|
| 581 |
+
"⤴",
|
| 582 |
+
"⤵",
|
| 583 |
+
"⬅",
|
| 584 |
+
"⬆",
|
| 585 |
+
"⬇",
|
| 586 |
+
"🅰",
|
| 587 |
+
"🅱",
|
| 588 |
+
"🅾",
|
| 589 |
+
"🅿",
|
| 590 |
+
"🌡",
|
| 591 |
+
"🌤",
|
| 592 |
+
"🌥",
|
| 593 |
+
"🌦",
|
| 594 |
+
"🌧",
|
| 595 |
+
"🌨",
|
| 596 |
+
"🌩",
|
| 597 |
+
"🌪",
|
| 598 |
+
"🌫",
|
| 599 |
+
"🌬",
|
| 600 |
+
"🌶",
|
| 601 |
+
"🍽",
|
| 602 |
+
"🎖",
|
| 603 |
+
"🎗",
|
| 604 |
+
"🎙",
|
| 605 |
+
"🎚",
|
| 606 |
+
"🎛",
|
| 607 |
+
"🎞",
|
| 608 |
+
"🎟",
|
| 609 |
+
"🏋",
|
| 610 |
+
"🏌",
|
| 611 |
+
"🏍",
|
| 612 |
+
"🏎",
|
| 613 |
+
"🏔",
|
| 614 |
+
"🏕",
|
| 615 |
+
"🏖",
|
| 616 |
+
"🏗",
|
| 617 |
+
"🏘",
|
| 618 |
+
"🏙",
|
| 619 |
+
"🏚",
|
| 620 |
+
"🏛",
|
| 621 |
+
"🏜",
|
| 622 |
+
"🏝",
|
| 623 |
+
"🏞",
|
| 624 |
+
"🏟",
|
| 625 |
+
"🏳",
|
| 626 |
+
"🏵",
|
| 627 |
+
"🏷",
|
| 628 |
+
"🐿",
|
| 629 |
+
"👁",
|
| 630 |
+
"📽",
|
| 631 |
+
"🕉",
|
| 632 |
+
"🕊",
|
| 633 |
+
"🕯",
|
| 634 |
+
"🕰",
|
| 635 |
+
"🕳",
|
| 636 |
+
"🕴",
|
| 637 |
+
"🕵",
|
| 638 |
+
"🕶",
|
| 639 |
+
"🕷",
|
| 640 |
+
"🕸",
|
| 641 |
+
"🕹",
|
| 642 |
+
"🖇",
|
| 643 |
+
"🖊",
|
| 644 |
+
"🖋",
|
| 645 |
+
"🖌",
|
| 646 |
+
"🖍",
|
| 647 |
+
"🖐",
|
| 648 |
+
"🖥",
|
| 649 |
+
"🖨",
|
| 650 |
+
"🖱",
|
| 651 |
+
"🖲",
|
| 652 |
+
"🖼",
|
| 653 |
+
"🗂",
|
| 654 |
+
"🗃",
|
| 655 |
+
"🗄",
|
| 656 |
+
"🗑",
|
| 657 |
+
"🗒",
|
| 658 |
+
"🗓",
|
| 659 |
+
"🗜",
|
| 660 |
+
"🗝",
|
| 661 |
+
"🗞",
|
| 662 |
+
"🗡",
|
| 663 |
+
"🗣",
|
| 664 |
+
"🗨",
|
| 665 |
+
"🗯",
|
| 666 |
+
"🗳",
|
| 667 |
+
"🗺",
|
| 668 |
+
"🛋",
|
| 669 |
+
"🛍",
|
| 670 |
+
"🛎",
|
| 671 |
+
"🛏",
|
| 672 |
+
"🛠",
|
| 673 |
+
"🛡",
|
| 674 |
+
"🛢",
|
| 675 |
+
"🛣",
|
| 676 |
+
"🛤",
|
| 677 |
+
"🛥",
|
| 678 |
+
"🛩",
|
| 679 |
+
"🛰",
|
| 680 |
+
"🛳",
|
| 681 |
+
]
|
| 682 |
+
),
|
| 683 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode17-0-0.py
ADDED
|
@@ -0,0 +1,691 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"17.0.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1552, 1562, 0),
|
| 18 |
+
(1564, 1564, 0),
|
| 19 |
+
(1611, 1631, 0),
|
| 20 |
+
(1648, 1648, 0),
|
| 21 |
+
(1750, 1756, 0),
|
| 22 |
+
(1759, 1764, 0),
|
| 23 |
+
(1767, 1768, 0),
|
| 24 |
+
(1770, 1773, 0),
|
| 25 |
+
(1809, 1809, 0),
|
| 26 |
+
(1840, 1866, 0),
|
| 27 |
+
(1958, 1968, 0),
|
| 28 |
+
(2027, 2035, 0),
|
| 29 |
+
(2045, 2045, 0),
|
| 30 |
+
(2070, 2073, 0),
|
| 31 |
+
(2075, 2083, 0),
|
| 32 |
+
(2085, 2087, 0),
|
| 33 |
+
(2089, 2093, 0),
|
| 34 |
+
(2137, 2139, 0),
|
| 35 |
+
(2199, 2207, 0),
|
| 36 |
+
(2250, 2273, 0),
|
| 37 |
+
(2275, 2307, 0),
|
| 38 |
+
(2362, 2364, 0),
|
| 39 |
+
(2366, 2383, 0),
|
| 40 |
+
(2385, 2391, 0),
|
| 41 |
+
(2402, 2403, 0),
|
| 42 |
+
(2433, 2435, 0),
|
| 43 |
+
(2492, 2492, 0),
|
| 44 |
+
(2494, 2500, 0),
|
| 45 |
+
(2503, 2504, 0),
|
| 46 |
+
(2507, 2509, 0),
|
| 47 |
+
(2519, 2519, 0),
|
| 48 |
+
(2530, 2531, 0),
|
| 49 |
+
(2558, 2558, 0),
|
| 50 |
+
(2561, 2563, 0),
|
| 51 |
+
(2620, 2620, 0),
|
| 52 |
+
(2622, 2626, 0),
|
| 53 |
+
(2631, 2632, 0),
|
| 54 |
+
(2635, 2637, 0),
|
| 55 |
+
(2641, 2641, 0),
|
| 56 |
+
(2672, 2673, 0),
|
| 57 |
+
(2677, 2677, 0),
|
| 58 |
+
(2689, 2691, 0),
|
| 59 |
+
(2748, 2748, 0),
|
| 60 |
+
(2750, 2757, 0),
|
| 61 |
+
(2759, 2761, 0),
|
| 62 |
+
(2763, 2765, 0),
|
| 63 |
+
(2786, 2787, 0),
|
| 64 |
+
(2810, 2815, 0),
|
| 65 |
+
(2817, 2819, 0),
|
| 66 |
+
(2876, 2876, 0),
|
| 67 |
+
(2878, 2884, 0),
|
| 68 |
+
(2887, 2888, 0),
|
| 69 |
+
(2891, 2893, 0),
|
| 70 |
+
(2901, 2903, 0),
|
| 71 |
+
(2914, 2915, 0),
|
| 72 |
+
(2946, 2946, 0),
|
| 73 |
+
(3006, 3010, 0),
|
| 74 |
+
(3014, 3016, 0),
|
| 75 |
+
(3018, 3021, 0),
|
| 76 |
+
(3031, 3031, 0),
|
| 77 |
+
(3072, 3076, 0),
|
| 78 |
+
(3132, 3132, 0),
|
| 79 |
+
(3134, 3140, 0),
|
| 80 |
+
(3142, 3144, 0),
|
| 81 |
+
(3146, 3149, 0),
|
| 82 |
+
(3157, 3158, 0),
|
| 83 |
+
(3170, 3171, 0),
|
| 84 |
+
(3201, 3203, 0),
|
| 85 |
+
(3260, 3260, 0),
|
| 86 |
+
(3262, 3268, 0),
|
| 87 |
+
(3270, 3272, 0),
|
| 88 |
+
(3274, 3277, 0),
|
| 89 |
+
(3285, 3286, 0),
|
| 90 |
+
(3298, 3299, 0),
|
| 91 |
+
(3315, 3315, 0),
|
| 92 |
+
(3328, 3331, 0),
|
| 93 |
+
(3387, 3388, 0),
|
| 94 |
+
(3390, 3396, 0),
|
| 95 |
+
(3398, 3400, 0),
|
| 96 |
+
(3402, 3405, 0),
|
| 97 |
+
(3415, 3415, 0),
|
| 98 |
+
(3426, 3427, 0),
|
| 99 |
+
(3457, 3459, 0),
|
| 100 |
+
(3530, 3530, 0),
|
| 101 |
+
(3535, 3540, 0),
|
| 102 |
+
(3542, 3542, 0),
|
| 103 |
+
(3544, 3551, 0),
|
| 104 |
+
(3570, 3571, 0),
|
| 105 |
+
(3633, 3633, 0),
|
| 106 |
+
(3636, 3642, 0),
|
| 107 |
+
(3655, 3662, 0),
|
| 108 |
+
(3761, 3761, 0),
|
| 109 |
+
(3764, 3772, 0),
|
| 110 |
+
(3784, 3790, 0),
|
| 111 |
+
(3864, 3865, 0),
|
| 112 |
+
(3893, 3893, 0),
|
| 113 |
+
(3895, 3895, 0),
|
| 114 |
+
(3897, 3897, 0),
|
| 115 |
+
(3902, 3903, 0),
|
| 116 |
+
(3953, 3972, 0),
|
| 117 |
+
(3974, 3975, 0),
|
| 118 |
+
(3981, 3991, 0),
|
| 119 |
+
(3993, 4028, 0),
|
| 120 |
+
(4038, 4038, 0),
|
| 121 |
+
(4139, 4158, 0),
|
| 122 |
+
(4182, 4185, 0),
|
| 123 |
+
(4190, 4192, 0),
|
| 124 |
+
(4194, 4196, 0),
|
| 125 |
+
(4199, 4205, 0),
|
| 126 |
+
(4209, 4212, 0),
|
| 127 |
+
(4226, 4237, 0),
|
| 128 |
+
(4239, 4239, 0),
|
| 129 |
+
(4250, 4253, 0),
|
| 130 |
+
(4352, 4447, 2),
|
| 131 |
+
(4448, 4607, 0),
|
| 132 |
+
(4957, 4959, 0),
|
| 133 |
+
(5906, 5909, 0),
|
| 134 |
+
(5938, 5940, 0),
|
| 135 |
+
(5970, 5971, 0),
|
| 136 |
+
(6002, 6003, 0),
|
| 137 |
+
(6068, 6099, 0),
|
| 138 |
+
(6109, 6109, 0),
|
| 139 |
+
(6155, 6159, 0),
|
| 140 |
+
(6277, 6278, 0),
|
| 141 |
+
(6313, 6313, 0),
|
| 142 |
+
(6432, 6443, 0),
|
| 143 |
+
(6448, 6459, 0),
|
| 144 |
+
(6679, 6683, 0),
|
| 145 |
+
(6741, 6750, 0),
|
| 146 |
+
(6752, 6780, 0),
|
| 147 |
+
(6783, 6783, 0),
|
| 148 |
+
(6832, 6877, 0),
|
| 149 |
+
(6880, 6891, 0),
|
| 150 |
+
(6912, 6916, 0),
|
| 151 |
+
(6964, 6980, 0),
|
| 152 |
+
(7019, 7027, 0),
|
| 153 |
+
(7040, 7042, 0),
|
| 154 |
+
(7073, 7085, 0),
|
| 155 |
+
(7142, 7155, 0),
|
| 156 |
+
(7204, 7223, 0),
|
| 157 |
+
(7376, 7378, 0),
|
| 158 |
+
(7380, 7400, 0),
|
| 159 |
+
(7405, 7405, 0),
|
| 160 |
+
(7412, 7412, 0),
|
| 161 |
+
(7415, 7417, 0),
|
| 162 |
+
(7616, 7679, 0),
|
| 163 |
+
(8203, 8207, 0),
|
| 164 |
+
(8232, 8238, 0),
|
| 165 |
+
(8288, 8303, 0),
|
| 166 |
+
(8400, 8432, 0),
|
| 167 |
+
(8986, 8987, 2),
|
| 168 |
+
(9001, 9002, 2),
|
| 169 |
+
(9193, 9196, 2),
|
| 170 |
+
(9200, 9200, 2),
|
| 171 |
+
(9203, 9203, 2),
|
| 172 |
+
(9725, 9726, 2),
|
| 173 |
+
(9748, 9749, 2),
|
| 174 |
+
(9776, 9783, 2),
|
| 175 |
+
(9800, 9811, 2),
|
| 176 |
+
(9855, 9855, 2),
|
| 177 |
+
(9866, 9871, 2),
|
| 178 |
+
(9875, 9875, 2),
|
| 179 |
+
(9889, 9889, 2),
|
| 180 |
+
(9898, 9899, 2),
|
| 181 |
+
(9917, 9918, 2),
|
| 182 |
+
(9924, 9925, 2),
|
| 183 |
+
(9934, 9934, 2),
|
| 184 |
+
(9940, 9940, 2),
|
| 185 |
+
(9962, 9962, 2),
|
| 186 |
+
(9970, 9971, 2),
|
| 187 |
+
(9973, 9973, 2),
|
| 188 |
+
(9978, 9978, 2),
|
| 189 |
+
(9981, 9981, 2),
|
| 190 |
+
(9989, 9989, 2),
|
| 191 |
+
(9994, 9995, 2),
|
| 192 |
+
(10024, 10024, 2),
|
| 193 |
+
(10060, 10060, 2),
|
| 194 |
+
(10062, 10062, 2),
|
| 195 |
+
(10067, 10069, 2),
|
| 196 |
+
(10071, 10071, 2),
|
| 197 |
+
(10133, 10135, 2),
|
| 198 |
+
(10160, 10160, 2),
|
| 199 |
+
(10175, 10175, 2),
|
| 200 |
+
(11035, 11036, 2),
|
| 201 |
+
(11088, 11088, 2),
|
| 202 |
+
(11093, 11093, 2),
|
| 203 |
+
(11503, 11505, 0),
|
| 204 |
+
(11647, 11647, 0),
|
| 205 |
+
(11744, 11775, 0),
|
| 206 |
+
(11904, 11929, 2),
|
| 207 |
+
(11931, 12019, 2),
|
| 208 |
+
(12032, 12245, 2),
|
| 209 |
+
(12272, 12329, 2),
|
| 210 |
+
(12330, 12335, 0),
|
| 211 |
+
(12336, 12350, 2),
|
| 212 |
+
(12353, 12438, 2),
|
| 213 |
+
(12441, 12442, 0),
|
| 214 |
+
(12443, 12543, 2),
|
| 215 |
+
(12549, 12591, 2),
|
| 216 |
+
(12593, 12643, 2),
|
| 217 |
+
(12644, 12644, 0),
|
| 218 |
+
(12645, 12686, 2),
|
| 219 |
+
(12688, 12773, 2),
|
| 220 |
+
(12783, 12830, 2),
|
| 221 |
+
(12832, 12871, 2),
|
| 222 |
+
(12880, 42124, 2),
|
| 223 |
+
(42128, 42182, 2),
|
| 224 |
+
(42607, 42610, 0),
|
| 225 |
+
(42612, 42621, 0),
|
| 226 |
+
(42654, 42655, 0),
|
| 227 |
+
(42736, 42737, 0),
|
| 228 |
+
(43010, 43010, 0),
|
| 229 |
+
(43014, 43014, 0),
|
| 230 |
+
(43019, 43019, 0),
|
| 231 |
+
(43043, 43047, 0),
|
| 232 |
+
(43052, 43052, 0),
|
| 233 |
+
(43136, 43137, 0),
|
| 234 |
+
(43188, 43205, 0),
|
| 235 |
+
(43232, 43249, 0),
|
| 236 |
+
(43263, 43263, 0),
|
| 237 |
+
(43302, 43309, 0),
|
| 238 |
+
(43335, 43347, 0),
|
| 239 |
+
(43360, 43388, 2),
|
| 240 |
+
(43392, 43395, 0),
|
| 241 |
+
(43443, 43456, 0),
|
| 242 |
+
(43493, 43493, 0),
|
| 243 |
+
(43561, 43574, 0),
|
| 244 |
+
(43587, 43587, 0),
|
| 245 |
+
(43596, 43597, 0),
|
| 246 |
+
(43643, 43645, 0),
|
| 247 |
+
(43696, 43696, 0),
|
| 248 |
+
(43698, 43700, 0),
|
| 249 |
+
(43703, 43704, 0),
|
| 250 |
+
(43710, 43711, 0),
|
| 251 |
+
(43713, 43713, 0),
|
| 252 |
+
(43755, 43759, 0),
|
| 253 |
+
(43765, 43766, 0),
|
| 254 |
+
(44003, 44010, 0),
|
| 255 |
+
(44012, 44013, 0),
|
| 256 |
+
(44032, 55203, 2),
|
| 257 |
+
(55216, 55295, 0),
|
| 258 |
+
(63744, 64255, 2),
|
| 259 |
+
(64286, 64286, 0),
|
| 260 |
+
(65024, 65039, 0),
|
| 261 |
+
(65040, 65049, 2),
|
| 262 |
+
(65056, 65071, 0),
|
| 263 |
+
(65072, 65106, 2),
|
| 264 |
+
(65108, 65126, 2),
|
| 265 |
+
(65128, 65131, 2),
|
| 266 |
+
(65279, 65279, 0),
|
| 267 |
+
(65281, 65376, 2),
|
| 268 |
+
(65440, 65440, 0),
|
| 269 |
+
(65504, 65510, 2),
|
| 270 |
+
(65520, 65531, 0),
|
| 271 |
+
(66045, 66045, 0),
|
| 272 |
+
(66272, 66272, 0),
|
| 273 |
+
(66422, 66426, 0),
|
| 274 |
+
(68097, 68099, 0),
|
| 275 |
+
(68101, 68102, 0),
|
| 276 |
+
(68108, 68111, 0),
|
| 277 |
+
(68152, 68154, 0),
|
| 278 |
+
(68159, 68159, 0),
|
| 279 |
+
(68325, 68326, 0),
|
| 280 |
+
(68900, 68903, 0),
|
| 281 |
+
(68969, 68973, 0),
|
| 282 |
+
(69291, 69292, 0),
|
| 283 |
+
(69370, 69375, 0),
|
| 284 |
+
(69446, 69456, 0),
|
| 285 |
+
(69506, 69509, 0),
|
| 286 |
+
(69632, 69634, 0),
|
| 287 |
+
(69688, 69702, 0),
|
| 288 |
+
(69744, 69744, 0),
|
| 289 |
+
(69747, 69748, 0),
|
| 290 |
+
(69759, 69762, 0),
|
| 291 |
+
(69808, 69818, 0),
|
| 292 |
+
(69826, 69826, 0),
|
| 293 |
+
(69888, 69890, 0),
|
| 294 |
+
(69927, 69940, 0),
|
| 295 |
+
(69957, 69958, 0),
|
| 296 |
+
(70003, 70003, 0),
|
| 297 |
+
(70016, 70018, 0),
|
| 298 |
+
(70067, 70080, 0),
|
| 299 |
+
(70089, 70092, 0),
|
| 300 |
+
(70094, 70095, 0),
|
| 301 |
+
(70188, 70199, 0),
|
| 302 |
+
(70206, 70206, 0),
|
| 303 |
+
(70209, 70209, 0),
|
| 304 |
+
(70367, 70378, 0),
|
| 305 |
+
(70400, 70403, 0),
|
| 306 |
+
(70459, 70460, 0),
|
| 307 |
+
(70462, 70468, 0),
|
| 308 |
+
(70471, 70472, 0),
|
| 309 |
+
(70475, 70477, 0),
|
| 310 |
+
(70487, 70487, 0),
|
| 311 |
+
(70498, 70499, 0),
|
| 312 |
+
(70502, 70508, 0),
|
| 313 |
+
(70512, 70516, 0),
|
| 314 |
+
(70584, 70592, 0),
|
| 315 |
+
(70594, 70594, 0),
|
| 316 |
+
(70597, 70597, 0),
|
| 317 |
+
(70599, 70602, 0),
|
| 318 |
+
(70604, 70608, 0),
|
| 319 |
+
(70610, 70610, 0),
|
| 320 |
+
(70625, 70626, 0),
|
| 321 |
+
(70709, 70726, 0),
|
| 322 |
+
(70750, 70750, 0),
|
| 323 |
+
(70832, 70851, 0),
|
| 324 |
+
(71087, 71093, 0),
|
| 325 |
+
(71096, 71104, 0),
|
| 326 |
+
(71132, 71133, 0),
|
| 327 |
+
(71216, 71232, 0),
|
| 328 |
+
(71339, 71351, 0),
|
| 329 |
+
(71453, 71467, 0),
|
| 330 |
+
(71724, 71738, 0),
|
| 331 |
+
(71984, 71989, 0),
|
| 332 |
+
(71991, 71992, 0),
|
| 333 |
+
(71995, 71998, 0),
|
| 334 |
+
(72000, 72000, 0),
|
| 335 |
+
(72002, 72003, 0),
|
| 336 |
+
(72145, 72151, 0),
|
| 337 |
+
(72154, 72160, 0),
|
| 338 |
+
(72164, 72164, 0),
|
| 339 |
+
(72193, 72202, 0),
|
| 340 |
+
(72243, 72249, 0),
|
| 341 |
+
(72251, 72254, 0),
|
| 342 |
+
(72263, 72263, 0),
|
| 343 |
+
(72273, 72283, 0),
|
| 344 |
+
(72330, 72345, 0),
|
| 345 |
+
(72544, 72551, 0),
|
| 346 |
+
(72751, 72758, 0),
|
| 347 |
+
(72760, 72767, 0),
|
| 348 |
+
(72850, 72871, 0),
|
| 349 |
+
(72873, 72886, 0),
|
| 350 |
+
(73009, 73014, 0),
|
| 351 |
+
(73018, 73018, 0),
|
| 352 |
+
(73020, 73021, 0),
|
| 353 |
+
(73023, 73029, 0),
|
| 354 |
+
(73031, 73031, 0),
|
| 355 |
+
(73098, 73102, 0),
|
| 356 |
+
(73104, 73105, 0),
|
| 357 |
+
(73107, 73111, 0),
|
| 358 |
+
(73459, 73462, 0),
|
| 359 |
+
(73472, 73473, 0),
|
| 360 |
+
(73475, 73475, 0),
|
| 361 |
+
(73524, 73530, 0),
|
| 362 |
+
(73534, 73538, 0),
|
| 363 |
+
(73562, 73562, 0),
|
| 364 |
+
(78896, 78912, 0),
|
| 365 |
+
(78919, 78933, 0),
|
| 366 |
+
(90398, 90415, 0),
|
| 367 |
+
(92912, 92916, 0),
|
| 368 |
+
(92976, 92982, 0),
|
| 369 |
+
(94031, 94031, 0),
|
| 370 |
+
(94033, 94087, 0),
|
| 371 |
+
(94095, 94098, 0),
|
| 372 |
+
(94176, 94179, 2),
|
| 373 |
+
(94180, 94180, 0),
|
| 374 |
+
(94192, 94193, 0),
|
| 375 |
+
(94194, 94198, 2),
|
| 376 |
+
(94208, 101589, 2),
|
| 377 |
+
(101631, 101662, 2),
|
| 378 |
+
(101760, 101874, 2),
|
| 379 |
+
(110576, 110579, 2),
|
| 380 |
+
(110581, 110587, 2),
|
| 381 |
+
(110589, 110590, 2),
|
| 382 |
+
(110592, 110882, 2),
|
| 383 |
+
(110898, 110898, 2),
|
| 384 |
+
(110928, 110930, 2),
|
| 385 |
+
(110933, 110933, 2),
|
| 386 |
+
(110948, 110951, 2),
|
| 387 |
+
(110960, 111355, 2),
|
| 388 |
+
(113821, 113822, 0),
|
| 389 |
+
(113824, 113827, 0),
|
| 390 |
+
(118528, 118573, 0),
|
| 391 |
+
(118576, 118598, 0),
|
| 392 |
+
(119141, 119145, 0),
|
| 393 |
+
(119149, 119170, 0),
|
| 394 |
+
(119173, 119179, 0),
|
| 395 |
+
(119210, 119213, 0),
|
| 396 |
+
(119362, 119364, 0),
|
| 397 |
+
(119552, 119638, 2),
|
| 398 |
+
(119648, 119670, 2),
|
| 399 |
+
(121344, 121398, 0),
|
| 400 |
+
(121403, 121452, 0),
|
| 401 |
+
(121461, 121461, 0),
|
| 402 |
+
(121476, 121476, 0),
|
| 403 |
+
(121499, 121503, 0),
|
| 404 |
+
(121505, 121519, 0),
|
| 405 |
+
(122880, 122886, 0),
|
| 406 |
+
(122888, 122904, 0),
|
| 407 |
+
(122907, 122913, 0),
|
| 408 |
+
(122915, 122916, 0),
|
| 409 |
+
(122918, 122922, 0),
|
| 410 |
+
(123023, 123023, 0),
|
| 411 |
+
(123184, 123190, 0),
|
| 412 |
+
(123566, 123566, 0),
|
| 413 |
+
(123628, 123631, 0),
|
| 414 |
+
(124140, 124143, 0),
|
| 415 |
+
(124398, 124399, 0),
|
| 416 |
+
(124643, 124643, 0),
|
| 417 |
+
(124646, 124646, 0),
|
| 418 |
+
(124654, 124655, 0),
|
| 419 |
+
(124661, 124661, 0),
|
| 420 |
+
(125136, 125142, 0),
|
| 421 |
+
(125252, 125258, 0),
|
| 422 |
+
(126980, 126980, 2),
|
| 423 |
+
(127183, 127183, 2),
|
| 424 |
+
(127374, 127374, 2),
|
| 425 |
+
(127377, 127386, 2),
|
| 426 |
+
(127488, 127490, 2),
|
| 427 |
+
(127504, 127547, 2),
|
| 428 |
+
(127552, 127560, 2),
|
| 429 |
+
(127568, 127569, 2),
|
| 430 |
+
(127584, 127589, 2),
|
| 431 |
+
(127744, 127776, 2),
|
| 432 |
+
(127789, 127797, 2),
|
| 433 |
+
(127799, 127868, 2),
|
| 434 |
+
(127870, 127891, 2),
|
| 435 |
+
(127904, 127946, 2),
|
| 436 |
+
(127951, 127955, 2),
|
| 437 |
+
(127968, 127984, 2),
|
| 438 |
+
(127988, 127988, 2),
|
| 439 |
+
(127992, 127994, 2),
|
| 440 |
+
(127995, 127999, 0),
|
| 441 |
+
(128000, 128062, 2),
|
| 442 |
+
(128064, 128064, 2),
|
| 443 |
+
(128066, 128252, 2),
|
| 444 |
+
(128255, 128317, 2),
|
| 445 |
+
(128331, 128334, 2),
|
| 446 |
+
(128336, 128359, 2),
|
| 447 |
+
(128378, 128378, 2),
|
| 448 |
+
(128405, 128406, 2),
|
| 449 |
+
(128420, 128420, 2),
|
| 450 |
+
(128507, 128591, 2),
|
| 451 |
+
(128640, 128709, 2),
|
| 452 |
+
(128716, 128716, 2),
|
| 453 |
+
(128720, 128722, 2),
|
| 454 |
+
(128725, 128728, 2),
|
| 455 |
+
(128732, 128735, 2),
|
| 456 |
+
(128747, 128748, 2),
|
| 457 |
+
(128756, 128764, 2),
|
| 458 |
+
(128992, 129003, 2),
|
| 459 |
+
(129008, 129008, 2),
|
| 460 |
+
(129292, 129338, 2),
|
| 461 |
+
(129340, 129349, 2),
|
| 462 |
+
(129351, 129535, 2),
|
| 463 |
+
(129648, 129660, 2),
|
| 464 |
+
(129664, 129674, 2),
|
| 465 |
+
(129678, 129734, 2),
|
| 466 |
+
(129736, 129736, 2),
|
| 467 |
+
(129741, 129756, 2),
|
| 468 |
+
(129759, 129770, 2),
|
| 469 |
+
(129775, 129784, 2),
|
| 470 |
+
(131072, 196605, 2),
|
| 471 |
+
(196608, 262141, 2),
|
| 472 |
+
(917504, 921599, 0),
|
| 473 |
+
],
|
| 474 |
+
frozenset(
|
| 475 |
+
[
|
| 476 |
+
"#",
|
| 477 |
+
"*",
|
| 478 |
+
"0",
|
| 479 |
+
"1",
|
| 480 |
+
"2",
|
| 481 |
+
"3",
|
| 482 |
+
"4",
|
| 483 |
+
"5",
|
| 484 |
+
"6",
|
| 485 |
+
"7",
|
| 486 |
+
"8",
|
| 487 |
+
"9",
|
| 488 |
+
"©",
|
| 489 |
+
"®",
|
| 490 |
+
"‼",
|
| 491 |
+
"⁉",
|
| 492 |
+
"™",
|
| 493 |
+
"ℹ",
|
| 494 |
+
"↔",
|
| 495 |
+
"↕",
|
| 496 |
+
"↖",
|
| 497 |
+
"↗",
|
| 498 |
+
"↘",
|
| 499 |
+
"↙",
|
| 500 |
+
"↩",
|
| 501 |
+
"↪",
|
| 502 |
+
"⌨",
|
| 503 |
+
"⏏",
|
| 504 |
+
"⏭",
|
| 505 |
+
"⏮",
|
| 506 |
+
"⏯",
|
| 507 |
+
"⏱",
|
| 508 |
+
"⏲",
|
| 509 |
+
"⏸",
|
| 510 |
+
"⏹",
|
| 511 |
+
"⏺",
|
| 512 |
+
"Ⓜ",
|
| 513 |
+
"▪",
|
| 514 |
+
"▫",
|
| 515 |
+
"▶",
|
| 516 |
+
"◀",
|
| 517 |
+
"◻",
|
| 518 |
+
"◼",
|
| 519 |
+
"☀",
|
| 520 |
+
"☁",
|
| 521 |
+
"☂",
|
| 522 |
+
"☃",
|
| 523 |
+
"☄",
|
| 524 |
+
"☎",
|
| 525 |
+
"☑",
|
| 526 |
+
"☘",
|
| 527 |
+
"☝",
|
| 528 |
+
"☠",
|
| 529 |
+
"☢",
|
| 530 |
+
"☣",
|
| 531 |
+
"☦",
|
| 532 |
+
"☪",
|
| 533 |
+
"☮",
|
| 534 |
+
"☯",
|
| 535 |
+
"☸",
|
| 536 |
+
"☹",
|
| 537 |
+
"☺",
|
| 538 |
+
"♀",
|
| 539 |
+
"♂",
|
| 540 |
+
"♟",
|
| 541 |
+
"♠",
|
| 542 |
+
"♣",
|
| 543 |
+
"♥",
|
| 544 |
+
"♦",
|
| 545 |
+
"♨",
|
| 546 |
+
"♻",
|
| 547 |
+
"♾",
|
| 548 |
+
"⚒",
|
| 549 |
+
"⚔",
|
| 550 |
+
"⚕",
|
| 551 |
+
"⚖",
|
| 552 |
+
"⚗",
|
| 553 |
+
"⚙",
|
| 554 |
+
"⚛",
|
| 555 |
+
"⚜",
|
| 556 |
+
"⚠",
|
| 557 |
+
"⚧",
|
| 558 |
+
"⚰",
|
| 559 |
+
"⚱",
|
| 560 |
+
"⛈",
|
| 561 |
+
"⛏",
|
| 562 |
+
"⛑",
|
| 563 |
+
"⛓",
|
| 564 |
+
"⛩",
|
| 565 |
+
"⛰",
|
| 566 |
+
"⛱",
|
| 567 |
+
"⛴",
|
| 568 |
+
"⛷",
|
| 569 |
+
"⛸",
|
| 570 |
+
"⛹",
|
| 571 |
+
"✂",
|
| 572 |
+
"✈",
|
| 573 |
+
"✉",
|
| 574 |
+
"✌",
|
| 575 |
+
"✍",
|
| 576 |
+
"✏",
|
| 577 |
+
"✒",
|
| 578 |
+
"✔",
|
| 579 |
+
"✖",
|
| 580 |
+
"✝",
|
| 581 |
+
"✡",
|
| 582 |
+
"✳",
|
| 583 |
+
"✴",
|
| 584 |
+
"❄",
|
| 585 |
+
"❇",
|
| 586 |
+
"❣",
|
| 587 |
+
"❤",
|
| 588 |
+
"➡",
|
| 589 |
+
"⤴",
|
| 590 |
+
"⤵",
|
| 591 |
+
"⬅",
|
| 592 |
+
"⬆",
|
| 593 |
+
"⬇",
|
| 594 |
+
"🅰",
|
| 595 |
+
"🅱",
|
| 596 |
+
"🅾",
|
| 597 |
+
"🅿",
|
| 598 |
+
"🌡",
|
| 599 |
+
"🌤",
|
| 600 |
+
"🌥",
|
| 601 |
+
"🌦",
|
| 602 |
+
"🌧",
|
| 603 |
+
"🌨",
|
| 604 |
+
"🌩",
|
| 605 |
+
"🌪",
|
| 606 |
+
"🌫",
|
| 607 |
+
"🌬",
|
| 608 |
+
"🌶",
|
| 609 |
+
"🍽",
|
| 610 |
+
"🎖",
|
| 611 |
+
"🎗",
|
| 612 |
+
"🎙",
|
| 613 |
+
"🎚",
|
| 614 |
+
"🎛",
|
| 615 |
+
"🎞",
|
| 616 |
+
"🎟",
|
| 617 |
+
"🏋",
|
| 618 |
+
"🏌",
|
| 619 |
+
"🏍",
|
| 620 |
+
"🏎",
|
| 621 |
+
"🏔",
|
| 622 |
+
"🏕",
|
| 623 |
+
"🏖",
|
| 624 |
+
"🏗",
|
| 625 |
+
"🏘",
|
| 626 |
+
"🏙",
|
| 627 |
+
"🏚",
|
| 628 |
+
"🏛",
|
| 629 |
+
"🏜",
|
| 630 |
+
"🏝",
|
| 631 |
+
"🏞",
|
| 632 |
+
"🏟",
|
| 633 |
+
"🏳",
|
| 634 |
+
"🏵",
|
| 635 |
+
"🏷",
|
| 636 |
+
"🐿",
|
| 637 |
+
"👁",
|
| 638 |
+
"📽",
|
| 639 |
+
"🕉",
|
| 640 |
+
"🕊",
|
| 641 |
+
"🕯",
|
| 642 |
+
"🕰",
|
| 643 |
+
"🕳",
|
| 644 |
+
"🕴",
|
| 645 |
+
"🕵",
|
| 646 |
+
"🕶",
|
| 647 |
+
"🕷",
|
| 648 |
+
"🕸",
|
| 649 |
+
"🕹",
|
| 650 |
+
"🖇",
|
| 651 |
+
"🖊",
|
| 652 |
+
"🖋",
|
| 653 |
+
"🖌",
|
| 654 |
+
"🖍",
|
| 655 |
+
"🖐",
|
| 656 |
+
"🖥",
|
| 657 |
+
"🖨",
|
| 658 |
+
"🖱",
|
| 659 |
+
"🖲",
|
| 660 |
+
"🖼",
|
| 661 |
+
"🗂",
|
| 662 |
+
"🗃",
|
| 663 |
+
"🗄",
|
| 664 |
+
"🗑",
|
| 665 |
+
"🗒",
|
| 666 |
+
"🗓",
|
| 667 |
+
"🗜",
|
| 668 |
+
"🗝",
|
| 669 |
+
"🗞",
|
| 670 |
+
"🗡",
|
| 671 |
+
"🗣",
|
| 672 |
+
"🗨",
|
| 673 |
+
"🗯",
|
| 674 |
+
"🗳",
|
| 675 |
+
"🗺",
|
| 676 |
+
"🛋",
|
| 677 |
+
"🛍",
|
| 678 |
+
"🛎",
|
| 679 |
+
"🛏",
|
| 680 |
+
"🛠",
|
| 681 |
+
"🛡",
|
| 682 |
+
"🛢",
|
| 683 |
+
"🛣",
|
| 684 |
+
"🛤",
|
| 685 |
+
"🛥",
|
| 686 |
+
"🛩",
|
| 687 |
+
"🛰",
|
| 688 |
+
"🛳",
|
| 689 |
+
]
|
| 690 |
+
),
|
| 691 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode4-1-0.py
ADDED
|
@@ -0,0 +1,425 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"4.1.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 8, 0),
|
| 10 |
+
(14, 31, 0),
|
| 11 |
+
(127, 132, 0),
|
| 12 |
+
(134, 159, 0),
|
| 13 |
+
(768, 879, 0),
|
| 14 |
+
(1155, 1158, 0),
|
| 15 |
+
(1160, 1161, 0),
|
| 16 |
+
(1425, 1465, 0),
|
| 17 |
+
(1467, 1469, 0),
|
| 18 |
+
(1471, 1471, 0),
|
| 19 |
+
(1473, 1474, 0),
|
| 20 |
+
(1476, 1477, 0),
|
| 21 |
+
(1479, 1479, 0),
|
| 22 |
+
(1536, 1539, 0),
|
| 23 |
+
(1552, 1557, 0),
|
| 24 |
+
(1611, 1630, 0),
|
| 25 |
+
(1648, 1648, 0),
|
| 26 |
+
(1750, 1764, 0),
|
| 27 |
+
(1767, 1768, 0),
|
| 28 |
+
(1770, 1773, 0),
|
| 29 |
+
(1807, 1807, 0),
|
| 30 |
+
(1809, 1809, 0),
|
| 31 |
+
(1840, 1866, 0),
|
| 32 |
+
(1958, 1968, 0),
|
| 33 |
+
(2305, 2307, 0),
|
| 34 |
+
(2364, 2364, 0),
|
| 35 |
+
(2366, 2381, 0),
|
| 36 |
+
(2385, 2388, 0),
|
| 37 |
+
(2402, 2403, 0),
|
| 38 |
+
(2433, 2435, 0),
|
| 39 |
+
(2492, 2492, 0),
|
| 40 |
+
(2494, 2500, 0),
|
| 41 |
+
(2503, 2504, 0),
|
| 42 |
+
(2507, 2509, 0),
|
| 43 |
+
(2519, 2519, 0),
|
| 44 |
+
(2530, 2531, 0),
|
| 45 |
+
(2561, 2563, 0),
|
| 46 |
+
(2620, 2620, 0),
|
| 47 |
+
(2622, 2626, 0),
|
| 48 |
+
(2631, 2632, 0),
|
| 49 |
+
(2635, 2637, 0),
|
| 50 |
+
(2672, 2673, 0),
|
| 51 |
+
(2689, 2691, 0),
|
| 52 |
+
(2748, 2748, 0),
|
| 53 |
+
(2750, 2757, 0),
|
| 54 |
+
(2759, 2761, 0),
|
| 55 |
+
(2763, 2765, 0),
|
| 56 |
+
(2786, 2787, 0),
|
| 57 |
+
(2817, 2819, 0),
|
| 58 |
+
(2876, 2876, 0),
|
| 59 |
+
(2878, 2883, 0),
|
| 60 |
+
(2887, 2888, 0),
|
| 61 |
+
(2891, 2893, 0),
|
| 62 |
+
(2902, 2903, 0),
|
| 63 |
+
(2946, 2946, 0),
|
| 64 |
+
(3006, 3010, 0),
|
| 65 |
+
(3014, 3016, 0),
|
| 66 |
+
(3018, 3021, 0),
|
| 67 |
+
(3031, 3031, 0),
|
| 68 |
+
(3073, 3075, 0),
|
| 69 |
+
(3134, 3140, 0),
|
| 70 |
+
(3142, 3144, 0),
|
| 71 |
+
(3146, 3149, 0),
|
| 72 |
+
(3157, 3158, 0),
|
| 73 |
+
(3202, 3203, 0),
|
| 74 |
+
(3260, 3260, 0),
|
| 75 |
+
(3262, 3268, 0),
|
| 76 |
+
(3270, 3272, 0),
|
| 77 |
+
(3274, 3277, 0),
|
| 78 |
+
(3285, 3286, 0),
|
| 79 |
+
(3330, 3331, 0),
|
| 80 |
+
(3390, 3395, 0),
|
| 81 |
+
(3398, 3400, 0),
|
| 82 |
+
(3402, 3405, 0),
|
| 83 |
+
(3415, 3415, 0),
|
| 84 |
+
(3458, 3459, 0),
|
| 85 |
+
(3530, 3530, 0),
|
| 86 |
+
(3535, 3540, 0),
|
| 87 |
+
(3542, 3542, 0),
|
| 88 |
+
(3544, 3551, 0),
|
| 89 |
+
(3570, 3571, 0),
|
| 90 |
+
(3633, 3633, 0),
|
| 91 |
+
(3636, 3642, 0),
|
| 92 |
+
(3655, 3662, 0),
|
| 93 |
+
(3761, 3761, 0),
|
| 94 |
+
(3764, 3769, 0),
|
| 95 |
+
(3771, 3772, 0),
|
| 96 |
+
(3784, 3789, 0),
|
| 97 |
+
(3864, 3865, 0),
|
| 98 |
+
(3893, 3893, 0),
|
| 99 |
+
(3895, 3895, 0),
|
| 100 |
+
(3897, 3897, 0),
|
| 101 |
+
(3902, 3903, 0),
|
| 102 |
+
(3953, 3972, 0),
|
| 103 |
+
(3974, 3975, 0),
|
| 104 |
+
(3984, 3991, 0),
|
| 105 |
+
(3993, 4028, 0),
|
| 106 |
+
(4038, 4038, 0),
|
| 107 |
+
(4140, 4146, 0),
|
| 108 |
+
(4150, 4153, 0),
|
| 109 |
+
(4182, 4185, 0),
|
| 110 |
+
(4352, 4441, 2),
|
| 111 |
+
(4447, 4447, 2),
|
| 112 |
+
(4448, 4607, 0),
|
| 113 |
+
(4959, 4959, 0),
|
| 114 |
+
(5906, 5908, 0),
|
| 115 |
+
(5938, 5940, 0),
|
| 116 |
+
(5970, 5971, 0),
|
| 117 |
+
(6002, 6003, 0),
|
| 118 |
+
(6068, 6099, 0),
|
| 119 |
+
(6109, 6109, 0),
|
| 120 |
+
(6155, 6157, 0),
|
| 121 |
+
(6313, 6313, 0),
|
| 122 |
+
(6432, 6443, 0),
|
| 123 |
+
(6448, 6459, 0),
|
| 124 |
+
(6576, 6592, 0),
|
| 125 |
+
(6600, 6601, 0),
|
| 126 |
+
(6679, 6683, 0),
|
| 127 |
+
(7616, 7619, 0),
|
| 128 |
+
(8203, 8207, 0),
|
| 129 |
+
(8232, 8238, 0),
|
| 130 |
+
(8288, 8303, 0),
|
| 131 |
+
(8400, 8427, 0),
|
| 132 |
+
(9001, 9002, 2),
|
| 133 |
+
(11904, 11929, 2),
|
| 134 |
+
(11931, 12019, 2),
|
| 135 |
+
(12032, 12245, 2),
|
| 136 |
+
(12272, 12283, 2),
|
| 137 |
+
(12288, 12329, 2),
|
| 138 |
+
(12330, 12335, 0),
|
| 139 |
+
(12336, 12350, 2),
|
| 140 |
+
(12353, 12438, 2),
|
| 141 |
+
(12441, 12442, 0),
|
| 142 |
+
(12443, 12543, 2),
|
| 143 |
+
(12549, 12588, 2),
|
| 144 |
+
(12593, 12643, 2),
|
| 145 |
+
(12644, 12644, 0),
|
| 146 |
+
(12645, 12686, 2),
|
| 147 |
+
(12688, 12727, 2),
|
| 148 |
+
(12736, 12751, 2),
|
| 149 |
+
(12784, 12830, 2),
|
| 150 |
+
(12832, 12867, 2),
|
| 151 |
+
(12880, 13054, 2),
|
| 152 |
+
(13056, 19893, 2),
|
| 153 |
+
(19968, 40891, 2),
|
| 154 |
+
(40960, 42124, 2),
|
| 155 |
+
(42128, 42182, 2),
|
| 156 |
+
(43010, 43010, 0),
|
| 157 |
+
(43014, 43014, 0),
|
| 158 |
+
(43019, 43019, 0),
|
| 159 |
+
(43043, 43047, 0),
|
| 160 |
+
(44032, 55203, 2),
|
| 161 |
+
(55216, 57343, 0),
|
| 162 |
+
(63744, 64045, 2),
|
| 163 |
+
(64048, 64106, 2),
|
| 164 |
+
(64112, 64217, 2),
|
| 165 |
+
(64286, 64286, 0),
|
| 166 |
+
(64976, 65007, 0),
|
| 167 |
+
(65024, 65039, 0),
|
| 168 |
+
(65040, 65049, 2),
|
| 169 |
+
(65056, 65059, 0),
|
| 170 |
+
(65072, 65106, 2),
|
| 171 |
+
(65108, 65126, 2),
|
| 172 |
+
(65128, 65131, 2),
|
| 173 |
+
(65279, 65279, 0),
|
| 174 |
+
(65281, 65376, 2),
|
| 175 |
+
(65440, 65440, 0),
|
| 176 |
+
(65504, 65510, 2),
|
| 177 |
+
(65520, 65531, 0),
|
| 178 |
+
(65534, 65535, 0),
|
| 179 |
+
(68097, 68099, 0),
|
| 180 |
+
(68101, 68102, 0),
|
| 181 |
+
(68108, 68111, 0),
|
| 182 |
+
(68152, 68154, 0),
|
| 183 |
+
(68159, 68159, 0),
|
| 184 |
+
(119141, 119145, 0),
|
| 185 |
+
(119149, 119170, 0),
|
| 186 |
+
(119173, 119179, 0),
|
| 187 |
+
(119210, 119213, 0),
|
| 188 |
+
(119362, 119364, 0),
|
| 189 |
+
(131070, 131071, 0),
|
| 190 |
+
(131072, 196605, 2),
|
| 191 |
+
(196606, 196607, 0),
|
| 192 |
+
(196608, 262141, 2),
|
| 193 |
+
(262142, 262143, 0),
|
| 194 |
+
(327678, 327679, 0),
|
| 195 |
+
(393214, 393215, 0),
|
| 196 |
+
(458750, 458751, 0),
|
| 197 |
+
(524286, 524287, 0),
|
| 198 |
+
(589822, 589823, 0),
|
| 199 |
+
(655358, 655359, 0),
|
| 200 |
+
(720894, 720895, 0),
|
| 201 |
+
(786430, 786431, 0),
|
| 202 |
+
(851966, 851967, 0),
|
| 203 |
+
(917502, 921599, 0),
|
| 204 |
+
(983038, 983039, 0),
|
| 205 |
+
(1048574, 1048575, 0),
|
| 206 |
+
(1114110, 1114111, 0),
|
| 207 |
+
],
|
| 208 |
+
frozenset(
|
| 209 |
+
[
|
| 210 |
+
"#",
|
| 211 |
+
"*",
|
| 212 |
+
"0",
|
| 213 |
+
"1",
|
| 214 |
+
"2",
|
| 215 |
+
"3",
|
| 216 |
+
"4",
|
| 217 |
+
"5",
|
| 218 |
+
"6",
|
| 219 |
+
"7",
|
| 220 |
+
"8",
|
| 221 |
+
"9",
|
| 222 |
+
"©",
|
| 223 |
+
"®",
|
| 224 |
+
"‼",
|
| 225 |
+
"⁉",
|
| 226 |
+
"™",
|
| 227 |
+
"ℹ",
|
| 228 |
+
"↔",
|
| 229 |
+
"↕",
|
| 230 |
+
"↖",
|
| 231 |
+
"↗",
|
| 232 |
+
"↘",
|
| 233 |
+
"↙",
|
| 234 |
+
"↩",
|
| 235 |
+
"↪",
|
| 236 |
+
"⌨",
|
| 237 |
+
"⏏",
|
| 238 |
+
"⏭",
|
| 239 |
+
"⏮",
|
| 240 |
+
"⏯",
|
| 241 |
+
"⏱",
|
| 242 |
+
"⏲",
|
| 243 |
+
"⏸",
|
| 244 |
+
"⏹",
|
| 245 |
+
"⏺",
|
| 246 |
+
"Ⓜ",
|
| 247 |
+
"▪",
|
| 248 |
+
"▫",
|
| 249 |
+
"▶",
|
| 250 |
+
"◀",
|
| 251 |
+
"◻",
|
| 252 |
+
"◼",
|
| 253 |
+
"☀",
|
| 254 |
+
"☁",
|
| 255 |
+
"☂",
|
| 256 |
+
"☃",
|
| 257 |
+
"☄",
|
| 258 |
+
"☎",
|
| 259 |
+
"☑",
|
| 260 |
+
"☘",
|
| 261 |
+
"☝",
|
| 262 |
+
"☠",
|
| 263 |
+
"☢",
|
| 264 |
+
"☣",
|
| 265 |
+
"☦",
|
| 266 |
+
"☪",
|
| 267 |
+
"☮",
|
| 268 |
+
"☯",
|
| 269 |
+
"☸",
|
| 270 |
+
"☹",
|
| 271 |
+
"☺",
|
| 272 |
+
"♀",
|
| 273 |
+
"♂",
|
| 274 |
+
"♟",
|
| 275 |
+
"♠",
|
| 276 |
+
"♣",
|
| 277 |
+
"♥",
|
| 278 |
+
"♦",
|
| 279 |
+
"♨",
|
| 280 |
+
"♻",
|
| 281 |
+
"♾",
|
| 282 |
+
"⚒",
|
| 283 |
+
"⚔",
|
| 284 |
+
"⚕",
|
| 285 |
+
"⚖",
|
| 286 |
+
"⚗",
|
| 287 |
+
"⚙",
|
| 288 |
+
"⚛",
|
| 289 |
+
"⚜",
|
| 290 |
+
"⚠",
|
| 291 |
+
"⚧",
|
| 292 |
+
"⚰",
|
| 293 |
+
"⚱",
|
| 294 |
+
"⛈",
|
| 295 |
+
"⛏",
|
| 296 |
+
"⛑",
|
| 297 |
+
"⛓",
|
| 298 |
+
"⛩",
|
| 299 |
+
"⛰",
|
| 300 |
+
"⛱",
|
| 301 |
+
"⛴",
|
| 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 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode5-0-0.py
ADDED
|
@@ -0,0 +1,430 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"5.0.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 8, 0),
|
| 10 |
+
(14, 31, 0),
|
| 11 |
+
(127, 132, 0),
|
| 12 |
+
(134, 159, 0),
|
| 13 |
+
(768, 879, 0),
|
| 14 |
+
(1155, 1158, 0),
|
| 15 |
+
(1160, 1161, 0),
|
| 16 |
+
(1425, 1469, 0),
|
| 17 |
+
(1471, 1471, 0),
|
| 18 |
+
(1473, 1474, 0),
|
| 19 |
+
(1476, 1477, 0),
|
| 20 |
+
(1479, 1479, 0),
|
| 21 |
+
(1536, 1539, 0),
|
| 22 |
+
(1552, 1557, 0),
|
| 23 |
+
(1611, 1630, 0),
|
| 24 |
+
(1648, 1648, 0),
|
| 25 |
+
(1750, 1764, 0),
|
| 26 |
+
(1767, 1768, 0),
|
| 27 |
+
(1770, 1773, 0),
|
| 28 |
+
(1807, 1807, 0),
|
| 29 |
+
(1809, 1809, 0),
|
| 30 |
+
(1840, 1866, 0),
|
| 31 |
+
(1958, 1968, 0),
|
| 32 |
+
(2027, 2035, 0),
|
| 33 |
+
(2305, 2307, 0),
|
| 34 |
+
(2364, 2364, 0),
|
| 35 |
+
(2366, 2381, 0),
|
| 36 |
+
(2385, 2388, 0),
|
| 37 |
+
(2402, 2403, 0),
|
| 38 |
+
(2433, 2435, 0),
|
| 39 |
+
(2492, 2492, 0),
|
| 40 |
+
(2494, 2500, 0),
|
| 41 |
+
(2503, 2504, 0),
|
| 42 |
+
(2507, 2509, 0),
|
| 43 |
+
(2519, 2519, 0),
|
| 44 |
+
(2530, 2531, 0),
|
| 45 |
+
(2561, 2563, 0),
|
| 46 |
+
(2620, 2620, 0),
|
| 47 |
+
(2622, 2626, 0),
|
| 48 |
+
(2631, 2632, 0),
|
| 49 |
+
(2635, 2637, 0),
|
| 50 |
+
(2672, 2673, 0),
|
| 51 |
+
(2689, 2691, 0),
|
| 52 |
+
(2748, 2748, 0),
|
| 53 |
+
(2750, 2757, 0),
|
| 54 |
+
(2759, 2761, 0),
|
| 55 |
+
(2763, 2765, 0),
|
| 56 |
+
(2786, 2787, 0),
|
| 57 |
+
(2817, 2819, 0),
|
| 58 |
+
(2876, 2876, 0),
|
| 59 |
+
(2878, 2883, 0),
|
| 60 |
+
(2887, 2888, 0),
|
| 61 |
+
(2891, 2893, 0),
|
| 62 |
+
(2902, 2903, 0),
|
| 63 |
+
(2946, 2946, 0),
|
| 64 |
+
(3006, 3010, 0),
|
| 65 |
+
(3014, 3016, 0),
|
| 66 |
+
(3018, 3021, 0),
|
| 67 |
+
(3031, 3031, 0),
|
| 68 |
+
(3073, 3075, 0),
|
| 69 |
+
(3134, 3140, 0),
|
| 70 |
+
(3142, 3144, 0),
|
| 71 |
+
(3146, 3149, 0),
|
| 72 |
+
(3157, 3158, 0),
|
| 73 |
+
(3202, 3203, 0),
|
| 74 |
+
(3260, 3260, 0),
|
| 75 |
+
(3262, 3268, 0),
|
| 76 |
+
(3270, 3272, 0),
|
| 77 |
+
(3274, 3277, 0),
|
| 78 |
+
(3285, 3286, 0),
|
| 79 |
+
(3298, 3299, 0),
|
| 80 |
+
(3330, 3331, 0),
|
| 81 |
+
(3390, 3395, 0),
|
| 82 |
+
(3398, 3400, 0),
|
| 83 |
+
(3402, 3405, 0),
|
| 84 |
+
(3415, 3415, 0),
|
| 85 |
+
(3458, 3459, 0),
|
| 86 |
+
(3530, 3530, 0),
|
| 87 |
+
(3535, 3540, 0),
|
| 88 |
+
(3542, 3542, 0),
|
| 89 |
+
(3544, 3551, 0),
|
| 90 |
+
(3570, 3571, 0),
|
| 91 |
+
(3633, 3633, 0),
|
| 92 |
+
(3636, 3642, 0),
|
| 93 |
+
(3655, 3662, 0),
|
| 94 |
+
(3761, 3761, 0),
|
| 95 |
+
(3764, 3769, 0),
|
| 96 |
+
(3771, 3772, 0),
|
| 97 |
+
(3784, 3789, 0),
|
| 98 |
+
(3864, 3865, 0),
|
| 99 |
+
(3893, 3893, 0),
|
| 100 |
+
(3895, 3895, 0),
|
| 101 |
+
(3897, 3897, 0),
|
| 102 |
+
(3902, 3903, 0),
|
| 103 |
+
(3953, 3972, 0),
|
| 104 |
+
(3974, 3975, 0),
|
| 105 |
+
(3984, 3991, 0),
|
| 106 |
+
(3993, 4028, 0),
|
| 107 |
+
(4038, 4038, 0),
|
| 108 |
+
(4140, 4146, 0),
|
| 109 |
+
(4150, 4153, 0),
|
| 110 |
+
(4182, 4185, 0),
|
| 111 |
+
(4352, 4441, 2),
|
| 112 |
+
(4447, 4447, 2),
|
| 113 |
+
(4448, 4607, 0),
|
| 114 |
+
(4959, 4959, 0),
|
| 115 |
+
(5906, 5908, 0),
|
| 116 |
+
(5938, 5940, 0),
|
| 117 |
+
(5970, 5971, 0),
|
| 118 |
+
(6002, 6003, 0),
|
| 119 |
+
(6068, 6099, 0),
|
| 120 |
+
(6109, 6109, 0),
|
| 121 |
+
(6155, 6157, 0),
|
| 122 |
+
(6313, 6313, 0),
|
| 123 |
+
(6432, 6443, 0),
|
| 124 |
+
(6448, 6459, 0),
|
| 125 |
+
(6576, 6592, 0),
|
| 126 |
+
(6600, 6601, 0),
|
| 127 |
+
(6679, 6683, 0),
|
| 128 |
+
(6912, 6916, 0),
|
| 129 |
+
(6964, 6980, 0),
|
| 130 |
+
(7019, 7027, 0),
|
| 131 |
+
(7616, 7626, 0),
|
| 132 |
+
(7678, 7679, 0),
|
| 133 |
+
(8203, 8207, 0),
|
| 134 |
+
(8232, 8238, 0),
|
| 135 |
+
(8288, 8303, 0),
|
| 136 |
+
(8400, 8431, 0),
|
| 137 |
+
(9001, 9002, 2),
|
| 138 |
+
(11904, 11929, 2),
|
| 139 |
+
(11931, 12019, 2),
|
| 140 |
+
(12032, 12245, 2),
|
| 141 |
+
(12272, 12283, 2),
|
| 142 |
+
(12288, 12329, 2),
|
| 143 |
+
(12330, 12335, 0),
|
| 144 |
+
(12336, 12350, 2),
|
| 145 |
+
(12353, 12438, 2),
|
| 146 |
+
(12441, 12442, 0),
|
| 147 |
+
(12443, 12543, 2),
|
| 148 |
+
(12549, 12588, 2),
|
| 149 |
+
(12593, 12643, 2),
|
| 150 |
+
(12644, 12644, 0),
|
| 151 |
+
(12645, 12686, 2),
|
| 152 |
+
(12688, 12727, 2),
|
| 153 |
+
(12736, 12751, 2),
|
| 154 |
+
(12784, 12830, 2),
|
| 155 |
+
(12832, 12867, 2),
|
| 156 |
+
(12880, 13054, 2),
|
| 157 |
+
(13056, 19893, 2),
|
| 158 |
+
(19968, 40891, 2),
|
| 159 |
+
(40960, 42124, 2),
|
| 160 |
+
(42128, 42182, 2),
|
| 161 |
+
(43010, 43010, 0),
|
| 162 |
+
(43014, 43014, 0),
|
| 163 |
+
(43019, 43019, 0),
|
| 164 |
+
(43043, 43047, 0),
|
| 165 |
+
(44032, 55203, 2),
|
| 166 |
+
(55216, 57343, 0),
|
| 167 |
+
(63744, 64045, 2),
|
| 168 |
+
(64048, 64106, 2),
|
| 169 |
+
(64112, 64217, 2),
|
| 170 |
+
(64286, 64286, 0),
|
| 171 |
+
(64976, 65007, 0),
|
| 172 |
+
(65024, 65039, 0),
|
| 173 |
+
(65040, 65049, 2),
|
| 174 |
+
(65056, 65059, 0),
|
| 175 |
+
(65072, 65106, 2),
|
| 176 |
+
(65108, 65126, 2),
|
| 177 |
+
(65128, 65131, 2),
|
| 178 |
+
(65279, 65279, 0),
|
| 179 |
+
(65281, 65376, 2),
|
| 180 |
+
(65440, 65440, 0),
|
| 181 |
+
(65504, 65510, 2),
|
| 182 |
+
(65520, 65531, 0),
|
| 183 |
+
(65534, 65535, 0),
|
| 184 |
+
(68097, 68099, 0),
|
| 185 |
+
(68101, 68102, 0),
|
| 186 |
+
(68108, 68111, 0),
|
| 187 |
+
(68152, 68154, 0),
|
| 188 |
+
(68159, 68159, 0),
|
| 189 |
+
(119141, 119145, 0),
|
| 190 |
+
(119149, 119170, 0),
|
| 191 |
+
(119173, 119179, 0),
|
| 192 |
+
(119210, 119213, 0),
|
| 193 |
+
(119362, 119364, 0),
|
| 194 |
+
(131070, 131071, 0),
|
| 195 |
+
(131072, 196605, 2),
|
| 196 |
+
(196606, 196607, 0),
|
| 197 |
+
(196608, 262141, 2),
|
| 198 |
+
(262142, 262143, 0),
|
| 199 |
+
(327678, 327679, 0),
|
| 200 |
+
(393214, 393215, 0),
|
| 201 |
+
(458750, 458751, 0),
|
| 202 |
+
(524286, 524287, 0),
|
| 203 |
+
(589822, 589823, 0),
|
| 204 |
+
(655358, 655359, 0),
|
| 205 |
+
(720894, 720895, 0),
|
| 206 |
+
(786430, 786431, 0),
|
| 207 |
+
(851966, 851967, 0),
|
| 208 |
+
(917502, 921599, 0),
|
| 209 |
+
(983038, 983039, 0),
|
| 210 |
+
(1048574, 1048575, 0),
|
| 211 |
+
(1114110, 1114111, 0),
|
| 212 |
+
],
|
| 213 |
+
frozenset(
|
| 214 |
+
[
|
| 215 |
+
"#",
|
| 216 |
+
"*",
|
| 217 |
+
"0",
|
| 218 |
+
"1",
|
| 219 |
+
"2",
|
| 220 |
+
"3",
|
| 221 |
+
"4",
|
| 222 |
+
"5",
|
| 223 |
+
"6",
|
| 224 |
+
"7",
|
| 225 |
+
"8",
|
| 226 |
+
"9",
|
| 227 |
+
"©",
|
| 228 |
+
"®",
|
| 229 |
+
"‼",
|
| 230 |
+
"⁉",
|
| 231 |
+
"™",
|
| 232 |
+
"ℹ",
|
| 233 |
+
"↔",
|
| 234 |
+
"↕",
|
| 235 |
+
"↖",
|
| 236 |
+
"↗",
|
| 237 |
+
"↘",
|
| 238 |
+
"↙",
|
| 239 |
+
"↩",
|
| 240 |
+
"↪",
|
| 241 |
+
"⌨",
|
| 242 |
+
"⏏",
|
| 243 |
+
"⏭",
|
| 244 |
+
"⏮",
|
| 245 |
+
"⏯",
|
| 246 |
+
"⏱",
|
| 247 |
+
"⏲",
|
| 248 |
+
"⏸",
|
| 249 |
+
"⏹",
|
| 250 |
+
"⏺",
|
| 251 |
+
"Ⓜ",
|
| 252 |
+
"▪",
|
| 253 |
+
"▫",
|
| 254 |
+
"▶",
|
| 255 |
+
"◀",
|
| 256 |
+
"◻",
|
| 257 |
+
"◼",
|
| 258 |
+
"☀",
|
| 259 |
+
"☁",
|
| 260 |
+
"☂",
|
| 261 |
+
"☃",
|
| 262 |
+
"☄",
|
| 263 |
+
"☎",
|
| 264 |
+
"☑",
|
| 265 |
+
"☘",
|
| 266 |
+
"☝",
|
| 267 |
+
"☠",
|
| 268 |
+
"☢",
|
| 269 |
+
"☣",
|
| 270 |
+
"☦",
|
| 271 |
+
"☪",
|
| 272 |
+
"☮",
|
| 273 |
+
"☯",
|
| 274 |
+
"☸",
|
| 275 |
+
"☹",
|
| 276 |
+
"☺",
|
| 277 |
+
"♀",
|
| 278 |
+
"♂",
|
| 279 |
+
"♟",
|
| 280 |
+
"♠",
|
| 281 |
+
"♣",
|
| 282 |
+
"♥",
|
| 283 |
+
"♦",
|
| 284 |
+
"♨",
|
| 285 |
+
"♻",
|
| 286 |
+
"♾",
|
| 287 |
+
"⚒",
|
| 288 |
+
"⚔",
|
| 289 |
+
"⚕",
|
| 290 |
+
"⚖",
|
| 291 |
+
"⚗",
|
| 292 |
+
"⚙",
|
| 293 |
+
"⚛",
|
| 294 |
+
"⚜",
|
| 295 |
+
"⚠",
|
| 296 |
+
"⚧",
|
| 297 |
+
"⚰",
|
| 298 |
+
"⚱",
|
| 299 |
+
"⛈",
|
| 300 |
+
"⛏",
|
| 301 |
+
"⛑",
|
| 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 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode5-1-0.py
ADDED
|
@@ -0,0 +1,433 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"5.1.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1536, 1539, 0),
|
| 18 |
+
(1552, 1562, 0),
|
| 19 |
+
(1611, 1630, 0),
|
| 20 |
+
(1648, 1648, 0),
|
| 21 |
+
(1750, 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 |
+
(2305, 2307, 0),
|
| 30 |
+
(2364, 2364, 0),
|
| 31 |
+
(2366, 2381, 0),
|
| 32 |
+
(2385, 2388, 0),
|
| 33 |
+
(2402, 2403, 0),
|
| 34 |
+
(2433, 2435, 0),
|
| 35 |
+
(2492, 2492, 0),
|
| 36 |
+
(2494, 2500, 0),
|
| 37 |
+
(2503, 2504, 0),
|
| 38 |
+
(2507, 2509, 0),
|
| 39 |
+
(2519, 2519, 0),
|
| 40 |
+
(2530, 2531, 0),
|
| 41 |
+
(2561, 2563, 0),
|
| 42 |
+
(2620, 2620, 0),
|
| 43 |
+
(2622, 2626, 0),
|
| 44 |
+
(2631, 2632, 0),
|
| 45 |
+
(2635, 2637, 0),
|
| 46 |
+
(2641, 2641, 0),
|
| 47 |
+
(2672, 2673, 0),
|
| 48 |
+
(2677, 2677, 0),
|
| 49 |
+
(2689, 2691, 0),
|
| 50 |
+
(2748, 2748, 0),
|
| 51 |
+
(2750, 2757, 0),
|
| 52 |
+
(2759, 2761, 0),
|
| 53 |
+
(2763, 2765, 0),
|
| 54 |
+
(2786, 2787, 0),
|
| 55 |
+
(2817, 2819, 0),
|
| 56 |
+
(2876, 2876, 0),
|
| 57 |
+
(2878, 2884, 0),
|
| 58 |
+
(2887, 2888, 0),
|
| 59 |
+
(2891, 2893, 0),
|
| 60 |
+
(2902, 2903, 0),
|
| 61 |
+
(2914, 2915, 0),
|
| 62 |
+
(2946, 2946, 0),
|
| 63 |
+
(3006, 3010, 0),
|
| 64 |
+
(3014, 3016, 0),
|
| 65 |
+
(3018, 3021, 0),
|
| 66 |
+
(3031, 3031, 0),
|
| 67 |
+
(3073, 3075, 0),
|
| 68 |
+
(3134, 3140, 0),
|
| 69 |
+
(3142, 3144, 0),
|
| 70 |
+
(3146, 3149, 0),
|
| 71 |
+
(3157, 3158, 0),
|
| 72 |
+
(3170, 3171, 0),
|
| 73 |
+
(3202, 3203, 0),
|
| 74 |
+
(3260, 3260, 0),
|
| 75 |
+
(3262, 3268, 0),
|
| 76 |
+
(3270, 3272, 0),
|
| 77 |
+
(3274, 3277, 0),
|
| 78 |
+
(3285, 3286, 0),
|
| 79 |
+
(3298, 3299, 0),
|
| 80 |
+
(3330, 3331, 0),
|
| 81 |
+
(3390, 3396, 0),
|
| 82 |
+
(3398, 3400, 0),
|
| 83 |
+
(3402, 3405, 0),
|
| 84 |
+
(3415, 3415, 0),
|
| 85 |
+
(3426, 3427, 0),
|
| 86 |
+
(3458, 3459, 0),
|
| 87 |
+
(3530, 3530, 0),
|
| 88 |
+
(3535, 3540, 0),
|
| 89 |
+
(3542, 3542, 0),
|
| 90 |
+
(3544, 3551, 0),
|
| 91 |
+
(3570, 3571, 0),
|
| 92 |
+
(3633, 3633, 0),
|
| 93 |
+
(3636, 3642, 0),
|
| 94 |
+
(3655, 3662, 0),
|
| 95 |
+
(3761, 3761, 0),
|
| 96 |
+
(3764, 3769, 0),
|
| 97 |
+
(3771, 3772, 0),
|
| 98 |
+
(3784, 3789, 0),
|
| 99 |
+
(3864, 3865, 0),
|
| 100 |
+
(3893, 3893, 0),
|
| 101 |
+
(3895, 3895, 0),
|
| 102 |
+
(3897, 3897, 0),
|
| 103 |
+
(3902, 3903, 0),
|
| 104 |
+
(3953, 3972, 0),
|
| 105 |
+
(3974, 3975, 0),
|
| 106 |
+
(3984, 3991, 0),
|
| 107 |
+
(3993, 4028, 0),
|
| 108 |
+
(4038, 4038, 0),
|
| 109 |
+
(4139, 4158, 0),
|
| 110 |
+
(4182, 4185, 0),
|
| 111 |
+
(4190, 4192, 0),
|
| 112 |
+
(4194, 4196, 0),
|
| 113 |
+
(4199, 4205, 0),
|
| 114 |
+
(4209, 4212, 0),
|
| 115 |
+
(4226, 4237, 0),
|
| 116 |
+
(4239, 4239, 0),
|
| 117 |
+
(4352, 4441, 2),
|
| 118 |
+
(4447, 4447, 2),
|
| 119 |
+
(4448, 4607, 0),
|
| 120 |
+
(4959, 4959, 0),
|
| 121 |
+
(5906, 5908, 0),
|
| 122 |
+
(5938, 5940, 0),
|
| 123 |
+
(5970, 5971, 0),
|
| 124 |
+
(6002, 6003, 0),
|
| 125 |
+
(6068, 6099, 0),
|
| 126 |
+
(6109, 6109, 0),
|
| 127 |
+
(6155, 6157, 0),
|
| 128 |
+
(6313, 6313, 0),
|
| 129 |
+
(6432, 6443, 0),
|
| 130 |
+
(6448, 6459, 0),
|
| 131 |
+
(6576, 6592, 0),
|
| 132 |
+
(6600, 6601, 0),
|
| 133 |
+
(6679, 6683, 0),
|
| 134 |
+
(6912, 6916, 0),
|
| 135 |
+
(6964, 6980, 0),
|
| 136 |
+
(7019, 7027, 0),
|
| 137 |
+
(7040, 7042, 0),
|
| 138 |
+
(7073, 7082, 0),
|
| 139 |
+
(7204, 7223, 0),
|
| 140 |
+
(7616, 7654, 0),
|
| 141 |
+
(7678, 7679, 0),
|
| 142 |
+
(8203, 8207, 0),
|
| 143 |
+
(8232, 8238, 0),
|
| 144 |
+
(8288, 8303, 0),
|
| 145 |
+
(8400, 8432, 0),
|
| 146 |
+
(9001, 9002, 2),
|
| 147 |
+
(11744, 11775, 0),
|
| 148 |
+
(11904, 11929, 2),
|
| 149 |
+
(11931, 12019, 2),
|
| 150 |
+
(12032, 12245, 2),
|
| 151 |
+
(12272, 12283, 2),
|
| 152 |
+
(12288, 12329, 2),
|
| 153 |
+
(12330, 12335, 0),
|
| 154 |
+
(12336, 12350, 2),
|
| 155 |
+
(12353, 12438, 2),
|
| 156 |
+
(12441, 12442, 0),
|
| 157 |
+
(12443, 12543, 2),
|
| 158 |
+
(12549, 12589, 2),
|
| 159 |
+
(12593, 12643, 2),
|
| 160 |
+
(12644, 12644, 0),
|
| 161 |
+
(12645, 12686, 2),
|
| 162 |
+
(12688, 12727, 2),
|
| 163 |
+
(12736, 12771, 2),
|
| 164 |
+
(12784, 12830, 2),
|
| 165 |
+
(12832, 12867, 2),
|
| 166 |
+
(12880, 13054, 2),
|
| 167 |
+
(13056, 19893, 2),
|
| 168 |
+
(19968, 40899, 2),
|
| 169 |
+
(40960, 42124, 2),
|
| 170 |
+
(42128, 42182, 2),
|
| 171 |
+
(42607, 42610, 0),
|
| 172 |
+
(42620, 42621, 0),
|
| 173 |
+
(43010, 43010, 0),
|
| 174 |
+
(43014, 43014, 0),
|
| 175 |
+
(43019, 43019, 0),
|
| 176 |
+
(43043, 43047, 0),
|
| 177 |
+
(43136, 43137, 0),
|
| 178 |
+
(43188, 43204, 0),
|
| 179 |
+
(43302, 43309, 0),
|
| 180 |
+
(43335, 43347, 0),
|
| 181 |
+
(43561, 43574, 0),
|
| 182 |
+
(43587, 43587, 0),
|
| 183 |
+
(43596, 43597, 0),
|
| 184 |
+
(44032, 55203, 2),
|
| 185 |
+
(55216, 55295, 0),
|
| 186 |
+
(63744, 64045, 2),
|
| 187 |
+
(64048, 64106, 2),
|
| 188 |
+
(64112, 64217, 2),
|
| 189 |
+
(64286, 64286, 0),
|
| 190 |
+
(65024, 65039, 0),
|
| 191 |
+
(65040, 65049, 2),
|
| 192 |
+
(65056, 65062, 0),
|
| 193 |
+
(65072, 65106, 2),
|
| 194 |
+
(65108, 65126, 2),
|
| 195 |
+
(65128, 65131, 2),
|
| 196 |
+
(65279, 65279, 0),
|
| 197 |
+
(65281, 65376, 2),
|
| 198 |
+
(65440, 65440, 0),
|
| 199 |
+
(65504, 65510, 2),
|
| 200 |
+
(65520, 65531, 0),
|
| 201 |
+
(66045, 66045, 0),
|
| 202 |
+
(68097, 68099, 0),
|
| 203 |
+
(68101, 68102, 0),
|
| 204 |
+
(68108, 68111, 0),
|
| 205 |
+
(68152, 68154, 0),
|
| 206 |
+
(68159, 68159, 0),
|
| 207 |
+
(119141, 119145, 0),
|
| 208 |
+
(119149, 119170, 0),
|
| 209 |
+
(119173, 119179, 0),
|
| 210 |
+
(119210, 119213, 0),
|
| 211 |
+
(119362, 119364, 0),
|
| 212 |
+
(131072, 196605, 2),
|
| 213 |
+
(196608, 262141, 2),
|
| 214 |
+
(917504, 921599, 0),
|
| 215 |
+
],
|
| 216 |
+
frozenset(
|
| 217 |
+
[
|
| 218 |
+
"#",
|
| 219 |
+
"*",
|
| 220 |
+
"0",
|
| 221 |
+
"1",
|
| 222 |
+
"2",
|
| 223 |
+
"3",
|
| 224 |
+
"4",
|
| 225 |
+
"5",
|
| 226 |
+
"6",
|
| 227 |
+
"7",
|
| 228 |
+
"8",
|
| 229 |
+
"9",
|
| 230 |
+
"©",
|
| 231 |
+
"®",
|
| 232 |
+
"‼",
|
| 233 |
+
"⁉",
|
| 234 |
+
"™",
|
| 235 |
+
"ℹ",
|
| 236 |
+
"↔",
|
| 237 |
+
"↕",
|
| 238 |
+
"↖",
|
| 239 |
+
"↗",
|
| 240 |
+
"↘",
|
| 241 |
+
"↙",
|
| 242 |
+
"↩",
|
| 243 |
+
"↪",
|
| 244 |
+
"⌨",
|
| 245 |
+
"⏏",
|
| 246 |
+
"⏭",
|
| 247 |
+
"⏮",
|
| 248 |
+
"⏯",
|
| 249 |
+
"⏱",
|
| 250 |
+
"⏲",
|
| 251 |
+
"⏸",
|
| 252 |
+
"⏹",
|
| 253 |
+
"⏺",
|
| 254 |
+
"Ⓜ",
|
| 255 |
+
"▪",
|
| 256 |
+
"▫",
|
| 257 |
+
"▶",
|
| 258 |
+
"◀",
|
| 259 |
+
"◻",
|
| 260 |
+
"◼",
|
| 261 |
+
"☀",
|
| 262 |
+
"☁",
|
| 263 |
+
"☂",
|
| 264 |
+
"☃",
|
| 265 |
+
"☄",
|
| 266 |
+
"☎",
|
| 267 |
+
"☑",
|
| 268 |
+
"☘",
|
| 269 |
+
"☝",
|
| 270 |
+
"☠",
|
| 271 |
+
"☢",
|
| 272 |
+
"☣",
|
| 273 |
+
"☦",
|
| 274 |
+
"☪",
|
| 275 |
+
"☮",
|
| 276 |
+
"☯",
|
| 277 |
+
"☸",
|
| 278 |
+
"☹",
|
| 279 |
+
"☺",
|
| 280 |
+
"♀",
|
| 281 |
+
"♂",
|
| 282 |
+
"♟",
|
| 283 |
+
"♠",
|
| 284 |
+
"♣",
|
| 285 |
+
"♥",
|
| 286 |
+
"♦",
|
| 287 |
+
"♨",
|
| 288 |
+
"♻",
|
| 289 |
+
"♾",
|
| 290 |
+
"⚒",
|
| 291 |
+
"⚔",
|
| 292 |
+
"⚕",
|
| 293 |
+
"⚖",
|
| 294 |
+
"⚗",
|
| 295 |
+
"⚙",
|
| 296 |
+
"⚛",
|
| 297 |
+
"⚜",
|
| 298 |
+
"⚠",
|
| 299 |
+
"⚧",
|
| 300 |
+
"⚰",
|
| 301 |
+
"⚱",
|
| 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 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode5-2-0.py
ADDED
|
@@ -0,0 +1,461 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"5.2.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1536, 1539, 0),
|
| 18 |
+
(1552, 1562, 0),
|
| 19 |
+
(1611, 1630, 0),
|
| 20 |
+
(1648, 1648, 0),
|
| 21 |
+
(1750, 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 |
+
(2304, 2307, 0),
|
| 34 |
+
(2364, 2364, 0),
|
| 35 |
+
(2366, 2382, 0),
|
| 36 |
+
(2385, 2389, 0),
|
| 37 |
+
(2402, 2403, 0),
|
| 38 |
+
(2433, 2435, 0),
|
| 39 |
+
(2492, 2492, 0),
|
| 40 |
+
(2494, 2500, 0),
|
| 41 |
+
(2503, 2504, 0),
|
| 42 |
+
(2507, 2509, 0),
|
| 43 |
+
(2519, 2519, 0),
|
| 44 |
+
(2530, 2531, 0),
|
| 45 |
+
(2561, 2563, 0),
|
| 46 |
+
(2620, 2620, 0),
|
| 47 |
+
(2622, 2626, 0),
|
| 48 |
+
(2631, 2632, 0),
|
| 49 |
+
(2635, 2637, 0),
|
| 50 |
+
(2641, 2641, 0),
|
| 51 |
+
(2672, 2673, 0),
|
| 52 |
+
(2677, 2677, 0),
|
| 53 |
+
(2689, 2691, 0),
|
| 54 |
+
(2748, 2748, 0),
|
| 55 |
+
(2750, 2757, 0),
|
| 56 |
+
(2759, 2761, 0),
|
| 57 |
+
(2763, 2765, 0),
|
| 58 |
+
(2786, 2787, 0),
|
| 59 |
+
(2817, 2819, 0),
|
| 60 |
+
(2876, 2876, 0),
|
| 61 |
+
(2878, 2884, 0),
|
| 62 |
+
(2887, 2888, 0),
|
| 63 |
+
(2891, 2893, 0),
|
| 64 |
+
(2902, 2903, 0),
|
| 65 |
+
(2914, 2915, 0),
|
| 66 |
+
(2946, 2946, 0),
|
| 67 |
+
(3006, 3010, 0),
|
| 68 |
+
(3014, 3016, 0),
|
| 69 |
+
(3018, 3021, 0),
|
| 70 |
+
(3031, 3031, 0),
|
| 71 |
+
(3073, 3075, 0),
|
| 72 |
+
(3134, 3140, 0),
|
| 73 |
+
(3142, 3144, 0),
|
| 74 |
+
(3146, 3149, 0),
|
| 75 |
+
(3157, 3158, 0),
|
| 76 |
+
(3170, 3171, 0),
|
| 77 |
+
(3202, 3203, 0),
|
| 78 |
+
(3260, 3260, 0),
|
| 79 |
+
(3262, 3268, 0),
|
| 80 |
+
(3270, 3272, 0),
|
| 81 |
+
(3274, 3277, 0),
|
| 82 |
+
(3285, 3286, 0),
|
| 83 |
+
(3298, 3299, 0),
|
| 84 |
+
(3330, 3331, 0),
|
| 85 |
+
(3390, 3396, 0),
|
| 86 |
+
(3398, 3400, 0),
|
| 87 |
+
(3402, 3405, 0),
|
| 88 |
+
(3415, 3415, 0),
|
| 89 |
+
(3426, 3427, 0),
|
| 90 |
+
(3458, 3459, 0),
|
| 91 |
+
(3530, 3530, 0),
|
| 92 |
+
(3535, 3540, 0),
|
| 93 |
+
(3542, 3542, 0),
|
| 94 |
+
(3544, 3551, 0),
|
| 95 |
+
(3570, 3571, 0),
|
| 96 |
+
(3633, 3633, 0),
|
| 97 |
+
(3636, 3642, 0),
|
| 98 |
+
(3655, 3662, 0),
|
| 99 |
+
(3761, 3761, 0),
|
| 100 |
+
(3764, 3769, 0),
|
| 101 |
+
(3771, 3772, 0),
|
| 102 |
+
(3784, 3789, 0),
|
| 103 |
+
(3864, 3865, 0),
|
| 104 |
+
(3893, 3893, 0),
|
| 105 |
+
(3895, 3895, 0),
|
| 106 |
+
(3897, 3897, 0),
|
| 107 |
+
(3902, 3903, 0),
|
| 108 |
+
(3953, 3972, 0),
|
| 109 |
+
(3974, 3975, 0),
|
| 110 |
+
(3984, 3991, 0),
|
| 111 |
+
(3993, 4028, 0),
|
| 112 |
+
(4038, 4038, 0),
|
| 113 |
+
(4139, 4158, 0),
|
| 114 |
+
(4182, 4185, 0),
|
| 115 |
+
(4190, 4192, 0),
|
| 116 |
+
(4194, 4196, 0),
|
| 117 |
+
(4199, 4205, 0),
|
| 118 |
+
(4209, 4212, 0),
|
| 119 |
+
(4226, 4237, 0),
|
| 120 |
+
(4239, 4239, 0),
|
| 121 |
+
(4250, 4253, 0),
|
| 122 |
+
(4352, 4447, 2),
|
| 123 |
+
(4448, 4607, 0),
|
| 124 |
+
(4959, 4959, 0),
|
| 125 |
+
(5906, 5908, 0),
|
| 126 |
+
(5938, 5940, 0),
|
| 127 |
+
(5970, 5971, 0),
|
| 128 |
+
(6002, 6003, 0),
|
| 129 |
+
(6068, 6099, 0),
|
| 130 |
+
(6109, 6109, 0),
|
| 131 |
+
(6155, 6157, 0),
|
| 132 |
+
(6313, 6313, 0),
|
| 133 |
+
(6432, 6443, 0),
|
| 134 |
+
(6448, 6459, 0),
|
| 135 |
+
(6576, 6592, 0),
|
| 136 |
+
(6600, 6601, 0),
|
| 137 |
+
(6679, 6683, 0),
|
| 138 |
+
(6741, 6750, 0),
|
| 139 |
+
(6752, 6780, 0),
|
| 140 |
+
(6783, 6783, 0),
|
| 141 |
+
(6912, 6916, 0),
|
| 142 |
+
(6964, 6980, 0),
|
| 143 |
+
(7019, 7027, 0),
|
| 144 |
+
(7040, 7042, 0),
|
| 145 |
+
(7073, 7082, 0),
|
| 146 |
+
(7204, 7223, 0),
|
| 147 |
+
(7376, 7378, 0),
|
| 148 |
+
(7380, 7400, 0),
|
| 149 |
+
(7405, 7405, 0),
|
| 150 |
+
(7410, 7410, 0),
|
| 151 |
+
(7616, 7654, 0),
|
| 152 |
+
(7677, 7679, 0),
|
| 153 |
+
(8203, 8207, 0),
|
| 154 |
+
(8232, 8238, 0),
|
| 155 |
+
(8288, 8303, 0),
|
| 156 |
+
(8400, 8432, 0),
|
| 157 |
+
(9001, 9002, 2),
|
| 158 |
+
(11503, 11505, 0),
|
| 159 |
+
(11744, 11775, 0),
|
| 160 |
+
(11904, 11929, 2),
|
| 161 |
+
(11931, 12019, 2),
|
| 162 |
+
(12032, 12245, 2),
|
| 163 |
+
(12272, 12283, 2),
|
| 164 |
+
(12288, 12329, 2),
|
| 165 |
+
(12330, 12335, 0),
|
| 166 |
+
(12336, 12350, 2),
|
| 167 |
+
(12353, 12438, 2),
|
| 168 |
+
(12441, 12442, 0),
|
| 169 |
+
(12443, 12543, 2),
|
| 170 |
+
(12549, 12589, 2),
|
| 171 |
+
(12593, 12643, 2),
|
| 172 |
+
(12644, 12644, 0),
|
| 173 |
+
(12645, 12686, 2),
|
| 174 |
+
(12688, 12727, 2),
|
| 175 |
+
(12736, 12771, 2),
|
| 176 |
+
(12784, 12830, 2),
|
| 177 |
+
(12832, 12871, 2),
|
| 178 |
+
(12880, 13054, 2),
|
| 179 |
+
(13056, 19903, 2),
|
| 180 |
+
(19968, 42124, 2),
|
| 181 |
+
(42128, 42182, 2),
|
| 182 |
+
(42607, 42610, 0),
|
| 183 |
+
(42620, 42621, 0),
|
| 184 |
+
(42736, 42737, 0),
|
| 185 |
+
(43010, 43010, 0),
|
| 186 |
+
(43014, 43014, 0),
|
| 187 |
+
(43019, 43019, 0),
|
| 188 |
+
(43043, 43047, 0),
|
| 189 |
+
(43136, 43137, 0),
|
| 190 |
+
(43188, 43204, 0),
|
| 191 |
+
(43232, 43249, 0),
|
| 192 |
+
(43302, 43309, 0),
|
| 193 |
+
(43335, 43347, 0),
|
| 194 |
+
(43360, 43388, 2),
|
| 195 |
+
(43392, 43395, 0),
|
| 196 |
+
(43443, 43456, 0),
|
| 197 |
+
(43561, 43574, 0),
|
| 198 |
+
(43587, 43587, 0),
|
| 199 |
+
(43596, 43597, 0),
|
| 200 |
+
(43643, 43643, 0),
|
| 201 |
+
(43696, 43696, 0),
|
| 202 |
+
(43698, 43700, 0),
|
| 203 |
+
(43703, 43704, 0),
|
| 204 |
+
(43710, 43711, 0),
|
| 205 |
+
(43713, 43713, 0),
|
| 206 |
+
(44003, 44010, 0),
|
| 207 |
+
(44012, 44013, 0),
|
| 208 |
+
(44032, 55203, 2),
|
| 209 |
+
(55216, 55295, 0),
|
| 210 |
+
(63744, 64255, 2),
|
| 211 |
+
(64286, 64286, 0),
|
| 212 |
+
(65024, 65039, 0),
|
| 213 |
+
(65040, 65049, 2),
|
| 214 |
+
(65056, 65062, 0),
|
| 215 |
+
(65072, 65106, 2),
|
| 216 |
+
(65108, 65126, 2),
|
| 217 |
+
(65128, 65131, 2),
|
| 218 |
+
(65279, 65279, 0),
|
| 219 |
+
(65281, 65376, 2),
|
| 220 |
+
(65440, 65440, 0),
|
| 221 |
+
(65504, 65510, 2),
|
| 222 |
+
(65520, 65531, 0),
|
| 223 |
+
(66045, 66045, 0),
|
| 224 |
+
(68097, 68099, 0),
|
| 225 |
+
(68101, 68102, 0),
|
| 226 |
+
(68108, 68111, 0),
|
| 227 |
+
(68152, 68154, 0),
|
| 228 |
+
(68159, 68159, 0),
|
| 229 |
+
(69760, 69762, 0),
|
| 230 |
+
(69808, 69818, 0),
|
| 231 |
+
(69821, 69821, 0),
|
| 232 |
+
(119141, 119145, 0),
|
| 233 |
+
(119149, 119170, 0),
|
| 234 |
+
(119173, 119179, 0),
|
| 235 |
+
(119210, 119213, 0),
|
| 236 |
+
(119362, 119364, 0),
|
| 237 |
+
(127488, 127488, 2),
|
| 238 |
+
(127504, 127537, 2),
|
| 239 |
+
(127552, 127560, 2),
|
| 240 |
+
(131072, 196605, 2),
|
| 241 |
+
(196608, 262141, 2),
|
| 242 |
+
(917504, 921599, 0),
|
| 243 |
+
],
|
| 244 |
+
frozenset(
|
| 245 |
+
[
|
| 246 |
+
"#",
|
| 247 |
+
"*",
|
| 248 |
+
"0",
|
| 249 |
+
"1",
|
| 250 |
+
"2",
|
| 251 |
+
"3",
|
| 252 |
+
"4",
|
| 253 |
+
"5",
|
| 254 |
+
"6",
|
| 255 |
+
"7",
|
| 256 |
+
"8",
|
| 257 |
+
"9",
|
| 258 |
+
"©",
|
| 259 |
+
"®",
|
| 260 |
+
"‼",
|
| 261 |
+
"⁉",
|
| 262 |
+
"™",
|
| 263 |
+
"ℹ",
|
| 264 |
+
"↔",
|
| 265 |
+
"↕",
|
| 266 |
+
"↖",
|
| 267 |
+
"↗",
|
| 268 |
+
"↘",
|
| 269 |
+
"↙",
|
| 270 |
+
"↩",
|
| 271 |
+
"↪",
|
| 272 |
+
"⌨",
|
| 273 |
+
"⏏",
|
| 274 |
+
"⏭",
|
| 275 |
+
"⏮",
|
| 276 |
+
"⏯",
|
| 277 |
+
"⏱",
|
| 278 |
+
"⏲",
|
| 279 |
+
"⏸",
|
| 280 |
+
"⏹",
|
| 281 |
+
"⏺",
|
| 282 |
+
"Ⓜ",
|
| 283 |
+
"▪",
|
| 284 |
+
"▫",
|
| 285 |
+
"▶",
|
| 286 |
+
"◀",
|
| 287 |
+
"◻",
|
| 288 |
+
"◼",
|
| 289 |
+
"☀",
|
| 290 |
+
"☁",
|
| 291 |
+
"☂",
|
| 292 |
+
"☃",
|
| 293 |
+
"☄",
|
| 294 |
+
"☎",
|
| 295 |
+
"☑",
|
| 296 |
+
"☘",
|
| 297 |
+
"☝",
|
| 298 |
+
"☠",
|
| 299 |
+
"☢",
|
| 300 |
+
"☣",
|
| 301 |
+
"☦",
|
| 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 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode6-0-0.py
ADDED
|
@@ -0,0 +1,469 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"6.0.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1536, 1539, 0),
|
| 18 |
+
(1552, 1562, 0),
|
| 19 |
+
(1611, 1631, 0),
|
| 20 |
+
(1648, 1648, 0),
|
| 21 |
+
(1750, 1757, 0),
|
| 22 |
+
(1759, 1764, 0),
|
| 23 |
+
(1767, 1768, 0),
|
| 24 |
+
(1770, 1773, 0),
|
| 25 |
+
(1807, 1807, 0),
|
| 26 |
+
(1809, 1809, 0),
|
| 27 |
+
(1840, 1866, 0),
|
| 28 |
+
(1958, 1968, 0),
|
| 29 |
+
(2027, 2035, 0),
|
| 30 |
+
(2070, 2073, 0),
|
| 31 |
+
(2075, 2083, 0),
|
| 32 |
+
(2085, 2087, 0),
|
| 33 |
+
(2089, 2093, 0),
|
| 34 |
+
(2137, 2139, 0),
|
| 35 |
+
(2304, 2307, 0),
|
| 36 |
+
(2362, 2364, 0),
|
| 37 |
+
(2366, 2383, 0),
|
| 38 |
+
(2385, 2391, 0),
|
| 39 |
+
(2402, 2403, 0),
|
| 40 |
+
(2433, 2435, 0),
|
| 41 |
+
(2492, 2492, 0),
|
| 42 |
+
(2494, 2500, 0),
|
| 43 |
+
(2503, 2504, 0),
|
| 44 |
+
(2507, 2509, 0),
|
| 45 |
+
(2519, 2519, 0),
|
| 46 |
+
(2530, 2531, 0),
|
| 47 |
+
(2561, 2563, 0),
|
| 48 |
+
(2620, 2620, 0),
|
| 49 |
+
(2622, 2626, 0),
|
| 50 |
+
(2631, 2632, 0),
|
| 51 |
+
(2635, 2637, 0),
|
| 52 |
+
(2641, 2641, 0),
|
| 53 |
+
(2672, 2673, 0),
|
| 54 |
+
(2677, 2677, 0),
|
| 55 |
+
(2689, 2691, 0),
|
| 56 |
+
(2748, 2748, 0),
|
| 57 |
+
(2750, 2757, 0),
|
| 58 |
+
(2759, 2761, 0),
|
| 59 |
+
(2763, 2765, 0),
|
| 60 |
+
(2786, 2787, 0),
|
| 61 |
+
(2817, 2819, 0),
|
| 62 |
+
(2876, 2876, 0),
|
| 63 |
+
(2878, 2884, 0),
|
| 64 |
+
(2887, 2888, 0),
|
| 65 |
+
(2891, 2893, 0),
|
| 66 |
+
(2902, 2903, 0),
|
| 67 |
+
(2914, 2915, 0),
|
| 68 |
+
(2946, 2946, 0),
|
| 69 |
+
(3006, 3010, 0),
|
| 70 |
+
(3014, 3016, 0),
|
| 71 |
+
(3018, 3021, 0),
|
| 72 |
+
(3031, 3031, 0),
|
| 73 |
+
(3073, 3075, 0),
|
| 74 |
+
(3134, 3140, 0),
|
| 75 |
+
(3142, 3144, 0),
|
| 76 |
+
(3146, 3149, 0),
|
| 77 |
+
(3157, 3158, 0),
|
| 78 |
+
(3170, 3171, 0),
|
| 79 |
+
(3202, 3203, 0),
|
| 80 |
+
(3260, 3260, 0),
|
| 81 |
+
(3262, 3268, 0),
|
| 82 |
+
(3270, 3272, 0),
|
| 83 |
+
(3274, 3277, 0),
|
| 84 |
+
(3285, 3286, 0),
|
| 85 |
+
(3298, 3299, 0),
|
| 86 |
+
(3330, 3331, 0),
|
| 87 |
+
(3390, 3396, 0),
|
| 88 |
+
(3398, 3400, 0),
|
| 89 |
+
(3402, 3405, 0),
|
| 90 |
+
(3415, 3415, 0),
|
| 91 |
+
(3426, 3427, 0),
|
| 92 |
+
(3458, 3459, 0),
|
| 93 |
+
(3530, 3530, 0),
|
| 94 |
+
(3535, 3540, 0),
|
| 95 |
+
(3542, 3542, 0),
|
| 96 |
+
(3544, 3551, 0),
|
| 97 |
+
(3570, 3571, 0),
|
| 98 |
+
(3633, 3633, 0),
|
| 99 |
+
(3636, 3642, 0),
|
| 100 |
+
(3655, 3662, 0),
|
| 101 |
+
(3761, 3761, 0),
|
| 102 |
+
(3764, 3769, 0),
|
| 103 |
+
(3771, 3772, 0),
|
| 104 |
+
(3784, 3789, 0),
|
| 105 |
+
(3864, 3865, 0),
|
| 106 |
+
(3893, 3893, 0),
|
| 107 |
+
(3895, 3895, 0),
|
| 108 |
+
(3897, 3897, 0),
|
| 109 |
+
(3902, 3903, 0),
|
| 110 |
+
(3953, 3972, 0),
|
| 111 |
+
(3974, 3975, 0),
|
| 112 |
+
(3981, 3991, 0),
|
| 113 |
+
(3993, 4028, 0),
|
| 114 |
+
(4038, 4038, 0),
|
| 115 |
+
(4139, 4158, 0),
|
| 116 |
+
(4182, 4185, 0),
|
| 117 |
+
(4190, 4192, 0),
|
| 118 |
+
(4194, 4196, 0),
|
| 119 |
+
(4199, 4205, 0),
|
| 120 |
+
(4209, 4212, 0),
|
| 121 |
+
(4226, 4237, 0),
|
| 122 |
+
(4239, 4239, 0),
|
| 123 |
+
(4250, 4253, 0),
|
| 124 |
+
(4352, 4447, 2),
|
| 125 |
+
(4448, 4607, 0),
|
| 126 |
+
(4957, 4959, 0),
|
| 127 |
+
(5906, 5908, 0),
|
| 128 |
+
(5938, 5940, 0),
|
| 129 |
+
(5970, 5971, 0),
|
| 130 |
+
(6002, 6003, 0),
|
| 131 |
+
(6068, 6099, 0),
|
| 132 |
+
(6109, 6109, 0),
|
| 133 |
+
(6155, 6157, 0),
|
| 134 |
+
(6313, 6313, 0),
|
| 135 |
+
(6432, 6443, 0),
|
| 136 |
+
(6448, 6459, 0),
|
| 137 |
+
(6576, 6592, 0),
|
| 138 |
+
(6600, 6601, 0),
|
| 139 |
+
(6679, 6683, 0),
|
| 140 |
+
(6741, 6750, 0),
|
| 141 |
+
(6752, 6780, 0),
|
| 142 |
+
(6783, 6783, 0),
|
| 143 |
+
(6912, 6916, 0),
|
| 144 |
+
(6964, 6980, 0),
|
| 145 |
+
(7019, 7027, 0),
|
| 146 |
+
(7040, 7042, 0),
|
| 147 |
+
(7073, 7082, 0),
|
| 148 |
+
(7142, 7155, 0),
|
| 149 |
+
(7204, 7223, 0),
|
| 150 |
+
(7376, 7378, 0),
|
| 151 |
+
(7380, 7400, 0),
|
| 152 |
+
(7405, 7405, 0),
|
| 153 |
+
(7410, 7410, 0),
|
| 154 |
+
(7616, 7654, 0),
|
| 155 |
+
(7676, 7679, 0),
|
| 156 |
+
(8203, 8207, 0),
|
| 157 |
+
(8232, 8238, 0),
|
| 158 |
+
(8288, 8303, 0),
|
| 159 |
+
(8400, 8432, 0),
|
| 160 |
+
(9001, 9002, 2),
|
| 161 |
+
(11503, 11505, 0),
|
| 162 |
+
(11647, 11647, 0),
|
| 163 |
+
(11744, 11775, 0),
|
| 164 |
+
(11904, 11929, 2),
|
| 165 |
+
(11931, 12019, 2),
|
| 166 |
+
(12032, 12245, 2),
|
| 167 |
+
(12272, 12283, 2),
|
| 168 |
+
(12288, 12329, 2),
|
| 169 |
+
(12330, 12335, 0),
|
| 170 |
+
(12336, 12350, 2),
|
| 171 |
+
(12353, 12438, 2),
|
| 172 |
+
(12441, 12442, 0),
|
| 173 |
+
(12443, 12543, 2),
|
| 174 |
+
(12549, 12589, 2),
|
| 175 |
+
(12593, 12643, 2),
|
| 176 |
+
(12644, 12644, 0),
|
| 177 |
+
(12645, 12686, 2),
|
| 178 |
+
(12688, 12730, 2),
|
| 179 |
+
(12736, 12771, 2),
|
| 180 |
+
(12784, 12830, 2),
|
| 181 |
+
(12832, 12871, 2),
|
| 182 |
+
(12880, 13054, 2),
|
| 183 |
+
(13056, 19903, 2),
|
| 184 |
+
(19968, 42124, 2),
|
| 185 |
+
(42128, 42182, 2),
|
| 186 |
+
(42607, 42610, 0),
|
| 187 |
+
(42620, 42621, 0),
|
| 188 |
+
(42736, 42737, 0),
|
| 189 |
+
(43010, 43010, 0),
|
| 190 |
+
(43014, 43014, 0),
|
| 191 |
+
(43019, 43019, 0),
|
| 192 |
+
(43043, 43047, 0),
|
| 193 |
+
(43136, 43137, 0),
|
| 194 |
+
(43188, 43204, 0),
|
| 195 |
+
(43232, 43249, 0),
|
| 196 |
+
(43302, 43309, 0),
|
| 197 |
+
(43335, 43347, 0),
|
| 198 |
+
(43360, 43388, 2),
|
| 199 |
+
(43392, 43395, 0),
|
| 200 |
+
(43443, 43456, 0),
|
| 201 |
+
(43561, 43574, 0),
|
| 202 |
+
(43587, 43587, 0),
|
| 203 |
+
(43596, 43597, 0),
|
| 204 |
+
(43643, 43643, 0),
|
| 205 |
+
(43696, 43696, 0),
|
| 206 |
+
(43698, 43700, 0),
|
| 207 |
+
(43703, 43704, 0),
|
| 208 |
+
(43710, 43711, 0),
|
| 209 |
+
(43713, 43713, 0),
|
| 210 |
+
(44003, 44010, 0),
|
| 211 |
+
(44012, 44013, 0),
|
| 212 |
+
(44032, 55203, 2),
|
| 213 |
+
(55216, 55295, 0),
|
| 214 |
+
(63744, 64255, 2),
|
| 215 |
+
(64286, 64286, 0),
|
| 216 |
+
(65024, 65039, 0),
|
| 217 |
+
(65040, 65049, 2),
|
| 218 |
+
(65056, 65062, 0),
|
| 219 |
+
(65072, 65106, 2),
|
| 220 |
+
(65108, 65126, 2),
|
| 221 |
+
(65128, 65131, 2),
|
| 222 |
+
(65279, 65279, 0),
|
| 223 |
+
(65281, 65376, 2),
|
| 224 |
+
(65440, 65440, 0),
|
| 225 |
+
(65504, 65510, 2),
|
| 226 |
+
(65520, 65531, 0),
|
| 227 |
+
(66045, 66045, 0),
|
| 228 |
+
(68097, 68099, 0),
|
| 229 |
+
(68101, 68102, 0),
|
| 230 |
+
(68108, 68111, 0),
|
| 231 |
+
(68152, 68154, 0),
|
| 232 |
+
(68159, 68159, 0),
|
| 233 |
+
(69632, 69634, 0),
|
| 234 |
+
(69688, 69702, 0),
|
| 235 |
+
(69760, 69762, 0),
|
| 236 |
+
(69808, 69818, 0),
|
| 237 |
+
(69821, 69821, 0),
|
| 238 |
+
(110592, 110593, 2),
|
| 239 |
+
(119141, 119145, 0),
|
| 240 |
+
(119149, 119170, 0),
|
| 241 |
+
(119173, 119179, 0),
|
| 242 |
+
(119210, 119213, 0),
|
| 243 |
+
(119362, 119364, 0),
|
| 244 |
+
(127488, 127490, 2),
|
| 245 |
+
(127504, 127546, 2),
|
| 246 |
+
(127552, 127560, 2),
|
| 247 |
+
(127568, 127569, 2),
|
| 248 |
+
(131072, 196605, 2),
|
| 249 |
+
(196608, 262141, 2),
|
| 250 |
+
(917504, 921599, 0),
|
| 251 |
+
],
|
| 252 |
+
frozenset(
|
| 253 |
+
[
|
| 254 |
+
"#",
|
| 255 |
+
"*",
|
| 256 |
+
"0",
|
| 257 |
+
"1",
|
| 258 |
+
"2",
|
| 259 |
+
"3",
|
| 260 |
+
"4",
|
| 261 |
+
"5",
|
| 262 |
+
"6",
|
| 263 |
+
"7",
|
| 264 |
+
"8",
|
| 265 |
+
"9",
|
| 266 |
+
"©",
|
| 267 |
+
"®",
|
| 268 |
+
"‼",
|
| 269 |
+
"⁉",
|
| 270 |
+
"™",
|
| 271 |
+
"ℹ",
|
| 272 |
+
"↔",
|
| 273 |
+
"↕",
|
| 274 |
+
"↖",
|
| 275 |
+
"↗",
|
| 276 |
+
"↘",
|
| 277 |
+
"↙",
|
| 278 |
+
"↩",
|
| 279 |
+
"↪",
|
| 280 |
+
"⌨",
|
| 281 |
+
"⏏",
|
| 282 |
+
"⏭",
|
| 283 |
+
"⏮",
|
| 284 |
+
"⏯",
|
| 285 |
+
"⏱",
|
| 286 |
+
"⏲",
|
| 287 |
+
"⏸",
|
| 288 |
+
"⏹",
|
| 289 |
+
"⏺",
|
| 290 |
+
"Ⓜ",
|
| 291 |
+
"▪",
|
| 292 |
+
"▫",
|
| 293 |
+
"▶",
|
| 294 |
+
"◀",
|
| 295 |
+
"◻",
|
| 296 |
+
"◼",
|
| 297 |
+
"☀",
|
| 298 |
+
"☁",
|
| 299 |
+
"☂",
|
| 300 |
+
"☃",
|
| 301 |
+
"☄",
|
| 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 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode6-1-0.py
ADDED
|
@@ -0,0 +1,480 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"6.1.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1536, 1540, 0),
|
| 18 |
+
(1552, 1562, 0),
|
| 19 |
+
(1611, 1631, 0),
|
| 20 |
+
(1648, 1648, 0),
|
| 21 |
+
(1750, 1757, 0),
|
| 22 |
+
(1759, 1764, 0),
|
| 23 |
+
(1767, 1768, 0),
|
| 24 |
+
(1770, 1773, 0),
|
| 25 |
+
(1807, 1807, 0),
|
| 26 |
+
(1809, 1809, 0),
|
| 27 |
+
(1840, 1866, 0),
|
| 28 |
+
(1958, 1968, 0),
|
| 29 |
+
(2027, 2035, 0),
|
| 30 |
+
(2070, 2073, 0),
|
| 31 |
+
(2075, 2083, 0),
|
| 32 |
+
(2085, 2087, 0),
|
| 33 |
+
(2089, 2093, 0),
|
| 34 |
+
(2137, 2139, 0),
|
| 35 |
+
(2276, 2302, 0),
|
| 36 |
+
(2304, 2307, 0),
|
| 37 |
+
(2362, 2364, 0),
|
| 38 |
+
(2366, 2383, 0),
|
| 39 |
+
(2385, 2391, 0),
|
| 40 |
+
(2402, 2403, 0),
|
| 41 |
+
(2433, 2435, 0),
|
| 42 |
+
(2492, 2492, 0),
|
| 43 |
+
(2494, 2500, 0),
|
| 44 |
+
(2503, 2504, 0),
|
| 45 |
+
(2507, 2509, 0),
|
| 46 |
+
(2519, 2519, 0),
|
| 47 |
+
(2530, 2531, 0),
|
| 48 |
+
(2561, 2563, 0),
|
| 49 |
+
(2620, 2620, 0),
|
| 50 |
+
(2622, 2626, 0),
|
| 51 |
+
(2631, 2632, 0),
|
| 52 |
+
(2635, 2637, 0),
|
| 53 |
+
(2641, 2641, 0),
|
| 54 |
+
(2672, 2673, 0),
|
| 55 |
+
(2677, 2677, 0),
|
| 56 |
+
(2689, 2691, 0),
|
| 57 |
+
(2748, 2748, 0),
|
| 58 |
+
(2750, 2757, 0),
|
| 59 |
+
(2759, 2761, 0),
|
| 60 |
+
(2763, 2765, 0),
|
| 61 |
+
(2786, 2787, 0),
|
| 62 |
+
(2817, 2819, 0),
|
| 63 |
+
(2876, 2876, 0),
|
| 64 |
+
(2878, 2884, 0),
|
| 65 |
+
(2887, 2888, 0),
|
| 66 |
+
(2891, 2893, 0),
|
| 67 |
+
(2902, 2903, 0),
|
| 68 |
+
(2914, 2915, 0),
|
| 69 |
+
(2946, 2946, 0),
|
| 70 |
+
(3006, 3010, 0),
|
| 71 |
+
(3014, 3016, 0),
|
| 72 |
+
(3018, 3021, 0),
|
| 73 |
+
(3031, 3031, 0),
|
| 74 |
+
(3073, 3075, 0),
|
| 75 |
+
(3134, 3140, 0),
|
| 76 |
+
(3142, 3144, 0),
|
| 77 |
+
(3146, 3149, 0),
|
| 78 |
+
(3157, 3158, 0),
|
| 79 |
+
(3170, 3171, 0),
|
| 80 |
+
(3202, 3203, 0),
|
| 81 |
+
(3260, 3260, 0),
|
| 82 |
+
(3262, 3268, 0),
|
| 83 |
+
(3270, 3272, 0),
|
| 84 |
+
(3274, 3277, 0),
|
| 85 |
+
(3285, 3286, 0),
|
| 86 |
+
(3298, 3299, 0),
|
| 87 |
+
(3330, 3331, 0),
|
| 88 |
+
(3390, 3396, 0),
|
| 89 |
+
(3398, 3400, 0),
|
| 90 |
+
(3402, 3405, 0),
|
| 91 |
+
(3415, 3415, 0),
|
| 92 |
+
(3426, 3427, 0),
|
| 93 |
+
(3458, 3459, 0),
|
| 94 |
+
(3530, 3530, 0),
|
| 95 |
+
(3535, 3540, 0),
|
| 96 |
+
(3542, 3542, 0),
|
| 97 |
+
(3544, 3551, 0),
|
| 98 |
+
(3570, 3571, 0),
|
| 99 |
+
(3633, 3633, 0),
|
| 100 |
+
(3636, 3642, 0),
|
| 101 |
+
(3655, 3662, 0),
|
| 102 |
+
(3761, 3761, 0),
|
| 103 |
+
(3764, 3769, 0),
|
| 104 |
+
(3771, 3772, 0),
|
| 105 |
+
(3784, 3789, 0),
|
| 106 |
+
(3864, 3865, 0),
|
| 107 |
+
(3893, 3893, 0),
|
| 108 |
+
(3895, 3895, 0),
|
| 109 |
+
(3897, 3897, 0),
|
| 110 |
+
(3902, 3903, 0),
|
| 111 |
+
(3953, 3972, 0),
|
| 112 |
+
(3974, 3975, 0),
|
| 113 |
+
(3981, 3991, 0),
|
| 114 |
+
(3993, 4028, 0),
|
| 115 |
+
(4038, 4038, 0),
|
| 116 |
+
(4139, 4158, 0),
|
| 117 |
+
(4182, 4185, 0),
|
| 118 |
+
(4190, 4192, 0),
|
| 119 |
+
(4194, 4196, 0),
|
| 120 |
+
(4199, 4205, 0),
|
| 121 |
+
(4209, 4212, 0),
|
| 122 |
+
(4226, 4237, 0),
|
| 123 |
+
(4239, 4239, 0),
|
| 124 |
+
(4250, 4253, 0),
|
| 125 |
+
(4352, 4447, 2),
|
| 126 |
+
(4448, 4607, 0),
|
| 127 |
+
(4957, 4959, 0),
|
| 128 |
+
(5906, 5908, 0),
|
| 129 |
+
(5938, 5940, 0),
|
| 130 |
+
(5970, 5971, 0),
|
| 131 |
+
(6002, 6003, 0),
|
| 132 |
+
(6068, 6099, 0),
|
| 133 |
+
(6109, 6109, 0),
|
| 134 |
+
(6155, 6157, 0),
|
| 135 |
+
(6313, 6313, 0),
|
| 136 |
+
(6432, 6443, 0),
|
| 137 |
+
(6448, 6459, 0),
|
| 138 |
+
(6576, 6592, 0),
|
| 139 |
+
(6600, 6601, 0),
|
| 140 |
+
(6679, 6683, 0),
|
| 141 |
+
(6741, 6750, 0),
|
| 142 |
+
(6752, 6780, 0),
|
| 143 |
+
(6783, 6783, 0),
|
| 144 |
+
(6912, 6916, 0),
|
| 145 |
+
(6964, 6980, 0),
|
| 146 |
+
(7019, 7027, 0),
|
| 147 |
+
(7040, 7042, 0),
|
| 148 |
+
(7073, 7085, 0),
|
| 149 |
+
(7142, 7155, 0),
|
| 150 |
+
(7204, 7223, 0),
|
| 151 |
+
(7376, 7378, 0),
|
| 152 |
+
(7380, 7400, 0),
|
| 153 |
+
(7405, 7405, 0),
|
| 154 |
+
(7410, 7412, 0),
|
| 155 |
+
(7616, 7654, 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 |
+
(43561, 43574, 0),
|
| 204 |
+
(43587, 43587, 0),
|
| 205 |
+
(43596, 43597, 0),
|
| 206 |
+
(43643, 43643, 0),
|
| 207 |
+
(43696, 43696, 0),
|
| 208 |
+
(43698, 43700, 0),
|
| 209 |
+
(43703, 43704, 0),
|
| 210 |
+
(43710, 43711, 0),
|
| 211 |
+
(43713, 43713, 0),
|
| 212 |
+
(43755, 43759, 0),
|
| 213 |
+
(43765, 43766, 0),
|
| 214 |
+
(44003, 44010, 0),
|
| 215 |
+
(44012, 44013, 0),
|
| 216 |
+
(44032, 55203, 2),
|
| 217 |
+
(55216, 55295, 0),
|
| 218 |
+
(63744, 64255, 2),
|
| 219 |
+
(64286, 64286, 0),
|
| 220 |
+
(65024, 65039, 0),
|
| 221 |
+
(65040, 65049, 2),
|
| 222 |
+
(65056, 65062, 0),
|
| 223 |
+
(65072, 65106, 2),
|
| 224 |
+
(65108, 65126, 2),
|
| 225 |
+
(65128, 65131, 2),
|
| 226 |
+
(65279, 65279, 0),
|
| 227 |
+
(65281, 65376, 2),
|
| 228 |
+
(65440, 65440, 0),
|
| 229 |
+
(65504, 65510, 2),
|
| 230 |
+
(65520, 65531, 0),
|
| 231 |
+
(66045, 66045, 0),
|
| 232 |
+
(68097, 68099, 0),
|
| 233 |
+
(68101, 68102, 0),
|
| 234 |
+
(68108, 68111, 0),
|
| 235 |
+
(68152, 68154, 0),
|
| 236 |
+
(68159, 68159, 0),
|
| 237 |
+
(69632, 69634, 0),
|
| 238 |
+
(69688, 69702, 0),
|
| 239 |
+
(69760, 69762, 0),
|
| 240 |
+
(69808, 69818, 0),
|
| 241 |
+
(69821, 69821, 0),
|
| 242 |
+
(69888, 69890, 0),
|
| 243 |
+
(69927, 69940, 0),
|
| 244 |
+
(70016, 70018, 0),
|
| 245 |
+
(70067, 70080, 0),
|
| 246 |
+
(71339, 71351, 0),
|
| 247 |
+
(94033, 94078, 0),
|
| 248 |
+
(94095, 94098, 0),
|
| 249 |
+
(110592, 110593, 2),
|
| 250 |
+
(119141, 119145, 0),
|
| 251 |
+
(119149, 119170, 0),
|
| 252 |
+
(119173, 119179, 0),
|
| 253 |
+
(119210, 119213, 0),
|
| 254 |
+
(119362, 119364, 0),
|
| 255 |
+
(127488, 127490, 2),
|
| 256 |
+
(127504, 127546, 2),
|
| 257 |
+
(127552, 127560, 2),
|
| 258 |
+
(127568, 127569, 2),
|
| 259 |
+
(131072, 196605, 2),
|
| 260 |
+
(196608, 262141, 2),
|
| 261 |
+
(917504, 921599, 0),
|
| 262 |
+
],
|
| 263 |
+
frozenset(
|
| 264 |
+
[
|
| 265 |
+
"#",
|
| 266 |
+
"*",
|
| 267 |
+
"0",
|
| 268 |
+
"1",
|
| 269 |
+
"2",
|
| 270 |
+
"3",
|
| 271 |
+
"4",
|
| 272 |
+
"5",
|
| 273 |
+
"6",
|
| 274 |
+
"7",
|
| 275 |
+
"8",
|
| 276 |
+
"9",
|
| 277 |
+
"©",
|
| 278 |
+
"®",
|
| 279 |
+
"‼",
|
| 280 |
+
"⁉",
|
| 281 |
+
"™",
|
| 282 |
+
"ℹ",
|
| 283 |
+
"↔",
|
| 284 |
+
"↕",
|
| 285 |
+
"↖",
|
| 286 |
+
"↗",
|
| 287 |
+
"↘",
|
| 288 |
+
"↙",
|
| 289 |
+
"↩",
|
| 290 |
+
"↪",
|
| 291 |
+
"⌨",
|
| 292 |
+
"⏏",
|
| 293 |
+
"⏭",
|
| 294 |
+
"⏮",
|
| 295 |
+
"⏯",
|
| 296 |
+
"⏱",
|
| 297 |
+
"⏲",
|
| 298 |
+
"⏸",
|
| 299 |
+
"⏹",
|
| 300 |
+
"⏺",
|
| 301 |
+
"Ⓜ",
|
| 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 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode6-2-0.py
ADDED
|
@@ -0,0 +1,480 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"6.2.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1536, 1540, 0),
|
| 18 |
+
(1552, 1562, 0),
|
| 19 |
+
(1611, 1631, 0),
|
| 20 |
+
(1648, 1648, 0),
|
| 21 |
+
(1750, 1757, 0),
|
| 22 |
+
(1759, 1764, 0),
|
| 23 |
+
(1767, 1768, 0),
|
| 24 |
+
(1770, 1773, 0),
|
| 25 |
+
(1807, 1807, 0),
|
| 26 |
+
(1809, 1809, 0),
|
| 27 |
+
(1840, 1866, 0),
|
| 28 |
+
(1958, 1968, 0),
|
| 29 |
+
(2027, 2035, 0),
|
| 30 |
+
(2070, 2073, 0),
|
| 31 |
+
(2075, 2083, 0),
|
| 32 |
+
(2085, 2087, 0),
|
| 33 |
+
(2089, 2093, 0),
|
| 34 |
+
(2137, 2139, 0),
|
| 35 |
+
(2276, 2302, 0),
|
| 36 |
+
(2304, 2307, 0),
|
| 37 |
+
(2362, 2364, 0),
|
| 38 |
+
(2366, 2383, 0),
|
| 39 |
+
(2385, 2391, 0),
|
| 40 |
+
(2402, 2403, 0),
|
| 41 |
+
(2433, 2435, 0),
|
| 42 |
+
(2492, 2492, 0),
|
| 43 |
+
(2494, 2500, 0),
|
| 44 |
+
(2503, 2504, 0),
|
| 45 |
+
(2507, 2509, 0),
|
| 46 |
+
(2519, 2519, 0),
|
| 47 |
+
(2530, 2531, 0),
|
| 48 |
+
(2561, 2563, 0),
|
| 49 |
+
(2620, 2620, 0),
|
| 50 |
+
(2622, 2626, 0),
|
| 51 |
+
(2631, 2632, 0),
|
| 52 |
+
(2635, 2637, 0),
|
| 53 |
+
(2641, 2641, 0),
|
| 54 |
+
(2672, 2673, 0),
|
| 55 |
+
(2677, 2677, 0),
|
| 56 |
+
(2689, 2691, 0),
|
| 57 |
+
(2748, 2748, 0),
|
| 58 |
+
(2750, 2757, 0),
|
| 59 |
+
(2759, 2761, 0),
|
| 60 |
+
(2763, 2765, 0),
|
| 61 |
+
(2786, 2787, 0),
|
| 62 |
+
(2817, 2819, 0),
|
| 63 |
+
(2876, 2876, 0),
|
| 64 |
+
(2878, 2884, 0),
|
| 65 |
+
(2887, 2888, 0),
|
| 66 |
+
(2891, 2893, 0),
|
| 67 |
+
(2902, 2903, 0),
|
| 68 |
+
(2914, 2915, 0),
|
| 69 |
+
(2946, 2946, 0),
|
| 70 |
+
(3006, 3010, 0),
|
| 71 |
+
(3014, 3016, 0),
|
| 72 |
+
(3018, 3021, 0),
|
| 73 |
+
(3031, 3031, 0),
|
| 74 |
+
(3073, 3075, 0),
|
| 75 |
+
(3134, 3140, 0),
|
| 76 |
+
(3142, 3144, 0),
|
| 77 |
+
(3146, 3149, 0),
|
| 78 |
+
(3157, 3158, 0),
|
| 79 |
+
(3170, 3171, 0),
|
| 80 |
+
(3202, 3203, 0),
|
| 81 |
+
(3260, 3260, 0),
|
| 82 |
+
(3262, 3268, 0),
|
| 83 |
+
(3270, 3272, 0),
|
| 84 |
+
(3274, 3277, 0),
|
| 85 |
+
(3285, 3286, 0),
|
| 86 |
+
(3298, 3299, 0),
|
| 87 |
+
(3330, 3331, 0),
|
| 88 |
+
(3390, 3396, 0),
|
| 89 |
+
(3398, 3400, 0),
|
| 90 |
+
(3402, 3405, 0),
|
| 91 |
+
(3415, 3415, 0),
|
| 92 |
+
(3426, 3427, 0),
|
| 93 |
+
(3458, 3459, 0),
|
| 94 |
+
(3530, 3530, 0),
|
| 95 |
+
(3535, 3540, 0),
|
| 96 |
+
(3542, 3542, 0),
|
| 97 |
+
(3544, 3551, 0),
|
| 98 |
+
(3570, 3571, 0),
|
| 99 |
+
(3633, 3633, 0),
|
| 100 |
+
(3636, 3642, 0),
|
| 101 |
+
(3655, 3662, 0),
|
| 102 |
+
(3761, 3761, 0),
|
| 103 |
+
(3764, 3769, 0),
|
| 104 |
+
(3771, 3772, 0),
|
| 105 |
+
(3784, 3789, 0),
|
| 106 |
+
(3864, 3865, 0),
|
| 107 |
+
(3893, 3893, 0),
|
| 108 |
+
(3895, 3895, 0),
|
| 109 |
+
(3897, 3897, 0),
|
| 110 |
+
(3902, 3903, 0),
|
| 111 |
+
(3953, 3972, 0),
|
| 112 |
+
(3974, 3975, 0),
|
| 113 |
+
(3981, 3991, 0),
|
| 114 |
+
(3993, 4028, 0),
|
| 115 |
+
(4038, 4038, 0),
|
| 116 |
+
(4139, 4158, 0),
|
| 117 |
+
(4182, 4185, 0),
|
| 118 |
+
(4190, 4192, 0),
|
| 119 |
+
(4194, 4196, 0),
|
| 120 |
+
(4199, 4205, 0),
|
| 121 |
+
(4209, 4212, 0),
|
| 122 |
+
(4226, 4237, 0),
|
| 123 |
+
(4239, 4239, 0),
|
| 124 |
+
(4250, 4253, 0),
|
| 125 |
+
(4352, 4447, 2),
|
| 126 |
+
(4448, 4607, 0),
|
| 127 |
+
(4957, 4959, 0),
|
| 128 |
+
(5906, 5908, 0),
|
| 129 |
+
(5938, 5940, 0),
|
| 130 |
+
(5970, 5971, 0),
|
| 131 |
+
(6002, 6003, 0),
|
| 132 |
+
(6068, 6099, 0),
|
| 133 |
+
(6109, 6109, 0),
|
| 134 |
+
(6155, 6157, 0),
|
| 135 |
+
(6313, 6313, 0),
|
| 136 |
+
(6432, 6443, 0),
|
| 137 |
+
(6448, 6459, 0),
|
| 138 |
+
(6576, 6592, 0),
|
| 139 |
+
(6600, 6601, 0),
|
| 140 |
+
(6679, 6683, 0),
|
| 141 |
+
(6741, 6750, 0),
|
| 142 |
+
(6752, 6780, 0),
|
| 143 |
+
(6783, 6783, 0),
|
| 144 |
+
(6912, 6916, 0),
|
| 145 |
+
(6964, 6980, 0),
|
| 146 |
+
(7019, 7027, 0),
|
| 147 |
+
(7040, 7042, 0),
|
| 148 |
+
(7073, 7085, 0),
|
| 149 |
+
(7142, 7155, 0),
|
| 150 |
+
(7204, 7223, 0),
|
| 151 |
+
(7376, 7378, 0),
|
| 152 |
+
(7380, 7400, 0),
|
| 153 |
+
(7405, 7405, 0),
|
| 154 |
+
(7410, 7412, 0),
|
| 155 |
+
(7616, 7654, 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 |
+
(43561, 43574, 0),
|
| 204 |
+
(43587, 43587, 0),
|
| 205 |
+
(43596, 43597, 0),
|
| 206 |
+
(43643, 43643, 0),
|
| 207 |
+
(43696, 43696, 0),
|
| 208 |
+
(43698, 43700, 0),
|
| 209 |
+
(43703, 43704, 0),
|
| 210 |
+
(43710, 43711, 0),
|
| 211 |
+
(43713, 43713, 0),
|
| 212 |
+
(43755, 43759, 0),
|
| 213 |
+
(43765, 43766, 0),
|
| 214 |
+
(44003, 44010, 0),
|
| 215 |
+
(44012, 44013, 0),
|
| 216 |
+
(44032, 55203, 2),
|
| 217 |
+
(55216, 55295, 0),
|
| 218 |
+
(63744, 64255, 2),
|
| 219 |
+
(64286, 64286, 0),
|
| 220 |
+
(65024, 65039, 0),
|
| 221 |
+
(65040, 65049, 2),
|
| 222 |
+
(65056, 65062, 0),
|
| 223 |
+
(65072, 65106, 2),
|
| 224 |
+
(65108, 65126, 2),
|
| 225 |
+
(65128, 65131, 2),
|
| 226 |
+
(65279, 65279, 0),
|
| 227 |
+
(65281, 65376, 2),
|
| 228 |
+
(65440, 65440, 0),
|
| 229 |
+
(65504, 65510, 2),
|
| 230 |
+
(65520, 65531, 0),
|
| 231 |
+
(66045, 66045, 0),
|
| 232 |
+
(68097, 68099, 0),
|
| 233 |
+
(68101, 68102, 0),
|
| 234 |
+
(68108, 68111, 0),
|
| 235 |
+
(68152, 68154, 0),
|
| 236 |
+
(68159, 68159, 0),
|
| 237 |
+
(69632, 69634, 0),
|
| 238 |
+
(69688, 69702, 0),
|
| 239 |
+
(69760, 69762, 0),
|
| 240 |
+
(69808, 69818, 0),
|
| 241 |
+
(69821, 69821, 0),
|
| 242 |
+
(69888, 69890, 0),
|
| 243 |
+
(69927, 69940, 0),
|
| 244 |
+
(70016, 70018, 0),
|
| 245 |
+
(70067, 70080, 0),
|
| 246 |
+
(71339, 71351, 0),
|
| 247 |
+
(94033, 94078, 0),
|
| 248 |
+
(94095, 94098, 0),
|
| 249 |
+
(110592, 110593, 2),
|
| 250 |
+
(119141, 119145, 0),
|
| 251 |
+
(119149, 119170, 0),
|
| 252 |
+
(119173, 119179, 0),
|
| 253 |
+
(119210, 119213, 0),
|
| 254 |
+
(119362, 119364, 0),
|
| 255 |
+
(127488, 127490, 2),
|
| 256 |
+
(127504, 127546, 2),
|
| 257 |
+
(127552, 127560, 2),
|
| 258 |
+
(127568, 127569, 2),
|
| 259 |
+
(131072, 196605, 2),
|
| 260 |
+
(196608, 262141, 2),
|
| 261 |
+
(917504, 921599, 0),
|
| 262 |
+
],
|
| 263 |
+
frozenset(
|
| 264 |
+
[
|
| 265 |
+
"#",
|
| 266 |
+
"*",
|
| 267 |
+
"0",
|
| 268 |
+
"1",
|
| 269 |
+
"2",
|
| 270 |
+
"3",
|
| 271 |
+
"4",
|
| 272 |
+
"5",
|
| 273 |
+
"6",
|
| 274 |
+
"7",
|
| 275 |
+
"8",
|
| 276 |
+
"9",
|
| 277 |
+
"©",
|
| 278 |
+
"®",
|
| 279 |
+
"‼",
|
| 280 |
+
"⁉",
|
| 281 |
+
"™",
|
| 282 |
+
"ℹ",
|
| 283 |
+
"↔",
|
| 284 |
+
"↕",
|
| 285 |
+
"↖",
|
| 286 |
+
"↗",
|
| 287 |
+
"↘",
|
| 288 |
+
"↙",
|
| 289 |
+
"↩",
|
| 290 |
+
"↪",
|
| 291 |
+
"⌨",
|
| 292 |
+
"⏏",
|
| 293 |
+
"⏭",
|
| 294 |
+
"⏮",
|
| 295 |
+
"⏯",
|
| 296 |
+
"⏱",
|
| 297 |
+
"⏲",
|
| 298 |
+
"⏸",
|
| 299 |
+
"⏹",
|
| 300 |
+
"⏺",
|
| 301 |
+
"Ⓜ",
|
| 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 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode6-3-0.py
ADDED
|
@@ -0,0 +1,481 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"6.3.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1536, 1540, 0),
|
| 18 |
+
(1552, 1562, 0),
|
| 19 |
+
(1564, 1564, 0),
|
| 20 |
+
(1611, 1631, 0),
|
| 21 |
+
(1648, 1648, 0),
|
| 22 |
+
(1750, 1757, 0),
|
| 23 |
+
(1759, 1764, 0),
|
| 24 |
+
(1767, 1768, 0),
|
| 25 |
+
(1770, 1773, 0),
|
| 26 |
+
(1807, 1807, 0),
|
| 27 |
+
(1809, 1809, 0),
|
| 28 |
+
(1840, 1866, 0),
|
| 29 |
+
(1958, 1968, 0),
|
| 30 |
+
(2027, 2035, 0),
|
| 31 |
+
(2070, 2073, 0),
|
| 32 |
+
(2075, 2083, 0),
|
| 33 |
+
(2085, 2087, 0),
|
| 34 |
+
(2089, 2093, 0),
|
| 35 |
+
(2137, 2139, 0),
|
| 36 |
+
(2276, 2302, 0),
|
| 37 |
+
(2304, 2307, 0),
|
| 38 |
+
(2362, 2364, 0),
|
| 39 |
+
(2366, 2383, 0),
|
| 40 |
+
(2385, 2391, 0),
|
| 41 |
+
(2402, 2403, 0),
|
| 42 |
+
(2433, 2435, 0),
|
| 43 |
+
(2492, 2492, 0),
|
| 44 |
+
(2494, 2500, 0),
|
| 45 |
+
(2503, 2504, 0),
|
| 46 |
+
(2507, 2509, 0),
|
| 47 |
+
(2519, 2519, 0),
|
| 48 |
+
(2530, 2531, 0),
|
| 49 |
+
(2561, 2563, 0),
|
| 50 |
+
(2620, 2620, 0),
|
| 51 |
+
(2622, 2626, 0),
|
| 52 |
+
(2631, 2632, 0),
|
| 53 |
+
(2635, 2637, 0),
|
| 54 |
+
(2641, 2641, 0),
|
| 55 |
+
(2672, 2673, 0),
|
| 56 |
+
(2677, 2677, 0),
|
| 57 |
+
(2689, 2691, 0),
|
| 58 |
+
(2748, 2748, 0),
|
| 59 |
+
(2750, 2757, 0),
|
| 60 |
+
(2759, 2761, 0),
|
| 61 |
+
(2763, 2765, 0),
|
| 62 |
+
(2786, 2787, 0),
|
| 63 |
+
(2817, 2819, 0),
|
| 64 |
+
(2876, 2876, 0),
|
| 65 |
+
(2878, 2884, 0),
|
| 66 |
+
(2887, 2888, 0),
|
| 67 |
+
(2891, 2893, 0),
|
| 68 |
+
(2902, 2903, 0),
|
| 69 |
+
(2914, 2915, 0),
|
| 70 |
+
(2946, 2946, 0),
|
| 71 |
+
(3006, 3010, 0),
|
| 72 |
+
(3014, 3016, 0),
|
| 73 |
+
(3018, 3021, 0),
|
| 74 |
+
(3031, 3031, 0),
|
| 75 |
+
(3073, 3075, 0),
|
| 76 |
+
(3134, 3140, 0),
|
| 77 |
+
(3142, 3144, 0),
|
| 78 |
+
(3146, 3149, 0),
|
| 79 |
+
(3157, 3158, 0),
|
| 80 |
+
(3170, 3171, 0),
|
| 81 |
+
(3202, 3203, 0),
|
| 82 |
+
(3260, 3260, 0),
|
| 83 |
+
(3262, 3268, 0),
|
| 84 |
+
(3270, 3272, 0),
|
| 85 |
+
(3274, 3277, 0),
|
| 86 |
+
(3285, 3286, 0),
|
| 87 |
+
(3298, 3299, 0),
|
| 88 |
+
(3330, 3331, 0),
|
| 89 |
+
(3390, 3396, 0),
|
| 90 |
+
(3398, 3400, 0),
|
| 91 |
+
(3402, 3405, 0),
|
| 92 |
+
(3415, 3415, 0),
|
| 93 |
+
(3426, 3427, 0),
|
| 94 |
+
(3458, 3459, 0),
|
| 95 |
+
(3530, 3530, 0),
|
| 96 |
+
(3535, 3540, 0),
|
| 97 |
+
(3542, 3542, 0),
|
| 98 |
+
(3544, 3551, 0),
|
| 99 |
+
(3570, 3571, 0),
|
| 100 |
+
(3633, 3633, 0),
|
| 101 |
+
(3636, 3642, 0),
|
| 102 |
+
(3655, 3662, 0),
|
| 103 |
+
(3761, 3761, 0),
|
| 104 |
+
(3764, 3769, 0),
|
| 105 |
+
(3771, 3772, 0),
|
| 106 |
+
(3784, 3789, 0),
|
| 107 |
+
(3864, 3865, 0),
|
| 108 |
+
(3893, 3893, 0),
|
| 109 |
+
(3895, 3895, 0),
|
| 110 |
+
(3897, 3897, 0),
|
| 111 |
+
(3902, 3903, 0),
|
| 112 |
+
(3953, 3972, 0),
|
| 113 |
+
(3974, 3975, 0),
|
| 114 |
+
(3981, 3991, 0),
|
| 115 |
+
(3993, 4028, 0),
|
| 116 |
+
(4038, 4038, 0),
|
| 117 |
+
(4139, 4158, 0),
|
| 118 |
+
(4182, 4185, 0),
|
| 119 |
+
(4190, 4192, 0),
|
| 120 |
+
(4194, 4196, 0),
|
| 121 |
+
(4199, 4205, 0),
|
| 122 |
+
(4209, 4212, 0),
|
| 123 |
+
(4226, 4237, 0),
|
| 124 |
+
(4239, 4239, 0),
|
| 125 |
+
(4250, 4253, 0),
|
| 126 |
+
(4352, 4447, 2),
|
| 127 |
+
(4448, 4607, 0),
|
| 128 |
+
(4957, 4959, 0),
|
| 129 |
+
(5906, 5908, 0),
|
| 130 |
+
(5938, 5940, 0),
|
| 131 |
+
(5970, 5971, 0),
|
| 132 |
+
(6002, 6003, 0),
|
| 133 |
+
(6068, 6099, 0),
|
| 134 |
+
(6109, 6109, 0),
|
| 135 |
+
(6155, 6158, 0),
|
| 136 |
+
(6313, 6313, 0),
|
| 137 |
+
(6432, 6443, 0),
|
| 138 |
+
(6448, 6459, 0),
|
| 139 |
+
(6576, 6592, 0),
|
| 140 |
+
(6600, 6601, 0),
|
| 141 |
+
(6679, 6683, 0),
|
| 142 |
+
(6741, 6750, 0),
|
| 143 |
+
(6752, 6780, 0),
|
| 144 |
+
(6783, 6783, 0),
|
| 145 |
+
(6912, 6916, 0),
|
| 146 |
+
(6964, 6980, 0),
|
| 147 |
+
(7019, 7027, 0),
|
| 148 |
+
(7040, 7042, 0),
|
| 149 |
+
(7073, 7085, 0),
|
| 150 |
+
(7142, 7155, 0),
|
| 151 |
+
(7204, 7223, 0),
|
| 152 |
+
(7376, 7378, 0),
|
| 153 |
+
(7380, 7400, 0),
|
| 154 |
+
(7405, 7405, 0),
|
| 155 |
+
(7410, 7412, 0),
|
| 156 |
+
(7616, 7654, 0),
|
| 157 |
+
(7676, 7679, 0),
|
| 158 |
+
(8203, 8207, 0),
|
| 159 |
+
(8232, 8238, 0),
|
| 160 |
+
(8288, 8303, 0),
|
| 161 |
+
(8400, 8432, 0),
|
| 162 |
+
(9001, 9002, 2),
|
| 163 |
+
(11503, 11505, 0),
|
| 164 |
+
(11647, 11647, 0),
|
| 165 |
+
(11744, 11775, 0),
|
| 166 |
+
(11904, 11929, 2),
|
| 167 |
+
(11931, 12019, 2),
|
| 168 |
+
(12032, 12245, 2),
|
| 169 |
+
(12272, 12283, 2),
|
| 170 |
+
(12288, 12329, 2),
|
| 171 |
+
(12330, 12335, 0),
|
| 172 |
+
(12336, 12350, 2),
|
| 173 |
+
(12353, 12438, 2),
|
| 174 |
+
(12441, 12442, 0),
|
| 175 |
+
(12443, 12543, 2),
|
| 176 |
+
(12549, 12589, 2),
|
| 177 |
+
(12593, 12643, 2),
|
| 178 |
+
(12644, 12644, 0),
|
| 179 |
+
(12645, 12686, 2),
|
| 180 |
+
(12688, 12730, 2),
|
| 181 |
+
(12736, 12771, 2),
|
| 182 |
+
(12784, 12830, 2),
|
| 183 |
+
(12832, 12871, 2),
|
| 184 |
+
(12880, 13054, 2),
|
| 185 |
+
(13056, 19903, 2),
|
| 186 |
+
(19968, 42124, 2),
|
| 187 |
+
(42128, 42182, 2),
|
| 188 |
+
(42607, 42610, 0),
|
| 189 |
+
(42612, 42621, 0),
|
| 190 |
+
(42655, 42655, 0),
|
| 191 |
+
(42736, 42737, 0),
|
| 192 |
+
(43010, 43010, 0),
|
| 193 |
+
(43014, 43014, 0),
|
| 194 |
+
(43019, 43019, 0),
|
| 195 |
+
(43043, 43047, 0),
|
| 196 |
+
(43136, 43137, 0),
|
| 197 |
+
(43188, 43204, 0),
|
| 198 |
+
(43232, 43249, 0),
|
| 199 |
+
(43302, 43309, 0),
|
| 200 |
+
(43335, 43347, 0),
|
| 201 |
+
(43360, 43388, 2),
|
| 202 |
+
(43392, 43395, 0),
|
| 203 |
+
(43443, 43456, 0),
|
| 204 |
+
(43561, 43574, 0),
|
| 205 |
+
(43587, 43587, 0),
|
| 206 |
+
(43596, 43597, 0),
|
| 207 |
+
(43643, 43643, 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, 65062, 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 |
+
(68097, 68099, 0),
|
| 234 |
+
(68101, 68102, 0),
|
| 235 |
+
(68108, 68111, 0),
|
| 236 |
+
(68152, 68154, 0),
|
| 237 |
+
(68159, 68159, 0),
|
| 238 |
+
(69632, 69634, 0),
|
| 239 |
+
(69688, 69702, 0),
|
| 240 |
+
(69760, 69762, 0),
|
| 241 |
+
(69808, 69818, 0),
|
| 242 |
+
(69821, 69821, 0),
|
| 243 |
+
(69888, 69890, 0),
|
| 244 |
+
(69927, 69940, 0),
|
| 245 |
+
(70016, 70018, 0),
|
| 246 |
+
(70067, 70080, 0),
|
| 247 |
+
(71339, 71351, 0),
|
| 248 |
+
(94033, 94078, 0),
|
| 249 |
+
(94095, 94098, 0),
|
| 250 |
+
(110592, 110593, 2),
|
| 251 |
+
(119141, 119145, 0),
|
| 252 |
+
(119149, 119170, 0),
|
| 253 |
+
(119173, 119179, 0),
|
| 254 |
+
(119210, 119213, 0),
|
| 255 |
+
(119362, 119364, 0),
|
| 256 |
+
(127488, 127490, 2),
|
| 257 |
+
(127504, 127546, 2),
|
| 258 |
+
(127552, 127560, 2),
|
| 259 |
+
(127568, 127569, 2),
|
| 260 |
+
(131072, 196605, 2),
|
| 261 |
+
(196608, 262141, 2),
|
| 262 |
+
(917504, 921599, 0),
|
| 263 |
+
],
|
| 264 |
+
frozenset(
|
| 265 |
+
[
|
| 266 |
+
"#",
|
| 267 |
+
"*",
|
| 268 |
+
"0",
|
| 269 |
+
"1",
|
| 270 |
+
"2",
|
| 271 |
+
"3",
|
| 272 |
+
"4",
|
| 273 |
+
"5",
|
| 274 |
+
"6",
|
| 275 |
+
"7",
|
| 276 |
+
"8",
|
| 277 |
+
"9",
|
| 278 |
+
"©",
|
| 279 |
+
"®",
|
| 280 |
+
"‼",
|
| 281 |
+
"⁉",
|
| 282 |
+
"™",
|
| 283 |
+
"ℹ",
|
| 284 |
+
"↔",
|
| 285 |
+
"↕",
|
| 286 |
+
"↖",
|
| 287 |
+
"↗",
|
| 288 |
+
"↘",
|
| 289 |
+
"↙",
|
| 290 |
+
"↩",
|
| 291 |
+
"↪",
|
| 292 |
+
"⌨",
|
| 293 |
+
"⏏",
|
| 294 |
+
"⏭",
|
| 295 |
+
"⏮",
|
| 296 |
+
"⏯",
|
| 297 |
+
"⏱",
|
| 298 |
+
"⏲",
|
| 299 |
+
"⏸",
|
| 300 |
+
"⏹",
|
| 301 |
+
"⏺",
|
| 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 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode7-0-0.py
ADDED
|
@@ -0,0 +1,507 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"7.0.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1536, 1541, 0),
|
| 18 |
+
(1552, 1562, 0),
|
| 19 |
+
(1564, 1564, 0),
|
| 20 |
+
(1611, 1631, 0),
|
| 21 |
+
(1648, 1648, 0),
|
| 22 |
+
(1750, 1757, 0),
|
| 23 |
+
(1759, 1764, 0),
|
| 24 |
+
(1767, 1768, 0),
|
| 25 |
+
(1770, 1773, 0),
|
| 26 |
+
(1807, 1807, 0),
|
| 27 |
+
(1809, 1809, 0),
|
| 28 |
+
(1840, 1866, 0),
|
| 29 |
+
(1958, 1968, 0),
|
| 30 |
+
(2027, 2035, 0),
|
| 31 |
+
(2070, 2073, 0),
|
| 32 |
+
(2075, 2083, 0),
|
| 33 |
+
(2085, 2087, 0),
|
| 34 |
+
(2089, 2093, 0),
|
| 35 |
+
(2137, 2139, 0),
|
| 36 |
+
(2276, 2307, 0),
|
| 37 |
+
(2362, 2364, 0),
|
| 38 |
+
(2366, 2383, 0),
|
| 39 |
+
(2385, 2391, 0),
|
| 40 |
+
(2402, 2403, 0),
|
| 41 |
+
(2433, 2435, 0),
|
| 42 |
+
(2492, 2492, 0),
|
| 43 |
+
(2494, 2500, 0),
|
| 44 |
+
(2503, 2504, 0),
|
| 45 |
+
(2507, 2509, 0),
|
| 46 |
+
(2519, 2519, 0),
|
| 47 |
+
(2530, 2531, 0),
|
| 48 |
+
(2561, 2563, 0),
|
| 49 |
+
(2620, 2620, 0),
|
| 50 |
+
(2622, 2626, 0),
|
| 51 |
+
(2631, 2632, 0),
|
| 52 |
+
(2635, 2637, 0),
|
| 53 |
+
(2641, 2641, 0),
|
| 54 |
+
(2672, 2673, 0),
|
| 55 |
+
(2677, 2677, 0),
|
| 56 |
+
(2689, 2691, 0),
|
| 57 |
+
(2748, 2748, 0),
|
| 58 |
+
(2750, 2757, 0),
|
| 59 |
+
(2759, 2761, 0),
|
| 60 |
+
(2763, 2765, 0),
|
| 61 |
+
(2786, 2787, 0),
|
| 62 |
+
(2817, 2819, 0),
|
| 63 |
+
(2876, 2876, 0),
|
| 64 |
+
(2878, 2884, 0),
|
| 65 |
+
(2887, 2888, 0),
|
| 66 |
+
(2891, 2893, 0),
|
| 67 |
+
(2902, 2903, 0),
|
| 68 |
+
(2914, 2915, 0),
|
| 69 |
+
(2946, 2946, 0),
|
| 70 |
+
(3006, 3010, 0),
|
| 71 |
+
(3014, 3016, 0),
|
| 72 |
+
(3018, 3021, 0),
|
| 73 |
+
(3031, 3031, 0),
|
| 74 |
+
(3072, 3075, 0),
|
| 75 |
+
(3134, 3140, 0),
|
| 76 |
+
(3142, 3144, 0),
|
| 77 |
+
(3146, 3149, 0),
|
| 78 |
+
(3157, 3158, 0),
|
| 79 |
+
(3170, 3171, 0),
|
| 80 |
+
(3201, 3203, 0),
|
| 81 |
+
(3260, 3260, 0),
|
| 82 |
+
(3262, 3268, 0),
|
| 83 |
+
(3270, 3272, 0),
|
| 84 |
+
(3274, 3277, 0),
|
| 85 |
+
(3285, 3286, 0),
|
| 86 |
+
(3298, 3299, 0),
|
| 87 |
+
(3329, 3331, 0),
|
| 88 |
+
(3390, 3396, 0),
|
| 89 |
+
(3398, 3400, 0),
|
| 90 |
+
(3402, 3405, 0),
|
| 91 |
+
(3415, 3415, 0),
|
| 92 |
+
(3426, 3427, 0),
|
| 93 |
+
(3458, 3459, 0),
|
| 94 |
+
(3530, 3530, 0),
|
| 95 |
+
(3535, 3540, 0),
|
| 96 |
+
(3542, 3542, 0),
|
| 97 |
+
(3544, 3551, 0),
|
| 98 |
+
(3570, 3571, 0),
|
| 99 |
+
(3633, 3633, 0),
|
| 100 |
+
(3636, 3642, 0),
|
| 101 |
+
(3655, 3662, 0),
|
| 102 |
+
(3761, 3761, 0),
|
| 103 |
+
(3764, 3769, 0),
|
| 104 |
+
(3771, 3772, 0),
|
| 105 |
+
(3784, 3789, 0),
|
| 106 |
+
(3864, 3865, 0),
|
| 107 |
+
(3893, 3893, 0),
|
| 108 |
+
(3895, 3895, 0),
|
| 109 |
+
(3897, 3897, 0),
|
| 110 |
+
(3902, 3903, 0),
|
| 111 |
+
(3953, 3972, 0),
|
| 112 |
+
(3974, 3975, 0),
|
| 113 |
+
(3981, 3991, 0),
|
| 114 |
+
(3993, 4028, 0),
|
| 115 |
+
(4038, 4038, 0),
|
| 116 |
+
(4139, 4158, 0),
|
| 117 |
+
(4182, 4185, 0),
|
| 118 |
+
(4190, 4192, 0),
|
| 119 |
+
(4194, 4196, 0),
|
| 120 |
+
(4199, 4205, 0),
|
| 121 |
+
(4209, 4212, 0),
|
| 122 |
+
(4226, 4237, 0),
|
| 123 |
+
(4239, 4239, 0),
|
| 124 |
+
(4250, 4253, 0),
|
| 125 |
+
(4352, 4447, 2),
|
| 126 |
+
(4448, 4607, 0),
|
| 127 |
+
(4957, 4959, 0),
|
| 128 |
+
(5906, 5908, 0),
|
| 129 |
+
(5938, 5940, 0),
|
| 130 |
+
(5970, 5971, 0),
|
| 131 |
+
(6002, 6003, 0),
|
| 132 |
+
(6068, 6099, 0),
|
| 133 |
+
(6109, 6109, 0),
|
| 134 |
+
(6155, 6158, 0),
|
| 135 |
+
(6313, 6313, 0),
|
| 136 |
+
(6432, 6443, 0),
|
| 137 |
+
(6448, 6459, 0),
|
| 138 |
+
(6576, 6592, 0),
|
| 139 |
+
(6600, 6601, 0),
|
| 140 |
+
(6679, 6683, 0),
|
| 141 |
+
(6741, 6750, 0),
|
| 142 |
+
(6752, 6780, 0),
|
| 143 |
+
(6783, 6783, 0),
|
| 144 |
+
(6832, 6846, 0),
|
| 145 |
+
(6912, 6916, 0),
|
| 146 |
+
(6964, 6980, 0),
|
| 147 |
+
(7019, 7027, 0),
|
| 148 |
+
(7040, 7042, 0),
|
| 149 |
+
(7073, 7085, 0),
|
| 150 |
+
(7142, 7155, 0),
|
| 151 |
+
(7204, 7223, 0),
|
| 152 |
+
(7376, 7378, 0),
|
| 153 |
+
(7380, 7400, 0),
|
| 154 |
+
(7405, 7405, 0),
|
| 155 |
+
(7410, 7412, 0),
|
| 156 |
+
(7416, 7417, 0),
|
| 157 |
+
(7616, 7669, 0),
|
| 158 |
+
(7676, 7679, 0),
|
| 159 |
+
(8203, 8207, 0),
|
| 160 |
+
(8232, 8238, 0),
|
| 161 |
+
(8288, 8303, 0),
|
| 162 |
+
(8400, 8432, 0),
|
| 163 |
+
(9001, 9002, 2),
|
| 164 |
+
(11503, 11505, 0),
|
| 165 |
+
(11647, 11647, 0),
|
| 166 |
+
(11744, 11775, 0),
|
| 167 |
+
(11904, 11929, 2),
|
| 168 |
+
(11931, 12019, 2),
|
| 169 |
+
(12032, 12245, 2),
|
| 170 |
+
(12272, 12283, 2),
|
| 171 |
+
(12288, 12329, 2),
|
| 172 |
+
(12330, 12335, 0),
|
| 173 |
+
(12336, 12350, 2),
|
| 174 |
+
(12353, 12438, 2),
|
| 175 |
+
(12441, 12442, 0),
|
| 176 |
+
(12443, 12543, 2),
|
| 177 |
+
(12549, 12589, 2),
|
| 178 |
+
(12593, 12643, 2),
|
| 179 |
+
(12644, 12644, 0),
|
| 180 |
+
(12645, 12686, 2),
|
| 181 |
+
(12688, 12730, 2),
|
| 182 |
+
(12736, 12771, 2),
|
| 183 |
+
(12784, 12830, 2),
|
| 184 |
+
(12832, 12871, 2),
|
| 185 |
+
(12880, 13054, 2),
|
| 186 |
+
(13056, 19903, 2),
|
| 187 |
+
(19968, 42124, 2),
|
| 188 |
+
(42128, 42182, 2),
|
| 189 |
+
(42607, 42610, 0),
|
| 190 |
+
(42612, 42621, 0),
|
| 191 |
+
(42655, 42655, 0),
|
| 192 |
+
(42736, 42737, 0),
|
| 193 |
+
(43010, 43010, 0),
|
| 194 |
+
(43014, 43014, 0),
|
| 195 |
+
(43019, 43019, 0),
|
| 196 |
+
(43043, 43047, 0),
|
| 197 |
+
(43136, 43137, 0),
|
| 198 |
+
(43188, 43204, 0),
|
| 199 |
+
(43232, 43249, 0),
|
| 200 |
+
(43302, 43309, 0),
|
| 201 |
+
(43335, 43347, 0),
|
| 202 |
+
(43360, 43388, 2),
|
| 203 |
+
(43392, 43395, 0),
|
| 204 |
+
(43443, 43456, 0),
|
| 205 |
+
(43493, 43493, 0),
|
| 206 |
+
(43561, 43574, 0),
|
| 207 |
+
(43587, 43587, 0),
|
| 208 |
+
(43596, 43597, 0),
|
| 209 |
+
(43643, 43645, 0),
|
| 210 |
+
(43696, 43696, 0),
|
| 211 |
+
(43698, 43700, 0),
|
| 212 |
+
(43703, 43704, 0),
|
| 213 |
+
(43710, 43711, 0),
|
| 214 |
+
(43713, 43713, 0),
|
| 215 |
+
(43755, 43759, 0),
|
| 216 |
+
(43765, 43766, 0),
|
| 217 |
+
(44003, 44010, 0),
|
| 218 |
+
(44012, 44013, 0),
|
| 219 |
+
(44032, 55203, 2),
|
| 220 |
+
(55216, 55295, 0),
|
| 221 |
+
(63744, 64255, 2),
|
| 222 |
+
(64286, 64286, 0),
|
| 223 |
+
(65024, 65039, 0),
|
| 224 |
+
(65040, 65049, 2),
|
| 225 |
+
(65056, 65069, 0),
|
| 226 |
+
(65072, 65106, 2),
|
| 227 |
+
(65108, 65126, 2),
|
| 228 |
+
(65128, 65131, 2),
|
| 229 |
+
(65279, 65279, 0),
|
| 230 |
+
(65281, 65376, 2),
|
| 231 |
+
(65440, 65440, 0),
|
| 232 |
+
(65504, 65510, 2),
|
| 233 |
+
(65520, 65531, 0),
|
| 234 |
+
(66045, 66045, 0),
|
| 235 |
+
(66272, 66272, 0),
|
| 236 |
+
(66422, 66426, 0),
|
| 237 |
+
(68097, 68099, 0),
|
| 238 |
+
(68101, 68102, 0),
|
| 239 |
+
(68108, 68111, 0),
|
| 240 |
+
(68152, 68154, 0),
|
| 241 |
+
(68159, 68159, 0),
|
| 242 |
+
(68325, 68326, 0),
|
| 243 |
+
(69632, 69634, 0),
|
| 244 |
+
(69688, 69702, 0),
|
| 245 |
+
(69759, 69762, 0),
|
| 246 |
+
(69808, 69818, 0),
|
| 247 |
+
(69821, 69821, 0),
|
| 248 |
+
(69888, 69890, 0),
|
| 249 |
+
(69927, 69940, 0),
|
| 250 |
+
(70003, 70003, 0),
|
| 251 |
+
(70016, 70018, 0),
|
| 252 |
+
(70067, 70080, 0),
|
| 253 |
+
(70188, 70199, 0),
|
| 254 |
+
(70367, 70378, 0),
|
| 255 |
+
(70401, 70403, 0),
|
| 256 |
+
(70460, 70460, 0),
|
| 257 |
+
(70462, 70468, 0),
|
| 258 |
+
(70471, 70472, 0),
|
| 259 |
+
(70475, 70477, 0),
|
| 260 |
+
(70487, 70487, 0),
|
| 261 |
+
(70498, 70499, 0),
|
| 262 |
+
(70502, 70508, 0),
|
| 263 |
+
(70512, 70516, 0),
|
| 264 |
+
(70832, 70851, 0),
|
| 265 |
+
(71087, 71093, 0),
|
| 266 |
+
(71096, 71104, 0),
|
| 267 |
+
(71216, 71232, 0),
|
| 268 |
+
(71339, 71351, 0),
|
| 269 |
+
(92912, 92916, 0),
|
| 270 |
+
(92976, 92982, 0),
|
| 271 |
+
(94033, 94078, 0),
|
| 272 |
+
(94095, 94098, 0),
|
| 273 |
+
(110592, 110593, 2),
|
| 274 |
+
(113821, 113822, 0),
|
| 275 |
+
(113824, 113827, 0),
|
| 276 |
+
(119141, 119145, 0),
|
| 277 |
+
(119149, 119170, 0),
|
| 278 |
+
(119173, 119179, 0),
|
| 279 |
+
(119210, 119213, 0),
|
| 280 |
+
(119362, 119364, 0),
|
| 281 |
+
(125136, 125142, 0),
|
| 282 |
+
(127488, 127490, 2),
|
| 283 |
+
(127504, 127546, 2),
|
| 284 |
+
(127552, 127560, 2),
|
| 285 |
+
(127568, 127569, 2),
|
| 286 |
+
(131072, 196605, 2),
|
| 287 |
+
(196608, 262141, 2),
|
| 288 |
+
(917504, 921599, 0),
|
| 289 |
+
],
|
| 290 |
+
frozenset(
|
| 291 |
+
[
|
| 292 |
+
"#",
|
| 293 |
+
"*",
|
| 294 |
+
"0",
|
| 295 |
+
"1",
|
| 296 |
+
"2",
|
| 297 |
+
"3",
|
| 298 |
+
"4",
|
| 299 |
+
"5",
|
| 300 |
+
"6",
|
| 301 |
+
"7",
|
| 302 |
+
"8",
|
| 303 |
+
"9",
|
| 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 |
+
]
|
| 506 |
+
),
|
| 507 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode8-0-0.py
ADDED
|
@@ -0,0 +1,515 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"8.0.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1536, 1541, 0),
|
| 18 |
+
(1552, 1562, 0),
|
| 19 |
+
(1564, 1564, 0),
|
| 20 |
+
(1611, 1631, 0),
|
| 21 |
+
(1648, 1648, 0),
|
| 22 |
+
(1750, 1757, 0),
|
| 23 |
+
(1759, 1764, 0),
|
| 24 |
+
(1767, 1768, 0),
|
| 25 |
+
(1770, 1773, 0),
|
| 26 |
+
(1807, 1807, 0),
|
| 27 |
+
(1809, 1809, 0),
|
| 28 |
+
(1840, 1866, 0),
|
| 29 |
+
(1958, 1968, 0),
|
| 30 |
+
(2027, 2035, 0),
|
| 31 |
+
(2070, 2073, 0),
|
| 32 |
+
(2075, 2083, 0),
|
| 33 |
+
(2085, 2087, 0),
|
| 34 |
+
(2089, 2093, 0),
|
| 35 |
+
(2137, 2139, 0),
|
| 36 |
+
(2275, 2307, 0),
|
| 37 |
+
(2362, 2364, 0),
|
| 38 |
+
(2366, 2383, 0),
|
| 39 |
+
(2385, 2391, 0),
|
| 40 |
+
(2402, 2403, 0),
|
| 41 |
+
(2433, 2435, 0),
|
| 42 |
+
(2492, 2492, 0),
|
| 43 |
+
(2494, 2500, 0),
|
| 44 |
+
(2503, 2504, 0),
|
| 45 |
+
(2507, 2509, 0),
|
| 46 |
+
(2519, 2519, 0),
|
| 47 |
+
(2530, 2531, 0),
|
| 48 |
+
(2561, 2563, 0),
|
| 49 |
+
(2620, 2620, 0),
|
| 50 |
+
(2622, 2626, 0),
|
| 51 |
+
(2631, 2632, 0),
|
| 52 |
+
(2635, 2637, 0),
|
| 53 |
+
(2641, 2641, 0),
|
| 54 |
+
(2672, 2673, 0),
|
| 55 |
+
(2677, 2677, 0),
|
| 56 |
+
(2689, 2691, 0),
|
| 57 |
+
(2748, 2748, 0),
|
| 58 |
+
(2750, 2757, 0),
|
| 59 |
+
(2759, 2761, 0),
|
| 60 |
+
(2763, 2765, 0),
|
| 61 |
+
(2786, 2787, 0),
|
| 62 |
+
(2817, 2819, 0),
|
| 63 |
+
(2876, 2876, 0),
|
| 64 |
+
(2878, 2884, 0),
|
| 65 |
+
(2887, 2888, 0),
|
| 66 |
+
(2891, 2893, 0),
|
| 67 |
+
(2902, 2903, 0),
|
| 68 |
+
(2914, 2915, 0),
|
| 69 |
+
(2946, 2946, 0),
|
| 70 |
+
(3006, 3010, 0),
|
| 71 |
+
(3014, 3016, 0),
|
| 72 |
+
(3018, 3021, 0),
|
| 73 |
+
(3031, 3031, 0),
|
| 74 |
+
(3072, 3075, 0),
|
| 75 |
+
(3134, 3140, 0),
|
| 76 |
+
(3142, 3144, 0),
|
| 77 |
+
(3146, 3149, 0),
|
| 78 |
+
(3157, 3158, 0),
|
| 79 |
+
(3170, 3171, 0),
|
| 80 |
+
(3201, 3203, 0),
|
| 81 |
+
(3260, 3260, 0),
|
| 82 |
+
(3262, 3268, 0),
|
| 83 |
+
(3270, 3272, 0),
|
| 84 |
+
(3274, 3277, 0),
|
| 85 |
+
(3285, 3286, 0),
|
| 86 |
+
(3298, 3299, 0),
|
| 87 |
+
(3329, 3331, 0),
|
| 88 |
+
(3390, 3396, 0),
|
| 89 |
+
(3398, 3400, 0),
|
| 90 |
+
(3402, 3405, 0),
|
| 91 |
+
(3415, 3415, 0),
|
| 92 |
+
(3426, 3427, 0),
|
| 93 |
+
(3458, 3459, 0),
|
| 94 |
+
(3530, 3530, 0),
|
| 95 |
+
(3535, 3540, 0),
|
| 96 |
+
(3542, 3542, 0),
|
| 97 |
+
(3544, 3551, 0),
|
| 98 |
+
(3570, 3571, 0),
|
| 99 |
+
(3633, 3633, 0),
|
| 100 |
+
(3636, 3642, 0),
|
| 101 |
+
(3655, 3662, 0),
|
| 102 |
+
(3761, 3761, 0),
|
| 103 |
+
(3764, 3769, 0),
|
| 104 |
+
(3771, 3772, 0),
|
| 105 |
+
(3784, 3789, 0),
|
| 106 |
+
(3864, 3865, 0),
|
| 107 |
+
(3893, 3893, 0),
|
| 108 |
+
(3895, 3895, 0),
|
| 109 |
+
(3897, 3897, 0),
|
| 110 |
+
(3902, 3903, 0),
|
| 111 |
+
(3953, 3972, 0),
|
| 112 |
+
(3974, 3975, 0),
|
| 113 |
+
(3981, 3991, 0),
|
| 114 |
+
(3993, 4028, 0),
|
| 115 |
+
(4038, 4038, 0),
|
| 116 |
+
(4139, 4158, 0),
|
| 117 |
+
(4182, 4185, 0),
|
| 118 |
+
(4190, 4192, 0),
|
| 119 |
+
(4194, 4196, 0),
|
| 120 |
+
(4199, 4205, 0),
|
| 121 |
+
(4209, 4212, 0),
|
| 122 |
+
(4226, 4237, 0),
|
| 123 |
+
(4239, 4239, 0),
|
| 124 |
+
(4250, 4253, 0),
|
| 125 |
+
(4352, 4447, 2),
|
| 126 |
+
(4448, 4607, 0),
|
| 127 |
+
(4957, 4959, 0),
|
| 128 |
+
(5906, 5908, 0),
|
| 129 |
+
(5938, 5940, 0),
|
| 130 |
+
(5970, 5971, 0),
|
| 131 |
+
(6002, 6003, 0),
|
| 132 |
+
(6068, 6099, 0),
|
| 133 |
+
(6109, 6109, 0),
|
| 134 |
+
(6155, 6158, 0),
|
| 135 |
+
(6313, 6313, 0),
|
| 136 |
+
(6432, 6443, 0),
|
| 137 |
+
(6448, 6459, 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 |
+
(42654, 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, 65071, 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 |
+
(70090, 70092, 0),
|
| 252 |
+
(70188, 70199, 0),
|
| 253 |
+
(70367, 70378, 0),
|
| 254 |
+
(70400, 70403, 0),
|
| 255 |
+
(70460, 70460, 0),
|
| 256 |
+
(70462, 70468, 0),
|
| 257 |
+
(70471, 70472, 0),
|
| 258 |
+
(70475, 70477, 0),
|
| 259 |
+
(70487, 70487, 0),
|
| 260 |
+
(70498, 70499, 0),
|
| 261 |
+
(70502, 70508, 0),
|
| 262 |
+
(70512, 70516, 0),
|
| 263 |
+
(70832, 70851, 0),
|
| 264 |
+
(71087, 71093, 0),
|
| 265 |
+
(71096, 71104, 0),
|
| 266 |
+
(71132, 71133, 0),
|
| 267 |
+
(71216, 71232, 0),
|
| 268 |
+
(71339, 71351, 0),
|
| 269 |
+
(71453, 71467, 0),
|
| 270 |
+
(92912, 92916, 0),
|
| 271 |
+
(92976, 92982, 0),
|
| 272 |
+
(94033, 94078, 0),
|
| 273 |
+
(94095, 94098, 0),
|
| 274 |
+
(110592, 110593, 2),
|
| 275 |
+
(113821, 113822, 0),
|
| 276 |
+
(113824, 113827, 0),
|
| 277 |
+
(119141, 119145, 0),
|
| 278 |
+
(119149, 119170, 0),
|
| 279 |
+
(119173, 119179, 0),
|
| 280 |
+
(119210, 119213, 0),
|
| 281 |
+
(119362, 119364, 0),
|
| 282 |
+
(121344, 121398, 0),
|
| 283 |
+
(121403, 121452, 0),
|
| 284 |
+
(121461, 121461, 0),
|
| 285 |
+
(121476, 121476, 0),
|
| 286 |
+
(121499, 121503, 0),
|
| 287 |
+
(121505, 121519, 0),
|
| 288 |
+
(125136, 125142, 0),
|
| 289 |
+
(127488, 127490, 2),
|
| 290 |
+
(127504, 127546, 2),
|
| 291 |
+
(127552, 127560, 2),
|
| 292 |
+
(127568, 127569, 2),
|
| 293 |
+
(127995, 127999, 0),
|
| 294 |
+
(131072, 196605, 2),
|
| 295 |
+
(196608, 262141, 2),
|
| 296 |
+
(917504, 921599, 0),
|
| 297 |
+
],
|
| 298 |
+
frozenset(
|
| 299 |
+
[
|
| 300 |
+
"#",
|
| 301 |
+
"*",
|
| 302 |
+
"0",
|
| 303 |
+
"1",
|
| 304 |
+
"2",
|
| 305 |
+
"3",
|
| 306 |
+
"4",
|
| 307 |
+
"5",
|
| 308 |
+
"6",
|
| 309 |
+
"7",
|
| 310 |
+
"8",
|
| 311 |
+
"9",
|
| 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 |
+
"🛡",
|
| 506 |
+
"🛢",
|
| 507 |
+
"🛣",
|
| 508 |
+
"🛤",
|
| 509 |
+
"🛥",
|
| 510 |
+
"🛩",
|
| 511 |
+
"🛰",
|
| 512 |
+
"🛳",
|
| 513 |
+
]
|
| 514 |
+
),
|
| 515 |
+
)
|
venv/lib/python3.11/site-packages/rich/_unicode_data/unicode9-0-0.py
ADDED
|
@@ -0,0 +1,598 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Auto generated by tools/make_width_tables.py
|
| 2 |
+
# Data from wcwidth project (https://github.com/jquast/wcwidth)
|
| 3 |
+
|
| 4 |
+
from rich.cells import CellTable
|
| 5 |
+
|
| 6 |
+
cell_table = CellTable(
|
| 7 |
+
"9.0.0",
|
| 8 |
+
[
|
| 9 |
+
(0, 0, 0),
|
| 10 |
+
(768, 879, 0),
|
| 11 |
+
(1155, 1161, 0),
|
| 12 |
+
(1425, 1469, 0),
|
| 13 |
+
(1471, 1471, 0),
|
| 14 |
+
(1473, 1474, 0),
|
| 15 |
+
(1476, 1477, 0),
|
| 16 |
+
(1479, 1479, 0),
|
| 17 |
+
(1552, 1562, 0),
|
| 18 |
+
(1564, 1564, 0),
|
| 19 |
+
(1611, 1631, 0),
|
| 20 |
+
(1648, 1648, 0),
|
| 21 |
+
(1750, 1756, 0),
|
| 22 |
+
(1759, 1764, 0),
|
| 23 |
+
(1767, 1768, 0),
|
| 24 |
+
(1770, 1773, 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 |
+
(2260, 2273, 0),
|
| 35 |
+
(2275, 2307, 0),
|
| 36 |
+
(2362, 2364, 0),
|
| 37 |
+
(2366, 2383, 0),
|
| 38 |
+
(2385, 2391, 0),
|
| 39 |
+
(2402, 2403, 0),
|
| 40 |
+
(2433, 2435, 0),
|
| 41 |
+
(2492, 2492, 0),
|
| 42 |
+
(2494, 2500, 0),
|
| 43 |
+
(2503, 2504, 0),
|
| 44 |
+
(2507, 2509, 0),
|
| 45 |
+
(2519, 2519, 0),
|
| 46 |
+
(2530, 2531, 0),
|
| 47 |
+
(2561, 2563, 0),
|
| 48 |
+
(2620, 2620, 0),
|
| 49 |
+
(2622, 2626, 0),
|
| 50 |
+
(2631, 2632, 0),
|
| 51 |
+
(2635, 2637, 0),
|
| 52 |
+
(2641, 2641, 0),
|
| 53 |
+
(2672, 2673, 0),
|
| 54 |
+
(2677, 2677, 0),
|
| 55 |
+
(2689, 2691, 0),
|
| 56 |
+
(2748, 2748, 0),
|
| 57 |
+
(2750, 2757, 0),
|
| 58 |
+
(2759, 2761, 0),
|
| 59 |
+
(2763, 2765, 0),
|
| 60 |
+
(2786, 2787, 0),
|
| 61 |
+
(2817, 2819, 0),
|
| 62 |
+
(2876, 2876, 0),
|
| 63 |
+
(2878, 2884, 0),
|
| 64 |
+
(2887, 2888, 0),
|
| 65 |
+
(2891, 2893, 0),
|
| 66 |
+
(2902, 2903, 0),
|
| 67 |
+
(2914, 2915, 0),
|
| 68 |
+
(2946, 2946, 0),
|
| 69 |
+
(3006, 3010, 0),
|
| 70 |
+
(3014, 3016, 0),
|
| 71 |
+
(3018, 3021, 0),
|
| 72 |
+
(3031, 3031, 0),
|
| 73 |
+
(3072, 3075, 0),
|
| 74 |
+
(3134, 3140, 0),
|
| 75 |
+
(3142, 3144, 0),
|
| 76 |
+
(3146, 3149, 0),
|
| 77 |
+
(3157, 3158, 0),
|
| 78 |
+
(3170, 3171, 0),
|
| 79 |
+
(3201, 3203, 0),
|
| 80 |
+
(3260, 3260, 0),
|
| 81 |
+
(3262, 3268, 0),
|
| 82 |
+
(3270, 3272, 0),
|
| 83 |
+
(3274, 3277, 0),
|
| 84 |
+
(3285, 3286, 0),
|
| 85 |
+
(3298, 3299, 0),
|
| 86 |
+
(3329, 3331, 0),
|
| 87 |
+
(3390, 3396, 0),
|
| 88 |
+
(3398, 3400, 0),
|
| 89 |
+
(3402, 3405, 0),
|
| 90 |
+
(3415, 3415, 0),
|
| 91 |
+
(3426, 3427, 0),
|
| 92 |
+
(3458, 3459, 0),
|
| 93 |
+
(3530, 3530, 0),
|
| 94 |
+
(3535, 3540, 0),
|
| 95 |
+
(3542, 3542, 0),
|
| 96 |
+
(3544, 3551, 0),
|
| 97 |
+
(3570, 3571, 0),
|
| 98 |
+
(3633, 3633, 0),
|
| 99 |
+
(3636, 3642, 0),
|
| 100 |
+
(3655, 3662, 0),
|
| 101 |
+
(3761, 3761, 0),
|
| 102 |
+
(3764, 3769, 0),
|
| 103 |
+
(3771, 3772, 0),
|
| 104 |
+
(3784, 3789, 0),
|
| 105 |
+
(3864, 3865, 0),
|
| 106 |
+
(3893, 3893, 0),
|
| 107 |
+
(3895, 3895, 0),
|
| 108 |
+
(3897, 3897, 0),
|
| 109 |
+
(3902, 3903, 0),
|
| 110 |
+
(3953, 3972, 0),
|
| 111 |
+
(3974, 3975, 0),
|
| 112 |
+
(3981, 3991, 0),
|
| 113 |
+
(3993, 4028, 0),
|
| 114 |
+
(4038, 4038, 0),
|
| 115 |
+
(4139, 4158, 0),
|
| 116 |
+
(4182, 4185, 0),
|
| 117 |
+
(4190, 4192, 0),
|
| 118 |
+
(4194, 4196, 0),
|
| 119 |
+
(4199, 4205, 0),
|
| 120 |
+
(4209, 4212, 0),
|
| 121 |
+
(4226, 4237, 0),
|
| 122 |
+
(4239, 4239, 0),
|
| 123 |
+
(4250, 4253, 0),
|
| 124 |
+
(4352, 4447, 2),
|
| 125 |
+
(4448, 4607, 0),
|
| 126 |
+
(4957, 4959, 0),
|
| 127 |
+
(5906, 5908, 0),
|
| 128 |
+
(5938, 5940, 0),
|
| 129 |
+
(5970, 5971, 0),
|
| 130 |
+
(6002, 6003, 0),
|
| 131 |
+
(6068, 6099, 0),
|
| 132 |
+
(6109, 6109, 0),
|
| 133 |
+
(6155, 6158, 0),
|
| 134 |
+
(6277, 6278, 0),
|
| 135 |
+
(6313, 6313, 0),
|
| 136 |
+
(6432, 6443, 0),
|
| 137 |
+
(6448, 6459, 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 |
+
(7675, 7679, 0),
|
| 157 |
+
(8203, 8207, 0),
|
| 158 |
+
(8232, 8238, 0),
|
| 159 |
+
(8288, 8303, 0),
|
| 160 |
+
(8400, 8432, 0),
|
| 161 |
+
(8986, 8987, 2),
|
| 162 |
+
(9001, 9002, 2),
|
| 163 |
+
(9193, 9196, 2),
|
| 164 |
+
(9200, 9200, 2),
|
| 165 |
+
(9203, 9203, 2),
|
| 166 |
+
(9725, 9726, 2),
|
| 167 |
+
(9748, 9749, 2),
|
| 168 |
+
(9800, 9811, 2),
|
| 169 |
+
(9855, 9855, 2),
|
| 170 |
+
(9875, 9875, 2),
|
| 171 |
+
(9889, 9889, 2),
|
| 172 |
+
(9898, 9899, 2),
|
| 173 |
+
(9917, 9918, 2),
|
| 174 |
+
(9924, 9925, 2),
|
| 175 |
+
(9934, 9934, 2),
|
| 176 |
+
(9940, 9940, 2),
|
| 177 |
+
(9962, 9962, 2),
|
| 178 |
+
(9970, 9971, 2),
|
| 179 |
+
(9973, 9973, 2),
|
| 180 |
+
(9978, 9978, 2),
|
| 181 |
+
(9981, 9981, 2),
|
| 182 |
+
(9989, 9989, 2),
|
| 183 |
+
(9994, 9995, 2),
|
| 184 |
+
(10024, 10024, 2),
|
| 185 |
+
(10060, 10060, 2),
|
| 186 |
+
(10062, 10062, 2),
|
| 187 |
+
(10067, 10069, 2),
|
| 188 |
+
(10071, 10071, 2),
|
| 189 |
+
(10133, 10135, 2),
|
| 190 |
+
(10160, 10160, 2),
|
| 191 |
+
(10175, 10175, 2),
|
| 192 |
+
(11035, 11036, 2),
|
| 193 |
+
(11088, 11088, 2),
|
| 194 |
+
(11093, 11093, 2),
|
| 195 |
+
(11503, 11505, 0),
|
| 196 |
+
(11647, 11647, 0),
|
| 197 |
+
(11744, 11775, 0),
|
| 198 |
+
(11904, 11929, 2),
|
| 199 |
+
(11931, 12019, 2),
|
| 200 |
+
(12032, 12245, 2),
|
| 201 |
+
(12272, 12283, 2),
|
| 202 |
+
(12288, 12329, 2),
|
| 203 |
+
(12330, 12335, 0),
|
| 204 |
+
(12336, 12350, 2),
|
| 205 |
+
(12353, 12438, 2),
|
| 206 |
+
(12441, 12442, 0),
|
| 207 |
+
(12443, 12543, 2),
|
| 208 |
+
(12549, 12589, 2),
|
| 209 |
+
(12593, 12643, 2),
|
| 210 |
+
(12644, 12644, 0),
|
| 211 |
+
(12645, 12686, 2),
|
| 212 |
+
(12688, 12730, 2),
|
| 213 |
+
(12736, 12771, 2),
|
| 214 |
+
(12784, 12830, 2),
|
| 215 |
+
(12832, 12871, 2),
|
| 216 |
+
(12880, 13054, 2),
|
| 217 |
+
(13056, 19903, 2),
|
| 218 |
+
(19968, 42124, 2),
|
| 219 |
+
(42128, 42182, 2),
|
| 220 |
+
(42607, 42610, 0),
|
| 221 |
+
(42612, 42621, 0),
|
| 222 |
+
(42654, 42655, 0),
|
| 223 |
+
(42736, 42737, 0),
|
| 224 |
+
(43010, 43010, 0),
|
| 225 |
+
(43014, 43014, 0),
|
| 226 |
+
(43019, 43019, 0),
|
| 227 |
+
(43043, 43047, 0),
|
| 228 |
+
(43136, 43137, 0),
|
| 229 |
+
(43188, 43205, 0),
|
| 230 |
+
(43232, 43249, 0),
|
| 231 |
+
(43302, 43309, 0),
|
| 232 |
+
(43335, 43347, 0),
|
| 233 |
+
(43360, 43388, 2),
|
| 234 |
+
(43392, 43395, 0),
|
| 235 |
+
(43443, 43456, 0),
|
| 236 |
+
(43493, 43493, 0),
|
| 237 |
+
(43561, 43574, 0),
|
| 238 |
+
(43587, 43587, 0),
|
| 239 |
+
(43596, 43597, 0),
|
| 240 |
+
(43643, 43645, 0),
|
| 241 |
+
(43696, 43696, 0),
|
| 242 |
+
(43698, 43700, 0),
|
| 243 |
+
(43703, 43704, 0),
|
| 244 |
+
(43710, 43711, 0),
|
| 245 |
+
(43713, 43713, 0),
|
| 246 |
+
(43755, 43759, 0),
|
| 247 |
+
(43765, 43766, 0),
|
| 248 |
+
(44003, 44010, 0),
|
| 249 |
+
(44012, 44013, 0),
|
| 250 |
+
(44032, 55203, 2),
|
| 251 |
+
(55216, 55295, 0),
|
| 252 |
+
(63744, 64255, 2),
|
| 253 |
+
(64286, 64286, 0),
|
| 254 |
+
(65024, 65039, 0),
|
| 255 |
+
(65040, 65049, 2),
|
| 256 |
+
(65056, 65071, 0),
|
| 257 |
+
(65072, 65106, 2),
|
| 258 |
+
(65108, 65126, 2),
|
| 259 |
+
(65128, 65131, 2),
|
| 260 |
+
(65279, 65279, 0),
|
| 261 |
+
(65281, 65376, 2),
|
| 262 |
+
(65440, 65440, 0),
|
| 263 |
+
(65504, 65510, 2),
|
| 264 |
+
(65520, 65531, 0),
|
| 265 |
+
(66045, 66045, 0),
|
| 266 |
+
(66272, 66272, 0),
|
| 267 |
+
(66422, 66426, 0),
|
| 268 |
+
(68097, 68099, 0),
|
| 269 |
+
(68101, 68102, 0),
|
| 270 |
+
(68108, 68111, 0),
|
| 271 |
+
(68152, 68154, 0),
|
| 272 |
+
(68159, 68159, 0),
|
| 273 |
+
(68325, 68326, 0),
|
| 274 |
+
(69632, 69634, 0),
|
| 275 |
+
(69688, 69702, 0),
|
| 276 |
+
(69759, 69762, 0),
|
| 277 |
+
(69808, 69818, 0),
|
| 278 |
+
(69888, 69890, 0),
|
| 279 |
+
(69927, 69940, 0),
|
| 280 |
+
(70003, 70003, 0),
|
| 281 |
+
(70016, 70018, 0),
|
| 282 |
+
(70067, 70080, 0),
|
| 283 |
+
(70090, 70092, 0),
|
| 284 |
+
(70188, 70199, 0),
|
| 285 |
+
(70206, 70206, 0),
|
| 286 |
+
(70367, 70378, 0),
|
| 287 |
+
(70400, 70403, 0),
|
| 288 |
+
(70460, 70460, 0),
|
| 289 |
+
(70462, 70468, 0),
|
| 290 |
+
(70471, 70472, 0),
|
| 291 |
+
(70475, 70477, 0),
|
| 292 |
+
(70487, 70487, 0),
|
| 293 |
+
(70498, 70499, 0),
|
| 294 |
+
(70502, 70508, 0),
|
| 295 |
+
(70512, 70516, 0),
|
| 296 |
+
(70709, 70726, 0),
|
| 297 |
+
(70832, 70851, 0),
|
| 298 |
+
(71087, 71093, 0),
|
| 299 |
+
(71096, 71104, 0),
|
| 300 |
+
(71132, 71133, 0),
|
| 301 |
+
(71216, 71232, 0),
|
| 302 |
+
(71339, 71351, 0),
|
| 303 |
+
(71453, 71467, 0),
|
| 304 |
+
(72751, 72758, 0),
|
| 305 |
+
(72760, 72767, 0),
|
| 306 |
+
(72850, 72871, 0),
|
| 307 |
+
(72873, 72886, 0),
|
| 308 |
+
(92912, 92916, 0),
|
| 309 |
+
(92976, 92982, 0),
|
| 310 |
+
(94033, 94078, 0),
|
| 311 |
+
(94095, 94098, 0),
|
| 312 |
+
(94176, 94176, 2),
|
| 313 |
+
(94208, 100332, 2),
|
| 314 |
+
(100352, 101106, 2),
|
| 315 |
+
(110592, 110593, 2),
|
| 316 |
+
(113821, 113822, 0),
|
| 317 |
+
(113824, 113827, 0),
|
| 318 |
+
(119141, 119145, 0),
|
| 319 |
+
(119149, 119170, 0),
|
| 320 |
+
(119173, 119179, 0),
|
| 321 |
+
(119210, 119213, 0),
|
| 322 |
+
(119362, 119364, 0),
|
| 323 |
+
(121344, 121398, 0),
|
| 324 |
+
(121403, 121452, 0),
|
| 325 |
+
(121461, 121461, 0),
|
| 326 |
+
(121476, 121476, 0),
|
| 327 |
+
(121499, 121503, 0),
|
| 328 |
+
(121505, 121519, 0),
|
| 329 |
+
(122880, 122886, 0),
|
| 330 |
+
(122888, 122904, 0),
|
| 331 |
+
(122907, 122913, 0),
|
| 332 |
+
(122915, 122916, 0),
|
| 333 |
+
(122918, 122922, 0),
|
| 334 |
+
(125136, 125142, 0),
|
| 335 |
+
(125252, 125258, 0),
|
| 336 |
+
(126980, 126980, 2),
|
| 337 |
+
(127183, 127183, 2),
|
| 338 |
+
(127374, 127374, 2),
|
| 339 |
+
(127377, 127386, 2),
|
| 340 |
+
(127488, 127490, 2),
|
| 341 |
+
(127504, 127547, 2),
|
| 342 |
+
(127552, 127560, 2),
|
| 343 |
+
(127568, 127569, 2),
|
| 344 |
+
(127744, 127776, 2),
|
| 345 |
+
(127789, 127797, 2),
|
| 346 |
+
(127799, 127868, 2),
|
| 347 |
+
(127870, 127891, 2),
|
| 348 |
+
(127904, 127946, 2),
|
| 349 |
+
(127951, 127955, 2),
|
| 350 |
+
(127968, 127984, 2),
|
| 351 |
+
(127988, 127988, 2),
|
| 352 |
+
(127992, 127994, 2),
|
| 353 |
+
(127995, 127999, 0),
|
| 354 |
+
(128000, 128062, 2),
|
| 355 |
+
(128064, 128064, 2),
|
| 356 |
+
(128066, 128252, 2),
|
| 357 |
+
(128255, 128317, 2),
|
| 358 |
+
(128331, 128334, 2),
|
| 359 |
+
(128336, 128359, 2),
|
| 360 |
+
(128378, 128378, 2),
|
| 361 |
+
(128405, 128406, 2),
|
| 362 |
+
(128420, 128420, 2),
|
| 363 |
+
(128507, 128591, 2),
|
| 364 |
+
(128640, 128709, 2),
|
| 365 |
+
(128716, 128716, 2),
|
| 366 |
+
(128720, 128722, 2),
|
| 367 |
+
(128747, 128748, 2),
|
| 368 |
+
(128756, 128758, 2),
|
| 369 |
+
(129296, 129310, 2),
|
| 370 |
+
(129312, 129319, 2),
|
| 371 |
+
(129328, 129328, 2),
|
| 372 |
+
(129331, 129342, 2),
|
| 373 |
+
(129344, 129355, 2),
|
| 374 |
+
(129360, 129374, 2),
|
| 375 |
+
(129408, 129425, 2),
|
| 376 |
+
(129472, 129472, 2),
|
| 377 |
+
(131072, 196605, 2),
|
| 378 |
+
(196608, 262141, 2),
|
| 379 |
+
(917504, 921599, 0),
|
| 380 |
+
],
|
| 381 |
+
frozenset(
|
| 382 |
+
[
|
| 383 |
+
"#",
|
| 384 |
+
"*",
|
| 385 |
+
"0",
|
| 386 |
+
"1",
|
| 387 |
+
"2",
|
| 388 |
+
"3",
|
| 389 |
+
"4",
|
| 390 |
+
"5",
|
| 391 |
+
"6",
|
| 392 |
+
"7",
|
| 393 |
+
"8",
|
| 394 |
+
"9",
|
| 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 |
+
"🌡",
|
| 506 |
+
"🌤",
|
| 507 |
+
"🌥",
|
| 508 |
+
"🌦",
|
| 509 |
+
"🌧",
|
| 510 |
+
"🌨",
|
| 511 |
+
"🌩",
|
| 512 |
+
"🌪",
|
| 513 |
+
"🌫",
|
| 514 |
+
"🌬",
|
| 515 |
+
"🌶",
|
| 516 |
+
"🍽",
|
| 517 |
+
"🎖",
|
| 518 |
+
"🎗",
|
| 519 |
+
"🎙",
|
| 520 |
+
"🎚",
|
| 521 |
+
"🎛",
|
| 522 |
+
"🎞",
|
| 523 |
+
"🎟",
|
| 524 |
+
"🏋",
|
| 525 |
+
"🏌",
|
| 526 |
+
"🏍",
|
| 527 |
+
"🏎",
|
| 528 |
+
"🏔",
|
| 529 |
+
"🏕",
|
| 530 |
+
"🏖",
|
| 531 |
+
"🏗",
|
| 532 |
+
"🏘",
|
| 533 |
+
"🏙",
|
| 534 |
+
"🏚",
|
| 535 |
+
"🏛",
|
| 536 |
+
"🏜",
|
| 537 |
+
"🏝",
|
| 538 |
+
"🏞",
|
| 539 |
+
"🏟",
|
| 540 |
+
"🏳",
|
| 541 |
+
"🏵",
|
| 542 |
+
"🏷",
|
| 543 |
+
"🐿",
|
| 544 |
+
"👁",
|
| 545 |
+
"📽",
|
| 546 |
+
"🕉",
|
| 547 |
+
"🕊",
|
| 548 |
+
"🕯",
|
| 549 |
+
"🕰",
|
| 550 |
+
"🕳",
|
| 551 |
+
"🕴",
|
| 552 |
+
"🕵",
|
| 553 |
+
"🕶",
|
| 554 |
+
"🕷",
|
| 555 |
+
"🕸",
|
| 556 |
+
"🕹",
|
| 557 |
+
"🖇",
|
| 558 |
+
"🖊",
|
| 559 |
+
"🖋",
|
| 560 |
+
"🖌",
|
| 561 |
+
"🖍",
|
| 562 |
+
"🖐",
|
| 563 |
+
"🖥",
|
| 564 |
+
"🖨",
|
| 565 |
+
"🖱",
|
| 566 |
+
"🖲",
|
| 567 |
+
"🖼",
|
| 568 |
+
"🗂",
|
| 569 |
+
"🗃",
|
| 570 |
+
"🗄",
|
| 571 |
+
"🗑",
|
| 572 |
+
"🗒",
|
| 573 |
+
"🗓",
|
| 574 |
+
"🗜",
|
| 575 |
+
"🗝",
|
| 576 |
+
"🗞",
|
| 577 |
+
"🗡",
|
| 578 |
+
"🗣",
|
| 579 |
+
"🗨",
|
| 580 |
+
"🗯",
|
| 581 |
+
"🗳",
|
| 582 |
+
"🗺",
|
| 583 |
+
"🛋",
|
| 584 |
+
"🛍",
|
| 585 |
+
"🛎",
|
| 586 |
+
"🛏",
|
| 587 |
+
"🛠",
|
| 588 |
+
"🛡",
|
| 589 |
+
"🛢",
|
| 590 |
+
"🛣",
|
| 591 |
+
"🛤",
|
| 592 |
+
"🛥",
|
| 593 |
+
"🛩",
|
| 594 |
+
"🛰",
|
| 595 |
+
"🛳",
|
| 596 |
+
]
|
| 597 |
+
),
|
| 598 |
+
)
|
venv/lib/python3.11/site-packages/rich/_win32_console.py
ADDED
|
@@ -0,0 +1,661 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"""Light wrapper around the Win32 Console API - this module should only be imported on Windows
|
| 2 |
+
|
| 3 |
+
The API that this module wraps is documented at https://docs.microsoft.com/en-us/windows/console/console-functions
|
| 4 |
+
"""
|
| 5 |
+
|
| 6 |
+
import ctypes
|
| 7 |
+
import sys
|
| 8 |
+
from typing import Any
|
| 9 |
+
|
| 10 |
+
windll: Any = None
|
| 11 |
+
if sys.platform == "win32":
|
| 12 |
+
windll = ctypes.LibraryLoader(ctypes.WinDLL)
|
| 13 |
+
else:
|
| 14 |
+
raise ImportError(f"{__name__} can only be imported on Windows")
|
| 15 |
+
|
| 16 |
+
import time
|
| 17 |
+
from ctypes import Structure, byref, wintypes
|
| 18 |
+
from typing import IO, NamedTuple, Type, cast
|
| 19 |
+
|
| 20 |
+
from rich.color import ColorSystem
|
| 21 |
+
from rich.style import Style
|
| 22 |
+
|
| 23 |
+
STDOUT = -11
|
| 24 |
+
ENABLE_VIRTUAL_TERMINAL_PROCESSING = 4
|
| 25 |
+
|
| 26 |
+
COORD = wintypes._COORD
|
| 27 |
+
|
| 28 |
+
|
| 29 |
+
class LegacyWindowsError(Exception):
|
| 30 |
+
pass
|
| 31 |
+
|
| 32 |
+
|
| 33 |
+
class WindowsCoordinates(NamedTuple):
|
| 34 |
+
"""Coordinates in the Windows Console API are (y, x), not (x, y).
|
| 35 |
+
This class is intended to prevent that confusion.
|
| 36 |
+
Rows and columns are indexed from 0.
|
| 37 |
+
This class can be used in place of wintypes._COORD in arguments and argtypes.
|
| 38 |
+
"""
|
| 39 |
+
|
| 40 |
+
row: int
|
| 41 |
+
col: int
|
| 42 |
+
|
| 43 |
+
@classmethod
|
| 44 |
+
def from_param(cls, value: "WindowsCoordinates") -> COORD:
|
| 45 |
+
"""Converts a WindowsCoordinates into a wintypes _COORD structure.
|
| 46 |
+
This classmethod is internally called by ctypes to perform the conversion.
|
| 47 |
+
|
| 48 |
+
Args:
|
| 49 |
+
value (WindowsCoordinates): The input coordinates to convert.
|
| 50 |
+
|
| 51 |
+
Returns:
|
| 52 |
+
wintypes._COORD: The converted coordinates struct.
|
| 53 |
+
"""
|
| 54 |
+
return COORD(value.col, value.row)
|
| 55 |
+
|
| 56 |
+
|
| 57 |
+
class CONSOLE_SCREEN_BUFFER_INFO(Structure):
|
| 58 |
+
_fields_ = [
|
| 59 |
+
("dwSize", COORD),
|
| 60 |
+
("dwCursorPosition", COORD),
|
| 61 |
+
("wAttributes", wintypes.WORD),
|
| 62 |
+
("srWindow", wintypes.SMALL_RECT),
|
| 63 |
+
("dwMaximumWindowSize", COORD),
|
| 64 |
+
]
|
| 65 |
+
|
| 66 |
+
|
| 67 |
+
class CONSOLE_CURSOR_INFO(ctypes.Structure):
|
| 68 |
+
_fields_ = [("dwSize", wintypes.DWORD), ("bVisible", wintypes.BOOL)]
|
| 69 |
+
|
| 70 |
+
|
| 71 |
+
_GetStdHandle = windll.kernel32.GetStdHandle
|
| 72 |
+
_GetStdHandle.argtypes = [
|
| 73 |
+
wintypes.DWORD,
|
| 74 |
+
]
|
| 75 |
+
_GetStdHandle.restype = wintypes.HANDLE
|
| 76 |
+
|
| 77 |
+
|
| 78 |
+
def GetStdHandle(handle: int = STDOUT) -> wintypes.HANDLE:
|
| 79 |
+
"""Retrieves a handle to the specified standard device (standard input, standard output, or standard error).
|
| 80 |
+
|
| 81 |
+
Args:
|
| 82 |
+
handle (int): Integer identifier for the handle. Defaults to -11 (stdout).
|
| 83 |
+
|
| 84 |
+
Returns:
|
| 85 |
+
wintypes.HANDLE: The handle
|
| 86 |
+
"""
|
| 87 |
+
return cast(wintypes.HANDLE, _GetStdHandle(handle))
|
| 88 |
+
|
| 89 |
+
|
| 90 |
+
_GetConsoleMode = windll.kernel32.GetConsoleMode
|
| 91 |
+
_GetConsoleMode.argtypes = [wintypes.HANDLE, wintypes.LPDWORD]
|
| 92 |
+
_GetConsoleMode.restype = wintypes.BOOL
|
| 93 |
+
|
| 94 |
+
|
| 95 |
+
def GetConsoleMode(std_handle: wintypes.HANDLE) -> int:
|
| 96 |
+
"""Retrieves the current input mode of a console's input buffer
|
| 97 |
+
or the current output mode of a console screen buffer.
|
| 98 |
+
|
| 99 |
+
Args:
|
| 100 |
+
std_handle (wintypes.HANDLE): A handle to the console input buffer or the console screen buffer.
|
| 101 |
+
|
| 102 |
+
Raises:
|
| 103 |
+
LegacyWindowsError: If any error occurs while calling the Windows console API.
|
| 104 |
+
|
| 105 |
+
Returns:
|
| 106 |
+
int: Value representing the current console mode as documented at
|
| 107 |
+
https://docs.microsoft.com/en-us/windows/console/getconsolemode#parameters
|
| 108 |
+
"""
|
| 109 |
+
|
| 110 |
+
console_mode = wintypes.DWORD()
|
| 111 |
+
success = bool(_GetConsoleMode(std_handle, console_mode))
|
| 112 |
+
if not success:
|
| 113 |
+
raise LegacyWindowsError("Unable to get legacy Windows Console Mode")
|
| 114 |
+
return console_mode.value
|
| 115 |
+
|
| 116 |
+
|
| 117 |
+
_FillConsoleOutputCharacterW = windll.kernel32.FillConsoleOutputCharacterW
|
| 118 |
+
_FillConsoleOutputCharacterW.argtypes = [
|
| 119 |
+
wintypes.HANDLE,
|
| 120 |
+
ctypes.c_char,
|
| 121 |
+
wintypes.DWORD,
|
| 122 |
+
cast(Type[COORD], WindowsCoordinates),
|
| 123 |
+
ctypes.POINTER(wintypes.DWORD),
|
| 124 |
+
]
|
| 125 |
+
_FillConsoleOutputCharacterW.restype = wintypes.BOOL
|
| 126 |
+
|
| 127 |
+
|
| 128 |
+
def FillConsoleOutputCharacter(
|
| 129 |
+
std_handle: wintypes.HANDLE,
|
| 130 |
+
char: str,
|
| 131 |
+
length: int,
|
| 132 |
+
start: WindowsCoordinates,
|
| 133 |
+
) -> int:
|
| 134 |
+
"""Writes a character to the console screen buffer a specified number of times, beginning at the specified coordinates.
|
| 135 |
+
|
| 136 |
+
Args:
|
| 137 |
+
std_handle (wintypes.HANDLE): A handle to the console input buffer or the console screen buffer.
|
| 138 |
+
char (str): The character to write. Must be a string of length 1.
|
| 139 |
+
length (int): The number of times to write the character.
|
| 140 |
+
start (WindowsCoordinates): The coordinates to start writing at.
|
| 141 |
+
|
| 142 |
+
Returns:
|
| 143 |
+
int: The number of characters written.
|
| 144 |
+
"""
|
| 145 |
+
character = ctypes.c_char(char.encode())
|
| 146 |
+
num_characters = wintypes.DWORD(length)
|
| 147 |
+
num_written = wintypes.DWORD(0)
|
| 148 |
+
_FillConsoleOutputCharacterW(
|
| 149 |
+
std_handle,
|
| 150 |
+
character,
|
| 151 |
+
num_characters,
|
| 152 |
+
start,
|
| 153 |
+
byref(num_written),
|
| 154 |
+
)
|
| 155 |
+
return num_written.value
|
| 156 |
+
|
| 157 |
+
|
| 158 |
+
_FillConsoleOutputAttribute = windll.kernel32.FillConsoleOutputAttribute
|
| 159 |
+
_FillConsoleOutputAttribute.argtypes = [
|
| 160 |
+
wintypes.HANDLE,
|
| 161 |
+
wintypes.WORD,
|
| 162 |
+
wintypes.DWORD,
|
| 163 |
+
cast(Type[COORD], WindowsCoordinates),
|
| 164 |
+
ctypes.POINTER(wintypes.DWORD),
|
| 165 |
+
]
|
| 166 |
+
_FillConsoleOutputAttribute.restype = wintypes.BOOL
|
| 167 |
+
|
| 168 |
+
|
| 169 |
+
def FillConsoleOutputAttribute(
|
| 170 |
+
std_handle: wintypes.HANDLE,
|
| 171 |
+
attributes: int,
|
| 172 |
+
length: int,
|
| 173 |
+
start: WindowsCoordinates,
|
| 174 |
+
) -> int:
|
| 175 |
+
"""Sets the character attributes for a specified number of character cells,
|
| 176 |
+
beginning at the specified coordinates in a screen buffer.
|
| 177 |
+
|
| 178 |
+
Args:
|
| 179 |
+
std_handle (wintypes.HANDLE): A handle to the console input buffer or the console screen buffer.
|
| 180 |
+
attributes (int): Integer value representing the foreground and background colours of the cells.
|
| 181 |
+
length (int): The number of cells to set the output attribute of.
|
| 182 |
+
start (WindowsCoordinates): The coordinates of the first cell whose attributes are to be set.
|
| 183 |
+
|
| 184 |
+
Returns:
|
| 185 |
+
int: The number of cells whose attributes were actually set.
|
| 186 |
+
"""
|
| 187 |
+
num_cells = wintypes.DWORD(length)
|
| 188 |
+
style_attrs = wintypes.WORD(attributes)
|
| 189 |
+
num_written = wintypes.DWORD(0)
|
| 190 |
+
_FillConsoleOutputAttribute(
|
| 191 |
+
std_handle, style_attrs, num_cells, start, byref(num_written)
|
| 192 |
+
)
|
| 193 |
+
return num_written.value
|
| 194 |
+
|
| 195 |
+
|
| 196 |
+
_SetConsoleTextAttribute = windll.kernel32.SetConsoleTextAttribute
|
| 197 |
+
_SetConsoleTextAttribute.argtypes = [
|
| 198 |
+
wintypes.HANDLE,
|
| 199 |
+
wintypes.WORD,
|
| 200 |
+
]
|
| 201 |
+
_SetConsoleTextAttribute.restype = wintypes.BOOL
|
| 202 |
+
|
| 203 |
+
|
| 204 |
+
def SetConsoleTextAttribute(
|
| 205 |
+
std_handle: wintypes.HANDLE, attributes: wintypes.WORD
|
| 206 |
+
) -> bool:
|
| 207 |
+
"""Set the colour attributes for all text written after this function is called.
|
| 208 |
+
|
| 209 |
+
Args:
|
| 210 |
+
std_handle (wintypes.HANDLE): A handle to the console input buffer or the console screen buffer.
|
| 211 |
+
attributes (int): Integer value representing the foreground and background colours.
|
| 212 |
+
|
| 213 |
+
|
| 214 |
+
Returns:
|
| 215 |
+
bool: True if the attribute was set successfully, otherwise False.
|
| 216 |
+
"""
|
| 217 |
+
return bool(_SetConsoleTextAttribute(std_handle, attributes))
|
| 218 |
+
|
| 219 |
+
|
| 220 |
+
_GetConsoleScreenBufferInfo = windll.kernel32.GetConsoleScreenBufferInfo
|
| 221 |
+
_GetConsoleScreenBufferInfo.argtypes = [
|
| 222 |
+
wintypes.HANDLE,
|
| 223 |
+
ctypes.POINTER(CONSOLE_SCREEN_BUFFER_INFO),
|
| 224 |
+
]
|
| 225 |
+
_GetConsoleScreenBufferInfo.restype = wintypes.BOOL
|
| 226 |
+
|
| 227 |
+
|
| 228 |
+
def GetConsoleScreenBufferInfo(
|
| 229 |
+
std_handle: wintypes.HANDLE,
|
| 230 |
+
) -> CONSOLE_SCREEN_BUFFER_INFO:
|
| 231 |
+
"""Retrieves information about the specified console screen buffer.
|
| 232 |
+
|
| 233 |
+
Args:
|
| 234 |
+
std_handle (wintypes.HANDLE): A handle to the console input buffer or the console screen buffer.
|
| 235 |
+
|
| 236 |
+
Returns:
|
| 237 |
+
CONSOLE_SCREEN_BUFFER_INFO: A CONSOLE_SCREEN_BUFFER_INFO ctype struct contain information about
|
| 238 |
+
screen size, cursor position, colour attributes, and more."""
|
| 239 |
+
console_screen_buffer_info = CONSOLE_SCREEN_BUFFER_INFO()
|
| 240 |
+
_GetConsoleScreenBufferInfo(std_handle, byref(console_screen_buffer_info))
|
| 241 |
+
return console_screen_buffer_info
|
| 242 |
+
|
| 243 |
+
|
| 244 |
+
_SetConsoleCursorPosition = windll.kernel32.SetConsoleCursorPosition
|
| 245 |
+
_SetConsoleCursorPosition.argtypes = [
|
| 246 |
+
wintypes.HANDLE,
|
| 247 |
+
cast(Type[COORD], WindowsCoordinates),
|
| 248 |
+
]
|
| 249 |
+
_SetConsoleCursorPosition.restype = wintypes.BOOL
|
| 250 |
+
|
| 251 |
+
|
| 252 |
+
def SetConsoleCursorPosition(
|
| 253 |
+
std_handle: wintypes.HANDLE, coords: WindowsCoordinates
|
| 254 |
+
) -> bool:
|
| 255 |
+
"""Set the position of the cursor in the console screen
|
| 256 |
+
|
| 257 |
+
Args:
|
| 258 |
+
std_handle (wintypes.HANDLE): A handle to the console input buffer or the console screen buffer.
|
| 259 |
+
coords (WindowsCoordinates): The coordinates to move the cursor to.
|
| 260 |
+
|
| 261 |
+
Returns:
|
| 262 |
+
bool: True if the function succeeds, otherwise False.
|
| 263 |
+
"""
|
| 264 |
+
return bool(_SetConsoleCursorPosition(std_handle, coords))
|
| 265 |
+
|
| 266 |
+
|
| 267 |
+
_GetConsoleCursorInfo = windll.kernel32.GetConsoleCursorInfo
|
| 268 |
+
_GetConsoleCursorInfo.argtypes = [
|
| 269 |
+
wintypes.HANDLE,
|
| 270 |
+
ctypes.POINTER(CONSOLE_CURSOR_INFO),
|
| 271 |
+
]
|
| 272 |
+
_GetConsoleCursorInfo.restype = wintypes.BOOL
|
| 273 |
+
|
| 274 |
+
|
| 275 |
+
def GetConsoleCursorInfo(
|
| 276 |
+
std_handle: wintypes.HANDLE, cursor_info: CONSOLE_CURSOR_INFO
|
| 277 |
+
) -> bool:
|
| 278 |
+
"""Get the cursor info - used to get cursor visibility and width
|
| 279 |
+
|
| 280 |
+
Args:
|
| 281 |
+
std_handle (wintypes.HANDLE): A handle to the console input buffer or the console screen buffer.
|
| 282 |
+
cursor_info (CONSOLE_CURSOR_INFO): CONSOLE_CURSOR_INFO ctype struct that receives information
|
| 283 |
+
about the console's cursor.
|
| 284 |
+
|
| 285 |
+
Returns:
|
| 286 |
+
bool: True if the function succeeds, otherwise False.
|
| 287 |
+
"""
|
| 288 |
+
return bool(_GetConsoleCursorInfo(std_handle, byref(cursor_info)))
|
| 289 |
+
|
| 290 |
+
|
| 291 |
+
_SetConsoleCursorInfo = windll.kernel32.SetConsoleCursorInfo
|
| 292 |
+
_SetConsoleCursorInfo.argtypes = [
|
| 293 |
+
wintypes.HANDLE,
|
| 294 |
+
ctypes.POINTER(CONSOLE_CURSOR_INFO),
|
| 295 |
+
]
|
| 296 |
+
_SetConsoleCursorInfo.restype = wintypes.BOOL
|
| 297 |
+
|
| 298 |
+
|
| 299 |
+
def SetConsoleCursorInfo(
|
| 300 |
+
std_handle: wintypes.HANDLE, cursor_info: CONSOLE_CURSOR_INFO
|
| 301 |
+
) -> bool:
|
| 302 |
+
"""Set the cursor info - used for adjusting cursor visibility and width
|
| 303 |
+
|
| 304 |
+
Args:
|
| 305 |
+
std_handle (wintypes.HANDLE): A handle to the console input buffer or the console screen buffer.
|
| 306 |
+
cursor_info (CONSOLE_CURSOR_INFO): CONSOLE_CURSOR_INFO ctype struct containing the new cursor info.
|
| 307 |
+
|
| 308 |
+
Returns:
|
| 309 |
+
bool: True if the function succeeds, otherwise False.
|
| 310 |
+
"""
|
| 311 |
+
return bool(_SetConsoleCursorInfo(std_handle, byref(cursor_info)))
|
| 312 |
+
|
| 313 |
+
|
| 314 |
+
_SetConsoleTitle = windll.kernel32.SetConsoleTitleW
|
| 315 |
+
_SetConsoleTitle.argtypes = [wintypes.LPCWSTR]
|
| 316 |
+
_SetConsoleTitle.restype = wintypes.BOOL
|
| 317 |
+
|
| 318 |
+
|
| 319 |
+
def SetConsoleTitle(title: str) -> bool:
|
| 320 |
+
"""Sets the title of the current console window
|
| 321 |
+
|
| 322 |
+
Args:
|
| 323 |
+
title (str): The new title of the console window.
|
| 324 |
+
|
| 325 |
+
Returns:
|
| 326 |
+
bool: True if the function succeeds, otherwise False.
|
| 327 |
+
"""
|
| 328 |
+
return bool(_SetConsoleTitle(title))
|
| 329 |
+
|
| 330 |
+
|
| 331 |
+
class LegacyWindowsTerm:
|
| 332 |
+
"""This class allows interaction with the legacy Windows Console API. It should only be used in the context
|
| 333 |
+
of environments where virtual terminal processing is not available. However, if it is used in a Windows environment,
|
| 334 |
+
the entire API should work.
|
| 335 |
+
|
| 336 |
+
Args:
|
| 337 |
+
file (IO[str]): The file which the Windows Console API HANDLE is retrieved from, defaults to sys.stdout.
|
| 338 |
+
"""
|
| 339 |
+
|
| 340 |
+
BRIGHT_BIT = 8
|
| 341 |
+
|
| 342 |
+
# Indices are ANSI color numbers, values are the corresponding Windows Console API color numbers
|
| 343 |
+
ANSI_TO_WINDOWS = [
|
| 344 |
+
0, # black The Windows colours are defined in wincon.h as follows:
|
| 345 |
+
4, # red define FOREGROUND_BLUE 0x0001 -- 0000 0001
|
| 346 |
+
2, # green define FOREGROUND_GREEN 0x0002 -- 0000 0010
|
| 347 |
+
6, # yellow define FOREGROUND_RED 0x0004 -- 0000 0100
|
| 348 |
+
1, # blue define FOREGROUND_INTENSITY 0x0008 -- 0000 1000
|
| 349 |
+
5, # magenta define BACKGROUND_BLUE 0x0010 -- 0001 0000
|
| 350 |
+
3, # cyan define BACKGROUND_GREEN 0x0020 -- 0010 0000
|
| 351 |
+
7, # white define BACKGROUND_RED 0x0040 -- 0100 0000
|
| 352 |
+
8, # bright black (grey) define BACKGROUND_INTENSITY 0x0080 -- 1000 0000
|
| 353 |
+
12, # bright red
|
| 354 |
+
10, # bright green
|
| 355 |
+
14, # bright yellow
|
| 356 |
+
9, # bright blue
|
| 357 |
+
13, # bright magenta
|
| 358 |
+
11, # bright cyan
|
| 359 |
+
15, # bright white
|
| 360 |
+
]
|
| 361 |
+
|
| 362 |
+
def __init__(self, file: "IO[str]") -> None:
|
| 363 |
+
handle = GetStdHandle(STDOUT)
|
| 364 |
+
self._handle = handle
|
| 365 |
+
default_text = GetConsoleScreenBufferInfo(handle).wAttributes
|
| 366 |
+
self._default_text = default_text
|
| 367 |
+
|
| 368 |
+
self._default_fore = default_text & 7
|
| 369 |
+
self._default_back = (default_text >> 4) & 7
|
| 370 |
+
self._default_attrs = self._default_fore | (self._default_back << 4)
|
| 371 |
+
|
| 372 |
+
self._file = file
|
| 373 |
+
self.write = file.write
|
| 374 |
+
self.flush = file.flush
|
| 375 |
+
|
| 376 |
+
@property
|
| 377 |
+
def cursor_position(self) -> WindowsCoordinates:
|
| 378 |
+
"""Returns the current position of the cursor (0-based)
|
| 379 |
+
|
| 380 |
+
Returns:
|
| 381 |
+
WindowsCoordinates: The current cursor position.
|
| 382 |
+
"""
|
| 383 |
+
coord: COORD = GetConsoleScreenBufferInfo(self._handle).dwCursorPosition
|
| 384 |
+
return WindowsCoordinates(row=coord.Y, col=coord.X)
|
| 385 |
+
|
| 386 |
+
@property
|
| 387 |
+
def screen_size(self) -> WindowsCoordinates:
|
| 388 |
+
"""Returns the current size of the console screen buffer, in character columns and rows
|
| 389 |
+
|
| 390 |
+
Returns:
|
| 391 |
+
WindowsCoordinates: The width and height of the screen as WindowsCoordinates.
|
| 392 |
+
"""
|
| 393 |
+
screen_size: COORD = GetConsoleScreenBufferInfo(self._handle).dwSize
|
| 394 |
+
return WindowsCoordinates(row=screen_size.Y, col=screen_size.X)
|
| 395 |
+
|
| 396 |
+
def write_text(self, text: str) -> None:
|
| 397 |
+
"""Write text directly to the terminal without any modification of styles
|
| 398 |
+
|
| 399 |
+
Args:
|
| 400 |
+
text (str): The text to write to the console
|
| 401 |
+
"""
|
| 402 |
+
self.write(text)
|
| 403 |
+
self.flush()
|
| 404 |
+
|
| 405 |
+
def write_styled(self, text: str, style: Style) -> None:
|
| 406 |
+
"""Write styled text to the terminal.
|
| 407 |
+
|
| 408 |
+
Args:
|
| 409 |
+
text (str): The text to write
|
| 410 |
+
style (Style): The style of the text
|
| 411 |
+
"""
|
| 412 |
+
color = style.color
|
| 413 |
+
bgcolor = style.bgcolor
|
| 414 |
+
if style.reverse:
|
| 415 |
+
color, bgcolor = bgcolor, color
|
| 416 |
+
|
| 417 |
+
if color:
|
| 418 |
+
fore = color.downgrade(ColorSystem.WINDOWS).number
|
| 419 |
+
fore = fore if fore is not None else 7 # Default to ANSI 7: White
|
| 420 |
+
if style.bold:
|
| 421 |
+
fore = fore | self.BRIGHT_BIT
|
| 422 |
+
if style.dim:
|
| 423 |
+
fore = fore & ~self.BRIGHT_BIT
|
| 424 |
+
fore = self.ANSI_TO_WINDOWS[fore]
|
| 425 |
+
else:
|
| 426 |
+
fore = self._default_fore
|
| 427 |
+
|
| 428 |
+
if bgcolor:
|
| 429 |
+
back = bgcolor.downgrade(ColorSystem.WINDOWS).number
|
| 430 |
+
back = back if back is not None else 0 # Default to ANSI 0: Black
|
| 431 |
+
back = self.ANSI_TO_WINDOWS[back]
|
| 432 |
+
else:
|
| 433 |
+
back = self._default_back
|
| 434 |
+
|
| 435 |
+
assert fore is not None
|
| 436 |
+
assert back is not None
|
| 437 |
+
|
| 438 |
+
SetConsoleTextAttribute(
|
| 439 |
+
self._handle, attributes=ctypes.c_ushort(fore | (back << 4))
|
| 440 |
+
)
|
| 441 |
+
self.write_text(text)
|
| 442 |
+
SetConsoleTextAttribute(self._handle, attributes=self._default_text)
|
| 443 |
+
|
| 444 |
+
def move_cursor_to(self, new_position: WindowsCoordinates) -> None:
|
| 445 |
+
"""Set the position of the cursor
|
| 446 |
+
|
| 447 |
+
Args:
|
| 448 |
+
new_position (WindowsCoordinates): The WindowsCoordinates representing the new position of the cursor.
|
| 449 |
+
"""
|
| 450 |
+
if new_position.col < 0 or new_position.row < 0:
|
| 451 |
+
return
|
| 452 |
+
SetConsoleCursorPosition(self._handle, coords=new_position)
|
| 453 |
+
|
| 454 |
+
def erase_line(self) -> None:
|
| 455 |
+
"""Erase all content on the line the cursor is currently located at"""
|
| 456 |
+
screen_size = self.screen_size
|
| 457 |
+
cursor_position = self.cursor_position
|
| 458 |
+
cells_to_erase = screen_size.col
|
| 459 |
+
start_coordinates = WindowsCoordinates(row=cursor_position.row, col=0)
|
| 460 |
+
FillConsoleOutputCharacter(
|
| 461 |
+
self._handle, " ", length=cells_to_erase, start=start_coordinates
|
| 462 |
+
)
|
| 463 |
+
FillConsoleOutputAttribute(
|
| 464 |
+
self._handle,
|
| 465 |
+
self._default_attrs,
|
| 466 |
+
length=cells_to_erase,
|
| 467 |
+
start=start_coordinates,
|
| 468 |
+
)
|
| 469 |
+
|
| 470 |
+
def erase_end_of_line(self) -> None:
|
| 471 |
+
"""Erase all content from the cursor position to the end of that line"""
|
| 472 |
+
cursor_position = self.cursor_position
|
| 473 |
+
cells_to_erase = self.screen_size.col - cursor_position.col
|
| 474 |
+
FillConsoleOutputCharacter(
|
| 475 |
+
self._handle, " ", length=cells_to_erase, start=cursor_position
|
| 476 |
+
)
|
| 477 |
+
FillConsoleOutputAttribute(
|
| 478 |
+
self._handle,
|
| 479 |
+
self._default_attrs,
|
| 480 |
+
length=cells_to_erase,
|
| 481 |
+
start=cursor_position,
|
| 482 |
+
)
|
| 483 |
+
|
| 484 |
+
def erase_start_of_line(self) -> None:
|
| 485 |
+
"""Erase all content from the cursor position to the start of that line"""
|
| 486 |
+
row, col = self.cursor_position
|
| 487 |
+
start = WindowsCoordinates(row, 0)
|
| 488 |
+
FillConsoleOutputCharacter(self._handle, " ", length=col, start=start)
|
| 489 |
+
FillConsoleOutputAttribute(
|
| 490 |
+
self._handle, self._default_attrs, length=col, start=start
|
| 491 |
+
)
|
| 492 |
+
|
| 493 |
+
def move_cursor_up(self) -> None:
|
| 494 |
+
"""Move the cursor up a single cell"""
|
| 495 |
+
cursor_position = self.cursor_position
|
| 496 |
+
SetConsoleCursorPosition(
|
| 497 |
+
self._handle,
|
| 498 |
+
coords=WindowsCoordinates(
|
| 499 |
+
row=cursor_position.row - 1, col=cursor_position.col
|
| 500 |
+
),
|
| 501 |
+
)
|
| 502 |
+
|
| 503 |
+
def move_cursor_down(self) -> None:
|
| 504 |
+
"""Move the cursor down a single cell"""
|
| 505 |
+
cursor_position = self.cursor_position
|
| 506 |
+
SetConsoleCursorPosition(
|
| 507 |
+
self._handle,
|
| 508 |
+
coords=WindowsCoordinates(
|
| 509 |
+
row=cursor_position.row + 1,
|
| 510 |
+
col=cursor_position.col,
|
| 511 |
+
),
|
| 512 |
+
)
|
| 513 |
+
|
| 514 |
+
def move_cursor_forward(self) -> None:
|
| 515 |
+
"""Move the cursor forward a single cell. Wrap to the next line if required."""
|
| 516 |
+
row, col = self.cursor_position
|
| 517 |
+
if col == self.screen_size.col - 1:
|
| 518 |
+
row += 1
|
| 519 |
+
col = 0
|
| 520 |
+
else:
|
| 521 |
+
col += 1
|
| 522 |
+
SetConsoleCursorPosition(
|
| 523 |
+
self._handle, coords=WindowsCoordinates(row=row, col=col)
|
| 524 |
+
)
|
| 525 |
+
|
| 526 |
+
def move_cursor_to_column(self, column: int) -> None:
|
| 527 |
+
"""Move cursor to the column specified by the zero-based column index, staying on the same row
|
| 528 |
+
|
| 529 |
+
Args:
|
| 530 |
+
column (int): The zero-based column index to move the cursor to.
|
| 531 |
+
"""
|
| 532 |
+
row, _ = self.cursor_position
|
| 533 |
+
SetConsoleCursorPosition(self._handle, coords=WindowsCoordinates(row, column))
|
| 534 |
+
|
| 535 |
+
def move_cursor_backward(self) -> None:
|
| 536 |
+
"""Move the cursor backward a single cell. Wrap to the previous line if required."""
|
| 537 |
+
row, col = self.cursor_position
|
| 538 |
+
if col == 0:
|
| 539 |
+
row -= 1
|
| 540 |
+
col = self.screen_size.col - 1
|
| 541 |
+
else:
|
| 542 |
+
col -= 1
|
| 543 |
+
SetConsoleCursorPosition(
|
| 544 |
+
self._handle, coords=WindowsCoordinates(row=row, col=col)
|
| 545 |
+
)
|
| 546 |
+
|
| 547 |
+
def hide_cursor(self) -> None:
|
| 548 |
+
"""Hide the cursor"""
|
| 549 |
+
current_cursor_size = self._get_cursor_size()
|
| 550 |
+
invisible_cursor = CONSOLE_CURSOR_INFO(dwSize=current_cursor_size, bVisible=0)
|
| 551 |
+
SetConsoleCursorInfo(self._handle, cursor_info=invisible_cursor)
|
| 552 |
+
|
| 553 |
+
def show_cursor(self) -> None:
|
| 554 |
+
"""Show the cursor"""
|
| 555 |
+
current_cursor_size = self._get_cursor_size()
|
| 556 |
+
visible_cursor = CONSOLE_CURSOR_INFO(dwSize=current_cursor_size, bVisible=1)
|
| 557 |
+
SetConsoleCursorInfo(self._handle, cursor_info=visible_cursor)
|
| 558 |
+
|
| 559 |
+
def set_title(self, title: str) -> None:
|
| 560 |
+
"""Set the title of the terminal window
|
| 561 |
+
|
| 562 |
+
Args:
|
| 563 |
+
title (str): The new title of the console window
|
| 564 |
+
"""
|
| 565 |
+
assert len(title) < 255, "Console title must be less than 255 characters"
|
| 566 |
+
SetConsoleTitle(title)
|
| 567 |
+
|
| 568 |
+
def _get_cursor_size(self) -> int:
|
| 569 |
+
"""Get the percentage of the character cell that is filled by the cursor"""
|
| 570 |
+
cursor_info = CONSOLE_CURSOR_INFO()
|
| 571 |
+
GetConsoleCursorInfo(self._handle, cursor_info=cursor_info)
|
| 572 |
+
return int(cursor_info.dwSize)
|
| 573 |
+
|
| 574 |
+
|
| 575 |
+
if __name__ == "__main__":
|
| 576 |
+
handle = GetStdHandle()
|
| 577 |
+
|
| 578 |
+
from rich.console import Console
|
| 579 |
+
|
| 580 |
+
console = Console()
|
| 581 |
+
|
| 582 |
+
term = LegacyWindowsTerm(sys.stdout)
|
| 583 |
+
term.set_title("Win32 Console Examples")
|
| 584 |
+
|
| 585 |
+
style = Style(color="black", bgcolor="red")
|
| 586 |
+
|
| 587 |
+
heading = Style.parse("black on green")
|
| 588 |
+
|
| 589 |
+
# Check colour output
|
| 590 |
+
console.rule("Checking colour output")
|
| 591 |
+
console.print("[on red]on red!")
|
| 592 |
+
console.print("[blue]blue!")
|
| 593 |
+
console.print("[yellow]yellow!")
|
| 594 |
+
console.print("[bold yellow]bold yellow!")
|
| 595 |
+
console.print("[bright_yellow]bright_yellow!")
|
| 596 |
+
console.print("[dim bright_yellow]dim bright_yellow!")
|
| 597 |
+
console.print("[italic cyan]italic cyan!")
|
| 598 |
+
console.print("[bold white on blue]bold white on blue!")
|
| 599 |
+
console.print("[reverse bold white on blue]reverse bold white on blue!")
|
| 600 |
+
console.print("[bold black on cyan]bold black on cyan!")
|
| 601 |
+
console.print("[black on green]black on green!")
|
| 602 |
+
console.print("[blue on green]blue on green!")
|
| 603 |
+
console.print("[white on black]white on black!")
|
| 604 |
+
console.print("[black on white]black on white!")
|
| 605 |
+
console.print("[#1BB152 on #DA812D]#1BB152 on #DA812D!")
|
| 606 |
+
|
| 607 |
+
# Check cursor movement
|
| 608 |
+
console.rule("Checking cursor movement")
|
| 609 |
+
console.print()
|
| 610 |
+
term.move_cursor_backward()
|
| 611 |
+
term.move_cursor_backward()
|
| 612 |
+
term.write_text("went back and wrapped to prev line")
|
| 613 |
+
time.sleep(1)
|
| 614 |
+
term.move_cursor_up()
|
| 615 |
+
term.write_text("we go up")
|
| 616 |
+
time.sleep(1)
|
| 617 |
+
term.move_cursor_down()
|
| 618 |
+
term.write_text("and down")
|
| 619 |
+
time.sleep(1)
|
| 620 |
+
term.move_cursor_up()
|
| 621 |
+
term.move_cursor_backward()
|
| 622 |
+
term.move_cursor_backward()
|
| 623 |
+
term.write_text("we went up and back 2")
|
| 624 |
+
time.sleep(1)
|
| 625 |
+
term.move_cursor_down()
|
| 626 |
+
term.move_cursor_backward()
|
| 627 |
+
term.move_cursor_backward()
|
| 628 |
+
term.write_text("we went down and back 2")
|
| 629 |
+
time.sleep(1)
|
| 630 |
+
|
| 631 |
+
# Check erasing of lines
|
| 632 |
+
term.hide_cursor()
|
| 633 |
+
console.print()
|
| 634 |
+
console.rule("Checking line erasing")
|
| 635 |
+
console.print("\n...Deleting to the start of the line...")
|
| 636 |
+
term.write_text("The red arrow shows the cursor location, and direction of erase")
|
| 637 |
+
time.sleep(1)
|
| 638 |
+
term.move_cursor_to_column(16)
|
| 639 |
+
term.write_styled("<", Style.parse("black on red"))
|
| 640 |
+
term.move_cursor_backward()
|
| 641 |
+
time.sleep(1)
|
| 642 |
+
term.erase_start_of_line()
|
| 643 |
+
time.sleep(1)
|
| 644 |
+
|
| 645 |
+
console.print("\n\n...And to the end of the line...")
|
| 646 |
+
term.write_text("The red arrow shows the cursor location, and direction of erase")
|
| 647 |
+
time.sleep(1)
|
| 648 |
+
|
| 649 |
+
term.move_cursor_to_column(16)
|
| 650 |
+
term.write_styled(">", Style.parse("black on red"))
|
| 651 |
+
time.sleep(1)
|
| 652 |
+
term.erase_end_of_line()
|
| 653 |
+
time.sleep(1)
|
| 654 |
+
|
| 655 |
+
console.print("\n\n...Now the whole line will be erased...")
|
| 656 |
+
term.write_styled("I'm going to disappear!", style=Style.parse("black on cyan"))
|
| 657 |
+
time.sleep(1)
|
| 658 |
+
term.erase_line()
|
| 659 |
+
|
| 660 |
+
term.show_cursor()
|
| 661 |
+
print("\n")
|
venv/lib/python3.11/site-packages/rich/_windows.py
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import sys
|
| 2 |
+
from dataclasses import dataclass
|
| 3 |
+
|
| 4 |
+
|
| 5 |
+
@dataclass
|
| 6 |
+
class WindowsConsoleFeatures:
|
| 7 |
+
"""Windows features available."""
|
| 8 |
+
|
| 9 |
+
vt: bool = False
|
| 10 |
+
"""The console supports VT codes."""
|
| 11 |
+
truecolor: bool = False
|
| 12 |
+
"""The console supports truecolor."""
|
| 13 |
+
|
| 14 |
+
|
| 15 |
+
try:
|
| 16 |
+
import ctypes
|
| 17 |
+
from ctypes import LibraryLoader
|
| 18 |
+
|
| 19 |
+
if sys.platform == "win32":
|
| 20 |
+
windll = LibraryLoader(ctypes.WinDLL)
|
| 21 |
+
else:
|
| 22 |
+
windll = None
|
| 23 |
+
raise ImportError("Not windows")
|
| 24 |
+
|
| 25 |
+
from rich._win32_console import (
|
| 26 |
+
ENABLE_VIRTUAL_TERMINAL_PROCESSING,
|
| 27 |
+
GetConsoleMode,
|
| 28 |
+
GetStdHandle,
|
| 29 |
+
LegacyWindowsError,
|
| 30 |
+
)
|
| 31 |
+
|
| 32 |
+
except (AttributeError, ImportError, ValueError):
|
| 33 |
+
# Fallback if we can't load the Windows DLL
|
| 34 |
+
def get_windows_console_features() -> WindowsConsoleFeatures:
|
| 35 |
+
features = WindowsConsoleFeatures()
|
| 36 |
+
return features
|
| 37 |
+
|
| 38 |
+
else:
|
| 39 |
+
|
| 40 |
+
def get_windows_console_features() -> WindowsConsoleFeatures:
|
| 41 |
+
"""Get windows console features.
|
| 42 |
+
|
| 43 |
+
Returns:
|
| 44 |
+
WindowsConsoleFeatures: An instance of WindowsConsoleFeatures.
|
| 45 |
+
"""
|
| 46 |
+
handle = GetStdHandle()
|
| 47 |
+
try:
|
| 48 |
+
console_mode = GetConsoleMode(handle)
|
| 49 |
+
success = True
|
| 50 |
+
except LegacyWindowsError:
|
| 51 |
+
console_mode = 0
|
| 52 |
+
success = False
|
| 53 |
+
vt = bool(success and console_mode & ENABLE_VIRTUAL_TERMINAL_PROCESSING)
|
| 54 |
+
truecolor = False
|
| 55 |
+
if vt:
|
| 56 |
+
win_version = sys.getwindowsversion()
|
| 57 |
+
truecolor = win_version.major > 10 or (
|
| 58 |
+
win_version.major == 10 and win_version.build >= 15063
|
| 59 |
+
)
|
| 60 |
+
features = WindowsConsoleFeatures(vt=vt, truecolor=truecolor)
|
| 61 |
+
return features
|
| 62 |
+
|
| 63 |
+
|
| 64 |
+
if __name__ == "__main__":
|
| 65 |
+
import platform
|
| 66 |
+
|
| 67 |
+
features = get_windows_console_features()
|
| 68 |
+
from rich import print
|
| 69 |
+
|
| 70 |
+
print(f'platform="{platform.system()}"')
|
| 71 |
+
print(repr(features))
|
venv/lib/python3.11/site-packages/rich/_windows_renderer.py
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from typing import Iterable, Sequence, Tuple, cast
|
| 2 |
+
|
| 3 |
+
from rich._win32_console import LegacyWindowsTerm, WindowsCoordinates
|
| 4 |
+
from rich.segment import ControlCode, ControlType, Segment
|
| 5 |
+
|
| 6 |
+
|
| 7 |
+
def legacy_windows_render(buffer: Iterable[Segment], term: LegacyWindowsTerm) -> None:
|
| 8 |
+
"""Makes appropriate Windows Console API calls based on the segments in the buffer.
|
| 9 |
+
|
| 10 |
+
Args:
|
| 11 |
+
buffer (Iterable[Segment]): Iterable of Segments to convert to Win32 API calls.
|
| 12 |
+
term (LegacyWindowsTerm): Used to call the Windows Console API.
|
| 13 |
+
"""
|
| 14 |
+
for text, style, control in buffer:
|
| 15 |
+
if not control:
|
| 16 |
+
if style:
|
| 17 |
+
term.write_styled(text, style)
|
| 18 |
+
else:
|
| 19 |
+
term.write_text(text)
|
| 20 |
+
else:
|
| 21 |
+
control_codes: Sequence[ControlCode] = control
|
| 22 |
+
for control_code in control_codes:
|
| 23 |
+
control_type = control_code[0]
|
| 24 |
+
if control_type == ControlType.CURSOR_MOVE_TO:
|
| 25 |
+
_, x, y = cast(Tuple[ControlType, int, int], control_code)
|
| 26 |
+
term.move_cursor_to(WindowsCoordinates(row=y - 1, col=x - 1))
|
| 27 |
+
elif control_type == ControlType.CARRIAGE_RETURN:
|
| 28 |
+
term.write_text("\r")
|
| 29 |
+
elif control_type == ControlType.HOME:
|
| 30 |
+
term.move_cursor_to(WindowsCoordinates(0, 0))
|
| 31 |
+
elif control_type == ControlType.CURSOR_UP:
|
| 32 |
+
term.move_cursor_up()
|
| 33 |
+
elif control_type == ControlType.CURSOR_DOWN:
|
| 34 |
+
term.move_cursor_down()
|
| 35 |
+
elif control_type == ControlType.CURSOR_FORWARD:
|
| 36 |
+
term.move_cursor_forward()
|
| 37 |
+
elif control_type == ControlType.CURSOR_BACKWARD:
|
| 38 |
+
term.move_cursor_backward()
|
| 39 |
+
elif control_type == ControlType.CURSOR_MOVE_TO_COLUMN:
|
| 40 |
+
_, column = cast(Tuple[ControlType, int], control_code)
|
| 41 |
+
term.move_cursor_to_column(column - 1)
|
| 42 |
+
elif control_type == ControlType.HIDE_CURSOR:
|
| 43 |
+
term.hide_cursor()
|
| 44 |
+
elif control_type == ControlType.SHOW_CURSOR:
|
| 45 |
+
term.show_cursor()
|
| 46 |
+
elif control_type == ControlType.ERASE_IN_LINE:
|
| 47 |
+
_, mode = cast(Tuple[ControlType, int], control_code)
|
| 48 |
+
if mode == 0:
|
| 49 |
+
term.erase_end_of_line()
|
| 50 |
+
elif mode == 1:
|
| 51 |
+
term.erase_start_of_line()
|
| 52 |
+
elif mode == 2:
|
| 53 |
+
term.erase_line()
|
| 54 |
+
elif control_type == ControlType.SET_WINDOW_TITLE:
|
| 55 |
+
_, title = cast(Tuple[ControlType, str], control_code)
|
| 56 |
+
term.set_title(title)
|
venv/lib/python3.11/site-packages/rich/_wrap.py
ADDED
|
@@ -0,0 +1,93 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from __future__ import annotations
|
| 2 |
+
|
| 3 |
+
import re
|
| 4 |
+
from typing import Iterable
|
| 5 |
+
|
| 6 |
+
from ._loop import loop_last
|
| 7 |
+
from .cells import cell_len, chop_cells
|
| 8 |
+
|
| 9 |
+
re_word = re.compile(r"\s*\S+\s*")
|
| 10 |
+
|
| 11 |
+
|
| 12 |
+
def words(text: str) -> Iterable[tuple[int, int, str]]:
|
| 13 |
+
"""Yields each word from the text as a tuple
|
| 14 |
+
containing (start_index, end_index, word). A "word" in this context may
|
| 15 |
+
include the actual word and any whitespace to the right.
|
| 16 |
+
"""
|
| 17 |
+
position = 0
|
| 18 |
+
word_match = re_word.match(text, position)
|
| 19 |
+
while word_match is not None:
|
| 20 |
+
start, end = word_match.span()
|
| 21 |
+
word = word_match.group(0)
|
| 22 |
+
yield start, end, word
|
| 23 |
+
word_match = re_word.match(text, end)
|
| 24 |
+
|
| 25 |
+
|
| 26 |
+
def divide_line(text: str, width: int, fold: bool = True) -> list[int]:
|
| 27 |
+
"""Given a string of text, and a width (measured in cells), return a list
|
| 28 |
+
of cell offsets which the string should be split at in order for it to fit
|
| 29 |
+
within the given width.
|
| 30 |
+
|
| 31 |
+
Args:
|
| 32 |
+
text: The text to examine.
|
| 33 |
+
width: The available cell width.
|
| 34 |
+
fold: If True, words longer than `width` will be folded onto a new line.
|
| 35 |
+
|
| 36 |
+
Returns:
|
| 37 |
+
A list of indices to break the line at.
|
| 38 |
+
"""
|
| 39 |
+
break_positions: list[int] = [] # offsets to insert the breaks at
|
| 40 |
+
append = break_positions.append
|
| 41 |
+
cell_offset = 0
|
| 42 |
+
_cell_len = cell_len
|
| 43 |
+
|
| 44 |
+
for start, _end, word in words(text):
|
| 45 |
+
word_length = _cell_len(word.rstrip())
|
| 46 |
+
remaining_space = width - cell_offset
|
| 47 |
+
word_fits_remaining_space = remaining_space >= word_length
|
| 48 |
+
|
| 49 |
+
if word_fits_remaining_space:
|
| 50 |
+
# Simplest case - the word fits within the remaining width for this line.
|
| 51 |
+
cell_offset += _cell_len(word)
|
| 52 |
+
else:
|
| 53 |
+
# Not enough space remaining for this word on the current line.
|
| 54 |
+
if word_length > width:
|
| 55 |
+
# The word doesn't fit on any line, so we can't simply
|
| 56 |
+
# place it on the next line...
|
| 57 |
+
if fold:
|
| 58 |
+
# Fold the word across multiple lines.
|
| 59 |
+
folded_word = chop_cells(word, width=width)
|
| 60 |
+
for last, line in loop_last(folded_word):
|
| 61 |
+
if start:
|
| 62 |
+
append(start)
|
| 63 |
+
if last:
|
| 64 |
+
cell_offset = _cell_len(line)
|
| 65 |
+
else:
|
| 66 |
+
start += len(line)
|
| 67 |
+
else:
|
| 68 |
+
# Folding isn't allowed, so crop the word.
|
| 69 |
+
if start:
|
| 70 |
+
append(start)
|
| 71 |
+
cell_offset = _cell_len(word)
|
| 72 |
+
elif cell_offset and start:
|
| 73 |
+
# The word doesn't fit within the remaining space on the current
|
| 74 |
+
# line, but it *can* fit on to the next (empty) line.
|
| 75 |
+
append(start)
|
| 76 |
+
cell_offset = _cell_len(word)
|
| 77 |
+
|
| 78 |
+
return break_positions
|
| 79 |
+
|
| 80 |
+
|
| 81 |
+
if __name__ == "__main__": # pragma: no cover
|
| 82 |
+
from .console import Console
|
| 83 |
+
|
| 84 |
+
console = Console(width=10)
|
| 85 |
+
console.print("12345 abcdefghijklmnopqrstuvwyxzABCDEFGHIJKLMNOPQRSTUVWXYZ 12345")
|
| 86 |
+
print(chop_cells("abcdefghijklmnopqrstuvwxyz", 10))
|
| 87 |
+
|
| 88 |
+
console = Console(width=20)
|
| 89 |
+
console.rule()
|
| 90 |
+
console.print("TextualはPythonの高速アプリケーション開発フレームワークです")
|
| 91 |
+
|
| 92 |
+
console.rule()
|
| 93 |
+
console.print("アプリケーションは1670万色を使用でき")
|
venv/lib/python3.11/site-packages/rich/abc.py
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from abc import ABC
|
| 2 |
+
|
| 3 |
+
|
| 4 |
+
class RichRenderable(ABC):
|
| 5 |
+
"""An abstract base class for Rich renderables.
|
| 6 |
+
|
| 7 |
+
Note that there is no need to extend this class, the intended use is to check if an
|
| 8 |
+
object supports the Rich renderable protocol. For example::
|
| 9 |
+
|
| 10 |
+
if isinstance(my_object, RichRenderable):
|
| 11 |
+
console.print(my_object)
|
| 12 |
+
|
| 13 |
+
"""
|
| 14 |
+
|
| 15 |
+
@classmethod
|
| 16 |
+
def __subclasshook__(cls, other: type) -> bool:
|
| 17 |
+
"""Check if this class supports the rich render protocol."""
|
| 18 |
+
return hasattr(other, "__rich_console__") or hasattr(other, "__rich__")
|
| 19 |
+
|
| 20 |
+
|
| 21 |
+
if __name__ == "__main__": # pragma: no cover
|
| 22 |
+
from rich.text import Text
|
| 23 |
+
|
| 24 |
+
t = Text()
|
| 25 |
+
print(isinstance(Text, RichRenderable))
|
| 26 |
+
print(isinstance(t, RichRenderable))
|
| 27 |
+
|
| 28 |
+
class Foo:
|
| 29 |
+
pass
|
| 30 |
+
|
| 31 |
+
f = Foo()
|
| 32 |
+
print(isinstance(f, RichRenderable))
|
| 33 |
+
print(isinstance("", RichRenderable))
|