(syms_of_coding): Defsym it. Set all elements of
Vcoding_category_table and their symbol values.
(Fset_coding_system_priority): Doc fix. Update symbol qvalues of
coding-category-XXX, and coding-category-list.
(Fdefine_coding_system_internal): Add category in the plist.
bytes.
(raw_text_coding_system): Check NILP (coding_system).
(coding_inherit_eol_type): Check NILP (coding_system) and
NILP (parent).
(consume_chars): Fix for the case of raw-text.
post-read-conversion or pre-write-conversion, set
CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
respectively.
(decode_coding_gap): Run post-read-conversion if any.
(syms_of_coding): Don't initialize them.
(CATEGORY_MASK_UTF_16_AUTO): New macro.
(detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
detect_info->found.
(decode_coding_utf_16): Don't detect BOM here.
(encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
is NOT utf_16_without_bom.
(setup_coding_system): For a coding system of type utf-16, check
if the attribute :endian is Qbig or not (not nil or not), and set
CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
(detect_coding): If coding type is utf-16 and BOM detection is
required, detect it.
(Fdefine_coding_system_internal): For a coding system of type
utf-16, check if the attribute :endian is Qbig or not (not nil or
not).
with the last arg charset_list acquired from coding.
(Fdefine_coding_system_internal): For ccl-based coding system, fix
the attribute coding_attr_ccl_valids.
(detect_coding_utf_8, detect_coding_utf_16)
(detect_coding_emacs_mule, detect_coding_iso_2022)
(detect_coding_sjis, detect_coding_big5)
(detect_coding_ccl, detect_coding_charset): Change argument MASK
to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
sequence is valid in this coding system. Callers changed.
(MAX_ANNOTATION_LENGTH): New macro.
(ADD_ANNOTATION_DATA): New macro.
(ADD_COMPOSITION_DATA): Argument changed. Callers changed. Call
ADD_ANNOTATION_DATA. The format of annotation data changed.
(ADD_CHARSET_DATA): New macro.
(emacs_mule_char): New argument ID. Callers changed.
(decode_coding_emacs_mule, decode_coding_iso_2022)
(decode_coding_sjis, decode_coding_big5, decode_coding_charset):
Produce charset annotation data in coding->charbuf.
(encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
to charset annotation data in coding->charbuf.
(setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
coding->common_flags if the coding system is iso-2022 based and
uses designation.
(produce_composition): Adjusted for the new annotation data
format.
(produce_charset): New function.
(produce_annotation): Handle charset annotation.
(handle_composition_annotation, handle_charset_annotation): New
functions.
(consume_chars): Handle charset annotation. Utilize the above two
functions.
(encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
buffer, get the deleted text as a string and set
coding->src_object to that string.
(detect_coding, detect_coding_system): Use the new struct
coding_detection_info.
the case that the last byte is '\r' correctly.
(decode_coding_emacs_mule): Likewise.
(decode_coding_iso_2022): Likewise.
(decode_coding_sjis): Likewise.
(decode_coding_big5): Likewise.
(decode_coding_charset): Likewise.
(produce_chars): Likewise.
(decode_coding): Flushing out the unprocessed data correctly.
(decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of
coding->mode.
attention to Vstandard_translation_table_for_decode.
(encode_coding): Fix args to translate_chars. Pay attention to
Vstandard_translation_table_for_encode.
the case converting a region.
(encode_coding_utf_8): Encode eight-bit chars as single byte.
(encode_coding_object): Fix coding->dst_pos and
coding->dst_pos_byte for the case converting a region.
LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Macros
deleted. Callers changes to use
EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
(decode_coding_ccl): Add `const' to local variables.
(consume_chars): Likewise.
(Ffind_coding_systems_region_internal): Likewise.
(Fcheck_coding_systems_region): Likewise.
(CODING_ISO_FLAG_USE_OLDJIS): New macro.
(CODING_ISO_FLAG_FULL_SUPPORT): Macro definition changed.
(setup_iso_safe_charsets): Fix arguemtns to Fassq.
(DECODE_DESIGNATION): Pay attention to CODING_ISO_FLAG_USE_ROMAN
and CODING_ISO_FLAG_USE_OLDJIS.
(ENCODE_ISO_CHARACTER_DIMENSION1): Likewise.
(ENCODE_ISO_CHARACTER_DIMENSION2): Likewise.
(encode_coding_iso_2022): Change the 1st arg to
ENCODE_ISO_CHARACTER to a variable.
Fdefine_coding_system_internal.
(Fdefine_coding_system_internal): For a coding system of
`charset' type, store a list of charset IDs in
`charset_attr_charset_valids' element of coding attributes.
encoding, produce a character specified by
CODING_INHIBIT_CHARACTER_SUBSTITUTION.
(encode_coding_sjis): Likewise.
(encode_coding_big5): Likewise.
(encode_coding_charset): Likewise.
pre-write-conversion. Ignore the return value of
pre-write-conversion function. Pay attention for the case that
pre-write-conversion change the current buffer. If dst_object is
Qt, even if coding->src_bytes is zero, allocate at least one byte
to coding->destination.