これらを、Windows(pegasus)上の teraterm / VcXsrv から利用している。
イメージ的には以下のような状態だ。
pegasusからgemini/cancerを利用 |
そのため、gemini 上で動く virt-manager と、cancer 上で動く virt-manager、いずれも同じように pegasus には表示されるが、別アプリケーション(別マシンで動いているアプリケーション)だ。
それぞれのアプリケーションに日本語入力を行うためには、それぞれに fcitx と mozc が必要だと思…う…。
というわけで確認をしてみる。
まず、gemini / cancer で fcitx が動いていたら止める。
$ ps -ef | grep fcitx | grep -v grep
動いているプロセスを kill すること。
両方(gemini / cancer)のsshセッションで、環境変数 XMODIFERS が設定されているか確認。
$ env | grep XMODIFIERS
両方で virt-manager を起動し、それぞれ仮想マシンの設定を適当に開いておく。
$ virt-manager
まだ現時点では、日本語入力は出来ないはずだ。
この状態で、gemini で fcitx を起動する。
(gemini) $ fcitx
起動が出来たら、gemini / cancer 両方で起動した virt-manager に日本語入力を試してみる。
gemini のウィンドウには入力可能だけど、cancer のウィンドウには入力出来ない。
では、cancer 上で fcitx を起動してみる。
(cancer) $ fcitx
エラーが発生する。エラーメッセージは
--
(ERROR-NNNNN /build/fcitx-PSoVA1/fcitx-4.2.9.1/src/frontend/xim/xim.c:240) XIM 開始エラー: fcitx という他の XIM が動いていませんか?
(ERROR-NNNNN /build/fcitx-PSoVA1/fcitx-4.2.9.1/src/lib/fcitx/instance.c:440) Exiting.
--
というものだ。(NNNNN は fcitx のプロセスNo.のようだ)
cancer 上では fcitx は動かしていないにも関わらず、fcitx が動いていないか?というエラーが出るのだ。
しかし、エラーが出たにも関わらず、この状態で cancer 上で稼働させている virt-manager には日本語入力が出来る。
これは一体どういうことなんだろうか…?
今現在は、gemini / cancer いずれも fcitx は稼働している。
$ ps -ef | grep fcitx | grep -v grep
mozc は?
$ ps -ef | grep mozc | grep -v grep
両方のマシンで mozc_server が動いているようだ。
もう一度、cancer 上で fcitx を停止(kill)しておこう。
fcitx を kill したら、mozc_server も停止したはずだ。念のために確認し、もし mozc_server が稼働していたら kill しておこう。
これで今は、
- gemini : fcitx 稼働 / mozc_server 稼働
- cancer : fcitx 停止 / mozc_server 停止
今の状態で、それぞれの virt-manager に日本語入力が可能か再確認を。
予想通り、gemini 側には入力可能、cancer 側には入力不可、だ。
では、cancer で mozc_server だけを起動してみたら…?
(cancer) $ /usr/lib/mozc/mozc_server &
(cancer) $ ps -ef | grep mozc | grep -v grep
これでも入力は出来ないな…。
cancer で fcitx を起動すれば、日本語入力は可能になる。
(相変わらずエラーは表示されるが…)
となると、先程出た
--
(ERROR-NNNNN /build/fcitx-PSoVA1/fcitx-4.2.9.1/src/frontend/xim/xim.c:240) XIM 開始エラー: fcitx という他の XIM が動いていませんか?
(ERROR-NNNNN /build/fcitx-PSoVA1/fcitx-4.2.9.1/src/lib/fcitx/instance.c:440) Exiting.
--
というエラーはどういう意味なんだろうか?
恐らくは、「gemini の fcitx」→「pegasus の VcXsrv」というセッションがあるのに、「cancer の fcitx」→「pegasus の VcXsrv」というセッションを作ろうとして、cancer が「あれ?pegasus の VcXsrv、既にセッションあるよ?」と言っているんだと思うんだが…。
であれば、cancer 上の virt-manager に対して、gemini の fcitx を使って日本語入力出来てもいいような気がするんだが…。
良くわからない。
まぁとりあえず、必要に応じて fcitx を起動すれば、とりあえず日本語入力出来るので、一旦はコレでヨシとしておくか…。
日本語入力に関しては、Xサーバ側をWindowsのVcXsrvで実装しているので、Linux Xサーバ(+GNOME)とかだったらどうなるんだろうか?
ちょっと気になる。
次回は、Ubuntu Desktop を作って、そちらから gemini / cancer にログインしてみることにしよう。
0 件のコメント:
コメントを投稿