changeset 25042:bf96605e00ee

(encoded-kbd-self-insert-iso2022-7bit): Don't insert the character but push it to unread-command-events. (encoded-kbd-self-insert-iso2022-8bit): Likewise. (encoded-kbd-self-insert-sjis): Likewise. (encoded-kbd-self-insert-big5): Likewise.
author Kenichi Handa <handa@m17n.org>
date Fri, 23 Jul 1999 07:20:12 +0000
parents d45a32b777f6
children c0012b8a093e
files lisp/international/encoded-kb.el
diffstat 1 files changed, 16 insertions(+), 22 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/international/encoded-kb.el	Thu Jul 22 00:45:00 1999 +0000
+++ b/lisp/international/encoded-kb.el	Fri Jul 23 07:20:12 1999 +0000
@@ -195,42 +195,36 @@
   (let* ((charset (aref encoded-kbd-iso2022-designations
 			(or (aref encoded-kbd-iso2022-invocations 2)
 			    (aref encoded-kbd-iso2022-invocations 0))))
-	 (last-command-char
-	  (if (= (charset-dimension charset) 1)
-	      (make-char charset last-command-char)
-	    (make-char charset last-command-char (read-char-exclusive)))))
-    (self-insert-command 1)
+	 (char (if (= (charset-dimension charset) 1)
+		   (make-char charset last-command-char)
+		 (make-char charset last-command-char (read-char-exclusive)))))
     (aset encoded-kbd-iso2022-invocations 2 nil)
-    ))
+    (setq unread-command-events (cons char unread-command-events))))
 
 (defun encoded-kbd-self-insert-iso2022-8bit ()
   (interactive)
   (let* ((charset (aref encoded-kbd-iso2022-designations
 			(or (aref encoded-kbd-iso2022-invocations 2)
 			    (aref encoded-kbd-iso2022-invocations 1))))
-	 (last-command-char
-	  (if (= (charset-dimension charset) 1)
-	      (make-char charset last-command-char)
-	    (make-char charset last-command-char (read-char-exclusive)))))
-    (self-insert-command 1)
+	 (char (if (= (charset-dimension charset) 1)
+		   (make-char charset last-command-char)
+		 (make-char charset last-command-char (read-char-exclusive)))))
     (aset encoded-kbd-iso2022-invocations 2 nil)
-    ))
+    (setq unread-command-events (cons char unread-command-events))))
 
 (defun encoded-kbd-self-insert-sjis ()
   (interactive)
-  (let ((last-command-char
-	 (if (or (< last-command-char ?\xA0) (>= last-command-char ?\xE0))
-	     (decode-sjis-char (+ (ash last-command-char 8)
-				  (read-char-exclusive)))
-	   (make-char 'katakana-jisx0201 last-command-char))))
-    (self-insert-command 1)))
+  (let ((char (if (or (< last-command-char ?\xA0) (>= last-command-char ?\xE0))
+		  (decode-sjis-char (+ (ash last-command-char 8)
+				       (read-char-exclusive)))
+		(make-char 'katakana-jisx0201 last-command-char))))
+    (setq unread-command-events (cons char unread-command-events))))
 
 (defun encoded-kbd-self-insert-big5 ()
   (interactive)
-  (let ((last-command-char
-	 (decode-big5-char (+ (ash last-command-char 8)
-			      (read-char-exclusive)))))
-    (self-insert-command 1)))
+  (let ((char (decode-big5-char (+ (ash last-command-char 8)
+				   (read-char-exclusive)))))
+    (setq unread-command-events (cons char unread-command-events))))
 
 ;; Input mode at the time Encoded-kbd mode is turned on is saved here.
 (defvar saved-input-mode nil)