2004年11月 3日

[vine-users:068425] Re: kinput2 がどこで起動しているか

On Monday 01 November 2004 09:00 pm, 長南洋一 wrote:
> 長南です。
>
> /etc/X11/xinit/xinitrc なり /etc/X11/xdm/Xsession なりをたどってみれば
> わかるとは言え、Vine の場合は、かな漢字変換システムを簡単に切り替えられる
> ようにしているため、かなり複雑怪奇になっています。ですから、すぐに
> おわかりにならないのも、もっともなことです。
>
> /etc/X11/xinit/xinitrc や /etc/X11/xdm/Xsession にこういうところが
> あります。

>
> for i in /etc/X11/xinit/xinitrc.d/* ; do
> if [ -x "$i" ]; then
> echo "loading $i..." >> $msgfile
> . "$i"
> fi
> done
>
> そして、/etc/X11/xinit/xinitrc.d/setime 中で Canna 使用ならこの部分が
> 実行されます。
>
> canna*|Canna*)
> export CANNAHOST=$CANNA_SERVER
> echo "Canna with kinput2, server=${CANNA_SERVER}" >> ${LOG}
> setime Canna >> ${LOG}
>
> この setime Canna >> ${LOG} の setime は /usr/share/vine/vinelib 中で
> 定義されているシェル関数の setime です。ここから先もかなり複雑なので
> ご自分で /usr/share/vine/* を追っていただくよりないのですが、結局
> /usr/bin/kinput2ctl $1 が実行され、この kinput2ctl というシェルスクリプト
> 中で Canna 使用ならば、
>
> kinput2 -canna ${CANNA_SERVER:+-cannaserver $CANNA_SERVER} &
>
> とめでたく kinput2 が起動するわけです。

長南さん、ていねいなご解説をありがとうございます。

私が質問させていただいた理由は、デフォルト言語を英語に設定しつつ、かつ
kinput2 を起動させるためにどこのスクリプトをいじればよいかということが
知りたかったということです。例えば Turbolinux の場合は /etc/X11/xinitrc/
xinitrc で LANG 変数をチェックし、ja_JP であれば XMODIFIERS を設定して
kinput2 を起動する、という単純なプロセスなので、改変が容易でした。

ところが Vine ではさにあらずで、どこを改変すればよいかで悩んでいたわけ
です。いまのところは .bash_profile を無理矢理使い、以下のように kinput2
を起動しておりました。

if [ ! "${XAUTHORITY}" = "" ]; then
export XMODIFIERS="@im=kinput2"
kinput2 -canna &
fi

おかげさまでこの情けないコードを消し、きちんとしたところでの改変ができ
そうです。重ねがさね、ありがとうございます。

戸山大五郎

--
Daigoro F. Toyama
dtoyama@xxxxx

投稿者 xml-rpc : 2004年11月 3日 12:33
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/27497
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。