X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fchartab.c;h=2f5c6b5185f4399426855b89f19420b5e858e98a;hb=c62fbf831d31717fb71a04dd0c8041195940f93b;hp=cd306198feefe4bbc8e580d7f46a78bfed8dc312;hpb=2779fcb5d524d6b7de5a6ef9ebfd6662433a4a07;p=chise%2Fxemacs-chise.git- diff --git a/src/chartab.c b/src/chartab.c index cd30619..2f5c6b5 100644 --- a/src/chartab.c +++ b/src/chartab.c @@ -1740,8 +1740,10 @@ decode_char_table_range (Lisp_Object range, struct chartab_range *outrange) { if (EQ (range, Qt)) outrange->type = CHARTAB_RANGE_ALL; +#ifdef UTF2000 else if (EQ (range, Qnil)) outrange->type = CHARTAB_RANGE_DEFAULT; +#endif else if (CHAR_OR_CHAR_INTP (range)) { outrange->type = CHARTAB_RANGE_CHAR; @@ -2143,7 +2145,7 @@ put_char_table (Lisp_Char_Table *ct, struct chartab_range *range, { for (c = 0; c < 1 << 24; c++) { - if ( charset_code_point (range->charset, c) >= 0 ) + if ( charset_code_point (range->charset, c, 0) >= 0 ) put_char_id_table_0 (ct, c, val); } } @@ -2181,7 +2183,7 @@ put_char_table (Lisp_Char_Table *ct, struct chartab_range *range, { Emchar ch = DECODE_CHAR (range->charset, (range->row << 8) | i); - if ( charset_code_point (range->charset, ch) >= 0 ) + if ( charset_code_point (range->charset, ch, 0) >= 0 ) put_char_id_table_0 (ct, ch, val); } } @@ -2611,7 +2613,7 @@ map_char_table (Lisp_Char_Table *ct, { Emchar ch = DECODE_CHAR (range->charset, (range->row << 8) | i); - if ( charset_code_point (range->charset, ch) >= 0 ) + if ( charset_code_point (range->charset, ch, 0) >= 0 ) { Lisp_Object val = get_byte_table (get_byte_table @@ -2897,6 +2899,7 @@ Store CHARACTER's ATTRIBUTE with VALUE. { CHECK_CHAR (character); value = put_char_ccs_code_point (character, ccs, value); + attribute = XCHARSET_NAME (ccs); } else if (EQ (attribute, Q_decomposition)) { @@ -3086,10 +3089,12 @@ Store character's ATTRIBUTES. (attributes)) { Lisp_Object rest = attributes; - Lisp_Object code = Fcdr (Fassq (Qucs, attributes)); + Lisp_Object code = Fcdr (Fassq (Qmap_ucs, attributes)); Lisp_Object character; if (NILP (code)) + code = Fcdr (Fassq (Qucs, attributes)); + if (NILP (code)) { while (CONSP (rest)) {