Ubuntu 17.04 XFCE4
当我登录计算机时,Control+R 在所有程序中都有效。但是,一段时间后(通常是在一段时间不活动之后,即使计算机从不休眠,显示器也会关闭),它在所有程序中都停止工作(例如,Chrome 和 PHPStorm 都不会响应它,但它通常在这些程序中触发的相应操作在从菜单激活时有效)。所有其他快捷键都正常工作,似乎只有 Control+R 受到影响。
在系统“键盘”设置中没有与此组合绑定的应用程序快捷方式。
我已经运行了 xev 并验证了组合工作时和不工作时的输出是否相同。
要解决这个问题,我只需注销并重新登录 - 无需重新启动系统。
由于系统识别了该按键,但没有应用程序对其做出响应,我假设某个正在运行的进程正在劫持此组合,但我不知道如何找出是哪个应用程序。
答案1
Unix.SE 的回答作者:don_crissti。要发送Ctrl+r组合,请使用"ctrl+r"
,例如xdotool key "ctrl+r"
。
要找出哪个应用程序/程序获取了你的密钥,请使用 debug keysymXF86LogGrabInfo
. 使用同时xdotool
按下 + 键,例如在终端运行XF86LogGrabInfo
KEY=XF86AudioPlay
xdotool keydown ${KEY}; xdotool key XF86LogGrabInfo; xdotool keyup ${KEY}
然后使用检查输出,请tail /var/log/Xorg.0.log
注意,使用gnome 3/gdm
和systemd
这不再记录到Xorg.0.log
(而是记录到杂志)在这种情况下,你可以运行
journalctl -f
然后在另一个终端运行xdotool
命令。切换到第一个终端,你会看到类似
/usr/lib/gdm/gdm-x-session[629]: Active grab 0x40c0a58e (xi2) on device 'Virtual core keyboard' (3):
/usr/lib/gdm/gdm-x-session[629]: client pid 708 /usr/bin/gnome-shell
/usr/lib/gdm/gdm-x-session[629]: at 32595124 (from passive grab) (device frozen, state 6)
/usr/lib/gdm/gdm-x-session[629]: xi2 event mask for device 3: 0xc000
/usr/lib/gdm/gdm-x-session[629]: passive grab type 2, detail 0xac, activating key 172
在上面的例子中,获取密钥的程序(客户端)是gnome-shell
。