Rworks ホーム | お問い合わせ

GNOME 環境での Windows の IME 入力

Red Hat Enterprise Linux や CentOS の GNOME 環境では、 Linux ホストのローカルの日本語入力機構からの日本語入力を受け付けるように環境設定されているため、 デフォルト設定のままでは Windows の IME から入力ができません。 Windows の IME から日本語入力を行う場合は、以下のように設定を切り替えてください。

設定方法

Red Hat Enterprise Linux、CentOS の場合

  1. root権限で、 /etc/X11/xinit/xinput.d にある none.conf というファイルを、 同じディレクトリに astecx.conf というファイル名でコピーします。
    # cd /etc/X11/xinit/xinput.d
    # cp none.conf astecx.conf
  2. 続いて astecx.confの内容を以下のように書き換えます。
    XIM=ASTEC_IMS
    XIM_PROGRAM=/bin/true
    XIM_ARGS=
    SHORT_DESC=ASTEC-X
    LONG_DESC="ASTEC-X Input Method Server"
    GTK_IM_MODULE=xim
    QT_IM_MODULE=xim
    

    root権限が必要な作業はここまでです。

    Red Hat Enterprise Linux 6、CentOS 6 の場合は、 この段階でログアウトすると、 次回ログインした時に Windows の IME から入力できるようになります。
    Red Hat Enterprise Linux 5、CentOS 5 の場合は、 引き続き下記の設定を行います。

  3. Windows の IME から入力したいユーザーでログインして、 im-chooser を起動します。

    ターミナルからim-chooser とコマンド入力するか、 デスクトップのメニューの "システム" → "設定" → "他の個人設定" → "入力メソッド" と選んで起動します。

  4. "カスタム入力メソッドを使う" にチェックをして、 この項目の右端の選択欄から "astecx" を選びます。
  5. [ログアウト] のボタンを押してログアウトするか、 [閉じる]のボタンを押したあとにログアウトしてください。 次回、ログインしたときに、設定が反映されます。
root権限がない場合

ホームディレクトリに、 .xinputrcという名称のファイルを作って、 上記2番の設定を記述してください。 一旦、ログアウトしてログインすると設定が反映されます。

Red Hat Enterprise Linux 4、CentOS 4 の場合

Red Hat Enterprise Linux 4 や、CentOS 4.x、バージョン 3 以降の Fedora Core では、 $HOME/.xinput.d/ja_JP といういファイルを作って以下の設定を記述してください。
Red Hat Enterprise Linux 3, Red Hat Linux 9, Fedora Core 1, 2 などでは、 $HOME/.i18n に以下の設定を記述します。また、 Red Hat Enterprise Linux 3, Red Hat Linux 9, Fedora Core 1, 2 では、 4行目の、 #gnome-im-settings-daemon > /dev/null は記述する必要はありません。

XIM=ASTEC_IMS
GTK_IM_MODULE=xim
XIM_PROGRAM=""
gnome-im-settings-daemon > /dev/null

以上の設定を行った後、あらためてログインして GNOME 環境を開くと、 Windows の IME から日本語入力が可能になります。

【先頭に戻る】

設定を自動的に切り替える

$HOME/.xinput.d/ja_JP$HOME/.i18n で条件分岐を行うことで、 ASTEC-X からログインした場合と Linux のコンソールに直接ログインした場合とで、 設定を動的に切り替える事ができます。

Red Hat Enterprise Linux 4 や Fedora Core バージョン2以降の例

VSTRING=$(/usr/X11R6/bin/xdpyinfo | grep "vendor string" | cut -f2 -d\:)
case "$VSTRING" in
    *ASTEC*)
        XIM=ASTEC_IMS
        GTK_IM_MODULE=xim
        XIM_PROGRAM=""
        #gnome-im-settings-daemon > /dev/null
        ;;
    *)
        XIM=htt
        GTK_IM_MODULE=iiim
        XIM_PROGRAM=httx
        #gnome-im-settings-daemon > /dev/null
        ;;
esac

Fedora Core 3 の場合には、 #gnome-im-settings-daemon > /dev/null の行のコメントアウト(#)を外して記述を有効にします。

Red Hat Linux 9 及び Enterprise Linux 3, Fedora Core 1 の例

これらのディストリビューションでは、kinput2 が標準の日本語入力システムになっています。

# $HOME/.i18n for Red Hat Linux 9 and Fedora Core 1
VSTRING=$(/usr/X11R6/bin/xdpyinfo | grep "vendor string" | cut -f2 -d\:)
case "$VSTRING" in
    *ASTEC*)
        XIM=ASTEC_IMS
        GTK_IM_MODULE=xim
        XIM_PROGRAM=""
        ;;
    *)
        XIM=kinput2
        GTK_IM_MODULE=xim
        XIM_PROGRAM=kinput2
        ;;
esac
【先頭に戻る】

制限事項

GNOME のアプリケーションに Windows の IME から入力する場合、いわゆる「その場変換」で入力することができませ ん。
これは、GNOME 環境の gtk2 と ASTEC-X が対応している XIM のプリエディット描画スタイルの違いに起因するもので、 設定の調整などでは対処できません。

【先頭に戻る】
Copyright © 2000-2021 Rworks, Inc. All rights reserved. / 個人情報保護方針 / 著作権・リンクについて