« 今やっていること | トップページ | Linuxの件、進展しました »

2007年3月24日 (土)

Second Life Linux版での日本語入力の状況

Second Life Viewer の Linux 版は SDL (1.2) を使っています。SDL は、XIM に対応していることになっていますが、現在 (SDL 1.2.11) の SDL の実装は、XIM の使い方がメチャメチャで、ximcp ベースの入力は動作しません。つまり、SL Viewer の問題というよりは、SDL の問題のようです。

そこで、SDL の中にあるイベントハンドラ (というか、X Event を SDL Event にマップする一種のコンバータ) を書き直しており、なんとなく日本語入力ができるようになっているのですが、多数問題が残っています。

  • 矢印キーがアプリに伝わらない。
  • キーのオートリピートをまともに扱えていない。
  • 長いテキスト (漢字かな交じりで100文字程度以上) を一気に確定すると文字が抜ける。
  • フルスクリーンになったとき、(IMのon/offに係わらず) キー入力が一切できない。

最初の件は原因がわからず困っています。矢印キーを運ぶ KeyPressイベントが、XFilterEvent で消費されなかったときに、Xutf8LookupString に渡すと、なぜか Xutf8LookupString が status として XLookupNoneを返す (本来は XLookupKeySymが返るはずなのに) ところまでわかりましたが、なぜこうなるのかがわかりません。

あとの三つは、原因がわかっていて、だいたいどんな感じに直せばいいかの見当はついているのですが、既存の SDL のコードをできるだけ活かしながら修正しようとして、それなりに苦しんでいます。

« 今やっていること | トップページ | Linuxの件、進展しました »

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: Second Life Linux版での日本語入力の状況:

« 今やっていること | トップページ | Linuxの件、進展しました »

フォト
無料ブログはココログ