1. 03 Sep, 2002 13 commits
    • Kenichi Handa's avatar
      (compile_pattern_1): Don't adjust the multibyteness of · 93daa011
      Kenichi Handa authored
      the regexp pattern and the matching target.  Set cp->buf.multibyte
      to the multibyteness of the regexp pattern.  Set
      cp->but.target_multibyte to the multibyteness of the matching
      target.
      (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
      FETCH_STRING_CHAR_ADVANCE.
      (Freplace_match): Convert unibyte chars to multibyte.
      93daa011
    • Kenichi Handa's avatar
      * regex.c (RE_TARGET_MULTIBYTE_P): New macro. · bf216479
      Kenichi Handa authored
      (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte.  If
      that is zero, convert an eight-bit char to multibyte.
      (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
      non-emacs case.
      (PATFETCH): Convert an eight-bit char to multibyte.
      (HANDLE_UNIBYTE_RANGE): New macro.
      (regex_compile): Setup the compiled pattern for multibyte chars
      even if the given regex string is unibyte.  Use PATFETCH_RAW
      instead of PATFETCH in many places.  To handle `charset'
      specification of unibyte, call HANDLE_UNIBYTE_RANGE.   Use bitmap
      only for ASCII chars.
      (analyse_first) <exactn>: Simplified because the compiled pattern
      is multibyte.
      <charset_not>: Setup fastmap from bitmap only for ASCII chars.
      <charset>: Use CHAR_LEADING_CODE to get leading codes.
      <categoryspec>: If multibyte, setup fastmap only for ASCII chars
      here.
      (re_compile_fastmap) [emacs]: Call analyse_first with the arg
      multibyte always 1.
      (re_search_2) In emacs, set the locale variable multibyte to 1,
      otherwise to 0.  New local variable target_multibyte.  Check it
      to decide the multibyteness of STR1 and STR2.  If
      target_multibyte is zero, convert unibyte chars to multibyte
      before translating and checking fastmap.
      (TARGET_CHAR_AND_LENGTH): New macro.
      (re_match_2_internal): In emacs, set the locale variable multibyte
      to 1, otherwise to 0.  New local variable target_multibyte.  Check
      it to decide the multibyteness of STR1 and STR2.  Use
      TARGET_CHAR_AND_LENGTH to fetch a character from D.
      <charset, charset_not>: If multibyte is nonzero, check fastmap
      only for ASCII chars.   Call bcmp_translate with
      target_multibyte, not with multibyte.
      <begline>: Declare the local variable C as `unsigned'.
      (bcmp_translate): Change the last arg name to target_multibyte.
      bf216479
    • Kenichi Handa's avatar
      66f089b2
    • Kenichi Handa's avatar
      (Fminibuffer_complete_word): Use the macro · d6f0c8e6
      Kenichi Handa authored
      FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
      d6f0c8e6
    • Kenichi Handa's avatar
      b9dbd428
    • Kenichi Handa's avatar
      (internal_self_insert): In a multibyte buffer, insert C · 9ad8bfb0
      Kenichi Handa authored
      as is without converting it to unibyte.  In a unibyte buffer,
      convert C to multibyte before checking the syntax.
      9ad8bfb0
    • Kenichi Handa's avatar
      (casify_object): Fix previous change. · 8d359247
      Kenichi Handa authored
      8d359247
    • Kenichi Handa's avatar
      (Fset_unibyte_charset): If the dimension of CHARSET is · 14e3d523
      Kenichi Handa authored
      not 1, singals an error.  Update the elements of
      unibyte_to_multibyte_table.
      (init_charset_once): Initialize unibyte_to_multibyte_table.
      (syms_of_charset): Define the charset `iso-8859-1'.
      14e3d523
    • Kenichi Handa's avatar
      (unibyte_to_multibyte_table): New variable. · b672c5ae
      Kenichi Handa authored
      (unibyte_char_to_multibyte): Move to character.h and defined as
      macro.
      (multibyte_char_to_unibyte): If C is an eight-bit character,
      convert it to the corresponding byte value.
      b672c5ae
    • Kenichi Handa's avatar
      (LEADING_CODE_LATIN_1_MIN) · 43c47483
      Kenichi Handa authored
      (LEADING_CODE_LATIN_1_MAX): New macros.
      (unibyte_to_multibyte_table): Extern it.
      (unibyte_char_to_multibyte): New macro.
      (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
      (CHAR_LEADING_CODE): New macro.
      (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
      43c47483
    • Kenichi Handa's avatar
    • Kenichi Handa's avatar
      (Fexpand_abbrev): Convert a unibyte character to · 1464b3d8
      Kenichi Handa authored
      multibyte if necessary.
      1464b3d8
    • Kenichi Handa's avatar
  2. 23 Aug, 2002 2 commits
    • Kenichi Handa's avatar
    • Kenichi Handa's avatar
      (QCfontset): New variable. · 763bc839
      Kenichi Handa authored
      (LFACE_FONTSET): New macro.
      (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
      (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
      (Finternal_set_lisp_face_attribute): Handle QCfontset.
      (Finternal_get_lisp_face_attribute): Likewise.
      (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
      check also LFACE_FONTSET_INDEX.
      (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
      attrs[LFACE_FONT_INDEX].
      (syms_of_xfaces): Intern and staticpro QCfontset.
      763bc839
  3. 22 Aug, 2002 3 commits
  4. 21 Aug, 2002 8 commits
  5. 20 Aug, 2002 14 commits