shimomura2025
2025年5月16日 16時23分
はじめまして。突然のご連絡失礼いたします。下村と申します。
類似のご相談がいくつか寄せられていることは承知しておりますが、表題の件について、実際の実装事例が存在するかどうか確認させていただきたく、ご連絡差し上げました。
【実現したい内容】
現在、一つのコンテナ内でQtベースのGUIを用いた自作ソフトウェアキーボードを開発しております。GUI上の自作キーボードからひらがなを入力し、キーボードから入力したときと同様にスペースキーで漢字変換候補が表示されるような、一般的な日本語入力環境と同様の動作を目指しております。mozcサーバ等を活用し、かな→漢字変換を行いたいと考えています。
【課題】
当初はQtから直接mozcを利用してかな→漢字変換を試みましたが、IBusなどのフレームワークとの連携が必要となり、実装に至ることができませんでした。
【現在の構成】
現時点では、Armadillo-X2上に以下の2つのコンテナを構築し、漢字変換を実現しております。
Pythonで実装した、ひらがなを受け取り漢字変換候補を返すサーバ
・ mozcの辞書を利用できる「mozcpy」ライブラリを使用しております。
Qtによる自作キーボードGUI
・ GUI側からサーバへひらがなを送信し、漢字変換候補を受け取って表示しています。
この構成により、GUI上で基本的なかな→漢字変換は実現できております。
【現状の課題】
ATDE9環境では、mozcを用いた変換により多くの候補が表示されるのに対し、Armadillo-X2上では候補数が少ない傾向が見られます。mozcpyの変換精度や辞書内容に起因する可能性があると考えています。
【ご確認事項とご質問】
1.Armadillo-X2上には、日本語入力を行うための一般的なキーボード入力環境(例えば、mozc + IBusなど)は標準では搭載されていない認識ですが、この理解で正しいでしょうか?
2.Armadillo-X2において、実際にキーボードを使った日本語入力(かな→漢字変換)を実現された事例をご存じでしたら、使用されたミドルウェア構成(IBusやmozcとの連携方法など)についてお伺いできますでしょうか?
3.本件のように、日本語入力をQtアプリケーション上で実現するための具体的な構成や、適したアーキテクチャについて、アドバイス等をいただけますと幸いです。
4.将来的に、Armadilloシリーズでの日本語入力対応の予定や見通しがありましたら、差し支えない範囲で教えていただけないでしょうか?
お忙しいところ恐縮ですが、可能であればご教示いただけますと幸いです。
何卒よろしくお願いいたします。
コメント
shimomura2025
at_dominique.m…
2025年5月19日 11時17分
下村さん
お世話になっています、
マルティネです。
> 【ご確認事項とご質問】
> 1.Armadillo-X2上には、日本語入力を行うための一般的なキーボード入力環境(例えば、mozc + IBusなど)は標準では搭載されていない認識ですが、この理解で正しいでしょうか?
はい。
> 2.Armadillo-X2において、実際にキーボードを使った日本語入力(かな→漢字変換)を実現された事例をご存じでしたら、使用されたミドルウェア構成(IBusやmozcとの連携方法など)についてお伺いできますでしょうか?
すみません、少なくとも弊社では Armadillo上で試した実績はありません。
> 3.本件のように、日本語入力をQtアプリケーション上で実現するための具体的な構成や、適したアーキテクチャについて、アドバイス等をいただけますと幸いです。
そうですね… 申し訳ない話ですが、wayland周りでの文字入力は分散しすぎて、とても分かりづらいことになっています。
ibus+mozc が mozcpy より正確のであれば、私が把握している限りで ibus でも動作できると思います
ibus でしたら、compositor (weston) が何もしなくても Qt が自ら dbus で ibus と通信を行って漢字への変換は可能だと考えています(qt の経験がないですが実装されているみたいです。昔 gtk でこう言うふうに使ってました)
GUI キーボードからアプリケーションまでにどういうふうに字を送ってますか?
ただし、結果手してはどちらでも mozc を使ってますので、個人的にはそんなに差がでるのは意外ですね。今の実装がすでに動いている分では mozcpy を改善した方が早いかもしれません。
参考までに、ibus 以外ではいくつかの「text input protocol」が存在して、適合性がない上に qt / compositor の両方のサポートが必要になりますのでかなりややっこしい状態です。
例えば、自分が利用している compositor では https://wayland.app/protocols/input-method-unstable-v2 を使って fcitx5 で入力を行っていますが、 weston がそのプロとコーロをサポートしてないため Armadillo では利用できません。
試しに weston 以外の compositor をビルドしてみて他の入力サービスを Armadillo 上で試せますが、weston では NXP社によう gpu の処理が含まれていますので、残念ながら weston を推奨するしかない状態です。
> 4.将来的に、Armadilloシリーズでの日本語入力対応の予定や見通しがありましたら、差し支えない範囲で教えていただけないでしょうか?
すみません、現状ではそういうキーボードを実装・維持する余裕はないので近い未来には実装する予定はありません。
https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/669 などの携帯用のキーボードを利用できるようになれば話は変わりますが、今のところは性能面では weston を使った方がいいと同時にそういうキーボードを weston で使える例はないので難しいと思います。(これも、virtual-keyboard などの protocol が weston側に実装されてありません…)
役に立てずに申し訳ございません。
具体的な相談があれば何でも聞きます。
よろしくお願いします。