Mercurial > emacs
changeset 102424:d4c02fdc3efa
*** empty log message ***
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Fri, 06 Mar 2009 07:52:40 +0000 |
parents | f23ca4ed51bd |
children | 5b3e677bf111 |
files | src/ChangeLog |
diffstat | 1 files changed, 51 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ChangeLog Fri Mar 06 07:52:06 2009 +0000 +++ b/src/ChangeLog Fri Mar 06 07:52:40 2009 +0000 @@ -1,3 +1,54 @@ +2009-03-06 Kenichi Handa <handa@m17n.org> + + These changes are to detect incorrect composition sequence without + looking ahead the source. + + * coding.h: Include "composite.h". + (enum compisition_state): New enum. + (struct compisition_status): New struct. + (struct iso_2022_spec): New member cmp_status. + (struct emacs_mule_spec): New struct. + (struct coding_system): New members ctext_extended_segment_len and + embedded_utf_8. Change the union member + spec.emacs_mule_full_support to spec.emacs_mule. + + * coding.c (CODING_ISO_CMP_STATUS): New macro. + (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros. + (MAX_ANNOTATION_LENGTH): Defined to 5. + (ADD_COMPOSITION_DATA): New arg nbytes. + (emacs_mule_char): New arg cmp_status. + (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it. + (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c. + (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c. + (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c. + (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise. + (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise. + (DECODE_EMACS_MULE_COMPOSITION_START): New macro. + (EMACS_MULE_COMPOSITION_END): New macro. + (emacs_mule_finish_composition): New function. + (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro. + (decode_coding_emacs_mule): Avoid long looking ahead while + handling composition. + (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes. + (ENCODE_COMPOSITION_RULE): New macro. + (finish_composition): New function. + (MAYBE_FINISH_COMPOSITION): Call finish_composition. + (DECODE_COMPOSITION_START): New implementation. + (DECODE_COMPOSITION_END): Likewise. + (STORE_COMPOSITION_RULE): New macro. + (decode_coding_iso_2022): Avoid long looking ahead while handling + composition, CTEXT extended segment, and embedded UTF-8. + (setup_coding_system): For a coding of type iso-2022, reset + CODING_ISO_EXTSEGMENT_LEN (coding) and + CODING_ISO_EMBEDDED_UTF_8 (coding). + (get_translation): Delete arguments last_block, from_nchars, + to_nchars. Callers changed. + (produce_chars): Don't modify charbuf. Adjusted for the change of + get_translation. + (produce_composition): Adjusted for the new annotation sequence. + (handle_composition_annotation): Likewise. + (consume_chars): Adjusted for the change of get_translation. + 2009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com> * nsterm.m (ns_select): Shortcircuit if reentrant call.