Flash 再生時に日本語入力が挙動不審になる件
Firefox, Flash Player 9, scim-anthy という環境の場合、例えば YouTube で動画を再生中にページ右上の YouTube の検索窓に日本語入力を行うと、「変換キーを押すと同時に入力した文字が消える」という症状が出たりします。原因は Flash Player 9 と scim を始めとする 入力メソッドプラットフォーム との間の問題ということらしいのですが、私のスキルでは詳しいことは解かりません(汗
で、このトラブルは scim を使用している環境では、scim-bridge を導入することで対処できるとのことで、下記ページを参考に行ってみました。
- Linux用Flash Player 9と日本語入力 (SPRの日記(*BSDとかLinuxとかの覚え書き))
scim-bridge は Vine 4.1 にもパッケージが有りますので、
# apt-get install scim-bridge
を実行するなり Synaptic を使うなりしてインストールが可能です。
上記ページの方法で Vine謹製の Firefox(Bon Echo) では確かにこのトラブルは解消され、Flash 再生時でも日本語入力が正常に行えるようになりました。ただ、Mozilla の公式版 Firefox や Trunk ビルドで同じ方法を試したところ、起動時に CPU 使用率 99% となったまま固まってしまいました。自称「モジラフリーク」としては、これでは使えません。
そんな時、下記ページを目にしました。
- YouTube での日本語入力トラブル (日々のあしあと)
うん? scim-bridge-gtk ?
「そんなパッケージは Vine 4.1 には無かったはずだが?」と思いながら VineSeed の方を覗くと有りましたね、これが。(^_^)
VineSeed のパッケージをそのまま使っても大丈夫なのかもしれませんが、念の為にソースパッケージを落としてきてリビルドしました。
scim-1.4.6-0vl1.src.rpmscim-bridge-0.4.8-0vl2.src.rpm
最初に scim の方をリビルドし、生成される scim と scim-devel をインストールします。
$ rpmbuild --rebuild scim-1.4.6-0vl1.src.rpm
# rpm -Uvh scim-1.4.6-0vl1.i386.rpm scim-devel-1.4.6-0vl1.i386.rpm
※ scim-bridge の依存関係では scim(>=1.4) となっているので、現在の Vine 4.1 の scim-1.4.4 でも大丈夫だとは思いますが念の為。
次に scim-bridge をリビルドし、生成される scim-bridge と scim-bridge-gtk と scim-bridge-qt をインストールします。(gnome環境の方は scim-bridge-qt は不要)
$ rpmbuild --rebuild scim-bridge-0.4.8-0vl2.src.rpm
# rpm -Uvh scim-bridge-0.4.8-0vl2.i386.rpm scim-bridge-gtk-0.4.8-0vl2.i386.rpm scim-bridge-qt-0.4.8-0vl2.i386.rpm
【 5月29日 追記 】
5月11日付けで 4.1 にも scim-bridge-gtk と scim-bridge-qt の提供が行われました。従って、上記のような VineSeed のパッケージをリビルドする必要は無くなりました。但し私の環境では、scim-bridge, scim-bridge-gtk, scim-bridge-qt をインストールしただけでは日本語入力時に scim-bridge は使用されず、下記の /usr/share/vine/imelib の変更が必要でした。
次に上述の YouTube での日本語入力トラブル のページを参考に、/usr/share/vine/imelib の496 〜497 行目を書き換えます。(あちらのページでは /usr/share/vine/vinelib と記されていますが、/usr/share/vine/imelib の typo と思われます)
GTK_IM_MODULE=scimQT_IM_MODULE=scim↓↓↓ GTK_IM_MODULE=scim-bridgeQT_IM_MODULE=scim-bridge
※ KDE環境の場合に、QT_IM_MODULE の部分の書換えまで必要なのかどうかはちょっと自信がありません(汗
この後、$ setime scim を実行してからログインし直せば、日本語入力の問題は解消されています。また、Mozilla の公式版 Firefox や Trunk ビルドも正常に起動できました。
ところで、この日本語入力の問題の対処には別法も有ります。それは、scim の代わりに uim を使用することです。現在の Vine 4.1 に収録されている uim-1.3.1 では、既にこの問題に対処済みになっています。
uim-anthy を使用すれば scim-anthy と同じように かな漢字変換エンジン に anthy が利用できます。実際に使ってみたところ、使い勝手に大差は無いように感じました。なお、uim を使用するには下記コマンドを実行後にログインし直します。
$ setime uim
【 5月4日 追記 】
/usr/share/vine/imelib で QT_IM_MODULE=scim-bridge への書き換えを行うと、日本語入力 ON 時に Kate 等の KDE アプリ上において、Shiftキーとの組み合わせで入力されるはずの文字(例えば全角の @#$ などの記号)が入力出来なくなりました。QT_IM_MODULE=scim に戻すと入力出来るようになりました。QT_IM_MODULE= は書き換えない方が良いようです。
コメント
scim-bridge で確かに不具合は解消されるんですが、代わりに日本語入力中のキーボードショートカットが GTK に横取りされてしまうという問題が再発してしまうので、どうしたもんか思案中です。
良い方法無いですかねぇ。
> 日本語入力中のキーボードショートカットが GTK に横取りされてしまうという問題が再発
そうなんですか。あちらを立てればこちらが立たず状態ですか。
スキルの無い私にはお手伝いすることが出来ません。情けない…
何か見つけた時に BTS に書き込んだりしてもらえれば、それだけでも十分ですよ。