diff options
author | Juri Linkov <juri@jurta.org> | 2005-10-28 05:47:31 +0000 |
---|---|---|
committer | Juri Linkov <juri@jurta.org> | 2005-10-28 05:47:31 +0000 |
commit | 91a802b0bf87fd4d81f3488740e6eea54dac13f5 (patch) | |
tree | 3947f9f11b1d333ab22fe54691466d921b6adaa6 /lisp | |
parent | 887ec6f1cdbc38761d04583be24cb2b2c244e917 (diff) | |
download | emacs-91a802b0bf87fd4d81f3488740e6eea54dac13f5.tar.gz |
(quail-get-current-str): Translate last raw character
for deterministic input methods.
Diffstat (limited to 'lisp')
-rw-r--r-- | lisp/international/quail.el | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/lisp/international/quail.el b/lisp/international/quail.el index e706a26d641..3998764957e 100644 --- a/lisp/international/quail.el +++ b/lisp/international/quail.el @@ -1598,13 +1598,21 @@ Quail map for the sequence." (or (and (consp def) (aref (cdr def) (car (car def)))) def (and (> len 1) - (let ((str (quail-get-current-str - (1- len) - (quail-map-definition (quail-lookup-key - quail-current-key (1- len)))))) + (let* ((str (quail-get-current-str + (1- len) + (quail-map-definition (quail-lookup-key + quail-current-key (1- len))))) + (substr1 (substring quail-current-key (1- len) len)) + (str1 (and (quail-deterministic) + (quail-get-current-str + 1 + (quail-map-definition (quail-lookup-key + substr1 1)))))) (if str (concat (if (stringp str) str (char-to-string str)) - (substring quail-current-key (1- len) len))))))) + (if str1 + (if (stringp str1) str1 (char-to-string str1)) + substr1))))))) (defvar quail-guidance-translations-starting-column 20) |