summaryrefslogtreecommitdiff
path: root/include/unicode.h
diff options
context:
space:
mode:
authorTomas Heinrich2010-03-26 13:13:24 +0100
committerDenys Vlasenko2010-03-26 13:13:24 +0100
commitaa167556cd2954bb9a9fb0a005178462087a4600 (patch)
tree241a779a20d302397bd5e59eefceb49ce78834e4 /include/unicode.h
parent385b4562e39e373761fd62b0990dce02ff96661f (diff)
downloadbusybox-aa167556cd2954bb9a9fb0a005178462087a4600.zip
busybox-aa167556cd2954bb9a9fb0a005178462087a4600.tar.gz
unicode: optional table for better handling of neutral bidi chars
Off: function old new delta unicode_bidi_isrtl - 55 +55 isrtl_str 51 65 +14 unicode_isrtl 55 - -55 read_line_input 5003 4937 -66 ------------------------------------------------------------------------------ (add/remove: 1/4 grow/shrink: 1/1 up/down: 69/-121) Total: -52 bytes On: function old new delta static.neutral_b - 320 +320 static.neutral_p - 142 +142 unicode_bidi_isrtl - 55 +55 unicode_bidi_is_neutral_wchar - 55 +55 isrtl_str 51 59 +8 unicode_isrtl 55 - -55 read_line_input 5003 4937 -66 ------------------------------------------------------------------------------ (add/remove: 4/4 grow/shrink: 1/1 up/down: 580/-121) Total: 459 bytes Signed-off-by: Tomas Heinrich <heinrich.tomas@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'include/unicode.h')
-rw-r--r--include/unicode.h11
1 files changed, 8 insertions, 3 deletions
diff --git a/include/unicode.h b/include/unicode.h
index 05bdbca..deb4022 100644
--- a/include/unicode.h
+++ b/include/unicode.h
@@ -18,7 +18,8 @@ enum {
UNICODE_ON = 2,
};
-#define unicode_isrtl(wc) 0
+#define unicode_bidi_isrtl(wc) 0
+#define unicode_bidi_is_neutral_wchar(wc) (wc <= 126 && !isalpha(wc))
#if !ENABLE_FEATURE_ASSUME_UNICODE
@@ -92,8 +93,12 @@ int iswspace(wint_t wc) FAST_FUNC;
int iswalnum(wint_t wc) FAST_FUNC;
int iswpunct(wint_t wc) FAST_FUNC;
# if ENABLE_UNICODE_BIDI_SUPPORT
-# undef unicode_isrtl
-int unicode_isrtl(wint_t wc) FAST_FUNC;
+# undef unicode_bidi_isrtl
+int unicode_bidi_isrtl(wint_t wc) FAST_FUNC;
+# if ENABLE_UNICODE_NEUTRAL_TABLE
+# undef unicode_bidi_is_neutral_wchar
+int unicode_bidi_is_neutral_wchar(wint_t wc) FAST_FUNC;
+# endif
# endif