Revision: 6558
Author: ek.kato
Date: Wed Jul 21 01:35:01 2010
Log: * scm/anthy-utf8.scm
  - (anthy-utf8-make-whole-string)
  - (anthy-utf8-proc-input-state-with-preedit)
  - (anthy-utf8-context-confirm-kana!)
    - Support residual-kana with more than one character.
* scm/skk.scm (skk-proc-state-kanji) : Ditto.   
* scm/wnn.scm
* scm/social-ime.scm
* scm/canna.scm
* scm/ajax-ime.scm
* scm/anthy.scm
* scm/yahoo-jp.scm
* scm/mana.scm
* scm/sj3.scm
  - Port changes from anthy-utf8.scm.

http://code.google.com/p/uim/source/detail?r=6558

Modified:
 /trunk/scm/ajax-ime.scm
 /trunk/scm/anthy-utf8.scm
 /trunk/scm/anthy.scm
 /trunk/scm/canna.scm
 /trunk/scm/mana.scm
 /trunk/scm/sj3.scm
 /trunk/scm/skk.scm
 /trunk/scm/social-ime.scm
 /trunk/scm/wnn.scm
 /trunk/scm/yahoo-jp.scm

=======================================
--- /trunk/scm/ajax-ime.scm     Tue Jul 20 01:20:45 2010
+++ /trunk/scm/ajax-ime.scm     Wed Jul 21 01:35:01 2010
@@ -549,8 +549,10 @@
              (string-append-map-ustr-former extract-kana preconv-str)
              (if convert-pending-into-kana?
                  (if residual-kana
-                     (extract-kana residual-kana)
-                      pending)
+                    (if (list? (car residual-kana))
+                      (string-append-map extract-kana residual-kana)
+                     (extract-kana residual-kana))
+                    pending)
                  pending)
               (string-append-map-ustr-latter extract-kana preconv-str))))
           kana)
@@ -558,8 +560,10 @@
           (string-append-map-ustr-former extract-kana preconv-str)
            (if convert-pending-into-kana?
                (if residual-kana
-                   (extract-kana residual-kana)
-                   "")
+                 (if (list? (car residual-kana))
+                   (string-append-map extract-kana residual-kana)
+                   (extract-kana residual-kana))
+                 "")
                pending)
            (string-append-map-ustr-latter extract-kana preconv-str))))))

@@ -1290,7 +1294,9 @@
                (residual-kana (rk-push-key-last! rkc)))
            (if residual-kana
                (begin
-                 (ustr-insert-elem! preconv-str residual-kana)
+                  (if (list? (car residual-kana))
+                    (ustr-insert-seq! preconv-str residual-kana)
+                    (ustr-insert-elem! preconv-str residual-kana))
                  (ustr-insert-elem! raw-str pend)))))

       (if (ajax-ime-context-alnum ac)
@@ -1300,7 +1306,9 @@
            (rk-flush rkc) ;; OK to reset rkc here.
            (if residual-kana
                (begin
-                 (ustr-insert-elem! preconv-str residual-kana)
+                  (if (list? (car residual-kana))
+                    (ustr-insert-seq! preconv-str residual-kana)
+                    (ustr-insert-elem! preconv-str residual-kana))
                  (ustr-insert-elem! raw-str pend)))
            (ustr-insert-elem! preconv-str
                               (if (= (ajax-ime-context-alnum-type ac)
@@ -1344,7 +1352,9 @@
               (residual-kana (rk-peek-terminal-match rkc)))
          (if residual-kana
              (begin
-               (ustr-insert-elem! preconv-str residual-kana)
+                (if (list? (car residual-kana))
+                  (ustr-insert-seq! preconv-str residual-kana)
+                  (ustr-insert-elem! preconv-str residual-kana))
                (rk-flush rkc)))))))

 (define (ajax-ime-reset-prediction-window ac)
=======================================
--- /trunk/scm/anthy-utf8.scm   Tue Jul 20 01:20:45 2010
+++ /trunk/scm/anthy-utf8.scm   Wed Jul 21 01:35:01 2010
@@ -438,8 +438,10 @@
              (string-append-map-ustr-former extract-kana preconv-str)
              (if convert-pending-into-kana?
                  (if residual-kana
-                     (extract-kana residual-kana)
-                     pending)
+                    (if (list? (car residual-kana))
+                      (string-append-map extract-kana residual-kana)
+                     (extract-kana residual-kana))
+                    pending)
                  pending)
              (string-append-map-ustr-latter extract-kana preconv-str))))
           kana)
@@ -447,8 +449,10 @@
           (string-append-map-ustr-former extract-kana preconv-str)
           (if convert-pending-into-kana?
               (if residual-kana
-                  (extract-kana residual-kana)
-                  "")
+                 (if (list? (car residual-kana))
+                   (string-append-map extract-kana residual-kana)
+                  (extract-kana residual-kana))
+                 "")
               pending)
           (string-append-map-ustr-latter extract-kana preconv-str))))))

@@ -1284,7 +1288,9 @@
                  (residual-kana (rk-push-key-last! rkc)))
              (if residual-kana
                  (begin
-                   (ustr-insert-elem! preconv-str residual-kana)
+                    (if (list? (car residual-kana))
+                      (ustr-insert-seq! preconv-str residual-kana)
+                      (ustr-insert-elem! preconv-str residual-kana))
                    (ustr-insert-elem! raw-str pend)))))

        (if (anthy-utf8-context-alnum ac)
@@ -1298,7 +1304,9 @@
              (rk-flush rkc) ;; OK to reset rkc here.
              (if residual-kana
                  (begin
-                   (ustr-insert-elem! preconv-str residual-kana)
+                    (if (list? (car residual-kana))
+                      (ustr-insert-seq! preconv-str residual-kana)
+                      (ustr-insert-elem! preconv-str residual-kana))
                    (ustr-insert-elem! raw-str pend)))
              (ustr-insert-elem! preconv-str
                                 (if (= (anthy-utf8-context-alnum-type ac)
@@ -1357,7 +1365,9 @@
               (residual-kana (rk-peek-terminal-match rkc)))
            (if residual-kana
                (begin
-                 (ustr-insert-elem! preconv-str residual-kana)
+                  (if (list? (car residual-kana))
+                    (ustr-insert-seq! preconv-str residual-kana)
+                    (ustr-insert-elem! preconv-str residual-kana))
                  (rk-flush rkc)))))))

 (define anthy-utf8-reset-prediction-window
=======================================
--- /trunk/scm/anthy.scm        Tue Jul 20 01:20:45 2010
+++ /trunk/scm/anthy.scm        Wed Jul 21 01:35:01 2010
@@ -430,8 +430,10 @@
              (string-append-map-ustr-former extract-kana preconv-str)
              (if convert-pending-into-kana?
                  (if residual-kana
-                     (extract-kana residual-kana)
-                     pending)
+                    (if (list? (car residual-kana))
+                      (string-append-map extract-kana residual-kana)
+                     (extract-kana residual-kana))
+                    pending)
                  pending)
              (string-append-map-ustr-latter extract-kana preconv-str))))
           kana)
@@ -439,8 +441,10 @@
           (string-append-map-ustr-former extract-kana preconv-str)
           (if convert-pending-into-kana?
               (if residual-kana
-                  (extract-kana residual-kana)
-                  "")
+                 (if (list? (car residual-kana))
+                   (string-append-map extract-kana residual-kana)
+                  (extract-kana residual-kana))
+                 "")
               pending)
           (string-append-map-ustr-latter extract-kana preconv-str))))))

@@ -1276,7 +1280,9 @@
                  (residual-kana (rk-push-key-last! rkc)))
              (if residual-kana
                  (begin
-                   (ustr-insert-elem! preconv-str residual-kana)
+                    (if (list? (car residual-kana))
+                      (ustr-insert-seq! preconv-str residual-kana)
+                      (ustr-insert-elem! preconv-str residual-kana))
                    (ustr-insert-elem! raw-str pend)))))

        (if (anthy-context-alnum ac)
@@ -1290,7 +1296,9 @@
              (rk-flush rkc) ;; OK to reset rkc here.
              (if residual-kana
                  (begin
-                   (ustr-insert-elem! preconv-str residual-kana)
+                    (if (list? (car residual-kana))
+                      (ustr-insert-seq! preconv-str residual-kana)
+                      (ustr-insert-elem! preconv-str residual-kana))
                    (ustr-insert-elem! raw-str pend)))
              (ustr-insert-elem! preconv-str
                                 (if (= (anthy-context-alnum-type ac)
@@ -1349,7 +1357,9 @@
               (residual-kana (rk-peek-terminal-match rkc)))
            (if residual-kana
                (begin
-                 (ustr-insert-elem! preconv-str residual-kana)
+                  (if (list? (car residual-kana))
+                    (ustr-insert-seq! preconv-str residual-kana)
+                    (ustr-insert-elem! preconv-str residual-kana))
                  (rk-flush rkc)))))))

 (define anthy-reset-prediction-window
=======================================
--- /trunk/scm/canna.scm        Tue Jul 20 01:20:45 2010
+++ /trunk/scm/canna.scm        Wed Jul 21 01:35:01 2010
@@ -422,8 +422,10 @@
              (string-append-map-ustr-former extract-kana preconv-str)
              (if convert-pending-into-kana?
                  (if residual-kana
-                     (extract-kana residual-kana)
-                      pending)
+                    (if (list? (car residual-kana))
+                      (string-append-map extract-kana residual-kana)
+                     (extract-kana residual-kana))
+                    pending)
                  pending)
               (string-append-map-ustr-latter extract-kana preconv-str))))
           kana)
@@ -431,8 +433,10 @@
           (string-append-map-ustr-former extract-kana preconv-str)
            (if convert-pending-into-kana?
                (if residual-kana
-                   (extract-kana residual-kana)
-                   "")
+                 (if (list? (car residual-kana))
+                   (string-append-map extract-kana residual-kana)
+                   (extract-kana residual-kana))
+                 "")
                pending)
            (string-append-map-ustr-latter extract-kana preconv-str))))))

@@ -1157,7 +1161,9 @@
                (residual-kana (rk-push-key-last! rkc)))
            (if residual-kana
                (begin
-                 (ustr-insert-elem! preconv-str residual-kana)
+                  (if (list? (car residual-kana))
+                    (ustr-insert-seq! preconv-str residual-kana)
+                    (ustr-insert-elem! preconv-str residual-kana))
                  (ustr-insert-elem! raw-str pend)))))

       (if (canna-context-alnum cc)
@@ -1167,7 +1173,9 @@
            (rk-flush rkc) ;; OK to reset rkc here.
            (if residual-kana
                (begin
-                 (ustr-insert-elem! preconv-str residual-kana)
+                  (if (list? (car residual-kana))
+                    (ustr-insert-seq! preconv-str residual-kana)
+                    (ustr-insert-elem! preconv-str residual-kana))
                  (ustr-insert-elem! raw-str pend)))
            (ustr-insert-elem! preconv-str
                               (if (= (canna-context-alnum-type cc)
@@ -1211,7 +1219,9 @@
               (residual-kana (rk-peek-terminal-match rkc)))
          (if residual-kana
              (begin
-               (ustr-insert-elem! preconv-str residual-kana)
+                (if (list? (car residual-kana))
+                  (ustr-insert-seq! preconv-str residual-kana)
+                  (ustr-insert-elem! preconv-str residual-kana))
                (rk-flush rkc)))))))

 (define (canna-reset-prediction-window cc)
=======================================
--- /trunk/scm/mana.scm Tue Jul 20 01:20:45 2010
+++ /trunk/scm/mana.scm Wed Jul 21 01:35:01 2010
@@ -632,8 +632,10 @@
              (string-append-map-ustr-former extract-kana preconv-str)
              (if convert-pending-into-kana?
                  (if residual-kana
-                     (extract-kana residual-kana)
-                     pending)
+                    (if (list? (car residual-kana))
+                      (string-append-map extract-kana residual-kana)
+                     (extract-kana residual-kana))
+                    pending)
                  pending)
              (string-append-map-ustr-latter extract-kana preconv-str))))
           kana)
@@ -641,8 +643,10 @@
           (string-append-map-ustr-former extract-kana preconv-str)
           (if convert-pending-into-kana?
               (if residual-kana
-                  (extract-kana residual-kana)
-                   "")
+                 (if (list? (car residual-kana))
+                   (string-append-map extract-kana residual-kana)
+                  (extract-kana residual-kana))
+                 "")
               pending)
           (string-append-map-ustr-latter extract-kana preconv-str))))))

@@ -1214,7 +1218,9 @@
                  (residual-kana (rk-push-key-last! rkc)))
              (if residual-kana
                  (begin
-                   (ustr-insert-elem! preconv-str residual-kana)
+                    (if (list? (car residual-kana))
+                      (ustr-insert-seq! preconv-str residual-kana)
+                      (ustr-insert-elem! preconv-str residual-kana))
                    (ustr-insert-elem! raw-str pend)))))

        (if (mana-context-alnum mc)
@@ -1224,7 +1230,9 @@
              (rk-flush rkc) ;; OK to reset rkc here.
              (if residual-kana
                  (begin
-                   (ustr-insert-elem! preconv-str residual-kana)
+                    (if (list? (car residual-kana))
+                      (ustr-insert-seq! preconv-str residual-kana)
+                      (ustr-insert-elem! preconv-str residual-kana))
                    (ustr-insert-elem! raw-str pend)))
              (ustr-insert-elem! preconv-str
                                 (if (= (mana-context-alnum-type mc)
@@ -1268,7 +1276,9 @@
                (residual-kana (rk-peek-terminal-match rkc)))
           (if residual-kana
               (begin
-                (ustr-insert-elem! preconv-str residual-kana)
+                (if (list? (car residual-kana))
+                  (ustr-insert-seq! preconv-str residual-kana)
+                  (ustr-insert-elem! preconv-str residual-kana))
                 (rk-flush rkc)))))))

 (define mana-proc-input-state
=======================================
--- /trunk/scm/sj3.scm  Tue Jul 20 01:20:45 2010
+++ /trunk/scm/sj3.scm  Wed Jul 21 01:35:01 2010
@@ -705,8 +705,10 @@
              (string-append-map-ustr-former extract-kana preconv-str)
              (if convert-pending-into-kana?
                  (if residual-kana
-                     (extract-kana residual-kana)
-                      pending)
+                    (if (list? (car residual-kana))
+                      (string-append-map extract-kana residual-kana)
+                     (extract-kana residual-kana))
+                    pending)
                  pending)
               (string-append-map-ustr-latter extract-kana preconv-str))))
           kana)
@@ -714,8 +716,10 @@
           (string-append-map-ustr-former extract-kana preconv-str)
            (if convert-pending-into-kana?
                (if residual-kana
-                   (extract-kana residual-kana)
-                   "")
+                 (if (list? (car residual-kana))
+                   (string-append-map extract-kana residual-kana)
+                   (extract-kana residual-kana))
+                 "")
                pending)
            (string-append-map-ustr-latter extract-kana preconv-str))))))

@@ -1438,7 +1442,9 @@
                (residual-kana (rk-push-key-last! rkc)))
            (if residual-kana
                (begin
-                 (ustr-insert-elem! preconv-str residual-kana)
+                  (if (list? (car residual-kana))
+                    (ustr-insert-seq! preconv-str residual-kana)
+                    (ustr-insert-elem! preconv-str residual-kana))
                  (ustr-insert-elem! raw-str pend)))))

       (if (sj3-context-alnum sc)
@@ -1448,7 +1454,9 @@
            (rk-flush rkc) ;; OK to reset rkc here.
            (if residual-kana
                (begin
-                 (ustr-insert-elem! preconv-str residual-kana)
+                  (if (list? (car residual-kana))
+                    (ustr-insert-seq! preconv-str residual-kana)
+                    (ustr-insert-elem! preconv-str residual-kana))
                  (ustr-insert-elem! raw-str pend)))
            (ustr-insert-elem! preconv-str
                               (if (= (sj3-context-alnum-type sc)
@@ -1492,7 +1500,9 @@
               (residual-kana (rk-peek-terminal-match rkc)))
          (if residual-kana
              (begin
-               (ustr-insert-elem! preconv-str residual-kana)
+                (if (list? (car residual-kana))
+                  (ustr-insert-seq! preconv-str residual-kana)
+                  (ustr-insert-elem! preconv-str residual-kana))
                (rk-flush rkc)))))))

 (define (sj3-reset-prediction-window sc)
=======================================
--- /trunk/scm/skk.scm  Tue Jul 20 01:20:45 2010
+++ /trunk/scm/skk.scm  Wed Jul 21 01:35:01 2010
@@ -1560,10 +1560,15 @@
                      (charcode->string (skk-ichar-downcase key)))))
           (let* ((residual-kana (rk-push-key-last! rkc)))
             (if residual-kana
+               (if (list? (car residual-kana))
+                 (skk-context-set-head! sc (append (reverse
+                                                     residual-kana)
+                                                   (skk-context-head
+                                                     sc)))
                 (skk-context-set-head! sc
                                        (cons
                                         residual-kana
-                                        (skk-context-head sc))))
+                                        (skk-context-head sc)))))
             #t)
           #t)
        (begin
=======================================
--- /trunk/scm/social-ime.scm   Tue Jul 20 01:20:45 2010
+++ /trunk/scm/social-ime.scm   Wed Jul 21 01:35:01 2010
@@ -609,8 +609,10 @@
              (string-append-map-ustr-former extract-kana preconv-str)
              (if convert-pending-into-kana?
                  (if residual-kana
-                     (extract-kana residual-kana)
-                      pending)
+                    (if (list? (car residual-kana))
+                      (string-append-map extract-kana residual-kana)
+                     (extract-kana residual-kana))
+                    pending)
                  pending)
               (string-append-map-ustr-latter extract-kana preconv-str))))
           kana)
@@ -618,8 +620,10 @@
           (string-append-map-ustr-former extract-kana preconv-str)
            (if convert-pending-into-kana?
                (if residual-kana
-                   (extract-kana residual-kana)
-                   "")
+                 (if (list? (car residual-kana))
+                   (string-append-map extract-kana residual-kana)
+                   (extract-kana residual-kana))
+                 "")
                pending)
            (string-append-map-ustr-latter extract-kana preconv-str))))))

@@ -1353,7 +1357,9 @@
                (residual-kana (rk-push-key-last! rkc)))
            (if residual-kana
                (begin
-                 (ustr-insert-elem! preconv-str residual-kana)
+                  (if (list? (car residual-kana))
+                    (ustr-insert-seq! preconv-str residual-kana)
+                    (ustr-insert-elem! preconv-str residual-kana))
                  (ustr-insert-elem! raw-str pend)))))

       (if (social-ime-context-alnum sc)
@@ -1363,7 +1369,9 @@
            (rk-flush rkc) ;; OK to reset rkc here.
            (if residual-kana
                (begin
-                 (ustr-insert-elem! preconv-str residual-kana)
+                  (if (list? (car residual-kana))
+                    (ustr-insert-seq! preconv-str residual-kana)
+                    (ustr-insert-elem! preconv-str residual-kana))
                  (ustr-insert-elem! raw-str pend)))
            (ustr-insert-elem! preconv-str
                               (if (= (social-ime-context-alnum-type sc)
@@ -1407,7 +1415,9 @@
               (residual-kana (rk-peek-terminal-match rkc)))
          (if residual-kana
              (begin
-               (ustr-insert-elem! preconv-str residual-kana)
+                (if (list? (car residual-kana))
+                  (ustr-insert-seq! preconv-str residual-kana)
+                  (ustr-insert-elem! preconv-str residual-kana))
                (rk-flush rkc)))))))

 (define (social-ime-reset-prediction-window sc)
=======================================
--- /trunk/scm/wnn.scm  Tue Jul 20 01:20:45 2010
+++ /trunk/scm/wnn.scm  Wed Jul 21 01:35:01 2010
@@ -489,8 +489,10 @@
              (string-append-map-ustr-former extract-kana preconv-str)
              (if convert-pending-into-kana?
                  (if residual-kana
-                     (extract-kana residual-kana)
-                      pending)
+                    (if (list? (car residual-kana))
+                      (string-append-map extract-kana residual-kana)
+                     (extract-kana residual-kana))
+                    pending)
                  pending)
               (string-append-map-ustr-latter extract-kana preconv-str))))
           kana)
@@ -498,8 +500,10 @@
           (string-append-map-ustr-former extract-kana preconv-str)
            (if convert-pending-into-kana?
                (if residual-kana
-                   (extract-kana residual-kana)
-                   "")
+                 (if (list? (car residual-kana))
+                   (string-append-map extract-kana residual-kana)
+                   (extract-kana residual-kana))
+                 "")
                pending)
            (string-append-map-ustr-latter extract-kana preconv-str))))))

@@ -1211,7 +1215,9 @@
                (residual-kana (rk-push-key-last! rkc)))
            (if residual-kana
                (begin
-                 (ustr-insert-elem! preconv-str residual-kana)
+                  (if (list? (car residual-kana))
+                    (ustr-insert-seq! preconv-str residual-kana)
+                    (ustr-insert-elem! preconv-str residual-kana))
                  (ustr-insert-elem! raw-str pend)))))

       (if (wnn-context-alnum wc)
@@ -1221,7 +1227,9 @@
            (rk-flush rkc) ;; OK to reset rkc here.
            (if residual-kana
                (begin
-                 (ustr-insert-elem! preconv-str residual-kana)
+                  (if (list? (car residual-kana))
+                    (ustr-insert-seq! preconv-str residual-kana)
+                    (ustr-insert-elem! preconv-str residual-kana))
                  (ustr-insert-elem! raw-str pend)))
            (ustr-insert-elem! preconv-str
                               (if (= (wnn-context-alnum-type wc)
@@ -1263,7 +1271,9 @@
               (residual-kana (rk-peek-terminal-match rkc)))
          (if residual-kana
              (begin
-               (ustr-insert-elem! preconv-str residual-kana)
+                (if (list? (car residual-kana))
+                  (ustr-insert-seq! preconv-str residual-kana)
+                  (ustr-insert-elem! preconv-str residual-kana))
                (rk-flush rkc)))))))

 (define (wnn-reset-prediction-window wc)
=======================================
--- /trunk/scm/yahoo-jp.scm     Tue Jul 20 01:20:45 2010
+++ /trunk/scm/yahoo-jp.scm     Wed Jul 21 01:35:01 2010
@@ -634,8 +634,10 @@
              (string-append-map-ustr-former extract-kana preconv-str)
              (if convert-pending-into-kana?
                  (if residual-kana
-                     (extract-kana residual-kana)
-                      pending)
+                    (if (list? (car residual-kana))
+                      (string-append-map extract-kana residual-kana)
+                     (extract-kana residual-kana))
+                    pending)
                  pending)
               (string-append-map-ustr-latter extract-kana preconv-str))))
           kana)
@@ -643,8 +645,10 @@
           (string-append-map-ustr-former extract-kana preconv-str)
            (if convert-pending-into-kana?
                (if residual-kana
-                   (extract-kana residual-kana)
-                   "")
+                 (if (list? (car residual-kana))
+                   (string-append-map extract-kana residual-kana)
+                   (extract-kana residual-kana))
+                 "")
                pending)
            (string-append-map-ustr-latter extract-kana preconv-str))))))

@@ -1369,7 +1373,9 @@
                (residual-kana (rk-push-key-last! rkc)))
            (if residual-kana
                (begin
-                 (ustr-insert-elem! preconv-str residual-kana)
+                  (if (list? (car residual-kana))
+                    (ustr-insert-seq! preconv-str residual-kana)
+                    (ustr-insert-elem! preconv-str residual-kana))
                  (ustr-insert-elem! raw-str pend)))))

       (if (yahoo-jp-context-alnum yc)
@@ -1379,7 +1385,9 @@
            (rk-flush rkc) ;; OK to reset rkc here.
            (if residual-kana
                (begin
-                 (ustr-insert-elem! preconv-str residual-kana)
+                  (if (list? (car residual-kana))
+                    (ustr-insert-seq! preconv-str residual-kana)
+                    (ustr-insert-elem! preconv-str residual-kana))
                  (ustr-insert-elem! raw-str pend)))
            (ustr-insert-elem! preconv-str
                               (if (= (yahoo-jp-context-alnum-type yc)
@@ -1423,7 +1431,9 @@
               (residual-kana (rk-peek-terminal-match rkc)))
          (if residual-kana
              (begin
-               (ustr-insert-elem! preconv-str residual-kana)
+                (if (list? (car residual-kana))
+                  (ustr-insert-seq! preconv-str residual-kana)
+                  (ustr-insert-elem! preconv-str residual-kana))
                (rk-flush rkc)))))))

 (define (yahoo-jp-reset-prediction-window yc)

Reply via email to