extern Lisp_Object Qideographic_structure;
Lisp_Object Vnext_defined_char_id;
-EXFUN (Fdefine_char, 1);
EXFUN (Fmap_char_attribute, 3);
*/
(character))
{
- Lisp_Object ret;
-
CHECK_CHAR (character);
- ret = Fchar_feature (character, Q_ucs_unified, Qnil,
- Qnil, Qnil);
- if (CONSP (ret))
- return Fcopy_list (ret);
- else
- return Qnil;
+ return
+ nconc2
+ (Fcopy_list (Fget_char_attribute (character, Q_subsumptive, Qnil)),
+ (nconc2
+ (Fcopy_list (Fget_char_attribute (character, Q_denotational, Qnil)),
+ (nconc2
+ (Fcopy_list (Fget_char_attribute (character, Q_identical, Qnil)),
+ Fcopy_list (Fchar_feature (character, Q_ucs_unified, Qnil,
+ Qnil, Qnil)))))));
}
#endif
{
switch (type)
{
- default: abort();
+ default: ABORT();
case CHAR_TABLE_TYPE_GENERIC: return Qgeneric;
case CHAR_TABLE_TYPE_SYNTAX: return Qsyntax;
case CHAR_TABLE_TYPE_DISPLAY: return Qdisplay;
break;
default:
- abort ();
+ ABORT ();
}
return Qnil;
return (0 << 8) | 255;
#endif
default:
- abort ();
+ ABORT ();
return 0;
}
}
}
#endif
else
- abort ();
+ ABORT ();
}
else
{
#endif /* not MULE */
default:
- abort ();
+ ABORT ();
}
return Qnil; /* not reached */
break;
default:
- abort ();
+ ABORT ();
}
return 0; /* not reached */
break;
default:
- abort ();
+ ABORT ();
}
return 0;
}
default:
- abort ();
+ ABORT ();
}
return 0;
ranjarg = make_char (range->ch);
break;
default:
- abort ();
+ ABORT ();
}
closure->retval = call2 (closure->function, ranjarg, val);
if (INTP (v))
{
- Emchar c = XINT (v);
+ Emchar c = DECODE_CHAR (Vcharset_ucs, XINT (v), 0);
Lisp_Object ret
= Fchar_feature (make_char (c), Q_ucs_unified, Qnil,
Qnil, Qnil);
if (!INTP (value))
signal_simple_error ("Invalid value for =>ucs", value);
- c = XINT (value);
+ c = DECODE_CHAR (Vcharset_ucs, XINT (value), 0);
ret = Fchar_feature (make_char (c), Q_ucs_unified, Qnil,
Qnil, Qnil);
EQ (attribute, Q_component) ||
EQ (attribute, Q_component_of) ||
!NILP (Fstring_match
- (build_string ("^\\(<-\\|->\\)\\(simplified"
- "\\|same\\|vulgar\\|wrong"
- "\\|original\\|ancient"
- "\\)[^*]*$"),
+ (build_string ("^\\(<-\\|->\\)\\("
+ "fullwidth\\|halfwidth"
+ "\\|simplified\\|vulgar\\|wrong"
+ "\\|same\\|original\\|ancient"
+ "\\|Oracle-Bones\\)[^*]*$"),
Fsymbol_name (attribute),
Qnil, Qnil)) )
{
0 /* DB_HASH */, modemask);
if (default_chise_data_source == NULL)
return -1;
+#if 0
+ chise_ds_set_make_string_function (default_chise_data_source,
+ &make_string);
+#endif
}
return 0;
}
if (!status)
{
+#if 0
val = Fread (make_string (chise_value_data (&value),
chise_value_size (&value) ));
+#else
+ val = read_from_c_string (chise_value_data (&value),
+ chise_value_size (&value) );
+#endif
}
else
val = Qunbound;
}
#endif /* not HAVE_LIBCHISE */
-#ifdef HAVE_LIBCHISE
-Lisp_Object save_charset_properties (Lisp_Object charset);
-#endif /* HAVE_LIBCHISE */
-
DEFUN ("save-char-attribute-table", Fsave_char_attribute_table, 1, 1, 0, /*
Save values of ATTRIBUTE into database file.
*/
Lisp_Object (*filter)(Lisp_Object value);
if ( !NILP (Ffind_charset (attribute)) )
- {
-#ifdef HAVE_LIBCHISE
- save_charset_properties (attribute);
-#endif /* HAVE_LIBCHISE */
- filter = NULL;
- }
+ filter = NULL;
else if ( EQ (attribute, Qideographic_structure)
|| EQ (attribute, Q_identical)
|| EQ (attribute, Q_identical_from)
(build_string ("^\\(<-\\|->\\)\\(simplified"
"\\|same\\|vulgar\\|wrong"
"\\|original\\|ancient"
- "\\)[^*]*$"),
+ "\\|Oracle-Bones\\)[^*]*$"),
Fsymbol_name (attribute),
Qnil, Qnil)) )
filter = &Fchar_refs_simplify_char_specs;
Fput_char_table (make_char (i), val, chartab);
}
else
- abort ();
+ ABORT ();
}
else
Fput_char_table (range, val, chartab);