From f9f1ed46bffae56bcdb7f0032e7839b98ba468d9 Mon Sep 17 00:00:00 2001 From: Kenichi Handa Date: Wed, 31 May 2000 03:49:49 +0000 Subject: [PATCH] (quail-start-conversion): Don't include unhandled events in the returned events, but set them in unread-command-events. Exit if all inputs are deleted. --- lisp/international/quail.el | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/lisp/international/quail.el b/lisp/international/quail.el index 3410f5c13ef..c7e2da541f7 100644 --- a/lisp/international/quail.el +++ b/lisp/international/quail.el @@ -1065,11 +1065,12 @@ The returned value is a Quail map specific to KEY." (if (stringp quail-current-str) quail-current-str (char-to-string quail-current-str))))) - (if input-method-exit-on-first-char + (if (or input-method-exit-on-first-char + (= (length quail-conversion-str) 0)) (setq quail-converting nil))))) ;; KEYSEQ is not defined in the conversion keymap. ;; Let's return the event(s) to the caller. - (setq generated-events + (setq unread-command-events (string-to-list (this-single-command-raw-keys))) (setq quail-converting nil)))) (if (overlay-start quail-conv-overlay) @@ -1077,11 +1078,10 @@ The returned value is a Quail map specific to KEY." (overlay-end quail-conv-overlay))) (if (> (length quail-conversion-str) 0) (setq generated-events - (append (string-to-list - (if enable-multibyte-characters - quail-conversion-str - (string-make-unibyte quail-conversion-str))) - generated-events))) + (string-to-list + (if enable-multibyte-characters + quail-conversion-str + (string-make-unibyte quail-conversion-str))))) (if (and input-method-exit-on-first-char generated-events) (list (car generated-events)) generated-events)) -- 2.39.5