Se você tem xdotool
instalado, pode simplesmente usar
xdotool keyup ISO_Level3_Shift
O qual envia um evento de liberação de chave (para ISO_Level3_Shift, é claro) para o servidor X.
Mas você queria que um programa liberasse todas as teclas modificadoras.
Pode-se usar o xdotool para conseguir isso facilmente, se não por isso eu não tenho idéia de quais keyyms modificadores são definidos. Um método possível para encontrá-los é analisar keysymdef.h
:
grep '^#define' /usr/include/X11/keysymdef.h | sed -r 's/^#define XK_(\S*?).*$//;' | grep -E '_(L|R|Level.*)$'
Que retorna alguns keyyms que certamente são modificadores. Infelizmente, não consigo encontrar nenhuma definição precisa de uma tecla modificadora no momento, então não sei se é uma lista completa.
Anexar | xargs xdotool keyup
ao pipeline acima liberará todas essas chaves. No meu sistema, ele executa o seguinte comando:
xdotool keyup Shift_L Shift_R Control_L Control_R Meta_L Meta_R Alt_L Alt_R Super_L Super_R Hyper_L Hyper_R ISO_Level2_Latch ISO_Level3_Shift ISO_Level3_Latch ISO_Level3_Lock ISO_Level5_Shift ISO_Level5_Latch ISO_Level5_Lock