upup-476での日本語入力

5.X系に関する開発話題です

モデレータ: 暇人, YoN, nyu

アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

upup-476での日本語入力

投稿記事 by シノバー »

長くなりそうなので、新たなトピック立てました。
viewtopic.php?t=1096&start=5
↑の続きです。

これまでに
1. puppy420_ime.pet をそのままインストール ... 結果 ×
2. 暇人さんが(woofでコンパイル?で)pet作成 ... ○
http://nami4.dyndns.org/p_blog/resource ... 76_ime.pet
3. きりんさん、ソースからコンパイル ... ○
4. きりんさん、シノバー、ubuntu パッケージ利用 ... ×
5. シノバー、 anthyのみコンパイル、他は ubuntuパッケージ ... △ 動いたが、不安定
という状況でした。

さて、
5で、anthyをコンパイルしなければならない理由ははっきりしませんが、
ubuntu(jauntyの libanthy0_9100h-0ubuntu1_i386.deb を上書きすると
anthy-agentがエラーを吐くので、このパッケージに問題があるみたいです。
ダウンロードは何回かやり直したのですが...。

動いたが不安定という理由がある程度分かってきました。
仮想端末から、環境変数 GTK_IM_MODULE をいろいろ変更して実行すると...
GTK_IM_MODULE=xim defaultbrowser ... scim 使えない×
GTK_IM_MODULE=scim-bridge defaultbrowser ... ○
GTK_IM_MODULE= defaultbrowser ...
なんらかの拍子に GTK_IM_MODULE=xim となるとアウト。
unset GTK_IM_MODULE でもいいのだが、積極的に
GTK_IM_MODULE=scim-bridge defaultbrowser
なら確実...と、思ってリブート後に再実験すると、次のようなエラーが出たのち、
何度リブートしてもこのエラーは消えません。

コード: 全て選択

# GTK_IM_MODULE=scim-bridge defaultbrowser
The messenger is now down
An IOException occurred at scim_bridge_client_imcontext_set_cursor_location ()
scim-bridge終了時にどこかにヘンな痕跡を残すのだろうと、探してみたが見つからず。

ええい、scim-bridgeを使わなきゃどうだ、...と。
GTK_IM_MODULE=scim defaultbrowser ... ○
動くやん。ということで scim-bridgeを外すと、いまのところ機嫌良く動いてます。

現在成功している環境は upup-476 素の状態から、
  1. ロケールの修正、xorg.confのキーボードを jp106に。
  2. upup-476上でコンパイルした anthyをインストール
  3. ubuntuからダウンロードした以下のパッケージをインストール
    kasumi_2.4-0ubuntu1_i386.deb
    libscim8c2a_1.4.7-3ubuntu12_i386.deb
    scim-anthy_1.2.7-0ubuntu1_i386.deb
    scim-gtk2-immodule_1.4.7-3ubuntu12_i386.deb
    scim_1.4.7-3ubuntu12_i386.deb
  4. さきの scim.sh より export GTK_IM_MODULE=scim-bridge をコメントアウト
    (scim-bridgeは無いので、以前のままのスクリプトでも実行されないはずだが))
    きりんさんの scim.sh でもよいはず。
    viewtopic.php?p=6811#6811
最後に編集したユーザー シノバー [ 09/06/08(月) 23:51 ], 累計 1 回
The bar master, Shino's Bar
http://shinobar.net/
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

動くやん

投稿記事 by シノバー »

シノバー さんが書きました:anthyをコンパイルしなければならない理由ははっきりしませんが、
ubuntu(jauntyの libanthy0_9100h-0ubuntu1_i386.deb を上書きすると
anthy-agentがエラーを吐くので、このパッケージに問題があるみたいです。
ダウンロードは何回かやり直したのですが...。
md5もチェックしました。ダウンロードの問題とかではないようです。

暇人さんが作られた anthy-9100h.patch13Bptn23.2009527.alt-depgraph-090525-i686.pet
http://nami4.dyndns.org/p_blog/
試しに upup-476に入れてみました。

...動くやん。

ということで、anthyは暇人さんの最新作pet、
残り5つをubuntuからという環境で、これを書いてます。
The bar master, Shino's Bar
http://shinobar.net/
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

'utf8' or 'UTF-8'

投稿記事 by シノバー »

暇人さん指摘のようにBarryさんに従うと ja_JP.utf8になってしまいます
upupがベースとしているUbuntuではja_JP.UTF-8のはす。

ということで Ubuntu-9.04(jaunty Jackalope)をインストールしようと試みましたが
Ubuntu-9.04 Japanese Remix, Xubuntu-9.04 いずれもインストーラーは途中でクラッシュします。
我家の3台のパソコンのすべてで同じ症状。でもubuntuの日本語フォーラムではそんな話は出ていません。
どうなってんの?これ。

Ubuntu-9.04 Japanese Remix, Xubuntu-9.04 ともに
ライブCDでは動くので、そこでの調査結果です。

locale コマンドで確認すると確かに ja_JP.UTF-8 です。
しかし locale -a と打つと ja_JP.utf8 が出てきます。
/usr/lib/locale を見ると ja_JP.utf8 をはじめ、みんな .utf8 となっています。
でも localeは ja_JP.UTF-8
locale.aliasかどこかで処理してるのかもしれないけれど...。

'utf8' と 'UTF-8'、「どっちのロケールにすりゃいいんや!」
最後に編集したユーザー シノバー [ 10/02/14(日) 11:25 ], 累計 1 回
The bar master, Shino's Bar
http://shinobar.net/
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

scimがらみの設定ファイル

投稿記事 by シノバー »

/etc/gtk-2.0/gtk.immodules ... 関係ある?
/usr/lib/gtk-2.0/2.10.0/immodule-files.d ... 大いに関係ある
/etc/X11/xinit/xinput.d ... 誰も見てないみたい。
あちこちに設定ファイルらしきものがあるが、これらは触るべきなのか、触ってはいかんのか? ... 触らぬ神にたたりなし...みたいです。
/usr/lib/gtk-2.0/2.10.0/immodule-files.d 内のファイルは
scim-gtk2-immodule_1.4.7-3ubuntu12_i386.deb
あるいは scim-bridge-client-gtk_0.4.14-2ubuntu5_i386.deb(今回使用せず)
をインストールしたときに入るファイルで、
seamonkeyなどGtk2プログラムを開始したときに scimが立ち上がるのは、この設定ファイル
/usr/lib/gtk-2.0/2.10.0/immodule-files.d/scim-gtk2-immodule.immodules
のおかげによるものです。
きりんさんの言う /etc/gtk-2.0/gtk.immodules の更新が必要ないように見えたのは、
私の場合 scim-gtk2-immodule_1.4.7-3ubuntu12_i386.deb をインストールしたからでした。

/etc/X11/xinit/xinput.d 内に scim_1.4.7-3ubuntu12_i386.deb由来のファイルが2つ入りますが
この2つの内容はよく似ていて、しかも矛盾しています。
いずれにせよ upupではこれらを読む機構は無いみたいです。
scim_1.4.7-3ubuntu12_i386.debが用意するこれらのファイルは
さきの scim.shとも内容が共通します。

/etc/profile.d/scim.shがなくても seamonkeyなどGtkを利用するプログラムは上述の機構により動作します。
scim.shには Gtk用、Qt用、XIM用の設定が含まれますが、
XIMを使うアプリがでれなのかみつからないので、テストできてないわけです。
The bar master, Shino's Bar
http://shinobar.net/
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

仮想端末(urxvt)上での日本語入力

投稿記事 by シノバー »

seamonkeyなどGtkプログラムは日本語入力ができるようになったのですが、
仮想端末 urxvt (rxvtはこれへのリンク)では日本語表示はできるものの、入力ができない状態が続いてました、が...。
今日やっと日本語入力ができるようになりました!

urxvtで日本語入力ができいない理由は、これは Gtkを使っておらず、Xlibを直接呼ぶ形であるからです。
ところで、 urxvtから urxvtを立ち上げてみます。

コード: 全て選択

# echo $LANG
ja_JP.UTF-8
# urxvt
rxvt: default locale unavailable, check LC_* and LANG variables. Continuing.
立ち上がりはするが、warningが出ます。4.20ではこのようなメッセージは出ません。

/usr/share/X11/locale ディレクトリを見ると、C や en_US.UTF-8 などはありますが、ja関係がありません。
そこで例によって ububtu(jaunty)から /usr/share/X11/locale/ja_JP.UTF-8 をディレクトリごと持ってきます。
これは次のパッケージ内にあるものです。
http://packages.ubuntu.com/ja/jaunty/libx11-data
これで LANG=ja_JP.UTF-8 で rxvt を起動しても文句を言われなくなりました。

次に XIM経由で scimを動かすための設定です。基本的に

コード: 全て選択

export XMODIFIERS='@im=SCIM'
scim -d
の2つだけが必要です。場所は ‾/.xinitrc 内で実行させることにしました。

以上で Xが立ち上がると同時に パネルにキーボードのマークが現れ、
console(urxvt)を立ち上げ、「半角/全角」キーを押すと王冠マークが出て
無事、仮想端末(urxvt)上でも日本語入力ができるようになりました。
The bar master, Shino's Bar
http://shinobar.net/
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

続:「どっちのロケールにすりゃいいんや!」

投稿記事 by シノバー »

シノバー さんが書きました:locale コマンドで確認すると確かに ja_JP.UTF-8 です。
しかし locale -a と打つと ja_JP.utf8 が出てきます。
どのような歴史的経緯か分かりませんが ubuntuはじめ最近の多くのデストリが。こうなっているようです。
/usr/lib/locale 内のディレクトリは .utf8
/usr/share/X11/locale 内のディレクトリは .UTF-8
upup-476もこれらのディレクトリ名はubuntuと同じです。

LANG変数は .utf8, .UTF-8 どちらでも、たいていの動作には問題は無いようにも見えます。
しかし念のため LANGもubuntuに揃えておいたほうがよいでしょう。

こうするには少なくとも2つのスクリプトを修正しなければなりません。
/usr/sbin/chooselocale と /etc/rc.d/rc.country です。
いつものところ http://shino.pos.to/linux/puppy/
chooselocale-12jun09 と rc.countory-12jun09 を用意しました。
興味ある方はダウンロードし、 upup-476の所定位置にリネーム、実行属性を付けて置いてください。

/etc/profileの 88行目のコメント文'#LANG=...'から 'LANG=' の文字を手動で削除してください。
また、/usr/lib/localeに ja_JP.utf8 と ja_JP.UTF-8 と2つあったら、後者は不要です。消してください。
The bar master, Shino's Bar
http://shinobar.net/
アバター
みのむし
記事: 1164
登録日時: 08/09/10(水) 13:56
お住まい: 福岡市中央区草香江1-2-40-101号
連絡する:

Re: 続:「どっちのロケールにすりゃいいんや!」

投稿記事 by みのむし »

>どのような歴史的経緯か分かりませんが ubuntuはじめ最近の多くのデストリが。こうなっているようです。

私も経緯を知りたいです。
所で、シノバーさんの最近のシノバーさんのご活躍は目覚しいですね。
また、ホームページも拝見しました。
パピーWikiに掲載したいのですが、よろしいでしょうか?
最後に編集したユーザー みのむし [ 09/06/13(土) 02:53 ], 累計 1 回
みのむし
Notebook PC HP G62
CPU: Intel(R) Core(TM)i5 M450 @ 2.40GHz
MEM: 4GB
Puppy Linux Quickset 5.1.1 JP
PC内蔵無線LANデバイス RTL8171(r8192se_pci)
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

Re: 続:「どっちのロケールにすりゃいいんや!」

投稿記事 by シノバー »

みのむし さんが書きました:最近のシノバーさんのご活躍は目覚しいですね。
ありがとうございます。みなさんお忙しそうな中、暇人さんと暇を競っているだけで...:lol:
Wikiはお任せします。私も自由に編集させていただくかもしれません。
The bar master, Shino's Bar
http://shinobar.net/
アバター
暇人
記事: 2392
登録日時: 07/08/12(日) 23:33
お住まい: 埼玉県xx市並4
連絡する:

utf8

投稿記事 by 暇人 »

いろいろググったところ、どうもFedra9がja_JP.utf8らしい。
2008 5月公開だ。
管理人見習い
NEC Express5800 S70/SR G6950 2.8GHz/1G
lenovo S10-3 AtomN450 1.66G/1G
暇人/貳馬力/2CV
アバター
暇人
記事: 2392
登録日時: 07/08/12(日) 23:33
お住まい: 埼玉県xx市並4
連絡する:

投稿記事 by 暇人 »

locale.aliasをごにょごにょしてja_JP.utfのまんまで出来んかな?
管理人見習い
NEC Express5800 S70/SR G6950 2.8GHz/1G
lenovo S10-3 AtomN450 1.66G/1G
暇人/貳馬力/2CV
アバター
みのむし
記事: 1164
登録日時: 08/09/10(水) 13:56
お住まい: 福岡市中央区草香江1-2-40-101号
連絡する:

Re: 続:「どっちのロケールにすりゃいいんや!」

投稿記事 by みのむし »

シノバー さんが書きました:
みのむし さんが書きました:最近のシノバーさんのご活躍は目覚しいですね。
ありがとうございます。みなさんお忙しそうな中、暇人さんと暇を競っているだけで...:lol:
Wikiはお任せします。私も自由に編集させていただくかもしれません。
心良く許可してくださり、ありがとうございました。
みのむし
Notebook PC HP G62
CPU: Intel(R) Core(TM)i5 M450 @ 2.40GHz
MEM: 4GB
Puppy Linux Quickset 5.1.1 JP
PC内蔵無線LANデバイス RTL8171(r8192se_pci)
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

Re: utf8

投稿記事 by シノバー »

暇人 さんが書きました:いろいろググったところ、どうもFedra9がja_JP.utf8らしい。
そうですか、調査不足でした。そうなると迷いますね,,,,。
何もしなくても ja_JP.utf8 でも日本語入力はできます。試してみました。
The bar master, Shino's Bar
http://shinobar.net/
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

anthy?

投稿記事 by シノバー »

なんとも奇妙ですねえ...。暇人さんの環境で /etc/profileを編集して
ja_JP.utf8 にすると確かに日本語入力が効かなくなります。

ところが...、なんと!

その環境に暇人さんが作られたanthyをかぶせます。 anthy-9100h.patch13Bptn23.2009527.alt-depgraph-090525-i686.pet
そしてXをリスタートすると日本語入力ができるようになります。

しかしリブートすると例によって scim-bridgeが死にます。
なので /usr/lib/gtk-2.0/2.10.0/immodule-files.d/scim-bridge-client-gtk.immodules
を削除するか別の場所に移します。
これで大丈夫です。Xのリスタートは必要かもしれません。
The bar master, Shino's Bar
http://shinobar.net/
アバター
シノバー
記事: 3139
登録日時: 09/03/21(土) 00:05
連絡する:

続々:「どっちのロケールにすりゃいいんや!」

投稿記事 by シノバー »

シノバー さんが書きました:locale コマンドで確認すると確かに ja_JP.UTF-8 です。
しかし locale -a と打つと ja_JP.utf8 が出てきます。
Fedora Core 11 入れてみました。Ubuntuと同じでした。

コード: 全て選択

$ echo $LANG
ja_JP.UTF-8
$ locale -a | grep '^ja'
ja_JP
ja_JP.eucjp
ja_JP.ujis
ja_JP.utf8
japanese
japanese.euc
Ubuntuと異なるのは、/usr/lib/locale ディレクトリ内には圧縮ファイルlocale.archive (80MB !)がありました。
/usr/share/X11/locale/ja_JP.UTF-8 があるのは Ubuntu と同じです。

あと、入力メソッドがscimではなく IBus - Anthy になっていました。
The bar master, Shino's Bar
http://shinobar.net/
アバター
暇人
記事: 2392
登録日時: 07/08/12(日) 23:33
お住まい: 埼玉県xx市並4
連絡する:

upup476_ime.pet

投稿記事 by 暇人 »

ja_JP.utf8 にしたものに差し替えました。
管理人見習い
NEC Express5800 S70/SR G6950 2.8GHz/1G
lenovo S10-3 AtomN450 1.66G/1G
暇人/貳馬力/2CV
返信する