GTK_IM_MODULE=xim は、GTK および QT アプリケーションでデッドキーを破棄します。

GTK_IM_MODULE=xim は、GTK および QT アプリケーションでデッドキーを破棄します。

XIM私のファイルを考慮するために作成キーを取得するために使用します~/.XCompose(これはこれを考慮する唯一の入力方法であり、私が試した他のすべての入力方法はハードコーディングされたテーブルを使用します)。ただし、GTKおよびQTアプリケーションではデッドキーが壊れます。 (GTK)でをcharmap押す。ただし、キーを押すとキャレットの点滅が止まるため、キーが認識されます。 (QT)では、代わりに(2つの別々の文字)を印刷します。^ aa^kate^a

デッドキーを使用するときはどのように機能しますかXIM


以下は関連する環境変数です。

$ env | grep '\(IM\|XMODIFIERS\)'
ECORE_IMF_MODULE=xim
QT_IM_MODULE=xim
GTK_IM_MODULE=xim
XMODIFIERS=@im=none

xev押したときの出力は次のとおりです^ a

KeyPress event, serial 37, synthetic NO, window 0x1a00001,
    root 0xd9, subw 0x0, time 29204065, (131,637), root:(135,656),
    state 0x10, keycode 34 (keysym 0xfe52, dead_circumflex), same_screen YES,
    XLookupString gives 1 bytes: (5e) "^"
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 37, synthetic NO, window 0x1a00001,
    root 0xd9, subw 0x0, time 29204135, (131,637), root:(135,656),
    state 0x10, keycode 34 (keysym 0xfe52, dead_circumflex), same_screen YES,
    XLookupString gives 1 bytes: (5e) "^"
    XFilterEvent returns: False

KeyPress event, serial 37, synthetic NO, window 0x1a00001,
    root 0xd9, subw 0x0, time 29204545, (131,637), root:(135,656),
    state 0x10, keycode 24 (keysym 0x61, a), same_screen YES,
    XLookupString gives 1 bytes: (61) "a"
    XmbLookupString gives 1 bytes: (61) "a"
    XFilterEvent returns: False

KeyRelease event, serial 37, synthetic NO, window 0x1a00001,
    root 0xd9, subw 0x0, time 29204614, (131,637), root:(135,656),
    state 0x10, keycode 24 (keysym 0x61, a), same_screen YES,
    XLookupString gives 1 bytes: (61) "a"
    XFilterEvent returns: False

ベストアンサー1

おすすめ記事