Encuentra qué proceso recibe un comando de teclado dado

17

Estoy tratando de entender por qué cierta combinación de teclado ya no funciona.

Como ejemplo, Sublime Text 2 viene con un atajo de teclado para abrir el panel Buscar / Reemplazar:

Command+ Option+F

Este combo funcionó bien hasta que hice una instalación limpia de OSX 10.8.5, después de lo cual misteriosamente dejó de funcionar en Sublime Text.

Sé que las secuencias de teclado pueden ser capturadas por procesos que no sean los más frontales (como el sistema operativo), así que me preguntaba si hay una manera de verificar por qué proceso se "consumió" un comando de teclado en particular.

Mark Fox
fuente
Para VSCode CMD + SHIFT + P, consulte github.com/prettier/prettier-vscode/issues/250
Devin G Rhode

Respuestas:

19

No conozco ningún método rápido y eficiente para encontrar el destinatario de un acceso directo. Pero aquí hay una receta para iniciar la caza:

  1. Cierre la mayoría de sus aplicaciones en ejecución para mejorar la eficiencia de la búsqueda.

  2. Abra una Terminalventana y ejecute el siguiente comando:

    /usr/bin/sudo opensnoop
    

    Este comando rastreará todas las openllamadas al sistema.

  3. Cambie al contexto donde su acceso directo es interceptado por una aplicación desconocida y escriba ⌘ cmd+ ⌥ option+ F.

    Busque una pista culpable de los nombres de archivo abiertos.

  4. whilesin éxito, agregue una aplicación y GOTO 3.

dan
fuente
1
¡Agradable! Si hace esto lo suficientemente rápido, debería tener una lista de procesos bastante sucinta. Tenía alrededor de 50 líneas, la mitad de las cuales eran un proceso en segundo plano que sabía que no escuchaba las pulsaciones del teclado, así que pude filtrarlas fácilmente en un editor de texto. Las aproximadamente 20 líneas restantes registraron otros 3 procesos, y el 75% de ellos contenían a mi culpable. Muchas gracias por compartir, @daniel
Joel Mellon
Gracias Daniel Había estado frustrado por años de que algo más estaba capturando un acceso directo para una de mis aplicaciones (y lo que es peor, ¡reproducir un pequeño sonido de ping!). ejecuté esto, vi tal vez 4 aplicaciones haciendo llamadas, una de ellas estaba abriendo "ping.aiff", ¡me llevó directamente al culpable!
Biglig
13

ShortcutDetective resuelve su problema. Es gratis, simple y al grano.

Jonathan Wheeler
fuente
1
Fantástica recomendación! Esto hizo el truco para mí.
D Raymond
¡¡¡Gracias!!! ¡Esto me salvó de perder la cordura!
Sanjiv Jivan
0

KeyCue proporciona comentarios visuales sobre los atajos de teclado. Se puede descargar como versión de prueba.

KeyCue de Ergonis

Lo configuré para que un doble toque y mantener presionada la tecla Comando muestre todos los accesos directos actualmente activos.

Gilby
fuente
Después de probar KeyCue, me parece que solo muestra los atajos de teclado asociados con los comandos de menú para la aplicación activa actual. Además, parece mostrar teclas de acceso rápido globales de Keybaord Maestro y quizás una o dos aplicaciones compatibles específicas. ¿Muestra teclas rápidas globales para todas las aplicaciones para usted?
Paul
Me resulta un tanto misterioso qué teclas de acceso rápido se muestran para 'otras' aplicaciones. Creo que intenta (pero no tiene éxito) mostrar teclas de acceso rápido globales que sean relevantes para el lugar donde se encuentra. La Guía del usuario se refiere específicamente a Keyboard Maestro.
Gilby