Commit 04fcc7ce authored by Kenichi Handa's avatar Kenichi Handa
Browse files

*** empty log message ***

parent 935d5b02
2007-02-15 Kenichi Handa <handa@m17n.org>
These changes are to compile a regexp into a pattern that can be
used both for multibyte and unibyte targets.
* Makefile.in (search.o): Depend on charset.h.
* character.c (multibyte_char_to_unibyte_safe): New function.
* search.c: Include "charset.h".
(compile_pattern_1): Delete argument multibyte. Don't set
cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
(compile_pattern): Don't compare cp->buf.target_multibyte.
Compare cp->buf.charset_unibyte.
(compile_pattern): Set cp->buf.target_multibyte.
* lisp.h (multibyte_char_to_unibyte_safe): Extern it.
* regex.h (struct re_pattern_buffer): New member charset_unibyte.
* regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
multibte. Callers changed.
(RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
(MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Deleted. Callers
changed to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE
respectively.
(SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
(SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
(regex_compile): Make the compiled pattern usable both for
multibyte and unibyte targets.
(analyse_first): Make the fastmap usable both for multibyte and
unibyte targets.
(TRANSLATE_VIA_MULTIBYTE): Deleted.
(re_match_2_internal): Pay attention to the case that the
multibyteness of bufp and target may be different.
2007-02-14 Kenichi Handa <handa@m17n.org>
* xdisp.c (x_produce_glyphs): When a font is not found, make the
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment