Rechercher le processus qui reçoit une commande de clavier donnée

17

J'essaie de comprendre pourquoi une certaine combinaison de touches ne fonctionne plus.

Par exemple, Sublime Text 2 est livré avec un raccourci clavier pour ouvrir le panneau Rechercher / Remplacer:

Command+ Option+F

Ce combo a bien fonctionné jusqu'à ce que je fasse une installation propre d'OSX 10.8.5, après quoi il a mystérieusement cessé de fonctionner dans Sublime Text.

Je sais que les séquences de clavier peuvent être capturées par des processus autres que les plus avancés (comme par le système d'exploitation), donc je me demandais s'il y avait un moyen de vérifier par quel processus une commande de clavier particulière était "consommée"?

Mark Fox
la source
Pour VSCode CMD + SHIFT + P, voir github.com/prettier/prettier-vscode/issues/250
Devin G Rhode

Réponses:

19

Je ne connais aucune méthode rapide et efficace pour trouver le destinataire d'un raccourci. Mais voici une recette pour lancer la chasse:

  1. Fermez la plupart de vos applications en cours d'exécution afin d'améliorer l'efficacité de la chasse.

  2. Ouvrez une Terminalfenêtre et exécutez la commande suivante:

    /usr/bin/sudo opensnoop
    

    Cette commande recherchera chaque openappel système.

  3. Basculez vers le contexte où votre raccourci est intercepté par une application inconnue et tapez ⌘ cmd+ ⌥ option+ F.

    Recherchez un indice coupable dans les noms de fichiers ouverts.

  4. whileinfructueux, ajoutez une application et GOTO 3.

dan
la source
1
Agréable! Si vous faites cela assez rapidement, vous devriez avoir une liste assez succincte de processus. J'avais environ 50 lignes, dont la moitié était un processus d'arrière-plan, je savais que je n'écoutais pas les touches du clavier, j'ai donc pu facilement les filtrer dans un éditeur de texte. Les 20 lignes restantes ont enregistré 3 autres processus, et 75% d'entre eux contenaient mon coupable. Merci beaucoup pour le partage, @daniel
Joel Mellon
Merci Daniel. J'étais frustré depuis longtemps que quelque chose d'autre capturait un raccourci destiné à l'une de mes applications (et pire encore, jouant un petit son de ping!). a couru cela, a vu peut-être 4 applications passer des appels, l'un d'eux ouvrait "ping.aiff", m'a conduit directement au coupable!
Biglig
13

ShortcutDetective résout votre problème. C'est gratuit, simple et précis.

Jonathan Wheeler
la source
1
Fantastique recommandation! Cela a fait l'affaire pour moi.
D Raymond
Je vous remercie!!! Cela m'a sauvé de perdre ma raison!
Sanjiv Jivan
0

KeyCue fournit un retour visuel sur les raccourcis clavier. Il peut être téléchargé en version d'essai.

KeyCue d'Ergonis

Je l'ai configuré de sorte qu'un double appui long sur la touche Commande affiche tous les raccourcis actuellement actifs.

Gilby
la source
Après avoir essayé KeyCue, il me semble qu'il ne montre que les raccourcis clavier associés aux commandes de menu pour l'application active actuelle. De plus, il semble afficher les raccourcis clavier globaux de Keybaord Maestro et peut-être une ou deux autres applications spécifiques prises en charge. Affiche-t-il des raccourcis clavier globaux pour toutes les applications pour vous?
Paul
Je trouve quelque peu mystérieux de savoir quels raccourcis clavier sont affichés pour les «autres» applications. Je pense qu'il essaie (mais ne réussit pas complètement) de montrer les raccourcis clavier mondiaux qui sont pertinents pour l'endroit où vous vous trouvez. Le Guide de l'utilisateur fait spécifiquement référence à Keyboard Maestro.
Gilby