如果已xdotool
安装,则只需使用
xdotool keyup ISO_Level3_Shift
它向X服务器发送一个密钥释放(当然,对于ISO_Level3_Shift)事件。
但是您想要一个程序释放所有修饰键。可以使用xdotool轻松实现这一目标,如果不是那样,我不知道定义了哪些修饰符。找到它们的一种可能方法是解析keysymdef.h
:
grep '^#define' /usr/include/X11/keysymdef.h | sed -r 's/^#define XK_(\S*?).*$/\1/;' | grep -E '_(L|R|Level.*)$'
它返回一些肯定是修饰符的键盘符号。不幸的是,我现在找不到修饰键的任何精确定义,所以我不知道这是否是完整列表。
附加| xargs xdotool keyup
到上述管道将释放所有这些键。在我的系统上,它执行以下命令:
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
xdotool keyup 204
。