+2004-07-20 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * Makefile.in.in (COPYDIR): Delete ${srcdir}/lib-src/chise-db.
+ (COPYDESTS): Delete ${archlibdir}/chise-db.
+ - Use ${etcdir}/chise-db instead of ${archlibdir}/char-db as the
+ target to create symbolic link for chise-db-directory.
+
2003-10-12 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
* Makefile.in.in: Use chise-db/ instead of char-db/.
## avoid nuking an existing dir file, so we don't do that here;
## instead, we have written out explicit code in the `install' targets.
#ifdef HAVE_CHISE
-COPYDIR = ${srcdir}/etc ${srcdir}/lisp ${srcdir}/lib-src/chise-db
-COPYDESTS = ${etcdir} ${lispdir} ${archlibdir}/chise-db
+COPYDIR = ${srcdir}/etc ${srcdir}/lisp
+COPYDESTS = ${etcdir} ${lispdir}
#else
COPYDIR = ${srcdir}/etc ${srcdir}/lisp
COPYDESTS = ${etcdir} ${lispdir}
chmod 0644 ${mandir}/$${page}${manext} ; \
done
#ifdef HAVE_LIBCHISE
- ${LN_S} ${archlibdir}/chise-db `${blddir}/src/${PROGNAME} -batch -vanilla -eval "\
+ ${LN_S} ${etcdir}/chise-db `${blddir}/src/${PROGNAME} -batch -vanilla -eval "\
(let ((path (expand-file-name \"db\" chise-db-directory)))\
(if (file-exists-p chise-db-directory)\
(if (file-exists-p path)\
+2004-07-23 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule/mule-conf.el (=big5-cdp): Swap DOC-string and long-name.
+ (=gt): Likewise.
+ (=gt-k): Likewise.
+ (=gt-pj-*): Likewise.
+ (=gt-pj-k1): Likewise.
+ (=gt-pj-k2): Likewise.
+ (=daikanwa): Likewise.
+ (=daikanwa-rev1): Likewise.
+ (=daikanwa-rev2): Likewise.
+ (=big5-pua): Likewise.
+ (=big5-eten): Likewise.
+ (chinese-big5-eten-a): Likewise.
+ (chinese-big5-eten-b): Likewise.
+ (=hanziku-*): Likewise.
+ (=cbeta): Likewise.
+ (=jef-china3): Likewise.
+ (=ruimoku-v6): Likewise.
+ (=ucs@iso): Likewise.
+ (=ucs@unicode): Likewise.
+ (=ucs@gb): Likewise.
+ (=ucs@cns): Likewise.
+ (=ucs@jis): Likewise.
+ (=ucs@jis-1990): Likewise.
+ (=ucs@jis-2000): Likewise.
+ (=ucs@jp): Likewise.
+ (=ucs@ks): Likewise.
+ (=ucs@big5): Likewise.
+ (=ucs-radicals): Likewise.
+ (=ucs-radicals@unicode): Likewise.
+ (=ucs-bmp-cjk): Likewise.
+ (=ucs-bmp-cjk@unicode): Likewise.
+ (=ucs-sip-ext-b): Likewise.
+ (=ucs-sip-ext-b@iso): Likewise.
+
2004-04-08 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
* mule/mule-coding.el (coded-charset-entity-reference-alist): Add
(define-charset-alias 'japanese-jisx0208-1990 '=jis-x0208-1990)
(make-charset '=big5-cdp
- "Big5-CDP"
- `(long-name "Big5 with CDP extension"
+ "Big5 with CDP extension"
+ `(long-name "Big5-CDP"
chars 256
dimension 2
columns 2
(define-charset-alias 'chinese-big5-cdp '=big5-cdp)
(make-charset '=gt
- "GT"
- `(long-name "GT 2000"
+ "GT 2000"
+ `(long-name "GT"
chars 256
dimension 3
columns 2
code-offset ,(lsh #x6100 16)))
(define-charset-alias 'ideograph-gt '=gt)
(make-charset '=gt-k
- "GT parts"
- `(long-name "Ideographic parts of GT"
+ "Ideographic components of GT"
+ `(long-name "GT components"
chars 256
dimension 2
columns 2
(while (<= i 11)
(make-charset
(intern (format "=gt-pj-%d" i))
- (format "GT PJ %d" i)
- `(long-name ,(format "GT 2000 (pseudo JIS encoding) part %d" i)
+ (format "GT 2000 (pseudo JIS encoding) part %d" i)
+ `(long-name ,(format "GT PJ %d" i)
chars 94
dimension 2
columns 2
(setq i (1+ i))))
(make-charset
'=gt-pj-k1
- "GT K1"
- `(long-name "Ideographic parts of GT (pseudo JIS encoding) part 1"
+ "Ideographic parts of GT (pseudo JIS encoding) part 1"
+ `(long-name "GT K1"
chars 94
dimension 2
columns 2
(define-charset-alias 'ideograph-gt-pj-k1 '=gt-pj-k1)
(make-charset
'=gt-pj-k2
- "GT K2"
- `(long-name "Ideographic parts of GT (pseudo JIS encoding) part 2"
+ "Ideographic parts of GT (pseudo JIS encoding) part 2"
+ `(long-name "GT K2"
chars 94
dimension 2
columns 2
(define-charset-alias 'ideograph-gt-pj-k2 '=gt-pj-k2)
(make-charset '=daikanwa
- "Daikanwa"
- `(long-name "Daikanwa dictionary (revised version 2)"
+ "Daikanwa dictionary (revised version 2)"
+ `(long-name "Daikanwa"
chars 256
dimension 2
columns 2
(define-charset-alias 'ideograph-daikanwa '=daikanwa)
(make-charset '=daikanwa-rev1
- "Daikanwa Rev."
- `(long-name "Daikanwa dictionary (revised version)"
+ "Daikanwa dictionary (revised version)"
+ `(long-name "Daikanwa Rev."
chars 256
dimension 2
columns 2
(define-charset-alias 'ideograph-daikanwa-2 '=daikanwa-rev1)
(make-charset '=daikanwa-rev2
- "Daikanwa"
- `(long-name "Daikanwa dictionary (revised version 2)"
+ "Daikanwa dictionary (revised version 2)"
+ `(long-name "Daikanwa"
chars 256
dimension 2
columns 2
code-offset #xE00000))
(make-charset '=big5-pua
- "Big5-PUA"
- `(long-name "Big5 with private used area"
+ "Big5 with private used area"
+ `(long-name "Big5-PUA"
chars 256
dimension 2
columns 2
registry "Big5\\.ETEN"))
(define-charset-alias 'chinese-big5-pua '=big5-pua)
(make-charset '=big5-eten
- "Big5-ETEN"
- `(long-name "Big5 ETEN"
+ "Big5 ETEN"
+ `(long-name "Big5-ETEN"
chars 256
dimension 2
columns 2
registry "Big5\\.ETEN"))
(define-charset-alias 'chinese-big5-eten '=big5-eten)
(make-charset 'chinese-big5-eten-a
- "Big5-ETEN-a"
- `(long-name "Big5 ETEN (#xF9D6 .. #xF9FE)"
+ "Big5 ETEN (#xF9D6 .. #xF9FE)"
+ `(long-name "Big5-ETEN-a"
chars 256
dimension 2
columns 2
max-code #xF9FE
registry "Big5\\.ETEN"))
(make-charset 'chinese-big5-eten-b
- "Big5-ETEN-b"
- `(long-name "Big5 ETEN (#xC6A1 .. #xC8FE)"
+ "Big5 ETEN (#xC6A1 .. #xC8FE)"
+ `(long-name "Big5-ETEN-b"
chars 256
dimension 2
columns 2
(while (<= i 12)
(make-charset
(intern (format "=hanziku-%d" i))
- (format "HANZIKU-%d" i)
- `(long-name ,(format "HANZIKU (pseudo BIG5 encoding) part %d" i)
+ (format "HANZIKU (pseudo BIG5 encoding) part %d" i)
+ `(long-name ,(format "HANZIKU-%d" i)
chars 256
dimension 2
columns 2
hzk-max (+ hzk-min 65535))
(setq i (1+ i))))
- (make-charset '=cbeta "CBETA PUA"
- '(long-name "CBETA private characters"
+ (make-charset '=cbeta "CBETA private characters"
+ '(long-name "CBETA PUA"
chars 256
dimension 2
registry "cbeta-0"
(define-charset-alias 'ideograph-cbeta '=cbeta)
(make-charset '=jef-china3
- "JEF + CHINA3"
- `(long-name "JEF + CHINA3 private characters"
+ "JEF + CHINA3 private characters"
+ `(long-name "JEF + CHINA3"
chars 256
dimension 2
columns 2
(define-charset-alias 'china3-jef '=jef-china3)
(make-charset '=ruimoku-v6
- "RUI6"
- `(long-name "private characters used in RUIMOKU"
+ "private characters used in RUIMOKU Version.6"
+ `(long-name "RUI6"
chars 256
dimension 2
columns 2
code-offset ,(- #xE90000 #xE000)))
(make-charset '=ucs@iso
- "UCS for ISO"
- `(long-name "ISO/IEC 10646 for its representative glyphs"
+ "ISO/IEC 10646 for its representative glyphs"
+ `(long-name "UCS for ISO"
chars 256
dimension 3
columns 2
direction l2r
mother =ucs))
(make-charset '=ucs@unicode
- "UCS for Unicode"
- `(long-name "Unicode for its representative glyphs"
+ "Unicode for its representative glyphs"
+ `(long-name "UCS for Unicode"
chars 256
dimension 3
columns 2
direction l2r
mother =ucs@iso))
(make-charset '=ucs@gb
- "UCS for GB"
- `(long-name "ISO/IEC 10646 for GB"
+ "ISO/IEC 10646 for GB"
+ `(long-name "UCS for GB"
chars 256
dimension 3
columns 2
mother =ucs@unicode))
(define-charset-alias 'ucs-gb '=ucs@gb)
(make-charset '=ucs@cns
- "UCS for CNS"
- `(long-name "ISO/IEC 10646 for CNS 11643"
+ "ISO/IEC 10646 for CNS 11643"
+ `(long-name "UCS for CNS"
chars 256
dimension 3
columns 2
mother =ucs@unicode))
(define-charset-alias 'ucs-cns '=ucs@cns)
(make-charset '=ucs@jis
- "UCS for JIS"
- `(long-name "ISO/IEC 10646 for JIS X0208/0212/0213"
+ "ISO/IEC 10646 for JIS X0208/0212/0213"
+ `(long-name "UCS for JIS"
chars 256
dimension 3
columns 2
mother =ucs@unicode))
(define-charset-alias 'ucs-jis '=ucs@jis)
(make-charset '=ucs@jis-1990
- "UCS for JIS:1990"
- `(long-name "ISO/IEC 10646 for JIS X 0208/0212:1990"
+ "ISO/IEC 10646 for JIS X 0208/0212:1990"
+ `(long-name "UCS for JIS:1990"
chars 256
dimension 3
columns 2
mother ucs-jis))
(define-charset-alias '=ucs-jis-1990 '=ucs@jis-1990)
(make-charset '=ucs@jis-2000
- "UCS for JIS:2000"
- `(long-name "ISO/IEC 10646 for JIS X 0213:2000"
+ "ISO/IEC 10646 for JIS X 0213:2000"
+ `(long-name "UCS for JIS:2000"
chars 256
dimension 3
columns 2
mother ucs-jis))
(define-charset-alias '=ucs-jis-2000 '=ucs@jis-2000)
(make-charset '=ucs@jp
- "UCS for Japan"
- `(long-name "UCS for common glyphs used in Japan"
+ "UCS for common glyphs used in Japan"
+ `(long-name "UCS for Japan"
chars 256
dimension 3
columns 2
direction l2r
mother =ucs@jis-2000))
(make-charset '=ucs@ks
- "UCS for KS"
- `(long-name "ISO/IEC 10646 for Korean Standards"
+ "ISO/IEC 10646 for Korean Standards"
+ `(long-name "UCS for KS"
chars 256
dimension 3
columns 2
mother =ucs@unicode))
(define-charset-alias 'ucs-ks '=ucs@ks)
(make-charset '=ucs@big5
- "UCS for Big5"
- `(long-name "ISO/IEC 10646 for Big5"
+ "ISO/IEC 10646 for Big5"
+ `(long-name "UCS for Big5"
chars 256
dimension 3
columns 2
(make-charset
'=ucs-radicals
- "UCS-Radicals"
- `(long-name "CJK Radicals of UCS"
+ "CJK Radicals of UCS"
+ `(long-name "UCS-Radicals"
chars 256
dimension 2
columns 2
min-code #x2E00 max-code #x2FFF))
(make-charset
'=ucs-radicals@unicode
- "UCS-Radicals"
- `(long-name "CJK Radicals of UCS"
+ "CJK Radicals of UCS"
+ `(long-name "UCS-Radicals"
chars 256
dimension 2
columns 2
min-code #x2E00 max-code #x2FFF))
(make-charset
'=ucs-bmp-cjk
- "UCS-BMP-CJK"
- `(long-name "CJK Characters in BMP of UCS"
+ "CJK Characters in BMP of UCS"
+ `(long-name "UCS-BMP-CJK"
chars 256
dimension 2
columns 2
min-code #x2E00 max-code #xA4CF))
(make-charset
'=ucs-bmp-cjk@unicode
- "Unicode-BMP-CJK"
- `(long-name "CJK Characters in BMP of Unicode"
+ "CJK Characters in BMP of Unicode"
+ `(long-name "Unicode-BMP-CJK"
chars 256
dimension 2
columns 2
min-code #x2E00 max-code #xA4CF))
(make-charset
'=ucs-sip-ext-b
- "UCS CJK Ext-B"
- `(long-name "CJK Ideographs Extension B"
+ "CJK Ideographs Extension B"
+ `(long-name "UCS CJK Ext-B"
chars 256
dimension 2
columns 2
code-offset #x20000))
(make-charset
'=ucs-sip-ext-b@iso
- "UCS CJK Ext-B"
- `(long-name "CJK Ideographs Extension B (ISO/IEC 10646-2)"
+ "CJK Ideographs Extension B (ISO/IEC 10646-2)"
+ `(long-name "UCS CJK Ext-B"
chars 256
dimension 2
columns 2
+2004-07-21 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * update-cdb.el: Use `save-charset-properties' for all
+ coded-charsets when building CHISE database.
+
+2004-07-20 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * update-cdb.el (system-char-database-directory): Use
+ `data-directory' instead of `exec-directory'.
+
2004-07-16 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
* Ideograph-R121-Jar.el: Add mappings for Big5 code points.
((featurep 'chise)
(defvar system-char-database-directory
(expand-file-name "chise-db"
- (or exec-directory
- "../lib-src/")))
+ (or data-directory
+ "../etc/")))
(defun file-name-char-attribute-name (filename)
(let ((i 0)
(save-char-attribute-table attribute))
(dolist (ccs (charset-list))
+ (save-charset-properties ccs)
(save-charset-mapping-table ccs))
(with-temp-buffer
+2004-07-23 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Fsave_charset_properties): Use `true-name' only
+ for aliases; write `description'; write
+ `mother-code-{min|max|offset|conversion}' if CHARSET_MAX_CODE is
+ not 0.
+
+2004-07-21 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.c (Fsave_char_attribute_table): Don't use
+ `save_charset_properties'.
+
+ * mule-charset.c (Fsave_charset_properties): Renamed from
+ `save_charset_properties' and changed to Lisp function again;
+ write property `type' as `CCS'; write properties `final-byte' and
+ `mother' if they exists.
+ (syms_of_mule_charset): Revive builtin function
+ `save-charset-properties' when HAVE_LIBCHISE is defined.
+
+2004-07-21 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.c (open_chise_data_source_maybe): Use Vdata_directory
+ instead of Vexec_directory.
+ (char_attribute_system_db_file): Likewise.
+
+2004-07-17 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * chartab.c (Fsave_char_attribute_table): Use
+ `save_charset_properties' for CCS features when HAVE_LIBCHISE is
+ defined.
+
+ * mule-charset.c (save_charset_properties): Renamed from
+ `Fsave_charset_properties'; changed to non-Lisp function.
+ (syms_of_mule_charset): Abolish builtin function
+ `save-charset-properties'.
+
+2004-07-15 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
+
+ * mule-charset.c (Fsave_charset_properties): New function when
+ HAVE_LIBCHISE is defined.
+ (syms_of_mule_charset): Add new builtin function
+ `save-charset-properties' when HAVE_LIBCHISE is defined.
+
2004-06-26 MORIOKA Tomohiko <tomo@kanji.zinbun.kyoto-u.ac.jp>
* chartab.c (Fput_char_attribute): Convert char-specs in value of
{
if (default_chise_data_source == NULL)
{
- Lisp_Object db_dir = Vexec_directory;
+ Lisp_Object db_dir = Vdata_directory;
int modemask = 0755; /* rwxr-xr-x */
if (NILP (db_dir))
- db_dir = build_string ("../lib-src");
+ db_dir = build_string ("../etc");
db_dir = Fexpand_file_name (build_string ("chise-db"), db_dir);
default_chise_data_source
char_attribute_system_db_file (Lisp_Object key_type, Lisp_Object attribute,
int writing_mode)
{
- Lisp_Object db_dir = Vexec_directory;
+ Lisp_Object db_dir = Vdata_directory;
if (NILP (db_dir))
- db_dir = build_string ("../lib-src");
+ db_dir = build_string ("../etc");
db_dir = Fexpand_file_name (build_string ("chise-db"), db_dir);
if (writing_mode && NILP (Ffile_exists_p (db_dir)))
{
Lisp_Object (*filter)(Lisp_Object value);
- if ( EQ (attribute, Qideographic_structure)
+ if ( !NILP (Ffind_charset (attribute)) )
+ filter = NULL;
+ else if ( EQ (attribute, Qideographic_structure)
|| EQ (attribute, Q_identical)
|| EQ (attribute, Q_identical_from)
|| !NILP (Fstring_match
return -1;
#endif /* not HAVE_LIBCHISE */
}
+
+#ifdef HAVE_LIBCHISE
+DEFUN ("save-charset-properties", Fsave_charset_properties, 1, 1, 0, /*
+Save properties of CHARSET.
+*/
+ (charset))
+{
+ struct Lisp_Charset *cs;
+ CHISE_Property property;
+ Lisp_Object ccs;
+ unsigned char* feature_name;
+
+ ccs = Fget_charset (charset);
+ cs = XCHARSET (ccs);
+
+ if ( open_chise_data_source_maybe () )
+ return -1;
+
+ if ( SYMBOLP (charset) && !EQ (charset, XCHARSET_NAME (ccs)) )
+ {
+ property = chise_ds_get_property (default_chise_data_source,
+ "true-name");
+ feature_name = XSTRING_DATA (Fsymbol_name (charset));
+ chise_feature_set_property_value
+ (chise_ds_get_feature (default_chise_data_source, feature_name),
+ property, XSTRING_DATA (Fprin1_to_string (CHARSET_NAME (cs),
+ Qnil)));
+ chise_property_sync (property);
+ }
+ charset = XCHARSET_NAME (ccs);
+ feature_name = XSTRING_DATA (Fsymbol_name (charset));
+
+ property = chise_ds_get_property (default_chise_data_source,
+ "description");
+ chise_feature_set_property_value
+ (chise_ds_get_feature (default_chise_data_source, feature_name),
+ property, XSTRING_DATA (Fprin1_to_string
+ (CHARSET_DOC_STRING (cs), Qnil)));
+ chise_property_sync (property);
+
+ property = chise_ds_get_property (default_chise_data_source, "type");
+ chise_feature_set_property_value
+ (chise_ds_get_feature (default_chise_data_source, feature_name),
+ property, "CCS");
+ chise_property_sync (property);
+
+ property = chise_ds_get_property (default_chise_data_source, "chars");
+ chise_feature_set_property_value
+ (chise_ds_get_feature (default_chise_data_source, feature_name),
+ property, XSTRING_DATA (Fprin1_to_string (make_int
+ (CHARSET_CHARS (cs)),
+ Qnil)));
+ chise_property_sync (property);
+
+ property = chise_ds_get_property (default_chise_data_source, "dimension");
+ chise_feature_set_property_value
+ (chise_ds_get_feature (default_chise_data_source, feature_name),
+ property, XSTRING_DATA (Fprin1_to_string (make_int
+ (CHARSET_DIMENSION (cs)),
+ Qnil)));
+ chise_property_sync (property);
+
+ if ( CHARSET_FINAL (cs) != 0 )
+ {
+ property = chise_ds_get_property (default_chise_data_source,
+ "final-byte");
+ chise_feature_set_property_value
+ (chise_ds_get_feature (default_chise_data_source, feature_name),
+ property, XSTRING_DATA (Fprin1_to_string (make_int
+ (CHARSET_FINAL (cs)),
+ Qnil)));
+ chise_property_sync (property);
+ }
+
+ if ( !NILP (CHARSET_MOTHER (cs)) )
+ {
+ Lisp_Object mother = CHARSET_MOTHER (cs);
+
+ if ( CHARSETP (mother) )
+ mother = XCHARSET_NAME (mother);
+
+ property = chise_ds_get_property (default_chise_data_source,
+ "mother");
+ chise_feature_set_property_value
+ (chise_ds_get_feature (default_chise_data_source, feature_name),
+ property, XSTRING_DATA (Fprin1_to_string (mother, Qnil)));
+ chise_property_sync (property);
+ }
+
+ if ( CHARSET_MAX_CODE (cs) != 0 )
+ {
+ char str[16];
+
+ property = chise_ds_get_property (default_chise_data_source,
+ "mother-code-min");
+ if ( CHARSET_MIN_CODE (cs) == 0 )
+ chise_feature_set_property_value
+ (chise_ds_get_feature (default_chise_data_source, feature_name),
+ property, "0");
+ else
+ {
+ sprintf (str, "#x%X", CHARSET_MIN_CODE (cs));
+ chise_feature_set_property_value
+ (chise_ds_get_feature (default_chise_data_source, feature_name),
+ property, str);
+ }
+ chise_property_sync (property);
+
+ property = chise_ds_get_property (default_chise_data_source,
+ "mother-code-max");
+ sprintf (str, "#x%X", CHARSET_MAX_CODE (cs));
+ chise_feature_set_property_value
+ (chise_ds_get_feature (default_chise_data_source, feature_name),
+ property, str);
+ chise_property_sync (property);
+
+ property = chise_ds_get_property (default_chise_data_source,
+ "mother-code-offset");
+ if ( CHARSET_CODE_OFFSET (cs) == 0 )
+ chise_feature_set_property_value
+ (chise_ds_get_feature (default_chise_data_source, feature_name),
+ property, "0");
+ else
+ {
+ sprintf (str, "#x%X", CHARSET_CODE_OFFSET (cs));
+ chise_feature_set_property_value
+ (chise_ds_get_feature (default_chise_data_source, feature_name),
+ property, str);
+ }
+ chise_property_sync (property);
+
+ property = chise_ds_get_property (default_chise_data_source,
+ "mother-code-conversion");
+ if ( CHARSET_CONVERSION (cs) == CONVERSION_IDENTICAL )
+ chise_feature_set_property_value
+ (chise_ds_get_feature (default_chise_data_source, feature_name),
+ property, "identical");
+ else
+ {
+ Lisp_Object sym = Qnil;
+
+ if ( CHARSET_CONVERSION (cs) == CONVERSION_94x60 )
+ sym = Q94x60;
+ else if ( CHARSET_CONVERSION (cs) == CONVERSION_94x94x60 )
+ sym = Q94x94x60;
+ else if ( CHARSET_CONVERSION (cs) == CONVERSION_BIG5_1 )
+ sym = Qbig5_1;
+ else if ( CHARSET_CONVERSION (cs) == CONVERSION_BIG5_2 )
+ sym = Qbig5_2;
+ if ( !NILP (sym) )
+ chise_feature_set_property_value
+ (chise_ds_get_feature (default_chise_data_source, feature_name),
+ property, XSTRING_DATA (Fprin1_to_string (sym, Qnil)));
+ else
+ chise_feature_set_property_value
+ (chise_ds_get_feature (default_chise_data_source, feature_name),
+ property, "unknown");
+ }
+ chise_property_sync (property);
+ }
+ return Qnil;
+}
+#endif /* HAVE_LIBCHISE */
+
#endif /* HAVE_CHISE */
#endif /* UTF2000 */
#ifdef HAVE_CHISE
DEFSUBR (Fsave_charset_mapping_table);
DEFSUBR (Freset_charset_mapping_table);
+#ifdef HAVE_LIBCHISE
+ DEFSUBR (Fsave_charset_properties);
+#endif /* HAVE_LIBCHISE */
#endif /* HAVE_CHISE */
DEFSUBR (Fdecode_char);
DEFSUBR (Fdecode_builtin_char);