summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1997-09-17 00:53:33 +0000
committerRichard M. Stallman <rms@gnu.org>1997-09-17 00:53:33 +0000
commitab7608c192a2a70b66f74ca6992b030c47471eea (patch)
treefbfc2f13e5db0306b5a0c473391d26276d5db7e2
parent5d63f0cdd2393bff28973537e1851b11d22d348a (diff)
downloademacs-ab7608c192a2a70b66f74ca6992b030c47471eea.tar.gz
(command_loop_1): Add nonascii_insert_offset
before calling direct_output_for_insert.
-rw-r--r--src/keyboard.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/keyboard.c b/src/keyboard.c
index 4c872016eb5..bf5643dba06 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -500,6 +500,8 @@ int timers_run;
extern Lisp_Object Vprint_level, Vprint_length;
+extern nonascii_insert_offset;
+
/* Address (if not 0) of EMACS_TIME to zero out if a SIGIO interrupt
happens. */
EMACS_TIME *input_available_clear_time;
@@ -1369,6 +1371,13 @@ command_loop_1 ()
= window_display_table (XWINDOW (selected_window));
int lose = c;
+ /* Add the offset to the character, for Finsert_char.
+ We pass internal_self_insert the unmodified character
+ because it itself does this offsetting. */
+ if (lose >= 0200 && lose <= 0377
+ && ! NILP (current_buffer->enable_multibyte_characters))
+ lose += nonascii_insert_offset;
+
if (dp)
{
Lisp_Object obj;