X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=src%2Fmule-charset.c;h=cc808dd69d79843f3324953c8606cad8413ce862;hb=39e88d35656a41b9f4d85851041914b953064171;hp=c02343b9e0600a8c3abfefba0e2d7efe56a9a65a;hpb=8bdbf231dd0184d1d803b46dd6e842b10a95c860;p=chise%2Fxemacs-chise.git- diff --git a/src/mule-charset.c b/src/mule-charset.c index c02343b..cc808dd 100644 --- a/src/mule-charset.c +++ b/src/mule-charset.c @@ -58,11 +58,6 @@ Lisp_Object Vcharset_japanese_jisx0212; Lisp_Object Vcharset_chinese_cns11643_1; Lisp_Object Vcharset_chinese_cns11643_2; #ifdef UTF2000 -Lisp_Object Vcharset_chinese_cns11643_3; -Lisp_Object Vcharset_chinese_cns11643_4; -Lisp_Object Vcharset_chinese_cns11643_5; -Lisp_Object Vcharset_chinese_cns11643_6; -Lisp_Object Vcharset_chinese_cns11643_7; Lisp_Object Vcharset_ucs_bmp; Lisp_Object Vcharset_latin_viscii_lower; Lisp_Object Vcharset_latin_viscii_upper; @@ -1034,11 +1029,6 @@ Lisp_Object Qascii, Qchinese_cns11643_1, Qchinese_cns11643_2, #ifdef UTF2000 - Qchinese_cns11643_3, - Qchinese_cns11643_4, - Qchinese_cns11643_5, - Qchinese_cns11643_6, - Qchinese_cns11643_7, Qucs_bmp, Qlatin_viscii_lower, Qlatin_viscii_upper, @@ -1664,14 +1654,14 @@ charset_get_byte1 (Lisp_Object charset, Emchar ch) if (((d = ch - (MIN_CHAR_94 + (XCHARSET_FINAL (charset) - '0') * 94)) >= 0) && (d < 94)) - return d + 32; + return d + 33; } else if (XCHARSET_CHARS (charset) == 96) { if (((d = ch - (MIN_CHAR_96 + (XCHARSET_FINAL (charset) - '0') * 96)) >= 0) && (d < 96)) - return d + 33; + return d + 32; } else return 0; @@ -2036,8 +2026,7 @@ character set. Recognized properties are: charset = make_charset (id, name, type, columns, graphic, final, direction, short_name, long_name, doc_string, registry, - NULL, - 0, 0, 0); + NULL, 0, 0, 0); if (!NILP (ccl_program)) XCHARSET_CCL_PROGRAM (charset) = ccl_program; return charset; @@ -2085,8 +2074,10 @@ NEW-NAME is the name of the new charset. Return the new charset. new_charset = make_charset (id, new_name, type, columns, graphic, final, direction, short_name, long_name, doc_string, registry, - NULL, - 0, 0, 0); + CHARSET_DECODING_TABLE(cs), + CHARSET_UCS_MIN(cs), + CHARSET_UCS_MAX(cs), + CHARSET_CODE_OFFSET(cs)); CHARSET_REVERSE_DIRECTION_CHARSET (cs) = new_charset; XCHARSET_REVERSE_DIRECTION_CHARSET (new_charset) = charset; @@ -2535,11 +2526,6 @@ syms_of_mule_charset (void) defsymbol (&Qchinese_cns11643_1, "chinese-cns11643-1"); defsymbol (&Qchinese_cns11643_2, "chinese-cns11643-2"); #ifdef UTF2000 - defsymbol (&Qchinese_cns11643_3, "chinese-cns11643-3"); - defsymbol (&Qchinese_cns11643_4, "chinese-cns11643-4"); - defsymbol (&Qchinese_cns11643_5, "chinese-cns11643-5"); - defsymbol (&Qchinese_cns11643_6, "chinese-cns11643-6"); - defsymbol (&Qchinese_cns11643_7, "chinese-cns11643-7"); defsymbol (&Qucs_bmp, "ucs-bmp"); defsymbol (&Qlatin_viscii_lower, "vietnamese-viscii-lower"); defsymbol (&Qlatin_viscii_upper, "vietnamese-viscii-upper"); @@ -2591,7 +2577,7 @@ Leading-code of private TYPE9N charset of column-width 1. #endif #ifdef UTF2000 - Vutf_2000_version = build_string("0.7 (Hirano)"); + Vutf_2000_version = build_string("0.8 (Kami)"); DEFVAR_LISP ("utf-2000-version", &Vutf_2000_version /* Version number of UTF-2000. */ ); @@ -2624,6 +2610,22 @@ complex_vars_of_mule_charset (void) build_string ("BMP"), build_string (""), NULL, 0, 0xFFFF, 0); +#else +# define latin_iso8859_2_to_ucs NULL +# define latin_iso8859_3_to_ucs NULL +# define latin_iso8859_4_to_ucs NULL +# define latin_iso8859_9_to_ucs NULL +# define latin_jisx0201_to_ucs NULL +# define MIN_CHAR_THAI 0 +# define MAX_CHAR_THAI 0 +# define MIN_CHAR_GREEK 0 +# define MAX_CHAR_GREEK 0 +# define MIN_CHAR_HEBREW 0 +# define MAX_CHAR_HEBREW 0 +# define MIN_CHAR_HALFWIDTH_KATAKANA 0 +# define MAX_CHAR_HALFWIDTH_KATAKANA 0 +# define MIN_CHAR_CYRILLIC 0 +# define MAX_CHAR_CYRILLIC 0 #endif Vcharset_ascii = make_charset (LEADING_BYTE_ASCII, Qascii, @@ -2822,56 +2824,6 @@ complex_vars_of_mule_charset (void) build_string (CHINESE_CNS_PLANE_RE("2")), NULL, 0, 0, 33); #ifdef UTF2000 - Vcharset_chinese_cns11643_3 = - make_charset (LEADING_BYTE_CHINESE_CNS11643_3, Qchinese_cns11643_3, - CHARSET_TYPE_94X94, 2, 0, 'I', - CHARSET_LEFT_TO_RIGHT, - build_string ("CNS11643-3"), - build_string ("CNS11643-3 (Chinese traditional)"), - build_string - ("CNS 11643 Plane 3 Chinese traditional"), - build_string (CHINESE_CNS_PLANE_RE("3")), - NULL, 0, 0, 33); - Vcharset_chinese_cns11643_4 = - make_charset (LEADING_BYTE_CHINESE_CNS11643_4, Qchinese_cns11643_4, - CHARSET_TYPE_94X94, 2, 0, 'J', - CHARSET_LEFT_TO_RIGHT, - build_string ("CNS11643-4"), - build_string ("CNS11643-4 (Chinese traditional)"), - build_string - ("CNS 11643 Plane 4 Chinese traditional"), - build_string (CHINESE_CNS_PLANE_RE("4")), - NULL, 0, 0, 33); - Vcharset_chinese_cns11643_5 = - make_charset (LEADING_BYTE_CHINESE_CNS11643_5, Qchinese_cns11643_5, - CHARSET_TYPE_94X94, 2, 0, 'K', - CHARSET_LEFT_TO_RIGHT, - build_string ("CNS11643-5"), - build_string ("CNS11643-5 (Chinese traditional)"), - build_string - ("CNS 11643 Plane 5 Chinese traditional"), - build_string (CHINESE_CNS_PLANE_RE("5")), - NULL, 0, 0, 33); - Vcharset_chinese_cns11643_6 = - make_charset (LEADING_BYTE_CHINESE_CNS11643_6, Qchinese_cns11643_6, - CHARSET_TYPE_94X94, 2, 0, 'L', - CHARSET_LEFT_TO_RIGHT, - build_string ("CNS11643-6"), - build_string ("CNS11643-6 (Chinese traditional)"), - build_string - ("CNS 11643 Plane 6 Chinese traditional"), - build_string (CHINESE_CNS_PLANE_RE("6")), - NULL, 0, 0, 33); - Vcharset_chinese_cns11643_7 = - make_charset (LEADING_BYTE_CHINESE_CNS11643_7, Qchinese_cns11643_7, - CHARSET_TYPE_94X94, 2, 0, 'M', - CHARSET_LEFT_TO_RIGHT, - build_string ("CNS11643-7"), - build_string ("CNS11643-7 (Chinese traditional)"), - build_string - ("CNS 11643 Plane 7 Chinese traditional"), - build_string (CHINESE_CNS_PLANE_RE("7")), - NULL, 0, 0, 33); Vcharset_latin_viscii_lower = make_charset (LEADING_BYTE_LATIN_VISCII_LOWER, Qlatin_viscii_lower, CHARSET_TYPE_96, 1, 1, '1',