new implementation of UNICODE BIDIRECTIONAL ALGORITHM

This commit is contained in:
Vincent Wei
2019-03-08 20:37:44 +08:00
parent 0093ac3edc
commit cc01ce0bbc
5 changed files with 156 additions and 43 deletions
+2 -2
View File
@@ -2,7 +2,7 @@ SUBDIRS = in-core
noinst_LTLIBRARIES = libfont.la
SRC_FILES = charset.c charset-arabic.c charset-bidi.c \
SRC_FILES = charset.c charset-arabic.c general-bidi.c \
unicode-comp.c unicode-script.c language-code.c \
sysfont.c logfont.c devfont.c fontname.c \
rawbitmap.c varbitmap.c qpf.c upf.c \
@@ -16,7 +16,7 @@ SRC_FILES = charset.c charset-arabic.c charset-bidi.c \
HDR_FILES = charset.h rawbitmap.h varbitmap.h freetype2.h qpf.h se_minigui.h \
upf.h bitmapfont.h unicode-bidi-tables.h \
unicode-tables.h unicode-break-tables.h unicode-script-table.h \
unicode-decomp.h unicode-comp.h \
unicode-decomp.h unicode-comp.h general-bidi.h \
unicode-emoji-tables.h unicode-arabic-shaping-tables.h
EXTRA_DIST = convgbmap.c jisunimap.c $(SRC_FILES) $(HDR_FILES) \
+75 -20
View File
File diff suppressed because it is too large Load Diff
+1
View File
@@ -3574,6 +3574,7 @@ static Uint16 unicode_bidi_char_type (Achar32 chv)
Achar32 chv_last = (Achar32)TABLESIZE (__mg_unicode_bidi_char_type_map);
Achar32 chv_mid;
chv = REAL_ACHAR(chv);
while (chv_last >= chv_first) {
chv_mid = (chv_first + chv_last)/2;
+1 -2
View File
@@ -46,8 +46,7 @@
extern "C" {
#endif /* __cplusplus */
//#define ARABIC_DEBUG
#ifdef ARABIC_DEBUG
#ifdef BIDI_DEBUG
#define DBGLOG(s) do { if (1) { fprintf(stderr, s); } } while (0)
#define DBGLOG2(s, t1) do { if (1) { fprintf(stderr, s, t1); } } while (0)
#define DBGLOG3(s, t1,t2) do { if (1) { fprintf(stderr, s, t1,t2); } } while (0)