summaryrefslogtreecommitdiff
path: root/src/coding.c
Commit message (Collapse)AuthorAgeFilesLines
* Avoid (most) uses of XCAR/XCDR as lvalues, for flexibility in experimentingKen Raeburn2001-10-161-1/+1
| | | | with lisp system changes.
* Use SYMBOL_VALUE/SET_SYMBOL_VALUE macros instead of accessingGerd Moellmann2001-10-051-2/+2
| | | | symbols' value directly.
* (code_convert_region): Handle the multibyte case ifGerd Moellmann2001-07-231-4/+21
| | | | decoding ends with CODING_FINISH_INSUFFICIENT_SRC.
* * coding.c (setup_coding_system): Don't do any designation based on reg_bits ifKen Raeburn2001-07-171-1/+1
| | | | charset is not yet defined.
* (Ffind_coding_systems_region_internal): If safe_codingsStefan Monnier2001-07-121-1/+3
| | | | is t, don't try to append anything to it.
* commentDave Love2001-04-051-3/+3
|
* (Fdetect_coding_region): Fix comments added by the previous change.Kenichi Handa2001-03-081-6/+9
|
* (detect_coding_mask): Fix the incorrect handling of arg MULTIBYTEP.Kenichi Handa2001-03-081-1/+1
|
* (detect_coding_sjis): Do more rigid check.Kenichi Handa2001-03-081-21/+31
| | | | | | | | (detect_coding_big5): Likewise. (decode_coding_sjis_big5): Likewise. (Fdetect_coding_region): Call detect_coding_system with tailing anchor byte `\0' for more rigid detection. (Fdetect_coding_string): Likewise.
* (syms_of_coding): Docstring modified.Kenichi Handa2001-03-051-1/+6
|
* (ccl_coding_driver): If ccl->eight_bit_control is zero,Kenichi Handa2001-02-271-0/+7
| | | | treat the produced bytes as a valid multibyte sequence.
* Doc and message fixes.Dave Love2001-02-141-37/+37
|
* (code_convert_region): After detecting a coding, ifKenichi Handa2001-02-081-1/+12
| | | | | nothing found, set coding->composing to COMPOSITION_NO. (decode_coding_string): Likewise.
* (decode_coding): Set a flag for inhibitingKenichi Handa2001-01-261-5/+22
| | | | | | | | inconsistent eol. (code_convert_region): Always set saved_coding_symbol. (decode_coding_string): Likewise. Update coding->symbol when we encounter a inconsistent eol by the same way as code_convert_region.
* (ccl_coding_driver): Setup ccl->suppress_error.Kenichi Handa2001-01-241-0/+5
| | | | | | (Fset_terminal_coding_system_internal): Set the member suppress_error to 1. (Fset_safe_terminal_coding_system_internal): Likewise.
* Commentary changes.Dave Love2001-01-041-64/+68
| | | | (detect_eol_type_in_2_octet_form): Declare arg big_endian_p.
* (detect_coding_iso2022, setup_coding_system): RemoveEli Zaretskii2001-01-021-14/+5
| | | | | | | | | | | | | | | unused variable `i'. (detect_coding_mask): Remove unused variable `idx'. (detect_coding): Remove unused variable `i'. (ccl_coding_driver): Remove unused variable `result'. (run_pre_post_conversion_on_str): Remove unused variable `prev'. (decode_coding_string): Remove unused variables `to' and `gcpro1'. (encode_coding_string): Remove unused variables `gcpro1' and `saved_coding_symbol'. (Ffind_coding_systems_region_internal): Remove function-local variable args[], leave only the block-local one. (code_convert_region1): Remove unused variable `len'.
* (setup_coding_system): InitializeKenichi Handa2000-12-281-2/+56
| | | | | coding->spec.ccl.eight_bit_carryover. (ccl_coding_driver): Pay attention to carried over 8-bit bytes.
* (SAFE_ONE_MORE_BYTE): New macro.Kenichi Handa2000-12-281-36/+439
| | | | | | | | | | | | | (DECODE_EMACS_MULE_COMPOSITION_CHAR): New macro. (DECODE_EMACS_MULE_COMPOSITION_RULE): New macro. (decode_composition_emacs_mule): New function. (decode_coding_emacs_mule): Decode composition sequence by calling decode_composition_emacs_mule. (ENCODE_COMPOSITION_EMACS_MULE): New macro. (encode_coding_emacs_mule): Changed from macro to function. If a text contains compostions, encode them correctly. (setup_coding_system): Set coding->commong_flags for emacs-mule so that decoding and encoding are required.
* (ccl_coding_driver): Initialize ccl->cr_consumed.Kenichi Handa2000-12-211-2/+12
|
* (detect_coding): Call detect_coding_mask with a correct MULTIBYTEPKenichi Handa2000-12-151-4/+2
| | | | | | argument. (code_convert_region): Don't override coding->src_multibyte and coding->dst_multibyte.
* (setup_coding_system): Clear all members of the structKenichi Handa2000-12-151-2/+3
| | | | coding_system at first.
* (decode_coding_string): Set coding->src_multibyte andKenichi Handa2000-12-141-3/+7
| | | | | coding->dst_multibyte before calling detect_coding and detect_eol. Update them after some coding system is detected.
* (ONE_MORE_BYTE_CHECK_MULTIBYTE): New macro.Kenichi Handa2000-12-131-53/+87
| | | | | | | | | (detect_coding_emacs_mule, detect_coding_iso2022,) (detect_coding_sjis, detect_coding_big5, detect_coding_utf_8) (detect_coding_utf_16, detect_coding_ccl): Make them static. New argument MULTIBYTEP. Callers changed. (detect_coding_mask, detect_coding_system): New argument MULTIBYTEP. Callers changed.
* (setup_coding_system): Be sure to initialize coding->category_idx.Kenichi Handa2000-12-051-0/+6
|
* (Ffind_coding_systems_region_internal): Be sure toKenichi Handa2000-11-281-1/+3
| | | | include no-conversion.
* (decode_coding_emacs_mule): Fix the case ofEli Zaretskii2000-11-231-2/+1
| | | | CODING_EOL_LF, which used an uninitialized value of c.
* (decode_coding): Fix previous change (check alsoKenichi Handa2000-10-261-0/+1
| | | | CODING_MODE_LAST_BLOCK).
* (decode_coding_emacs_mule): If coding->eol_type is CREli Zaretskii2000-10-241-1/+40
| | | | or CRLF, decode EOLs.
* Fix a typo in a comment.Eli Zaretskii2000-10-221-1/+1
|
* (decode_coding_string): Set coding->src_multibyte andKenichi Handa2000-10-131-8/+8
| | | | | | coding->dst_multibyte before using CODING_REQUIRE_DECODING. (encode_coding_string): Set coding->src_multibyte and coding->dst_multibyte before using CODING_REQUIRE_ENCODING.
* (code_convert_region): Be sure to initialize coding->category_idx.Kenichi Handa2000-10-131-5/+8
|
* (detect_coding_sjis): Check the byte sequence more regidly.Kenichi Handa2000-09-071-3/+8
|
* (encode_coding_sjis_big5): Fix previous change.Kenichi Handa2000-09-071-0/+2
|
* (encode_coding_sjis_big5): Use translation table forKenichi Handa2000-09-071-5/+5
| | | | | | encoding, not decoding. Check for the charset katakana-jisx0201, not latin-jisx0201. (ONE_MORE_CHAR): Call translate_char with CHARSET arg -1.
* (encode_eol): Fix bug for the case of dst_bytes being zero. SetKenichi Handa2000-08-231-1/+2
| | | | coding->produced_char correctly.
* (encode_coding_string): Fix previous change.Kenichi Handa2000-08-181-0/+1
|
* (decode_coding_string): Set members consumed,Kenichi Handa2000-08-181-8/+27
| | | | | | consumed_char, produced, produced_char of *coding correctly. If decode_coding doesn't consume any byte, don't try anymore. (encode_coding_string): Likewise.
* (encode_coding): Fix the bug of not flushing ISO escape sequence atKenichi Handa2000-08-161-5/+5
| | | | the end of the source block.
* (MINIMUM_CONVERSION_BUFFER_SIZE): Macro deleted.Kenichi Handa2000-08-161-80/+150
| | | | | | | | | | | | | | | | | | | | | | (conversion_buffer, conversion_buffer_size): Variables deleted. (get_conversion_buffer): Function deleted. (struct conversion_buffer): New structure. (MAX_ALLOCA): New macro. (allocate_conversion_buffer): New macro. (extend_conversion_buffer, free_conversion_buffer): New functions. (ccl_coding_driver): Set coding->result. (decode_coding): Set coding->result to CODING_FINISH_NORMAL if this is the last block of source. (encode_coding): Likewise. Handle the source block as the last one only when the whole source text is consumed. (decode_coding_string): Handle the case that the output buffer is too small to decode the whole source text. Use allocate_conversion_buffer, extend_conversion_buffer and free_conversion_buffer, not get_conversion_buffer. (encode_coding_string): Likewise. (init_coding): Function deleted. (init_coding_once): Delete code to initialize conversion_buffer_size.
* (ccl_coding_driver): Initialize ccl->multibyte.Kenichi Handa2000-08-111-0/+1
|
* *coding.c (find_safe_codings): CHAR_TABLE_SET index must be a lisp object.Ken Raeburn2000-08-081-2/+2
| | | | | (Ffind_coding_systems_region_internal): First argument to Fappend must be an integer, not a lisp object.
* (coding_restore_composition): Pay attention to the case thatKenichi Handa2000-08-041-20/+32
| | | | | | | | cmp_data is not set properly (because of invalid code in the source text). (run_pre_post_conversion_on_str): Include text properties in the resulting string. (decode_coding_string): Set members of coding correctly.
* (decode_coding_iso2022): More strict check for handling singleKenichi Handa2000-08-041-0/+4
| | | | shifting.
* (Qsafe_charsets): This variable deleted.Kenichi Handa2000-07-271-87/+267
| | | | | | | | | | | | | | | | | | | | | | | | | | | (Qsafe_chars, Vchar_coding_system_table, Qchar_coding_system): New variables. (coding_safe_chars): New function. (CODING_SAFE_CHAR_P): New macro. (CHARSET_OK): New arg C. Call CODING_SAFE_CHAR_P instead of checking safe_charsets member of the coding system. Caller changed. (detect_coding_iso2022): New local variable safe_chars. (DECODE_DESIGNATION): Call CODING_SAFE_CHAR_P instead of checking safe_charsets member of the coding system. (decode_coding_iso2022): New local variable safe_chars. (ENCODE_ISO_CHARACTER_DIMENSION1): Don't check unsafe chars here. (ENCODE_ISO_CHARACTER_DIMENSION2): Likewise. (ENCODE_ISO_CHARACTER): Arguments changed. Caller changed. (ENCODE_UNSAFE_CHARACTER): New macro. (encode_coding_iso2022): New local variable safe_chars. Check unsafe chars. (setup_coding_system): Delete the code to initialize coding->safe_charses (intersection, find_safe_codings): New functions. (Ffind_coding_systems_region_internal): New function. (syms_of_coding): Defsubr it. Initialize Qsafe_chars, Qsafe_cding_system. Make Vchar_coding_system_table a Lisp variable and initialize it.
* (syms_of_coding): Doc fix for inhibit-iso-escape-detection.Eli Zaretskii2000-07-231-7/+7
|
* (code_convert_region): Delete text properties before shrinking theKenichi Handa2000-07-191-11/+9
| | | | conversion region.
* (syms_of_coding): Fix typo in spelling of variableGerd Moellmann2000-07-181-1/+1
| | | | `inhibit-iso-escape-detection'.
* (setup_coding_system): Don't override the explicitly specifiedKenichi Handa2000-07-181-2/+4
| | | | designations.
* (inhibit_iso_escape_detection): New variable.Kenichi Handa2000-07-141-0/+37
| | | | | | (syms_of_coding): Make it a Lisp variable. (detect_coding_iso2022): If inhibit_iso_escape_detection is nonzero, ignore ISO2022's escape sequence.