aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenichi Handa1997-08-25 01:06:41 +0000
committerKenichi Handa1997-08-25 01:06:41 +0000
commitce9395a961b93b0d6ea72db2bc5f2a84d90d25ea (patch)
tree88c28dba22c08d3d9bbce5b4b82e0fc8c0758b1e
parentfc249843a8cdc8e02e1922377c5d22bf3b4db6e0 (diff)
downloademacs-ce9395a961b93b0d6ea72db2bc5f2a84d90d25ea.tar.gz
emacs-ce9395a961b93b0d6ea72db2bc5f2a84d90d25ea.zip
(quail-terminate-translation): Doc-string
fixed. Set quail-prefix-arg to nil after handling it. (quail-self-insert-command): Set overriding-terminal-local-map to nil when thown for `quail-tag' by value nil.
-rw-r--r--lisp/international/quail.el17
1 files changed, 10 insertions, 7 deletions
diff --git a/lisp/international/quail.el b/lisp/international/quail.el
index d03974ecfa9..3d1bbbf0452 100644
--- a/lisp/international/quail.el
+++ b/lisp/international/quail.el
@@ -947,9 +947,7 @@ The returned value is a Quail map specific to KEY."
947 (overlay-end quail-overlay)))) 947 (overlay-end quail-overlay))))
948 948
949(defun quail-terminate-translation () 949(defun quail-terminate-translation ()
950 "Terminate the translation of the current key. 950 "Terminate the translation of the current key."
951Optional arg SUPPRESS-INSERT-CHUNK-HOOK if non-nil means don't run hooks
952in `input-method-after-insert-chunk-hook' (which see)."
953 (let ((start (overlay-start quail-overlay))) 951 (let ((start (overlay-start quail-overlay)))
954 (if (and start 952 (if (and start
955 (< start (overlay-end quail-overlay))) 953 (< start (overlay-end quail-overlay)))
@@ -963,6 +961,7 @@ in `input-method-after-insert-chunk-hook' (which see)."
963 (quail-delete-region) 961 (quail-delete-region)
964 (setq last-command-char (car seq)) 962 (setq last-command-char (car seq))
965 (self-insert-command (or quail-prefix-arg 1)) 963 (self-insert-command (or quail-prefix-arg 1))
964 (setq quail-prefix-arg nil)
966 (setq seq (cdr seq)) 965 (setq seq (cdr seq))
967 (while seq 966 (while seq
968 (setq last-command-char (car seq)) 967 (setq last-command-char (car seq))
@@ -976,8 +975,8 @@ in `input-method-after-insert-chunk-hook' (which see)."
976 (setq overriding-terminal-local-map 975 (setq overriding-terminal-local-map
977 (quail-conversion-keymap)) 976 (quail-conversion-keymap))
978 ;; Run this hook only when the current input method doesn't require 977 ;; Run this hook only when the current input method doesn't require
979 ;; conversion. When it requires, the conversoin function should run 978 ;; conversion. When conversion is required, the conversion function
980 ;; this hook at a proper timing. 979 ;; should run this hook at a proper timing.
981 (unless (quail-conversion-keymap) 980 (unless (quail-conversion-keymap)
982 (run-hooks 'input-method-after-insert-chunk-hook))) 981 (run-hooks 'input-method-after-insert-chunk-hook)))
983 982
@@ -1018,8 +1017,12 @@ in `input-method-after-insert-chunk-hook' (which see)."
1018 (interactive "*") 1017 (interactive "*")
1019 (setq quail-current-key 1018 (setq quail-current-key
1020 (concat quail-current-key (char-to-string last-command-event))) 1019 (concat quail-current-key (char-to-string last-command-event)))
1021 (catch 'quail-tag 1020 (unless (catch 'quail-tag
1022 (quail-update-translation (quail-translate-key)))) 1021 (quail-update-translation (quail-translate-key))
1022 t)
1023 ;; If someone throws for `quail-tag' by value nil, we exit from
1024 ;; translation mode.
1025 (setq overriding-terminal-local-map nil)))
1023 1026
1024;; Return the actual definition part of Quail map MAP. 1027;; Return the actual definition part of Quail map MAP.
1025(defun quail-map-definition (map) 1028(defun quail-map-definition (map)