changeset 59066:c979627ce50b

(quail-start-translation): Fix prompt string for the case if input-method-use-echo-area being non-nil. (quail-start-conversion): Likewise. (quail-show-guidance): Don't show guidance if input-method-use-echo-area is non-nil.
author Kenichi Handa <handa@m17n.org>
date Wed, 22 Dec 2004 05:44:13 +0000
parents 64d9c1721a28
children fdadde62c624
files lisp/international/quail.el
diffstat 1 files changed, 15 insertions(+), 13 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/international/quail.el	Wed Dec 22 00:23:53 2004 +0000
+++ b/lisp/international/quail.el	Wed Dec 22 05:44:13 2004 +0000
@@ -1371,11 +1371,12 @@
 	(while quail-translating
 	  (set-buffer-modified-p modified-p)
 	  (quail-show-guidance)
-	  (let* ((keyseq (read-key-sequence
-			  (and input-method-use-echo-area
-			       (concat input-method-previous-message
-				       quail-current-str))
-			  nil nil t))
+	  (let* ((prompt (if input-method-use-echo-area
+			     (format "%s%s %s" 
+				     (or input-method-previous-message "")
+				     quail-current-str
+				     quail-guidance-str)))
+		 (keyseq (read-key-sequence prompt nil nil t))
 		 (cmd (lookup-key (quail-translation-keymap) keyseq)))
 	    (if (if key
 		    (and (commandp cmd) (not (eq cmd 'quail-other-command)))
@@ -1436,12 +1437,13 @@
 		      quail-translating t)
 		(quail-setup-overlays nil)))
 	  (quail-show-guidance)
-	  (let* ((keyseq (read-key-sequence
-			  (and input-method-use-echo-area
-			       (concat input-method-previous-message
-				       quail-conversion-str
-				       quail-current-str))
-			  nil nil t))
+	  (let* ((prompt (if input-method-use-echo-area
+			     (format "%s%s%s %s" 
+				     (or input-method-previous-message "")
+				     quail-conversion-str
+				     quail-current-str
+				     quail-guidance-str)))
+		 (keyseq (read-key-sequence prompt nil nil t))
 		 (cmd (lookup-key (quail-conversion-keymap) keyseq)))
 	    (if (if key (commandp cmd) (eq cmd 'quail-self-insert-command))
 		(progn
@@ -1950,10 +1952,10 @@
 
   ;; Then, show the guidance.
   (when (and (quail-require-guidance-buf)
+	     (not input-method-use-echo-area)
 	     (null unread-command-events)
 	     (null unread-post-input-method-events))
-    (if (or (eq (selected-window) (minibuffer-window))
-	    input-method-use-echo-area)
+    (if (eq (selected-window) (minibuffer-window))
 	(if (eq (minibuffer-window) (frame-root-window))
 	    ;; Use another frame.  It is sure that we are using some
 	    ;; window system.