]> git.eshelyaron.com Git - emacs.git/commitdiff
(quail-get-current-str): Translate last raw character
authorJuri Linkov <juri@jurta.org>
Fri, 28 Oct 2005 05:47:31 +0000 (05:47 +0000)
committerJuri Linkov <juri@jurta.org>
Fri, 28 Oct 2005 05:47:31 +0000 (05:47 +0000)
for deterministic input methods.

lisp/international/quail.el

index e706a26d641ba3f0781821831eea9261b0bc96ea..3998764957ed292b11551de3be0231a8f63b8da6 100644 (file)
@@ -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)