Copyright (C) 1991, 1995 Free Software Foundation, Inc.
Copyright (C) 1995 Sun Microsystems, Inc.
Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008, 2011,
- 2012, 2013 MORIOKA Tomohiko
+ 2012, 2013, 2016 MORIOKA Tomohiko
This file is part of XEmacs.
CODING_SYSTEM_ISO2022_INITIAL_CHARSET (codesys, 1) = value;
else if (EQ (key, Qcharset_g2))
CODING_SYSTEM_ISO2022_INITIAL_CHARSET (codesys, 2) = value;
+ else if (EQ (key, Qcharset_g3))
+ CODING_SYSTEM_ISO2022_INITIAL_CHARSET (codesys, 3) = value;
else
signal_simple_error ("Unrecognized property", key);
}
extern CONCORD_DS concord_current_env;
+#if 0
static int
concord_setup_env_maybe ()
{
}
return 0;
}
+#endif
void COMPOSE_ADD_CHAR (struct decoding_stream *str, Emchar character,
unsigned_char_dynarr* dst);
{
COS_object ret;
- concord_setup_env_maybe ();
- ret = concord_object_get_feature_value (cos_make_char (character),
+ /* concord_setup_env_maybe (); */
+ open_chise_data_source_maybe ();
+ ret = concord_object_get_attribute (cos_make_char (character),
COS_COMPOSITION);
if (!cos_cons_p (ret))
decode_add_er_char (str, character, dst);
else
{
- //cos_retain_object (ret);
str->combined_chars[0] = character;
str->combined_char_count = 1;
str->combining_table = ret;
= cos_cdr (cos_assoc (cos_make_char (character),
str->combining_table));
- //cos_release_object (str->combining_table);
if (cos_char_p (ret))
{
Emchar char2 = cos_char_id (ret);
COS_object ret2;
- concord_setup_env_maybe ();
- ret2 = concord_object_get_feature_value (ret, COS_COMPOSITION);
+ /* concord_setup_env_maybe (); */
+ open_chise_data_source_maybe ();
+ ret2 = concord_object_get_attribute (ret, COS_COMPOSITION);
if (!cos_cons_p (ret2))
{
}
else
{
- //cos_retain_object (ret2);
str->combined_chars[0] = char2;
str->combined_char_count = 1;
str->combining_table = ret2;
}
else
{
- concord_setup_env_maybe ();
- ret = concord_object_get_feature_value (cos_make_char (character),
+ /* concord_setup_env_maybe (); */
+ open_chise_data_source_maybe ();
+ ret = concord_object_get_attribute (cos_make_char (character),
COS_COMPOSITION);
COMPOSE_FLUSH_CHARS (str, dst);
decode_add_er_char (str, character, dst);
else
{
- //cos_retain_object (ret);
str->combined_chars[0] = character;
str->combined_char_count = 1;
str->combining_table = ret;
map, Qnil,
Qnil, Qnil)) )
code_point = XINT (ret);
+ else if ( !NILP (map =
+ CODING_SYSTEM_ISO2022_INITIAL_CHARSET
+ (str->codesys, 3))
+ && INTP (ret = Fchar_feature (make_char (ch),
+ map, Qnil,
+ Qnil, Qnil)) )
+ code_point = XINT (ret);
else if (CODING_SYSTEM_USE_ENTITY_REFERENCE (str->codesys))
{
char buf[18];