mirror of
https://github.com/python/cpython.git
synced 2025-08-31 14:07:50 +00:00
SF #989185: Drop unicode.iswide() and unicode.width() and add
unicodedata.east_asian_width(). You can still implement your own simple width() function using it like this: def width(u): w = 0 for c in unicodedata.normalize('NFC', u): cwidth = unicodedata.east_asian_width(c) if cwidth in ('W', 'F'): w += 2 else: w += 1 return w
This commit is contained in:
parent
b5047fd019
commit
e9ddfbb412
15 changed files with 1641 additions and 1617 deletions
|
@ -19,7 +19,6 @@
|
|||
#define SPACE_MASK 0x20
|
||||
#define TITLE_MASK 0x40
|
||||
#define UPPER_MASK 0x80
|
||||
#define WIDE_MASK 0x100
|
||||
|
||||
typedef struct {
|
||||
const Py_UNICODE upper;
|
||||
|
@ -323,15 +322,6 @@ int _PyUnicode_IsNumeric(Py_UNICODE ch)
|
|||
return 1;
|
||||
}
|
||||
|
||||
/* Returns 1 for Unicode characters having Full or Wide width, 0 otherwise */
|
||||
|
||||
int _PyUnicode_IsWide(Py_UNICODE ch)
|
||||
{
|
||||
const _PyUnicode_TypeRecord *ctype = gettyperecord(ch);
|
||||
|
||||
return (ctype->flags & WIDE_MASK) != 0;
|
||||
}
|
||||
|
||||
#ifndef WANT_WCTYPE_FUNCTIONS
|
||||
|
||||
/* Returns 1 for Unicode characters having the bidirectional type
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue