aboutsummaryrefslogtreecommitdiffstats
path: root/src/coding.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* (setup_coding_system): If coding hasKenichi Handa2003-05-291-1/+23
| | | | | | | 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.
* (make_conversion_work_buffer): Change the work bufferKenichi Handa2003-05-291-3/+3
| | | | name to the same one as that of Emacs 21.
* (detected_mask): Delete unused variable.Kenichi Handa2003-05-281-77/+193
| | | | | | | | | | | | | | | | | | | (decode_coding_iso_2022): Pay attention to the byte sequence of CTEXT extended segment, and retain those bytes as is. (decode_coding_ccl): Delete unused variable `valids'. (setup_coding_system): Delete unused variable `category'. (consume_chars): Delete unused variable `category'. Make it work for non-multibyte case. (make_conversion_work_buffer): Argument changed. (saved_coding): Delete unused variable. (code_conversion_restore): Don't check saved_coding->destination. (code_conversion_save): New function. (decode_coding_gap, encode_coding_gap): Call code_conversion_save instead of record_unwind_protect. (decode_coding_object, encode_coding_object): Likewise. Recover PT. (detect_coding_system): Delete unused variable `mask'. (Fdefine_coding_system_internal): Delete unsed vaiable id;
* (Fdefine_coding_system_internal): Fix for the case thatKenichi Handa2003-05-201-1/+16
| | | | coding_type is Qcharset.
* (Qsignature, Qendian): Delete these variables.Kenichi Handa2003-05-061-35/+51
| | | | | | | | | | | | | | | | | | (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).
* (coding_set_source): Fix for the case that the currentKenichi Handa2003-05-061-13/+8
| | | | | | buffer is different from coding->src_object. (decode_coding_object): Don't use the conversion work buffer if DST_OBJECT is a buffer.
* (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)Kenichi Handa2003-03-281-10/+5
| | | | | | | (Qutf_16_le): Remove these variables. (syms_of_coding): Don't DEFSYM them. (decode_coding_utf_16): Fix handling of BOM. (encode_coding_utf_16): Fix handling of BOM.
* (Fcheck_coding_systems_region): Fix type errors.Dave Love2003-02-131-13/+13
|
* (decode_coding_ccl, encode_coding_ccl): Call ccl_driverKenichi Handa2003-01-301-7/+22
| | | | | | 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.
* (CATEGORY_MASK_RAW_TEXT): New macro.Kenichi Handa2003-01-061-399/+692
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (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.
* (decode_coding_utf_8): When eol_type is Qdos, handleKenichi Handa2002-11-061-13/+36
| | | | | | | | | | | | | 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.
* (Fdefine_coding_system_internal): Fix previous change.Kenichi Handa2002-10-161-0/+3
|
* (detect_coding_charset): If only ASCII bytes are found, return 0.Kenichi Handa2002-10-161-9/+31
| | | | | | (detect_coding_system): Fix previous change. (Fdefine_coding_system_internal): Setup CODING_ATTR_ASCII_COMPAT (attrs) correctly.
* (detect_coding): Fix previous change.Kenichi Handa2002-10-161-1/+4
|
* (Fcheck_coding_system): Doc fix.Dave Love2002-10-151-3/+1
|
* (decode_coding): Fix args to translate_chars. PayKenichi Handa2002-10-151-2/+6
| | | | | | attention to Vstandard_translation_table_for_decode. (encode_coding): Fix args to translate_chars. Pay attention to Vstandard_translation_table_for_encode.
* (detect_coding_utf_8): Check incomplete byte sequence.Kenichi Handa2002-10-101-100/+175
| | | | | | | | | | | | | | | Don't update *mask when correctly detected. (detect_coding_utf_16): Likewise. (detect_coding_emacs_mule): Likewise. (detect_coding_iso_2022): Likewise. (detect_coding_sjis): Likewise. (detect_coding_big5): Likewise. (detect_coding_ccl): Likewise. (decode_coding_sjis): Fix decoding of katakana-jisx0201. (detect_eol): Delete the argument CODING, and add the argument CATEGORY. (detect_coding): Adjusted for the changes above. (detect_coding_system): Likewise.
* (decode_coding_utf_8): Treat surrogates as invalid.Dave Love2002-10-091-2/+2
|
* (coding_set_destination): Fix coding->destination forKenichi Handa2002-08-211-14/+35
| | | | | | | 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.
* (Fdefine_coding_system_internal): Fix category settingKenichi Handa2002-08-081-2/+1
| | | | for a coding system of type iso-2022.
* * coding.c (make_conversion_work_buffer): Adjusted for the changeKenichi Handa2002-07-311-5/+7
| | | | | of Fset_buffer_multibyte. (encode_coding_raw_text): Increment p0 in the loop.
* Comment fixDave Love2002-07-301-1/+1
|
* (Ffind_coding_systems_region_internal): Detect anKenichi Handa2002-07-251-2/+2
| | | | ASCII only string correctly.
* (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12,Kenichi Handa2002-07-221-18/+11
| | | | | | | | | | 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.
* (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.Dave Love2002-07-171-3/+3
|
* (ENCODE_DESIGNATION, decode_eol)Dave Love2002-07-161-8/+8
| | | | | | | (make_conversion_work_buffer, code_conversion_restore) (Fdefine_coding_system_internal): Convert Lisp types. (code_conversion_restore): Use EQ, not ==. (Fencode_coding_string): Fix code_convert_string call.
* (Fset_coding_system_priority): Allow null arg list.Dave Love2002-07-111-3/+3
|
* commentsDave Love2002-06-161-82/+24
|
* (encode_coding_emacs_mule): Pay attention to raw-8-bit chars.Kenichi Handa2002-05-311-0/+25
| | | | | | | (encode_coding_iso_2022): Likewise. (encode_coding_sjis): Likewise. (encode_coding_big5): Likewise. (encode_coding_charset): Likewise.
* (CODING_ISO_FLAG_USE_ROMAN): New macroKenichi Handa2002-05-301-3/+36
| | | | | | | | | | | | (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.
* (decode_coding_utf_8): Reject overlong sequences.Dave Love2002-05-271-4/+20
|
* (Qmac): Remove (duplicated) definition.Dave Love2002-05-261-2/+2
|
* Doc fixes.Dave Love2002-05-261-7/+8
| | | | (Fcoding_system_aliases): Fix return value.
* (setup_iso_safe_charsets): Fix arg decl for K&R.Dave Love2002-05-241-2/+4
| | | | (suffixes): Moved out of make_subsidiaries for K&R.
* (Fdefine_coding_system_internal): Fix previous change.Kenichi Handa2002-05-231-4/+6
| | | | (decode_coding_charset): Workaround for the bug of GCC 2.96.
* (decode_coding_charset): Fix previous change.Kenichi Handa2002-05-221-32/+8
|
* (decode_coding_charset): Adjusted for the change ofKenichi Handa2002-05-221-15/+100
| | | | | | | 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.
* (emacs_mule_char): Fix previous change.Kenichi Handa2002-05-211-1/+0
|
* (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.Kenichi Handa2002-05-211-49/+76
| | | | | | | | | | | | | | | | | | (emacs_mule_char): New arg src. Delete arg `composition'. Caller changed. Handle 2-byte and 3-byte charsets correctly. (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Renamed from DECODE_EMACS_MULE_COMPOSITION_RULE. Caller changed. (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro. (DECODE_EMACS_MULE_21_COMPOSITION): Call DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation sequence. (decode_coding_emacs_mule): Handle composition correctly. Rewind `src' and `consumed_chars' correctly before calling emacs_mule_char. (DECODE_COMPOSITION_START): Correctly handle the case of altchar and alt&rule composition. (decode_coding_iso_2022): Handle composition correctly. (init_coding_once): Setup emacs_mule_bytes for private charsets.
* (encode_coding_iso_2022): If coding requires safeKenichi Handa2002-05-201-7/+37
| | | | | | | | encoding, produce a character specified by CODING_INHIBIT_CHARACTER_SUBSTITUTION. (encode_coding_sjis): Likewise. (encode_coding_big5): Likewise. (encode_coding_charset): Likewise.
* (Vchar_coding_system_table, Qchar_coding_system):Dave Love2002-05-171-17/+4
| | | | | | Removed. (Fset_coding_system_priority, Fset_coding_system_priority) (Fdefine_coding_system_internal): Doc fix.
* (encode_coding_object): Give correct arguments otKenichi Handa2002-05-141-6/+6
| | | | | | | | 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.
* (decode_coding_object): Move point to coding->dst_pos beforeKenichi Handa2002-05-141-0/+1
| | | | calling post-read-conversion function.
* (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix theKenichi Handa2002-05-141-3/+6
| | | | | handling of charset list. (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
* Doc fixes.Dave Love2002-05-131-13/+14
| | | | | (Fdefine_coding_system_alias): Use names, not symbols, in coding-system-alist.
* (coding_set_source): Delete the local variable beg_byte.Kenichi Handa2002-05-101-6/+9
| | | | | | | (encode_coding_charset): Delete the local variable charset. (Fdefine_coding_system_internal): Likewise. (Fdefine_coding_system_internal): Setup attrs[coding_attr_charset_valids] correctly.
* (coding_inherit_eol_type)Dave Love2002-05-091-0/+3
| | | | | (Fset_terminal_coding_system_internal) (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
* (decode_coding_charset, encode_coding_charset): HandleKenichi Handa2002-05-081-14/+48
| | | | multiple charsets correctly.
* (coding_alloc_by_making_gap): Check the case that theKenichi Handa2002-05-071-53/+68
| | | | | | | | | | | | source and destination are the same correctly. (decode_coding_raw_text): Set coding->consumed_char and coding->consumed to 0. (produce_chars): If coding->chars_at_source is nonzero, update coding->consumed_char and coding->consumed before calling alloc_destination. (Fdefine_coding_system_alias): Register ALIAS in Vcoding_system_alist. (syms_of_coding): Define `no-convesion' coding system at the tail.
* (produce_chars): Set the variable `multibytep' correctly.Kenichi Handa2002-03-111-1/+3
| | | | (decode_coding_gap): Set coding->dst_multibyte correctly.