Kenichi Handa [Tue, 27 Jan 2004 02:39:40 +0000 (02:39 +0000)]
Load cp51932 and eucjp-ms.
(japanese-ucs-cp932-map, japanese-ucs-jis-map)
(japanese-ucs-glibc-map): New translation tables.
(eucjp-ms): New coding system.
Kenichi Handa [Tue, 27 Jan 2004 02:21:37 +0000 (02:21 +0000)]
(QCmnemonic, QCdefalut_char)
(QCdecode_translation_table, QCencode_translation_table)
(QCpost_read_conversion, QCpre_write_conversion): New variables.
(get_translation_table): Return a list of translation tables if
necessary.
(decode_coding): Call get_translation_table with ENCODEP 0.
(char_encodable_p): If translation_table is non-nil, always call
translate_char.
(Fdefine_coding_system_internal): Accept list of translation
tables as :encode-translation-table and :decode-translation-table.
(Fcoding_system_put): New function.
(syms_of_coding): Declare new symbols. Defsubr
Scoding_system_put.
Kenichi Handa [Tue, 27 Jan 2004 02:02:55 +0000 (02:02 +0000)]
(TRANS_TABLE): New macro.
(JISX0208.map): Convert 0x2015 to 0x2014.
(cp51932.el): New target.
(eucjp-ms.el): New target.
(install): Include ${TRANS_TABLE}.
Kenichi Handa [Sun, 25 Jan 2004 07:30:47 +0000 (07:30 +0000)]
(get_translation_table): New function.
(translate_chars): Fix the bug of skipping annotation data.
(decode_coding): Utilze get_translation_table.
(encode_coding): Likewise.
(char_encodable_p): Translate char if necessary.
(Funencodable_char_position): Likewise.
(Ffind_coding_systems_region_internal): Setup translation table
for encode in a coding system attribute vector in advance.
(Fcheck_coding_systems_region): Likewise.
(Fdefine_coding_system_internal): Allow a symbol as translation
table. For shift-jis type coding system, allow 4th charset.
Kenichi Handa [Fri, 23 Jan 2004 08:47:18 +0000 (08:47 +0000)]
(move_it_to): Optimize for the case (op & MOVE_TO_Y).
(x_get_glyph_overhangs): Handle a composition glyph.
(x_produce_glyphs): Setup lbearing and rbreaing for a composition
glyph.
Kenichi Handa [Sun, 18 Jan 2004 23:27:07 +0000 (23:27 +0000)]
Include charset.h.
(Vprint_charset_text_property): New variable.
(Qdefault): Extern it.
(PRINT_STRING_NON_CHARSET_FOUND)
(PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
(print_check_string_result): New variable.
(print_check_string_charset_prop): New function.
(print_prune_charset_plist): New variable.
(print_prune_string_charset): New function.
(print_object): Call print_prune_string_charset if
Vprint_charset_text_property is not t.
(print_interval): Print nothing if itnerval->plist is nil.
(syms_of_print): Declare Vprint_charset_text_property as a lisp
variable. Init and staticpro print_prune_charset_plist.
Kenichi Handa [Thu, 15 Jan 2004 23:03:32 +0000 (23:03 +0000)]
(stretches-for-character-list): Delete it.
(list-block-of-chars): Use tabs instead of `display' property for
aligning characters.
(print-fontset-element): Fix the printing of XLFD.
Kenichi Handa [Tue, 13 Jan 2004 01:38:53 +0000 (01:38 +0000)]
(reorder_font_vector): Adjusted for the change of
FONT_DEF format.
(fontset_face): New arg id. Caller changed.
(face_for_char): New args pos and object.
(make_fontset_for_ascii_face): Adjusted for the change of FONT_DEF
format.n
(fs_query_fontset): Check NAME by Fassoc too.
(Fset_fontset_font): Allow non-XLFD font name.
(Ffontset_info): Adjusted for the change of FONT_DEF format.
Kenichi Handa [Wed, 7 Jan 2004 23:04:47 +0000 (23:04 +0000)]
(quail-indian-flatten-list): Delete it.
(quail-define-inscript-package): Pay attention to `nil' values of
char/key-table.
(inscript-tml-keytable): New variable. Use it for Tamil inscript.
Kenichi Handa [Mon, 29 Dec 2003 07:52:49 +0000 (07:52 +0000)]
(Qinsufficient_source, Qinconsistent_eol)
(Qinvalid_source, Qinterrupted, Qinsufficient_memory): New
variables.
(Vlast_code_conversion_error): New variables.
(syms_of_coding): DEFSYM or DEFVAR_LISP them.
(ONE_MORE_BYTE): Record error if any instead of signaling an
error. If non-ASCII multibyte char is found, return the negative
value of the code. All callers changed to check it.
(ONE_MORE_BYTE_NO_CHECK): Likewise.
(record_conversion_result): New function. All codes setting
coding->result are changed to call this function.
(detect_coding_utf_8): Don't use the local variable incomplete.
(decode_coding_utf_8): Likewise.
(emacs_mule_char): Change the second arg to `const'.
(detect_coding_emacs_mule): Don't use the local variable
incomplete.
(detect_coding_sjis): Likewise.
(detect_coding_big5): Likewise.
(decode_coding): Fix of flushing out unprocessed data.
(make_conversion_work_buffer): Fix making of a work buffer.
(decode_coding_object): Return coding->dst_object;