Windows用Xサーバでリモートの Linuxアプリを使用時に、日本語入力できるようにする設定方法です。
Xサーバについては、次の記事を参照して下さい。
Windows用Xサーバ Cygwin/X パソコン鳥のブログ
WindowsでリモートのLinuxのGUIアプリを表示させる-Xサーバ Xming パソコン鳥のブログ
日本語入力の設定
SSHで接続後、ターミナルで次を実行します。
export GTK_IM_MODULE=ibus export XMODIFIERS=@im=ibus export QT_IM_MODULE=ibus export NO_AT_BRIDGE=1 xset -r 49 ibus-daemon -d -x
各行の意味は簡単に次のようになります。
export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus
と
ibus-daemon -d -x
日本語入力の為の設定です。
export NO_AT_BRIDGE=1
アプリケーション(Xクライアント)起動時に
「WARNING **: Couldn’t connect to accessibility bus: Failed to connect to socket /tmp/dbus-XXXXXXXXXX: 接続を拒否されました」
とワーニングが出る場合に、これが出ないように防止します。
xset -r 49
半角/全角キーを押すと、IMEツールバーで「A」「あ」の表示が高速に点滅することがあります。
半角/全角キーの入力がリピートされることが原因なので、半角/全角キー(キーコード:49)のオートリピートを無効にします。
日本語入力方法
- Ubuntu14.04
Ctrl+space で入力メソッドが切り替わるので、Anthy か Mozc にします。
半角/全角キーで日本語入力の ON/OFF が切り替わります。 - CentOS6
デフォルトでは入力メソッドはAnthyのみです。
Mozcを入れている場合は、Ctrl+space で入力メソッドが切り替わるので、Anthy か Mozc にします。
半角/全角キーで日本語入力の ON/OFF が切り替わります。 - CentOS7
ibus-setup を実行し、キーボードショートカットをSpace から space に変更します。 Ctrl+space で入力メソッドが切り替わるので、Kana Kanji にします。
後は、半角/全角キーで日本語入力の ON/OFF が切り替わります。
接続の度に自動的に設定する
先述の設定をSSH接続の度に、自動的に設定されるようにします。
.bashrc の最後に次を追加します。
if [ -n "$SSH_CONNECTION" ] ; then export GTK_IM_MODULE=ibus export XMODIFIERS=@im=ibus export QT_IM_MODULE=ibus export NO_AT_BRIDGE=1 xset -r 49 if test `ps auxw | grep $USER | grep -v grep | grep "ibus-daemon -d -x" 2> /dev/null | wc -l` -eq 0; then ibus-daemon -d -x & fi fi
.bash_logout に下記を追加します。
この設定は、ターミナルソフト PuTTY 使用時に、exit してもウィンドウが終了しない場合がある件の対処です。
if [ -n "$SSH_CONNECTION" ] ; then if test `who | grep $USER 2> /dev/null | wc -l` -eq 1; then while [ 1 ] do exec="" for pid in $( ps auxw | grep $USER | grep "dbus\|ibus\|mozc_" | grep -v grep|awk '{print $2}' ); do kill $pid 2> /dev/null exec="1" done if [ -z "$exec" ] ; then exit; fi done fi fi
以上、Windows用Xサーバでの日本語入力の設定方法でした。
参考
Xの画面を他のXサーバーに表示する – ふなWiki
【今更感】XmingとPuttyでWindowsに最高の開発環境を作る – 波打際のブログさん
VirtualBox での漢字キーリピート不具合の対処 | DeVlog – 銀の翼で翔べ –
WindowsでリモートのLinuxのGUIアプリを表示させる-Xサーバ Xming パソコン鳥のブログ
ターミナルソフト PuTTY が exit しても終了しない場合 パソコン鳥のブログ
SSH経由でのログインを環境変数で判別する パソコン鳥のブログ
コメント
長年悩んでいたXmingでの日本語入力が、こんな簡単にできるとは・・・。
非常に助かりました。