Takuro Ashie
ashie****@homa*****
2005年 5月 26日 (木) 16:36:58 JST
足永です. 大力さんに提供して頂いたパッチとはかなり違う形となりましたが,CVS版の scim-anthyで,文字単位でpreedit文字列を編集できるようにしました. ただ[Scim-imengine-dev 315]で話したような実装方法とは多少異なっていて, ちょっと手抜きをしています. 例えば,"lts" と打ってからカーソルキーで "t" の後ろに戻って "u" を入力す ると,"っs" となった方が良いかと思いますが "lつs"となってしまいます. 当初の予定通りの実装に書き直しても良いのですが,面倒臭いのでこれはそのま ま仕様としてリリースしてしまうかもしれません. また,私自身はローマ字単位で編集出来たほうが幸せなので,デフォルトでは従 来通りの挙動になっています.ローマ字設定の「文字列編集時にローマ字を分割 できるようにする」にチェックを入れると,文字単位での編集ができるようにな ります. Microsoft IMEでは文字単位での編集,ATOKではローマ字単位での編集となって いるので,どちらをデフォルトにするかは少し迷うところです. この変更に伴いpreedit回りのコードは少し整理して,読みの文字列を別クラス として分離しました.以前よりは読みやすくなっているのではないかと思いま す.コードを整理したことで,部分コミット時にカーソルの位置がおかしくなる ことがあるバグも直りました. そのうち変換文字列部分も分離して,ほのかたんのようにpreeditorや変換エン ジンをかんたんに切替えられるだけのキャパシティは備えようと思っています. が,実際には変換エンジンの切替えはサポートしません.そういう機能が欲しい 方はほのかたんに期待して下さい :) preeditorの方は色々考えていることはあるのですが,実際にそれを実現するだ けの時間的リソースを割けるかどうかはわからないので,具体的な事は言わない でおきます.