Ubuntu 17.04 XFCE4
Wenn ich mich am Computer anmelde, funktioniert Strg+R in allen Programmen. Nach einiger Zeit (normalerweise nach einiger Inaktivität, obwohl der Computer nie schläft, sondern die Monitore einfach ausgeschaltet werden) funktioniert es jedoch in allen Programmen nicht mehr (z. B. reagieren weder Chrome noch PHPStorm darauf, aber die entsprechenden Aktionen, die es normalerweise in diesen Programmen auslösen würde, funktionieren, wenn es über ein Menü aktiviert wird). Alle anderen Tastenkombinationen funktionieren einwandfrei, es scheint nur Strg+R betroffen zu sein.
In den „Tastatur“-Einstellungen des Systems sind keine Anwendungsverknüpfungen an diese Kombination gebunden.
Ich habe xev ausgeführt und überprüft, dass die Ausgabe dieselbe ist, wenn die Kombination funktioniert und wenn sie nicht funktioniert.
Um das Problem zu beheben, muss ich mich lediglich ab- und wieder anmelden – ein Systemneustart ist nicht erforderlich.
Da das System den Tastendruck erkennt, aber keine App darauf reagiert, gehe ich davon aus, dass ein laufender Prozess diese Kombination kapert, weiß aber nicht, wie ich herausfinden kann, welche Anwendung das ist.
Antwort1
Eine Antwort von Unix.SEvon don_crissti. Um die Ctrl+ r-Kombination zu senden "ctrl+r"
, verwenden Sie beispielsweise xdotool key "ctrl+r"
.
Um herauszufinden, welche App/welches Programm Ihren Schlüssel gekapert hat, verwenden Sie das Debug-KeysymXF86LogGrabInfo
. Verwenden Sie xdotool
die Tasten + XF86LogGrabInfo
gleichzeitig zu drücken, z. B. in einem Terminal
KEY=XF86AudioPlay
xdotool keydown ${KEY}; xdotool key XF86LogGrabInfo; xdotool keyup ${KEY}
Überprüfen Sie dann die Ausgabe mit tail /var/log/Xorg.0.log
Beachten Sie, dass mit gnome 3/gdm
und systemd
dies nicht mehr protokolliert wird Xorg.0.log
(es wird stattdessen protokolliert in dieTagebuch). In diesem Fall könnten Sie
journalctl -f
und führen Sie dann die Befehle in einem anderen Terminal aus xdotool
. Wechseln Sie zum ersten Terminal und Sie sehen etwas wie
/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
Im obigen Beispiel ist das Programm (der Client), das den Schlüssel abgegriffen hat gnome-shell
, .