From: Kenichi Handa Date: Wed, 3 Sep 1997 05:46:54 +0000 (+0000) Subject: (quail-update-guidance): If PROMPTKEY is X-Git-Tag: emacs-20.1~225 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=b8cd1360b12951a47ff37eefb68d9e59c2c83309;p=emacs.git (quail-update-guidance): If PROMPTKEY is specified in the original CXTERM dictionary, show also candidates in Quail guidance buffer. (quail-show-translations): Likewise. --- diff --git a/lisp/international/quail.el b/lisp/international/quail.el index 87931cd5666..df5f009988d 100644 --- a/lisp/international/quail.el +++ b/lisp/international/quail.el @@ -1457,7 +1457,8 @@ or in a newly created frame (if the selected frame has no other windows)." (if (or input-method-verbose-flag (not (eq (selected-window) (minibuffer-window)))) (let ((guidance (quail-guidance))) - (cond ((eq guidance t) + (cond ((or (eq guidance t) + (listp guidance)) ;; Show the current possible translations. (quail-show-translations)) ((null guidance) @@ -1466,21 +1467,7 @@ or in a newly created frame (if the selected frame has no other windows)." (save-excursion (set-buffer quail-guidance-buf) (erase-buffer) - (insert key)))) - ((listp guidance) - ;; Show alternative characters specified in this alist. - (let* ((key quail-current-key) - (len (length key)) - (i 0) - ch alternative) - (save-excursion - (set-buffer quail-guidance-buf) - (erase-buffer) - (while (< i len) - (setq ch (aref key i)) - (setq alternative (cdr (assoc ch guidance))) - (insert (or alternative ch)) - (setq i (1+ i))))))))) + (insert key))))))) ;; Update completion buffer if displayed now. We highlight the ;; selected candidate string in *Completion* buffer if any. @@ -1525,7 +1512,18 @@ or in a newly created frame (if the selected frame has no other windows)." (erase-buffer) ;; Show the current key. - (insert key) + (let ((guidance (quail-guidance))) + (if (listp guidance) + ;; We must show the specified PROMPTKEY instead of the + ;; actual typed keys. + (let ((i 0) + (len (length key)) + prompt-key) + (while (< i len) + (setq prompt-key (cdr (assoc (aref key i) guidance))) + (insert (or prompt-key (aref key i))) + (setq i (1+ i)))) + (insert key))) ;; Show followable keys. (if (cdr map)