summaryrefslogtreecommitdiff
path: root/lisp/international/quail.el
diff options
context:
space:
mode:
authorKenichi Handa <handa@m17n.org>2004-04-20 08:20:26 +0000
committerKenichi Handa <handa@m17n.org>2004-04-20 08:20:26 +0000
commit5b6156fa6a66b32c9b5fbf8e7cc6e01ec85c9250 (patch)
tree8dbe8f4376576f7338bfaa3738be3c8f1e5444c8 /lisp/international/quail.el
parenta19788b1397908fc815956810440f6d85c0a1406 (diff)
downloademacs-5b6156fa6a66b32c9b5fbf8e7cc6e01ec85c9250.tar.gz
(quail-lookup-key): New optional arg
NOT-RESET-INDICES. (quail-get-translations): Call quail-lookup-key with NOT-RESET-INDICES t. (quail-completion): Likewise. (quail-lookup-map-and-concat): Likewise.
Diffstat (limited to 'lisp/international/quail.el')
-rw-r--r--lisp/international/quail.el10
1 files changed, 5 insertions, 5 deletions
diff --git a/lisp/international/quail.el b/lisp/international/quail.el
index cfd578fbc06..9e289c300d9 100644
--- a/lisp/international/quail.el
+++ b/lisp/international/quail.el
@@ -1218,7 +1218,7 @@ selected translation."
(t
(error "Invalid object in Quail map: %s" def))))
-(defun quail-lookup-key (key &optional len)
+(defun quail-lookup-key (key &optional len not-reset-indices)
"Lookup KEY of length LEN in the current Quail map and return the definition.
The returned value is a Quail map specific to KEY."
(or len
@@ -1256,7 +1256,7 @@ The returned value is a Quail map specific to KEY."
(if (and (consp translation) (vectorp (cdr translation)))
(progn
(setq quail-current-translations translation)
- (if (quail-forget-last-selection)
+ (if (and (not not-reset-indices) (quail-forget-last-selection))
(setcar (car quail-current-translations) 0))))))
;; We may have to reform cdr part of MAP.
(if (and (cdr map) (functionp (cdr map)))
@@ -2043,7 +2043,7 @@ minibuffer and the selected frame has no other windows)."
(defun quail-get-translations ()
"Return a string containing the current possible translations."
- (let ((map (quail-lookup-key quail-current-key))
+ (let ((map (quail-lookup-key quail-current-key nil t))
(str (copy-sequence quail-current-key)))
(if quail-current-translations
(quail-update-current-translations))
@@ -2114,7 +2114,7 @@ are shown (at most to the depth specified `quail-completion-max-depth')."
(quail-setup-completion-buf)
(let ((win (get-buffer-window quail-completion-buf 'visible))
(key quail-current-key)
- (map (quail-lookup-key quail-current-key))
+ (map (quail-lookup-key quail-current-key nil t))
(require-update nil))
(with-current-buffer quail-completion-buf
(if (and win
@@ -2695,7 +2695,7 @@ function `quail-install-map' (which see)."
(translation-list nil)
map)
(while (> len 0)
- (setq map (quail-lookup-key key len)
+ (setq map (quail-lookup-key key len t)
len (1- len))
(if map
(let* ((def (quail-map-definition map))