GTK_IM_MODULE = xim quebra chaves inativas em aplicações GTK e QT

4

Estou usando XIM para que a chave de composição leve em consideração o meu arquivo ~/.XCompose (é o único método de entrada que leva em conta, todos os outros que eu tentei usam tabelas codificadas). No entanto, ele está quebrando as chaves inativas no aplicativo GTK e QT: Se em charmap (GTK) eu pressionar ^ a , ele imprime apenas a . A tecla ^ é reconhecida, pois faz com que o cursor pare de piscar enquanto estou pressionando. Em kate (QT), ele imprime ^a (dois caracteres separados).

Como posso fazer com que chaves mortas funcionem ao usar XIM ?

Aqui estão as variáveis de ambiente relevantes:

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

E aqui está a saída de xev ao pressionar ^ 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
    
por Georges Dupéron 22.02.2016 / 15:42

0 respostas