X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=src%2Fchartab.h;h=dc4301ad892f19d5440a5244bef099376b579a4f;hb=0680bf5c284a73aaa6e267c4b0f1363d2cb48739;hp=ac23e00cb3de344ee8a98a409d7f15a92f8f777a;hpb=2e3e3f9ee27fec50f45c282d71eaddf7c673bc56;p=chise%2Fxemacs-chise.git- diff --git a/src/chartab.h b/src/chartab.h index ac23e00..dc4301a 100644 --- a/src/chartab.h +++ b/src/chartab.h @@ -141,7 +141,11 @@ CHAR_TABLE_NON_ASCII_VALUE_UNSAFE (struct Lisp_Char_Table *ct, Emchar ch); INLINE Lisp_Object CHAR_TABLE_NON_ASCII_VALUE_UNSAFE (struct Lisp_Char_Table *ct, Emchar ch) { - unsigned char lb = CHAR_LEADING_BYTE (ch); +#ifdef UTF2000 + Charset_ID lb = CHAR_CHARSET_ID (ch); +#else + Charset_ID lb = CHAR_LEADING_BYTE (ch); +#endif if (!CHAR_TABLE_ENTRYP ((ct)->level1[lb - MIN_LEADING_BYTE])) return (ct)->level1[lb - MIN_LEADING_BYTE]; else @@ -180,6 +184,7 @@ struct chartab_range void fill_char_table (struct Lisp_Char_Table *ct, Lisp_Object value); void put_char_table (struct Lisp_Char_Table *ct, struct chartab_range *range, Lisp_Object val); +Lisp_Object get_char_table (Emchar, struct Lisp_Char_Table *); int map_char_table (struct Lisp_Char_Table *ct, struct chartab_range *range, int (*fn) (struct chartab_range *range, @@ -190,6 +195,7 @@ void prune_syntax_tables (int (*obj_marked_p) (Lisp_Object)); EXFUN (Fcopy_char_table, 1); EXFUN (Fmake_char_table, 1); EXFUN (Fput_char_table, 3); +EXFUN (Fget_char_table, 2); extern Lisp_Object Vall_syntax_tables;