Wie finde ich heraus, welches Programm einen Hotkey besitzt?

32

Ich verwende XFCE 4.12 auf Gentoo mit einem 4.2.0 Kernel. Meine PlayPause-Taste auf meiner Tastatur diente als globaler Hotkey für VLC. Jetzt erkennt VLC den Schlüssel nicht einmal mehr. Es wird "Alt + Media Play Pause" angezeigt, aber nicht nur die Taste.

Gibt es eine Möglichkeit zu sehen, ob und welches Programm diesen Schlüssel erfasst?

Wenn ich xdotool key "XF86LogGrabInfo"die tail /var/log/Xorg.0.logDatei laufen lese

[ 10138.690] (II) Printing all currently active device grabs:
[ 10138.690] (II) End list of active device grabs
Andrew Redd
quelle
@don_crissti danke aber das scheint nichts zu beantworten. Gibt es eine andere Möglichkeit, Hotkeys zu registrieren?
Andrew Redd
@don_crissti Es ist sicher verwandt, aber ich glaube nicht, dass es ein Duplikat ist. Es ist nicht dasselbe, alle Zupacken aufzulisten und einen bestimmten Zupacken zu finden. Die Lösung, die Andrew nützlich ist, ist in einem Kommentar begraben (weil Andrews Problem nicht das ist, wonach ich gefragt habe).
Gilles 'SO- hör auf böse zu sein'
Ja Laufen xdotool keydown "XF86AudioPlay"; xdotool key "XF86LogGrabInfo"; xdotool keyup "XF86AudioPlay"; sleep 1; tail /var/log/Xorg.0.loghat es geschafft. Für irgendwie Google Chrome registriert den Hotkey.
Andrew Redd

Antworten:

21

Um herauszufinden, welche App / welches Programm Ihren Schlüssel erhalten hat, verwenden Sie den Debug-Keysym XF86LogGrabInfo. Mit xdotoolTasten + XF86LogGrabInfogleichzeitig drücken, z. B. in einem Terminallauf

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/gdmund systemddies nicht mehr protokolliert wird Xorg.0.log(stattdessen wird es im Journal protokolliert ). In diesem Fall könnten Sie rennen

journalctl -f

Führen Sie dann in einem anderen Terminal die xdotoolBefehle aus. Wechseln Sie zum ersten Terminal und Sie werden so etwas sehen

/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), der den Schlüssel ergriffen hat gnome-shell.

don_crissti
quelle
Gibt es etwas ähnliches für lightdm?
Elig
@elig - nicht sicher, was Sie meinen ... dies wird vom X-Server ausgeführt, unabhängig von Ihrem Display-Manager.
don_crissti
Dann sehe ich es nicht in meinen Protokollen oder in meinem Tagebuch
am