No description
| .github | ||
| cwcwidth | ||
| tests | ||
| .gitignore | ||
| CHANGELOG.md | ||
| LICENSE | ||
| MANIFEST.in | ||
| pyproject.toml | ||
| README.md | ||
| setup.py | ||
Python bindings for wc(s)width
cwcwidth provides Python bindings based on Cython for libc's wcwidth and
wcswidth functions which compute the printable length of a unicode character/string on a terminal.
The module provides the same functions as wcwidth and its behavior is compatible.
Dependencies
Cython >= 0.28(only for building)
Quick installation guilde
cwcwidth can be installed via pip:
pip install cwcwidth
or by running:
python3 setup.py install
Usage
import cwcwidth
cwcwidth.wcwidth("a") # 1
cwcwidth.wcswidth("コ") # 2
cwcwidth.wcswidth("コンニチハ, セカイ!") # 19
Comparison with wcwidth
>>> import wcwidth, cwcwidth, timeit
>>> timeit.timeit(lambda: wcwidth.wcswidth("コンニチハ, セカイ!"))
19.14463168097427
>>> timeit.timeit(lambda: cwcwidth.wcswidth("コンニチハ, セカイ!"))
0.16294104099506512
License
The code is licensed under the MIT license.