Python bindings for wc(s)width
Project description
Python bindings for wc(s)width
cwcwidth
provides Python bindings for wcwidth
and wcswidth
functions defined in POSIX.1-2001
and POSIX.1-2008 based on Cython. These functions 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.
On systems not conforming to POSIX.1-2001 and POSIX.1-2008, Markus Kuhn's implementation is used to provide the functionality.
Dependencies
Cython >= 0.28
(optional, only for building). If Cython is not available, the C files are not regenerated from their source.
Quick installation guide
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
>>> cwcwidth.wcswidth("コンニチハ, セカイ!", 5)
10
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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
cwcwidth-0.1.8.tar.gz
(38.2 kB
view hashes)
Built Distributions
Close
Hashes for cwcwidth-0.1.8-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1e156b9fa6068d32b14984fef9281cedfda114616d6f40cc21202756c04045fd |
|
MD5 | c7459171f1f0fdddc12c74ba503cd50f |
|
BLAKE2b-256 | 7bc488366bcf4155cf35aa19dec5bdce756bccba902178843280597d25f57ea9 |
Close
Hashes for cwcwidth-0.1.8-cp311-cp311-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 63ea84c5c3ac3f146ef091cded6a96cb9d421c28d8c4b40902adb1e28aeba52a |
|
MD5 | 4e0d20ece2577e0cbd63737a83c7f82e |
|
BLAKE2b-256 | cd99bc910f08f72c5ee9abf56c322bea3c5f3a77919f98fbca211682b76aa0fc |
Close
Hashes for cwcwidth-0.1.8-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b85483ca46e7715b1d8c3e64a45d15413e33f2a7d5760022fe745135373dad7c |
|
MD5 | 50f467aabe9b7970f779b822322cbc4f |
|
BLAKE2b-256 | 52a21ff40e355391162a6e9acd0ff632a2a302f96808d740328f7fc4ab635091 |
Close
Hashes for cwcwidth-0.1.8-cp311-cp311-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 72aed59f8cdb7a6b0fe3717be766bbdc41c8ac9ad43deb4b61e96e1c8a6f7f1b |
|
MD5 | 45c9d0ad6e5087afa6f27b79770c5528 |
|
BLAKE2b-256 | 42f8b6d49e2660001589da8b02bd9bb9184cee65ccb74b30dde6313ac398c198 |
Close
Hashes for cwcwidth-0.1.8-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a56f65342c9878bf243849ed9d4f262544de1590eb0d429821e30fed3f7333c4 |
|
MD5 | e3be89d1603f4e8da7b965daa94feee5 |
|
BLAKE2b-256 | b1d9d10adc4f545ce9f875af042c471f42db58efa5667e43264e8eb3271d7b3e |
Close
Hashes for cwcwidth-0.1.8-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 87a53489a715416b1c0e2b6a498061d9d395747ad4e05af34e4b6efdb68566b7 |
|
MD5 | 3c18aebc11ed2b2e9b882ec7661d6d95 |
|
BLAKE2b-256 | f8e64c046db5d6f4fa40ef293f84e1262c573f58f5e54706f2f223e4ed8d4191 |
Close
Hashes for cwcwidth-0.1.8-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 62d4a203782b9eb677e5645517c6f2bfb033f07f9d3d112e994e37c1ac0d411c |
|
MD5 | 3839c266b95409b6690608916ae2c75b |
|
BLAKE2b-256 | 79c053aa074d48b7bb513c5c1894acb10d4a13ad9fca10a60e57ac78d6b6aa80 |
Close
Hashes for cwcwidth-0.1.8-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f83b063b93ac8581f11c6a1ebd9adc1c74942fb2f2d5dfd027f81d5217038cf2 |
|
MD5 | d230fa05ce910d5ebd70e25f5ea09eb5 |
|
BLAKE2b-256 | 8e6c12146349c85877176b9db698253f0a98a4989f8a8e0281010db215a3195e |
Close
Hashes for cwcwidth-0.1.8-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 70f3dd71d935780657e91047389161188e2d121e01c4356746263d280e294fa9 |
|
MD5 | c7dc12079ad9dabe65679846712cc79e |
|
BLAKE2b-256 | a9fdabb77f64a50a4d3d867d7d0d2fb3ebc53940388b6f4ccf4d9c29df5630b4 |
Close
Hashes for cwcwidth-0.1.8-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 577a9394cba36339d41e633c9d82da0c67d26a3392ca64ac33e8379492206041 |
|
MD5 | 968e3589fd136304448792b1eea1839f |
|
BLAKE2b-256 | 90bb25908da54901a249c777496e9568616cb52d81478cda6d816539f7381554 |
Close
Hashes for cwcwidth-0.1.8-cp310-cp310-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 79fea2acf7418f7b6398d43f47195b993fcefd4adf4c9a851d93b50914b0eceb |
|
MD5 | df507cd0d9b6f229fb2cb11d6f96e9db |
|
BLAKE2b-256 | 246198676029fee3aa853b831c470e01ba89749877dafe71ffaddbe75b06cdb3 |
Close
Hashes for cwcwidth-0.1.8-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3a5c9c9f6ee425d6d1bf5d09227304e10178755576b103d83457cc9884c7513f |
|
MD5 | 7b89c21d683adf3b084f0ca8e1b459fc |
|
BLAKE2b-256 | 382ed982a9ee690283ceb953ab38ea2c44114202b6ff0f9c7adf6d29fa4f7d87 |
Close
Hashes for cwcwidth-0.1.8-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0dbb6c6faa5899f71a3064843c528e9ed31881a2b0c83e33ee5109a71a1389cf |
|
MD5 | 9d1f9e69cc06b6f7271536b9465f6786 |
|
BLAKE2b-256 | 432fbdbda6292da9d7b0690e64e4cd5dbb8ab96fd47608748ad8d5ab01613145 |
Close
Hashes for cwcwidth-0.1.8-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1a5256190f2fa081e9ce0a4e3031992e7c8b98868fc77e4c00bc9563b1fc3017 |
|
MD5 | 5193867f27672d73f2ce6ac3c011e077 |
|
BLAKE2b-256 | 5e79dae533792b033f86a5b3e254c53287baeb35bc8e6396ad49d73bde0acc33 |
Close
Hashes for cwcwidth-0.1.8-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 02a2e8a7cf1aaa590c1c56624cf87b793b1ecb84850b9a965df78766843439a1 |
|
MD5 | fd1da8976b5e573833454eac2724ecef |
|
BLAKE2b-256 | a98d980dcd091f75b28265073c4fc702c18ac30572bd82841df933a34dd41c75 |
Close
Hashes for cwcwidth-0.1.8-cp39-cp39-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3e99cd2433ab37e35061057b6fddfd714d34e214bd2f2d9f708e422fe6c4eeb6 |
|
MD5 | e50a92c0c166907a75162c9fdad909cd |
|
BLAKE2b-256 | a90aa7070f7370c7e60b6b35fdbee1a44c1c9af61def4e8c93b98ca09ea58cb9 |
Close
Hashes for cwcwidth-0.1.8-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 275d89f102a966755e7b8482b96ad2efd8399853481b2a91d662da48fbcb8539 |
|
MD5 | dc27118adbb9878ec130b3c08df82902 |
|
BLAKE2b-256 | 10b4c769a980549b3d5cae8eaad20bed97d2e9c3bc4fe90902559409ef8ae806 |
Close
Hashes for cwcwidth-0.1.8-cp39-cp39-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 058162c84ca54362f8af99a57feba5abe76075e16c7fe8a290f99f63a9b40bd9 |
|
MD5 | b2f8f93c07309f731e868245032d914f |
|
BLAKE2b-256 | a07d86de5cd671f20b886f798ec70cbaa54f2a71f3d2d0bb007240053b477e0d |
Close
Hashes for cwcwidth-0.1.8-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9abc6c4616359c21862f3ba42630556102577897f474a9d00bb9cdfa5cb53757 |
|
MD5 | fb58253af61e0b06024a1cfc33d4d569 |
|
BLAKE2b-256 | bbb58fe5f7fe7c232e659d940e2fb413f8c522f0ab3d8de90b088f4b34051765 |
Close
Hashes for cwcwidth-0.1.8-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6f5130eabcab72efdf1eee614a9ed00d0f8da9f6d7e6f81537ce010cecaf3427 |
|
MD5 | e4af4ce421b250e64df4737bde9e1cfa |
|
BLAKE2b-256 | 4f176859d32accbe97ef49cdaee51deeac7a856243367c70af73647427b014b6 |
Close
Hashes for cwcwidth-0.1.8-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | add82ab289c8a9d98af50e711199da1784abbac25a17979dea05ba4e862694de |
|
MD5 | e0ea290b003f9cf381ff08465e8e59d6 |
|
BLAKE2b-256 | 2fb4dc2daf5175ac27724999ab6b9fe412a954fb9eb1c79f3071dee54f4cdb94 |
Close
Hashes for cwcwidth-0.1.8-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | eaaea46c6895ed5dc2f6ff67a3d13400d8a5f5d0f4f243f487879c358b902099 |
|
MD5 | 752f45ef4525355b788ff4a4a8b9f95a |
|
BLAKE2b-256 | 673759af96c83a62b6a7a9305989c2c5ca3b2fe65089aae3ab5c879a893c446f |
Close
Hashes for cwcwidth-0.1.8-cp38-cp38-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 26875ee1ac234e4bd73e6b55c0d8e1f61ae51736f4b712a4f9dd147e559fb17f |
|
MD5 | 22c0e8e318303c352f77dcd02f31cea1 |
|
BLAKE2b-256 | 23e7ff54a71fd40db2116bb379943ebd830dc4c72f339206de502d7a8a0daa6b |
Close
Hashes for cwcwidth-0.1.8-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4dc6b7a86893cb8615f3ff9a29132e21e292d47a30ccb33f1e024d745f30f1f9 |
|
MD5 | 7edfd5d9056fd2587451f8dc409e2d2d |
|
BLAKE2b-256 | c6416c985206bcb2f1b8623f274d33d4272d212037e2c815435c498cc99008a7 |
Close
Hashes for cwcwidth-0.1.8-cp38-cp38-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5c75d262d3bbb7fda982b0b8ce234d8a9e6bec0920f20c7daad93f7a631b1396 |
|
MD5 | 426f37d641d2eda0bce140ee3baaef8c |
|
BLAKE2b-256 | cfc8a32eeb725decc6b8f120de6f985447f6e4630bd078e3f4ca06a3f9c6a6b2 |
Close
Hashes for cwcwidth-0.1.8-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d89448dfe4b9bde74b4a43fd359c892797262f3c77579027409fb4099f88670f |
|
MD5 | 925b58e6f5c29a0e5d61d7a4c10865ec |
|
BLAKE2b-256 | 3965c6ec1de8d9f3d16c0ad4eade19adf26b468ed85db17378634bcdfc2ed2e6 |
Close
Hashes for cwcwidth-0.1.8-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6569c91d787adb312d8d30608e83def6689d0756d39edc4e1d9f85a0512abeee |
|
MD5 | bd40b94bc03e4987f7756a152cca19f6 |
|
BLAKE2b-256 | d22511bd74380a4d681b8085bd8824b3ef6232a075397b4cf0605070261f22d3 |
Close
Hashes for cwcwidth-0.1.8-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1cb4768ff9f6dcebcfb9e3bcc06b2de4f7d24ab423b01b94740f6ac5c72eede6 |
|
MD5 | c0edd80007087bee9c54bd076f20a6fc |
|
BLAKE2b-256 | 5fdf2beef1647c0945e94af71d973a9457ff3ab0671dbde2ddd0f6bab02a3c10 |
Close
Hashes for cwcwidth-0.1.8-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6f6b6abf1c375f394b2b1ed67237395082db9b3afd6fcb830bd7808ea36878d4 |
|
MD5 | dfa3df521a46053fcaf6f9dffd0de39b |
|
BLAKE2b-256 | 51470b839fe8e769feef5a237a77e6cd66acf423d9a22477231634f980cfdcfe |
Close
Hashes for cwcwidth-0.1.8-cp37-cp37m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ab47a6010833b017bca750ac4c0ccf3c0478c290d70fb6384f33c4ed238cc4b5 |
|
MD5 | 24134f415e2e2ca5080eb08b3bbe722b |
|
BLAKE2b-256 | 11905b122c391d1ca9f9e96c61f56f534d6bfb63fb21e7aabc1153e73bd3900d |
Close
Hashes for cwcwidth-0.1.8-cp37-cp37m-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6858884314f58532e6c431564dae5fdf6e4f1aa6e461b421a1e431cbd6b40340 |
|
MD5 | af4108537d3ce4a6f32289c33a302e17 |
|
BLAKE2b-256 | bf4fd745bdc70ef4bd750fe9dea184b381abb0c385a613820e8edbf16f6903f6 |
Close
Hashes for cwcwidth-0.1.8-cp37-cp37m-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d8acab21c0485d18779fc05b55903dc40a66ce66d0c018edfec01a0ed0a5c469 |
|
MD5 | 83b093544ce47c13c71528d5c910232c |
|
BLAKE2b-256 | b617f0b405fb2cad322e4f3222cde9ab5fb98ba4abe316713dd0bec0cb80b599 |
Close
Hashes for cwcwidth-0.1.8-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5de08f1f55c255f9fdf6957bf4852d274f70f6cc39f2eff62c7be9342c6e8c6a |
|
MD5 | 795637b5bb174a0d5ad082fad0489aa5 |
|
BLAKE2b-256 | b12aabfcf97b6b16647421e66b1d561a29e08144b300c4f1cb2944d988f232b8 |
Close
Hashes for cwcwidth-0.1.8-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c699a2a526b031b62dce4023194b99b0d7649ef042cfb1e18cca76b4a5e714f7 |
|
MD5 | 649d2ec0c08569cf7514cce51c643cc9 |
|
BLAKE2b-256 | 9e874f76b942104a85309cb069b7f10ffd921efdca4c5c3414a4755f6a629937 |
Close
Hashes for cwcwidth-0.1.8-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | af597541e0c7af9db76f6189ebaae085b4a2649e91e87d0e8e93bf7b822f5a86 |
|
MD5 | 9c4548eeaad05cdefc6467efdd058c5e |
|
BLAKE2b-256 | 96f1f08da58a8a6d91e6aa386b7fd28a7d910206ffb3146b78a4fd4b87fea9e8 |