X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=src%2Fchar-ucs.h;h=b5160338e686658b19ebc340fb63993bd1ce0956;hb=153c92fa2a3b77ce954a1e54a5dc9ec15370cfd6;hp=3714f5a5edfdee08d96eeac13bd01859a3acb7d4;hpb=f8a03a9ea0345d9026b9bbbe9f4612e963217bca;p=chise%2Fxemacs-chise.git- diff --git a/src/char-ucs.h b/src/char-ucs.h index 3714f5a..b516033 100644 --- a/src/char-ucs.h +++ b/src/char-ucs.h @@ -32,7 +32,27 @@ extern Lisp_Object Vchar_attribute_hash_table; #define CHAR_ASCII_P(ch) ((ch) <= 0x7F) + +/************************************************************************/ +/* Exported functions */ +/************************************************************************/ + +extern Lisp_Object Vcharset_ucs; extern Lisp_Object Vcharset_latin_jisx0201; +extern Lisp_Object Vcharset_chinese_big5; +extern Lisp_Object Vcharset_chinese_big5_1; +extern Lisp_Object Vcharset_chinese_big5_2; +extern Lisp_Object Vcharset_japanese_jisx0208; +extern Lisp_Object Vcharset_japanese_jisx0208_1990; +extern Lisp_Object Vcharset_japanese_jisx0212; + +EXFUN (Fget_charset, 1); + +extern Lisp_Object Qucs; + +Lisp_Object put_char_ccs_code_point (Lisp_Object character, + Lisp_Object ccs, Lisp_Object value); +Lisp_Object remove_char_ccs (Lisp_Object character, Lisp_Object ccs); /************************************************************************/ @@ -506,10 +526,6 @@ CHARSET_BY_ATTRIBUTES (int chars, int dimension, int final, int dir) Emchar decode_builtin_char (Lisp_Object charset, int code_point); -extern Lisp_Object Vcharset_chinese_big5; -extern Lisp_Object Vcharset_chinese_big5_1; -extern Lisp_Object Vcharset_chinese_big5_2; - INLINE_HEADER Lisp_Object get_ccs_octet_table (Lisp_Object table, Lisp_Object ccs, int code); INLINE_HEADER Lisp_Object @@ -657,40 +673,13 @@ decoding_table_remove_char (Lisp_Object ccs, int code_point) Emchar load_char_decoding_entry_maybe (Lisp_Object ccs, int code_point); #endif -INLINE_HEADER Emchar -DECODE_DEFINED_CHAR (Lisp_Object charset, int code_point); -INLINE_HEADER Emchar -DECODE_DEFINED_CHAR (Lisp_Object ccs, int code_point) -{ - int dim = XCHARSET_DIMENSION (ccs); - Lisp_Object decoding_table = XCHARSET_DECODING_TABLE (ccs); - - while (dim > 0) - { - dim--; - decoding_table - = get_ccs_octet_table (decoding_table, ccs, - (code_point >> (dim * 8)) & 255); - } - if (CHARP (decoding_table)) - return XCHAR (decoding_table); -#ifdef HAVE_DATABASE - if (EQ (decoding_table, Qunloaded) || - EQ (decoding_table, Qunbound) || - NILP (decoding_table) ) - { - return load_char_decoding_entry_maybe (ccs, code_point); - } -#endif - else - return -1; -} +Emchar decode_defined_char (Lisp_Object charset, int code_point); INLINE_HEADER Emchar DECODE_CHAR (Lisp_Object charset, int code_point); INLINE_HEADER Emchar DECODE_CHAR (Lisp_Object charset, int code_point) { - Emchar char_id = DECODE_DEFINED_CHAR (charset, code_point); + Emchar char_id = decode_defined_char (charset, code_point); if (char_id >= 0) return char_id; @@ -830,21 +819,4 @@ CHAR_TO_CHARC (Emchar ch) return cc; } - -/************************************************************************/ -/* Exported functions */ -/************************************************************************/ - -EXFUN (Fget_charset, 1); - -extern Lisp_Object Qucs; - -extern Lisp_Object Vcharset_japanese_jisx0208; -extern Lisp_Object Vcharset_japanese_jisx0208_1990; -extern Lisp_Object Vcharset_japanese_jisx0212; - -Lisp_Object put_char_ccs_code_point (Lisp_Object character, - Lisp_Object ccs, Lisp_Object value); -Lisp_Object remove_char_ccs (Lisp_Object character, Lisp_Object ccs); - #endif /* INCLUDED_char_ucs_h_ */