Comment savoir quel programme «possède» un raccourci clavier?

32

J'exécute XFCE 4.12 sur Gentoo avec un noyau 4.2.0. Mon bouton PlayPause sur mon clavier fonctionnait comme un raccourci clavier global pour VLC. Maintenant, VLC ne reconnaît même pas la clé. Il voit "Alt + Media Play Pause" mais pas la clé seule.

Existe-t-il un moyen de voir si et quel programme pourrait capturer cette clé?

Quand j'exécute xdotool key "XF86LogGrabInfo"le tail /var/log/Xorg.0.logfichier lit

[ 10138.690] (II) Printing all currently active device grabs:
[ 10138.690] (II) End list of active device grabs
Andrew Redd
la source
@don_crissti merci mais cela ne semble rien répondre. Existe-t-il un autre moyen d'enregistrer des raccourcis clavier?
Andrew Redd
@don_crissti C'est lié à coup sûr mais je ne pense pas que ce soit un doublon. Répertorier toutes les captures et trouver un grappin spécifique n'est pas la même chose. La solution qui est utile à Andrew est enterrée dans un commentaire (car le problème d'Andrew n'est pas ce que je demandais).
Gilles 'SO- arrête d'être méchant'
Oui la course l'a xdotool keydown "XF86AudioPlay"; xdotool key "XF86LogGrabInfo"; xdotool keyup "XF86AudioPlay"; sleep 1; tail /var/log/Xorg.0.logfait. En quelque sorte, Google Chrome a enregistré le raccourci clavier.
Andrew Redd

Réponses:

21

Pour savoir quelle application / programme a récupéré votre clé, utilisez le debug keysym XF86LogGrabInfo. Permet xdotoold'appuyer XF86LogGrabInfosimultanément sur les touches +, par ex. Lors d'une exécution de terminal

KEY=XF86AudioPlay
xdotool keydown ${KEY}; xdotool key XF86LogGrabInfo; xdotool keyup ${KEY} 

Vérifiez ensuite la sortie avec tail /var/log/Xorg.0.log
Notez que avec gnome 3/gdmet systemdce n'est plus connecté à Xorg.0.log(il est plutôt connecté au journal ). Dans ce cas, vous pouvez exécuter

journalctl -f

puis dans un autre terminal, exécutez les xdotoolcommandes. Basculez vers le premier terminal et vous verrez quelque chose comme

/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

Dans l'exemple ci-dessus, le programme (le client) qui a saisi la clé est gnome-shell.

don_crissti
la source
Existe-t-il quelque chose de similaire pour lightdm?
elig
@elig - vous ne savez pas ce que vous voulez dire ... cela est fait par le serveur X quel que soit votre gestionnaire d'affichage.
don_crissti
Ensuite, je ne le vois pas dans mes journaux ou mon journal
elig