Linuxからアホ話まで、何でもありでござる

2007年09月22日

Flash+scim+Anthyの不具合解消[VineLinux3.2]

[Linux備忘録]
俺の仕事PCはVineLinux4.1へのアップグレードがうまく出来なくて今だ3.2で動いているんだけど、VineLinux4.0が使えなかった腹いせにに書いた通り、日本語入力システムはanthy+scimに変更している。

このanthy+scimは見た目も使用感もなかなかよくて気に入っていたのだが、ひとつだけ不満があった。それはニコニコ動画にコメント出来ないってこと。少し長い文字数で入力・変換して確定させると入力した文字が消えてしまうのだ。いろいろ試してみると、Flashが動いているとanthy+scimの入力が不安定になることが判明。調べて見ると、この不具合は既に解決策が出ているようだ。

Linux用Flash Player 9と日本語入力
Flash 再生時に日本語入力が挙動不審になる件
Vine Linux 4.0 + Firefox + Flash Player9 + scim + Anthyで日本語入力が怪しくなる件

ただ、いずれの場合もVineLinux4.xが対象で、3.xではない。実際3.xにはSCIM-Bridgeが用意されていない。調べてみるとscim + Anthyのヴァージョンとは連動していなくても良さそうな感じがするので、とりあえずVinePlus4.1にあるSRPMSをダウンロードしてrebuildしてみる事にする。

$ rpm --rebuild scim-bridge-0.4.10-0vl0.src.rpm
scim-bridge-0.4.10-0vl0.src.rpm をインストール中
エラー: ビルド依存性の欠如:
scim-devel >= 1.4 は scim-bridge-0.4.10-0vl0 に必要とされています
gtk2-devel >= 2.8.13 は scim-bridge-0.4.10-0vl0 に必要とされています
doxygen は scim-bridge-0.4.10-0vl0 に必要とされています
qt-devel >= 3.3.5-0vl4 は scim-bridge-0.4.10-0vl0 に必要とされています
キター。またこれかよ。なんだか最近こればっかり。まずは足りない奴をインストールすることにする。
# apt-get install scim-devel gtk2-devel doxygen qt-devel
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
* gtk2-devel は既に最新バージョンがインストールされています。
以下の追加パッケージがインストールされます:
graphviz qt
以下のパッケージが新たにインストールされます:
doxygen graphviz qt qt-devel scim-devel
アップグレード: 0 個, 新規インストール: 5 個, 削除: 0 個, 保留: 0 個
24.0MB のアーカイブを取得する必要があります。
展開後に 73.4MB のディスク容量が追加消費されます。
続行しますか? [Y/n]y
取得:1 http://updates.vinelinux.org 3.2/i386/plus qt 3.3.5-0vl1.2 [4972kB]
取得:2 http://updates.vinelinux.org 3.2/i386/plus graphviz 1.12-0vl1 [3165kB]
取得:3 http://updates.vinelinux.org 3.2/i386/plus doxygen 1.4.3-0vl1 [2157kB]
取得:4 http://updates.vinelinux.org 3.2/i386/plus qt-devel 3.3.5-0vl1.2 [12.1MB]取得:5 http://updates.vinelinux.org 3.2/i386/plus scim-devel 1.4.4-0vl0 [1622kB]24.0MB を 43s 秒で取得しました (555kB/s)
変更を適用しています...
準備中... ########################################### [100%]
1:qt ########################################### [ 20%]
2:graphviz ########################################### [ 40%]
3:doxygen ########################################### [ 60%]
4:qt-devel ########################################### [ 80%]
5:scim-devel ########################################### [100%]
完了
gtk2-devel は既に最新バージョンがインストールされています。ってのがひじょーに気にかかるが、もう一度rebuildしてみる。
$ rpm --rebuild scim-bridge-0.4.10-0vl0.src.rpm
scim-bridge-0.4.10-0vl0.src.rpm をインストール中
エラー: ビルド依存性の欠如:
gtk2-devel >= 2.8.13 は scim-bridge-0.4.10-0vl0 に必要とされています
qt-devel >= 3.3.5-0vl4 は scim-bridge-0.4.10-0vl0 に必要とされています
ああ、やっぱりヴァージョンが違うから蹴られちゃう。

めんどくせーから4.1のバイナリパッケージをそのままぶちこんでみる。
# rpm -Uvh scim-bridge-0.4.10-0vl0.i386.rpm
準備中... ########################################### [100%]
1:scim-bridge ########################################### [100%]
あれ?今あっさり行っちゃったね(by川淵)。ということで、あとはFirefoxの設定をする。/usr/bin/firefox(シェルスクリプト)の頭の方にexport GTK_IM_MODULE=scim-bridgeを入れればいい模様。

では早速Firefoxを再起動し試してみよう。他のタブでYoutubeを開きながら入力しているが、全く問題は起こらない。OKOK。うまくいったようだ。

[9/25追記]
うまくいっていたような気がしていたのは俺の勘違いで、やはり一部不具合がでた。どうやら/usr/bin/firefox(シェルスクリプト)の頭の方にexport GTK_IM_MODULE=scim-bridgeを入れる方法は3.2ではあまりよろしくない模様だ。FireFoxに的をしぼったこの方法ではなく、ime自体からscim-bridgeを使う方法がよさそう。具体的には
Flash 再生時に日本語入力が挙動不審になる件
にある
/usr/share/vine/imelib の496 〜497 行目を書き換えます。(あちらのページでは /usr/share/vine/vinelib と記されていますが、/usr/share/vine/imelib の typo と思われます)

GTK_IM_MODULE=scim
QT_IM_MODULE=scim
  ↓↓↓
GTK_IM_MODULE=scim-bridge
QT_IM_MODULE=scim-bridge
と設定してやればOKのようだ。

[9/27追記]
うまくいっているような感じがしていたのはまたまた気のせいで、上記設定でもだめだった。試行錯誤の上、現段階でうまくいっている方法は以下の通り。
1、SCIMのツールバーを右クリックして「SCIMを設定」をクリック
2、フロントエンドの全体設定で、「全てのアプリケーションで同一入力メソッドを使用」のチェックを外す。
3、OKで設定し、再度/usr/bin/firefox(シェルスクリプト)の頭の方にexport GTK_IM_MODULE=scim-bridgeと設定する。
これで今のところは問題なさそう。


ブログランキング・にほんブログ村へ
posted by oyajiman at 2007年09月22日 02:41:09



コメント

コメントはありません

トラックバック

トラックバック
このエントリにトラックバックはありません
このトラックバックURLを使ってこの記事にトラックバックを送ることができます。 もしあなたのブログがトラックバック送信に対応していない場合にはこちらのフォームからトラックバックを送信することができます。.

コメントする