diff options
author | Hye-Shik Chang <hyeshik@gmail.com> | 2004-08-04 07:38:35 (GMT) |
---|---|---|
committer | Hye-Shik Chang <hyeshik@gmail.com> | 2004-08-04 07:38:35 (GMT) |
commit | e9ddfbb41207328d5c89061067f3431e00711fda (patch) | |
tree | 54093161fe6808de7d6fcc3304eb32241231f010 /Include | |
parent | b5047fd01948ab108edcc1b3c2c901d915814cfd (diff) | |
download | cpython-e9ddfbb41207328d5c89061067f3431e00711fda.zip cpython-e9ddfbb41207328d5c89061067f3431e00711fda.tar.gz cpython-e9ddfbb41207328d5c89061067f3431e00711fda.tar.bz2 |
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
Diffstat (limited to 'Include')
-rw-r--r-- | Include/unicodeobject.h | 18 |
1 files changed, 0 insertions, 18 deletions
diff --git a/Include/unicodeobject.h b/Include/unicodeobject.h index 45118b3..5126870 100644 --- a/Include/unicodeobject.h +++ b/Include/unicodeobject.h @@ -181,7 +181,6 @@ typedef PY_UNICODE_TYPE Py_UNICODE; # define PyUnicode_GetDefaultEncoding PyUnicodeUCS2_GetDefaultEncoding # define PyUnicode_GetMax PyUnicodeUCS2_GetMax # define PyUnicode_GetSize PyUnicodeUCS2_GetSize -# define PyUnicode_GetWidth PyUnicodeUCS2_GetWidth # define PyUnicode_Join PyUnicodeUCS2_Join # define PyUnicode_Replace PyUnicodeUCS2_Replace # define PyUnicode_Resize PyUnicodeUCS2_Resize @@ -201,7 +200,6 @@ typedef PY_UNICODE_TYPE Py_UNICODE; # define _PyUnicode_IsLinebreak _PyUnicodeUCS2_IsLinebreak # define _PyUnicode_IsLowercase _PyUnicodeUCS2_IsLowercase # define _PyUnicode_IsNumeric _PyUnicodeUCS2_IsNumeric -# define _PyUnicode_IsWide _PyUnicodeUCS2_IsWide # define _PyUnicode_IsTitlecase _PyUnicodeUCS2_IsTitlecase # define _PyUnicode_IsUppercase _PyUnicodeUCS2_IsUppercase # define _PyUnicode_IsWhitespace _PyUnicodeUCS2_IsWhitespace @@ -256,7 +254,6 @@ typedef PY_UNICODE_TYPE Py_UNICODE; # define PyUnicode_GetDefaultEncoding PyUnicodeUCS4_GetDefaultEncoding # define PyUnicode_GetMax PyUnicodeUCS4_GetMax # define PyUnicode_GetSize PyUnicodeUCS4_GetSize -# define PyUnicode_GetWidth PyUnicodeUCS4_GetWidth # define PyUnicode_Join PyUnicodeUCS4_Join # define PyUnicode_Replace PyUnicodeUCS4_Replace # define PyUnicode_Resize PyUnicodeUCS4_Resize @@ -275,7 +272,6 @@ typedef PY_UNICODE_TYPE Py_UNICODE; # define _PyUnicode_IsLinebreak _PyUnicodeUCS4_IsLinebreak # define _PyUnicode_IsLowercase _PyUnicodeUCS4_IsLowercase # define _PyUnicode_IsNumeric _PyUnicodeUCS4_IsNumeric -# define _PyUnicode_IsWide _PyUnicodeUCS4_IsWide # define _PyUnicode_IsTitlecase _PyUnicodeUCS4_IsTitlecase # define _PyUnicode_IsUppercase _PyUnicodeUCS4_IsUppercase # define _PyUnicode_IsWhitespace _PyUnicodeUCS4_IsWhitespace @@ -321,8 +317,6 @@ typedef PY_UNICODE_TYPE Py_UNICODE; #define Py_UNICODE_ISALPHA(ch) iswalpha(ch) -#define Py_UNICODE_ISWIDE(ch) _PyUnicode_IsWide(ch) - #else #define Py_UNICODE_ISSPACE(ch) _PyUnicode_IsWhitespace(ch) @@ -346,8 +340,6 @@ typedef PY_UNICODE_TYPE Py_UNICODE; #define Py_UNICODE_ISALPHA(ch) _PyUnicode_IsAlpha(ch) -#define Py_UNICODE_ISWIDE(ch) _PyUnicode_IsWide(ch) - #endif #define Py_UNICODE_ISALNUM(ch) \ @@ -440,12 +432,6 @@ PyAPI_FUNC(int) PyUnicode_GetSize( PyObject *unicode /* Unicode object */ ); -/* Get the fixed-width representation length of the Unicode object */ - -PyAPI_FUNC(int) PyUnicode_GetWidth( - PyObject *unicode /* Unicode object */ - ); - /* Get the maximum ordinal for a Unicode character. */ PyAPI_FUNC(Py_UNICODE) PyUnicode_GetMax(void); @@ -1176,10 +1162,6 @@ PyAPI_FUNC(int) _PyUnicode_IsAlpha( Py_UNICODE ch /* Unicode character */ ); -PyAPI_FUNC(int) _PyUnicode_IsWide( - Py_UNICODE ch /* Unicode character */ - ); - #ifdef __cplusplus } #endif |