# HG changeset patch # User Kenichi Handa # Date 959744989 0 # Node ID 44c929164604935045d690fbdc19d99f8ce72e17 # Parent e67ef9cdfe512e6e699b141ff9ab43530658f224 (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. diff -r e67ef9cdfe51 -r 44c929164604 lisp/international/quail.el --- a/lisp/international/quail.el Wed May 31 03:49:22 2000 +0000 +++ b/lisp/international/quail.el Wed May 31 03:49:49 2000 +0000 @@ -1065,11 +1065,12 @@ (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 @@ (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))