CALENDAR
S M T W T F S
     12
3456789
10111213141516
17181920212223
24252627282930
31      
<< December 2017 >>
閲覧数の多い順
<< debianのセットアップ(日本語の表示) | main | KDEのバグ? >>
スポンサーサイト

一定期間更新がないため広告を表示しています

| - | | - | - | 編集 |
Debianのセットアップ(日本語の入力)
ここでは、試行錯誤した作業ログをそのまま載せています。シンプルにまとめたページはこちら
%%%%%%%%%% 日本語入力 %%%%%%%%%%

ATOK風に、日本語の入力には Uim / Anthy 、Prime を使おうと思う。

かなり長いので目次をつけておきます。

目次

  1. インストール
  2. 見様見まねで書いてみた設定ファイル
  3. 日本語の入力ができない しばらく迷走しています。
  4. GNOMEアプリで入力できるようになった。
  5. GNOMEアプリでは日本語の入力ができるが、KDEアプリではできない。
  6. KDEアプリでも日本語入力ができるようになった。
  7. ログイン直後は日本語入力ができない。 セッションの問題
  8. ログイン直後に日本語入力ができるようになった。
  9. まとめ
  10. 設定ファイルのサンプル Anthy + uim + uim-xim の組合せで使う人は、これのコピペでいけると思います。
  11. 関連記事
  12. 参考資料

インストール

新版uimで日本語入力環境を @Debian GNU/Linux sargeより引用

/etc/apt/sources.list に次の行を追加。 deb http://everybody.good-day.net/~ikuya/debian/sarge/anthy ./
# apt-get install anthy <--辞書は全部選択する。
# apt-get install prime
/etc/apt/sources.list に次の行を追加。 deb http://everybody.good-day.net/~ikuya/debian/sarge/uim ./
# apt-get update
# apt-get install uim
# apt-get install uim-applet-gnome

見様見まねで書いてみた設定ファイル

hoge@debian:~$ cat .xsession
#!/bin/sh

export GTK_IM_MODULE=uim
export XMODIFIERS=@im=uim
uim-xim &
uim-toolbar-gtk &
uim-toolbar-gtk-systray &

hoge@debian:~$ cat .uim
(define default-im-name 'anthy)
連文節変換エンジンAnthyを使うにはより引用
$ mkdir ~/.xinput.d

XIM=uim-anthy
XIM_PROGRAM=uim-xim
~/.xinput.d/ja_JP
hoge@debian:~$ vi .Xresources
hoge@debian:~$ vi .xsession

hoge@debian:~$ cat .xsession
#!/bin/sh

xrdb -merge $HOME/.Xresources

export LANG=ja_JP.eucJP
export LC_MESSAGES=ja_JP.eucJP
export LC_CTYPE=ja_JP.eucJP
export GTK_IM_MODULE=uim
export XMODIFIERS=@im=uim

exec uim-xim &
exec uim-toolbar-gtk &
exec uim-toolbar-gtk-systray &
hoge@debian:~$

日本語の入力ができない

kdeアプリに日本語が入力できない。geditから入力してみようとするが、変な文字が出て来るだけで日本語が入力できない。
======= immodule for QT =======
/etc/apt/sources.list に次の行を追加。
#deb http://everybody.good-day.net/~ikuya/debian/sarge/immqt3 ./
#deb http://everybody.good-day.net/~ikuya/debian/sarge/uim-qt ./
hoge@debian:~$ echo $XMODIFIERS

hoge@debian:~$   

hoge@debian:/etc/alternatives$ file x-session-manager
x-session-manager: symbolic link to `/usr/bin/gnome-session'
Debian リファレンス より引用
スクリプトの良い例は /usr/share/doc/xfree86-common/examples/xsession.gz に置いておきます。
$~/chmod u+x .xsession

hoge@debian:~/.uim.d/customs$ dpkg -l|grep uim
ii  libuim0        0.4.6final1-3. Simple, secure, and flexible input method co
ii  uim            0.4.6final1-3. Simple, secure, and flexible input method co
ii  uim-applet-gno 0.4.6final1-3. GNOME applet for uim
ii  uim-common     0.4.6final1-3. Common files for uim
ii  uim-fep        0.4.6final1-3. uim Front End Processor
ii  uim-gtk2.0     0.4.6final1-3. GTK+2.x immodule for uim
ii  uim-utils      0.4.6final1-3. Utilities for uim
ii  uim-xim        0.4.6final1-3. A bridge between uim and XIM
hoge@debian:~/.uim.d/customs$ dpkg -l|grep anthy
ii  anthy          6300d-2        A Japanese input method (backend, dictionary
ii  libanthy0      6300d-2        Anthy runtime library

hoge@debian:~/.uim.d/customs$ dpkg -l|grep prime
ii  prime          1.0.0.1-1      Japanese PRedictive Input Method Editor
ii  prime-dict     1.0.0-1        Japanese PRedictive Input Method Editor (dic
file:/usr/share/doc/prime/uim_prime.html uim-prime の使い方 より
uim をインストールしたのち、uim-prime を展開して、中に入っている prime*.scm を /usr/(local)/share/uim/ に上書きしてください。
やっぱり日本語入力できない。

いっその事、UimからScimに変えようと思う。
APTツリーにScimを記述。
scim
# scim
deb http://everybody.good-day.net/~ikuya/debian/sarge/scim-misc/ ./
#deb-src http://everybody.good-day.net/~ikuya/debian/sarge/scim-misc/ ./

GUIのAPTツールSynapticを導入。
apt-get install synaptic

Synapticで以下を導入。
scim
scim-anthy
scim-m17n
scim-prime
scim-tavles-ja
debian:/etc/gtk-2.0# cp gtk.immodules gtk.immodules.bak
debian:/etc/gtk-2.0# vi gtk.immodules
debian:/etc/gtk-2.0# diff gtk.immodules gtk.immodules.bak
36c36
< "scim" "uim" "uim" "/usr/share/locale" "ja:ko:zh:*"
---
> "uim" "uim" "uim" "/usr/share/locale" "ja:ko:zh:*"
synaptic で以下をインストールする。
uim-anthy uim-prime
synaptic で以下をアンインストールする。
libuim0
uim
uim-anthy
uim-applet-gnome
uim-common
uim-fep
uim-gtk2.0
uim-prime
uim-utils
uim-xim
困り果てたので、set-language-envに頼ってみる。
$ set-language-env
漢字変換にはどれを使いますか 1=Canna 2=Wnn 3=SKK 4=Anthy 5=PRIME 6=なし (1..6,[Enter]=5) 4
emacs では、漢字変換にはどれを使いますか 1=Canna 2=Wnn 3=SKK 4=Anthy 5=PRIME 6=none (1..6, [Enter]=4) 4
気に入らない設定は、直接変更するか、 'language-env end' 以降の行に再設定を書き加えてください。 詳しくは /usr/share/doc/language-env/README.ja.eucJP.gz を 参照して下さい。
以下に示すパッケージをインストールして下さい。
ja-trans, jless, tcsh-kanji, doc-debian-ja, doc-linux-ja-text, anthy-el
# apt-get install anthy-el
状況は、かわらず。

GNOMEアプリで入力できるようになった。

ホームの設定ファイルが収集つかなくなったので、 ホームにbakbakディレクトリを作り、ホームのファイルを全てbabakディレクトリに移動した。
logoutしてloginした。
gnomeが立ち上がった。
geditで変な文字が出ずに、ちゃんと入力できるようになった。
kwriteからは相変わらず入力ができない。XIMが起動していないのかもしれない。
入力メソッドは、uimになっていた。
今の変換エンジンは、uimかscimか分からない。
gnomeパネルから、uimのアプレットが追加できた。
一度全てアンインストールしたはずなのに。
uimツールバーの設定ボタンでanthyやprimeの設定ができるようになった。

GNOMEアプリでは日本語の入力ができるが、KDEアプリではできない。

Synaptic 
uim-qt-immodule をインストール
再起動
uim-qt-immodule をインストール

qt3-qtconfigをインストール

XIM Input Style : On The Spot => Over The Spot

コンソールより uim-xim を起動。
Keditで入力できず。

原因不明だけどKDEのウィンドウの装飾が一切でなくなり、テキストの入力も不可能になる。タスクバーにアプリケーション名が表示されない。

追記:

KDEの表示がおかしくなっていた時の日記 日記 | KDEのバグ?

再インストールをすることで解決した。 日記 | Debian Sargeのネットワークインストール

uim-helper-serverがgdmとユーザの2つのプロセスで起動されている。
全てのプロセスの中で、uim-helper-server だけが唯一のgdmの権限で動いている。プロセスIDは3359
hogeのuim-helper-serverのプロセスIDは、3481
試しにgdmのuim-helper-serverのプロセスを殺してみる。
普通に日本語が入力できる。
試しにhogeのuim-helper-serverのプロセスを殺してみる。
日本語の入力ができる。と思ったらhogeの権限でuim-helper-serverのプロセスが新しく開始されていた。
というわけでgdmのuim-helper-serverは必要が無いみたいだ。

KDEアプリでも日本語入力ができるようになった。

uimのReadme.jaより引用
* GTK+ (2.0以降)で使用する場合

テキストフィールドで右クリックして、入力メソッドとしてuimが選
択されている事を確認して下さい。

* XIMサーバとして使用する場合

・uim-ximを起動する。
・環境変数XMODIFIERSをexport XMODIFIERS=@im=uimのようにして
指定する。
の二点を確認してからアプリケーションを立ち上げてください。
hoge@debian:~$ export XMODIFIERS=@im=uim
hoge@debian:~$ echo $XMODIFIERS
@im=uim
hoge@debian:~$ uim-xim &
KEdit で,日本語の入力ができた。 qtconfigでOver The Spotから、On The Spotに戻してみる。
KEdit で、日本語の入力ができた。
日本語表示できるページャ jless をインストール
ネットワーク漢字フィルタ nkf をインストール

ログイン直後は日本語入力ができない。

.xsession ファイルを作成して、.gnomercにシンボリックリンクを作成したが、日本語の入力は、できず。
ログイン直後に$ echo $XMODIFIERS を実行しても変数の中身が表示されない。
hoge@debian:~$ cat .xsession
#!/bin/sh

xrdb -merge $HOME/.Xresources

export LANG=ja_JP.eucJP
export LC_MESSAGES=ja_JP.eucJP
export LC_CTYPE=ja_JP.eucJP

### uim ###
export GTK_IM_MODULE=uim
export XMODIFIERS=@im=uim

### scim ###
#XMODIFIERS=@im=SCIM
#GTK_IM_MODULE=scim
#scim &
if type uim-xim &> /dev/null ; then
    uim-xim &
fi
#uim-toolbar-gtk &
uim-toolbar-gtk-systray &

hoge@debian:~$
gdmからKDEにログインした直後だと uim-xim は起動していない。
hoge@debian:~$ ps aux|grep uim
gdm     3365  0.0  0.2  1684  564 ?       S    11:01   0:00 uim-helper-server
hoge    3595  0.0  0.2  1688  568 ?       S    11:18   0:00 uim-helper-server
hoge    4087  0.0  0.2  2512  620 pts/1   R+   11:36   0:00 grep uim
hoge@debian:~$ export XMODIFIERS=@im=uim
hoge@debian:~$ echo $XMODIFIERS
@im=uim
hoge@debian:~$ uim-xim &
hoge@debian:~$ kwrite &
等のようにKonsoleから呼び出した場合は、KDEアプリでも日本語の入力ができるが、スタートメニューから起動した場合や、コマンドを指定して実行から起動した場合だと日本語の入力ができない。 unix 環境で日本語を使うために より引用
KDE 環境で kinput2 を自動起動する

* $HOME/.kde3rc に、

#!/bin/bash
kinput2 -canna &
XMODIFIERS="@im=kinput2"
export XMODIFIERS

を書いておく。
* もし、うまくいかない場合には、 $HOME/.kde/Autostart/kinput2 に、上記 .kde3rc と同じものを書いておく。 
gdm       3315  0.0  0.2  1684  564 ?        S    22:33   0:00 uim-helper-server
KDEだと、uim-helper-serverプロセスは、gdmの権限でだけ動いている。
====================
gdm でデフォルトのセッションを『デフォルトのセッション』にすると、.xsessionファイルが読み込まれる。
デフォルトのセッションは、
# update-alternatives --config x-session-manager
で変えられる。
gdmでデフォルトのセッションを『デフォルトのセッション』にした場合、.xsesseionのファイルを置いていた場合は、エラーでログインできなくなる。
ログインできない時の.xsession-errors
/etc/gdm/PreSession/Default: Registering your session with wtmp and utmp /etc/gdm/PreSession/Default: running: /usr/X11R6/bin/sessreg -a -w /var/log/wtmp -u /var/run/utmp -x "/var/lib/gdm/:0.Xservers" -h "" -l ":0" "hoge" /etc/gdm/Xsession: Beginning session setup...
==============

ログイン直後に日本語入力ができるようになった。

.xsessionをlanguage-envが出力したファイルと置き換えてみたら、.xsessionファイルがあっても起動をすることができた。 language-env より引用
# セッションマネージャ、ウィンドウマネージャ、ターミナルエミュレータの # いずれかを実行します。 最低どれかひとつは必要です。
language-envが出力した .xsessionファイルの日本語入力の部分をこのように変える。
#==========================
# 日本語入力 (XIM) の設定
# XIM サーバーを起動する
if type uim-xim &> /dev/null ; then
  uim-xim &
fi
XMODIFIERS=@im=uim ; export XMODIFIERS
#uim-toolbar-gtk &
  uim-toolbar-gtk-systray &
#==========================
これでKDEアプリでも日本語入力ができるようになった。
スタートアップ時に起動されるターミナルが邪魔だったら TERMINAL_EMULATOR=NONE ; export TERMINAL_EMULATOR の行を追加する。

まとめ

僕の現在の.xsessionです。僕の場合はKDEかGnomeだけでいいのでTERMINAL_EMULATORの判定部分を全部削除して最終的にこのようになりました。これだとlanguage-envは使用しなくてもいいです。 sargeを最初からインストールした場合は、このままコピーして張り付けして頂いてでいけると思います。
"uim-toolbar-gtk"の後ろについてある数字(-0-50)の部分を変えると、ツールバーの表示される位置が変わります。

設定ファイルのサンプル

.xsession
LANG=ja_JP.eucJP
export LANG
PATH=$HOME/bin:$PATH
#=== uim ===
if type uim-xim &> /dev/null ; then
  uim-xim &
fi
XMODIFIERS=@im=uim ; export XMODIFIERS
uim-toolbar-gtk -0-50 &
#uim-toolbar-gtk-systray &

#=== session-manager ===
exec x-session-manager
.gnomerc
LANG=ja_JP.eucJP
export LANG
PATH=$HOME/bin:$PATH
#=== uim ===
if type uim-xim &> /dev/null ; then
  uim-xim &
fi
XMODIFIERS=@im=uim ; export XMODIFIERS
#uim-toolbar-gtk &
#uim-toolbar-gtk-systray &

関連記事

参考資料

| Debianのセットアップ | 10:02 | comments(3) | trackbacks(0) | 編集 |
スポンサーサイト
| - | 10:02 | - | - | 編集 |
コメント
googleで検索してたどり着いて、参考にさせていただきました。

まったくanthyが起動できない状態から、各アプリのテキストボックスで漢字入力ができる段階まで来ました。

---xsession
LANG=ja_JP.eucJP
export LANG
PATH=$HOME/bin:$PATH
#=== uim ===
if type uim-xim &> /dev/null ; then
uim-xim &
fi
XMODIFIERS=@im=uim ; export XMODIFIERS
uim-applet-gnome &
※exec...以下は、あってもなくても変化なし
------gnomerc
LANG=ja_JP.eucJP
export LANG
PATH=$HOME/bin:$PATH
#=== uim ===
if type uim-xim &> /dev/null ; then
uim-xim &
fi
XMODIFIERS=@im=uim ; export XMODIFIERS
----------------------------------------------
この設定状態でログイン直後はappletがパネル上で起動せず「x」アイコンのままですが、何か任意のアプリかコンソールを起動すると同時にappletのアイコンがパネル上でアクティブに変わります。
そして、anthyを起動させるには、appletの設定画面を開き、「適用」+「OK」をクリックすれば、正常にアプリのテキストボックスで漢字が使えるようになりました。

まだ不完全ではありますが、とてつもない進歩です!!!
| mmc | 2006/02/04 1:55 AM |
こんにちは!
二日目のトライです。

〜/.xsessionを
uim-applet-gnome &
から、
uim-toolbar-gtk &
に変更したところ、gnome標準アプリとsun java系の
酸っぱい果物で、「shift+space」キーでgnome appletがon/offできるようになり、日本語の入力も正常に可能になりました。

| mmc | 2006/02/04 7:18 PM |
日記見てくれてありがとうございます(:D)┼─┤
友達と宣伝以外で初のコメントうれしいです。

僕はKDEの環境で使っています。
uim-applet-gnome &
と書いてあるので、たぶんGnomeの環境でお使いですよね。
Gnomeアプレットを使う場合は設定ファイルに
uim-applet-gnome &
と書かなくてもGnomeパネル(タスクバー)からUIMのアプレットを追加できますよ。ログイン直後は『×』になってますけど気にしなくてもいいと思います。

日本語の入力とUIMの標示パネルは別なので、UIMアプレットかUIMツールバーかシステムトレイにするかはお好みで選んで下さい。

QTアプリ(KDEのアプリ)には日本語の入力できてます?

もし、QTアプリへ日本語の入力が出来ないのであれば uim-xim が起動できていないかもしれないですよ。

$ export XMODIFIERS=@im=uim
$ echo $XMODIFIERS
@im=uim
$ uim-xim &
$ kedit &
でQTアプリへ日本語の入力ができるか試してみて下さい。

初コメントがうれしかったので書きすぎましたけど、もう少しなのでがんばって下さいね(。・_・。)ノ
| cafelate | 2006/02/08 10:25 PM |
コメントする









この記事のトラックバックURL
http://cafelate.jugem.cc/trackback/23
トラックバック