[Anthy-dev 59] Re: anthy-3630 & uim-1230

Back to archive index

TOKUNAGA Hiroyuki tkng****@xem*****
2003年 1月 1日 (水) 02:30:42 JST


 あけましておめでとうございます。徳永です。

 uim-1230を試してみて気づいた事について報告します。

■uim-anthyで変換中にシフト+矢印キーで文節を伸ばそうとすると落ちる事がある

 割と頻繁に、シフト+右矢印キーで文節を伸ばそうとすると落ちます。

 gdbでおっかけてみると、uim-func.c内のuim_code_conv関数の引数のstrが
0x0になっており、strlenにNULLを渡しているせいで落ちてしまっています。

 backtraceの最後の方はこんな感じです。

#0  0x4042539a in strlen () from /lib/libc.so.6
#1  0x4092bd2f in uim_code_conv (str=0x0, ic=0x813a6c0) at uim-func.c:98
#2  0x4092bc1a in uim_flush_cb (uc=0x813a4a8) at uim-func.c:56

 伸ばそうとする文節の文字のみ、uim_code_convにNULLが渡るみたいです。他の
文節はただしく文字が送られてきています。

 落ちる再現性のある文字列をみつけたので、いくつか書いておきます。学習状
況によって落ちる場合と落ちない場合があるみたいなので、もしかしたら他の人
の環境では落ちないかもしれませんが。anthyのバージョンは3500cです。

「もげ」
 変換->文節を「も|げ」に分ける->「も」の方の候補文字列をいくつか下げて
みる->文節を伸ばそうとする 

とすると、落ちます。

「わたしのなまえはまーしーです」

 変換すると「わたしの|名前|ハマーシーデス」となり、文節をハマーシーデス
の部分に持ってきて縮めると、「わたしの|名前|葉|マーシーデス」となる。こ
の状態で「葉」の部分を何回か変換してから文節を伸ばそうとすると落ちます。

 変換する文字列が「わたしのなまえはなかのです」だと何も起きません。


■uim-anthyで、preeditがない状態でもシフトキーなどが使えない

 preeditがない状態ではシフトキーを使ってテキストのコピーなどがしたいので
すが、uim-1230ではできません。

 anthy.scmをちょっと変更するとこれができるようになるのですが、わざとこう
していないのでしょうか? なんとなくわざとこうしてる気もちょっとします。

--- anthy.scm~  2002-12-23 22:28:44.000000000 +0900
+++ anthy.scm   2002-12-27 07:47:34.000000000 +0900
@@ -304,7 +304,9 @@
             #f)
           #t)
        (if (modifier-key-mask key-state)
-          #f
+          (begin
+            (im-commit-raw id)
+            #f)
           #t)
        (if (string-find (rk-expect rkc) key-str)
           (let ((res))


■uim-skkの不具合たち

 パッチを作ってみましたので添付しました。以下の問題点を修正できます。問
題点じゃないのも混じってますけど。

 ・preeditがない時でも、矢印キーでの移動やシフト+矢印でのテキスト
   の選択ができない
 ・落ちる事がある。skk-dic.cの処理におかしいところがありました。
 ・送り仮名付きの変換ができない
 ・候補windowをクリックして候補を選べるように



徳永拓之


-------------- next part --------------
テキスト形式以外の添付ファイルを保管しました...
ファイル名: uim-skk.patch
型:         application/octet-stream
サイズ:     1579 バイト
説明:       無し
下载 


Anthy-dev メーリングリストの案内
Back to archive index