diff options
Diffstat (limited to 'src/keyboard.c')
-rw-r--r-- | src/keyboard.c | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/src/keyboard.c b/src/keyboard.c index 3b7d2aac981..8abc38b1072 100644 --- a/src/keyboard.c +++ b/src/keyboard.c @@ -32,7 +32,7 @@ Boston, MA 02111-1307, USA. */ #include "window.h" #include "commands.h" #include "buffer.h" -#include "charset.h" +#include "character.h" #include "disptab.h" #include "dispextern.h" #include "syntax.h" @@ -1666,7 +1666,7 @@ command_loop_1 () : (lose >= 0x20 && lose < 0x7f)) /* To extract the case of continuation on wide-column characters. */ - && (WIDTH_BY_CHAR_HEAD (FETCH_BYTE (PT_BYTE)) == 1) + && ASCII_BYTE_P (lose) && (XFASTINT (XWINDOW (selected_window)->last_modified) >= MODIFF) && (XFASTINT (XWINDOW (selected_window)->last_overlay_modified) @@ -1723,7 +1723,7 @@ command_loop_1 () { unsigned int c = translate_char (Vtranslation_table_for_input, - XFASTINT (last_command_char), 0, 0, 0); + XFASTINT (last_command_char)); int value; if (NILP (Vexecuting_macro) && !EQ (minibuf_window, selected_window)) @@ -1909,7 +1909,7 @@ adjust_point_for_property (last_pt, modified) int last_pt; int modified; { - int beg, end; + EMACS_INT beg, end; Lisp_Object val, overlay, tmp; int check_composition = 1, check_display = 1, check_invisible = 1; int orig_pt = PT; @@ -2962,8 +2962,7 @@ read_char (commandflag, nmaps, maps, prev_event, used_mouse_menu) && SCHARS (Vkeyboard_translate_table) > (unsigned) XFASTINT (c)) || (VECTORP (Vkeyboard_translate_table) && XVECTOR (Vkeyboard_translate_table)->size > (unsigned) XFASTINT (c)) - || (CHAR_TABLE_P (Vkeyboard_translate_table) - && CHAR_VALID_P (XINT (c), 0))) + || CHAR_TABLE_P (Vkeyboard_translate_table)) { Lisp_Object d; d = Faref (Vkeyboard_translate_table, c); @@ -9344,9 +9343,8 @@ read_key_sequence (keybuf, bufsize, prompt, dont_downcase_last, if (first_binding >= nmaps && fkey.start >= t && keytran.start >= t && INTEGERP (key) - && ((((XINT (key) & 0x3ffff) - < XCHAR_TABLE (current_buffer->downcase_table)->size) - && UPPERCASEP (XINT (key) & 0x3ffff)) + && ((CHARACTERP (make_number (XINT (key) & ~CHAR_MODIFIER_MASK)) + && UPPERCASEP (XINT (key) & ~CHAR_MODIFIER_MASK)) || (XINT (key) & shift_modifier))) { Lisp_Object new_key; @@ -9357,8 +9355,8 @@ read_key_sequence (keybuf, bufsize, prompt, dont_downcase_last, if (XINT (key) & shift_modifier) XSETINT (new_key, XINT (key) & ~shift_modifier); else - XSETINT (new_key, (DOWNCASE (XINT (key) & 0x3ffff) - | (XINT (key) & ~0x3ffff))); + XSETINT (new_key, (DOWNCASE (XINT (key) & ~CHAR_MODIFIER_MASK) + | (XINT (key) & ~CHAR_MODIFIER_MASK))); /* We have to do this unconditionally, regardless of whether the lower-case char is defined in the keymaps, because they |