aboutsummaryrefslogtreecommitdiffstats
path: root/src/coding.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* (Fdefine_coding_system_internal): Fix previous change.Kenichi Handa2004-01-251-4/+7
|
* (Fdefine_coding_system_internal): Fix previous change.Kenichi Handa2004-01-251-3/+1
|
* (get_translation_table): New function.Kenichi Handa2004-01-251-22/+64
| | | | | | | | | | | | | (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.
* (decode_coding_sjis): Check the first byte rigidly.Kenichi Handa2004-01-241-0/+2
|
* (Qinsufficient_source, Qinconsistent_eol)Kenichi Handa2003-12-291-144/+270
| | | | | | | | | | | | | | | | | | | | | | | (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;
* (detect_coding): Fix previous change.Kenichi Handa2003-12-021-6/+0
| | | | (detect_coding_system): Likewise.
* (enum iso_code_class_type): Delete ISO_carriage_return.Kenichi Handa2003-12-021-395/+358
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (CODING_GET_INFO): Delete argument eol_type. Callers changed. (decode_coding_utf_8): Don't do eol converion. (detect_coding_utf_16): Check coding->src_chars, not coding->src_bytes. Add heuristics for those that have no signature. (decode_coding_emacs_mule): Don't do eol converion. (decode_coding_iso_2022): Likewise. (decode_coding_sjis): Likewise. (decode_coding_big5): Likewise. (decode_coding_charset): Likewise. (adjust_coding_eol_type): Return a new coding system. (detect_coding): Don't detect eol. Fix for utf-16 detection. (decode_eol): In case of CRLF->LF conversion, use del_range_2 on each change. (decode_coding): Pay attention to undo_list. Do eol convesion for all types of coding-systems (if necessary). (Vcode_conversion_work_buf_list): Delete it. (Vcode_conversion_reused_workbuf): Renamed from Vcode_conversion_reused_work_buf. (Vcode_conversion_workbuf_name): New variable. (reused_workbuf_in_use): New variable. (make_conversion_work_buffer): Delete the arg DEPTH. (code_conversion_restore): Argument changed to cons. (code_conversion_save): Delete the argument BUFFER. Callers changed. (detect_coding_system): New argument src_chars. Callers changed. Fix for utf-16 detection. (init_coding_once): Don't use ISO_carriage_return. (syms_of_coding): Initialized Vcode_conversion_workbuf_name and reused_workbuf_in_use.
* (Fdefine_coding_system_internal): Fix previous change.Kenichi Handa2003-11-241-21/+2
|
* (Fdefine_coding_system_internal): Fix checking of ascii compatibility.Kenichi Handa2003-11-231-4/+7
|
* (encode_coding_emacs_mule): Resync charset_list toKenichi Handa2003-11-221-0/+5
| | | | Vemacs_mule_charset_list.
* (encode_coding_emacs_mule): Emit bytes with MSB.Kenichi Handa2003-11-221-1/+2
|
* (produce_chars): Revert last change.Andreas Schwab2003-10-061-2/+2
|
* (Fdefine_coding_system_alias): Update Vcoding_system_list.Kenichi Handa2003-10-061-4/+5
|
* (consume_chars): If coding->src_object is nil, don't check annotation.Kenichi Handa2003-10-011-7/+12
|
* (inhibit_pre_post_conversion): Removed (unused).Dave Love2003-09-291-14/+5
| | | | | | | (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts. (coding_inherit_eol_type): Remove unused attrs. (detect_coding): Cast arg of detect_eol.
* (Fread_coding_system): Fix arg of XSETSTRING.Dave Love2003-09-171-2/+4
| | | | (Fset_coding_system_priority): Doc fix.
* *** empty log message ***Kenichi Handa2003-09-081-5240/+6500
|\
| * (decode_coding_sjis): Check bytes more rigidly.Kenichi Handa2003-07-091-1/+3
| |
| * * coding.c (QCcategory): New variable.Kenichi Handa2003-06-061-0/+6
| | | | | | | | | | | | | | | | (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.
| * (Fset_coding_system_priority): Doc fix. Update valuesKenichi Handa2003-06-051-1/+20
| | | | | | | | | | | | of codng-category-XXX, and coding-category-list. (syms_of_coding): Set all elements of Vcoding_category_table and their symbol values.
| * (decode_coding_iso_2022): Fix handling of invalidKenichi Handa2003-06-051-6/+12
| | | | | | | | | | | | | | | | 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.
| * (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.