diff options
Diffstat (limited to 'Build/source/texk/web2c/uptexdir/kanji.c')
-rw-r--r-- | Build/source/texk/web2c/uptexdir/kanji.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/Build/source/texk/web2c/uptexdir/kanji.c b/Build/source/texk/web2c/uptexdir/kanji.c index bf453e24602..7dce7fe518a 100644 --- a/Build/source/texk/web2c/uptexdir/kanji.c +++ b/Build/source/texk/web2c/uptexdir/kanji.c @@ -9,6 +9,7 @@ #define IVS_CHAR_LIMIT 0x4400000 #define CJK_CHAR_LIMIT 0x1000000 #define LATIN_CHAR_LIMIT 0x2E80 +#define UCS_CHAR_LIMIT 0x110000 #define CJK_TOKEN_FLAG 0xFFFFFF #define CAT_LEFT_BRACE 1 #define CAT_DELIM_NUM 15 @@ -48,7 +49,8 @@ boolean is_char_kanji(integer c) if (is_internalUPTEX()) return ((c >= 0)&&(c<IVS_CHAR_LIMIT)); else - return iskanji1(Hi(c)) && iskanji2(Lo(c)); + return ((iskanji1(Hi(c)) && iskanji2(Lo(c))) || + (UCS_CHAR_LIMIT<=c && c<IVS_CHAR_LIMIT)); } boolean ismultiprn(integer c) @@ -523,7 +525,7 @@ binary_search (long x, long *a, int left, int right) integer kcatcodekey(integer c) { integer block; - if (is_internalUPTEX()) { + if (is_internalUPTEX() || (UCS_CHAR_LIMIT<=c && c<IVS_CHAR_LIMIT)) { block = binary_search((long)c, ucs_range, 0, NUCS_RANGE-1); switch (block) { case 0x01: /* Block : Latin-1 Supplement */ |