Znajdź, który proces odbiera dane polecenie klawiatury


17

Próbuję dowiedzieć się, dlaczego dana kombinacja klawiszy już nie działa.

Na przykład Sublime Text 2 jest dostarczany ze skrótem klawiaturowym do otwierania panelu Znajdź / Zamień:

Command+ Option+F

To połączenie działało dobrze, dopóki nie przeprowadziłem czystej instalacji OSX 10.8.5, po czym w tajemniczy sposób przestało działać w Sublime Text.

Wiem, że sekwencje klawiszy mogą być przechwytywane przez procesy inne niż z przodu (jak w systemie operacyjnym), więc zastanawiałem się, czy istnieje sposób sprawdzenia, za pomocą którego którego procesu została wydana określona komenda klawiatury?


Odpowiedzi:


19

Nie znam szybkiej i skutecznej metody znalezienia odbiorcy skrótu. Ale oto przepis na rozpoczęcie polowania:

  1. Zamknij większość uruchomionych aplikacji, aby poprawić wydajność wyszukiwania.

  2. Otwórz Terminalokno i uruchom następujące polecenie:

    /usr/bin/sudo opensnoop
    

    To polecenie wyśledzi każde openwywołanie systemowe.

  3. Przejdź do kontekstu, w którym skrót jest przechwytywany przez nieznaną aplikację i wpisz ⌘ cmd+ ⌥ option+ F.

    Poszukaj podpowiedzi od otwartych nazw plików.

  4. whilenieudane, dodaj jedną aplikację i GOTO 3.


1
Miły! Jeśli zrobisz to wystarczająco szybko, powinieneś mieć dość zwięzłą listę procesów. Miałem około 50 wierszy, z których połowa była procesem w tle, o którym wiedziałem, że nie słucham naciśnięć klawiszy, więc z łatwością mogłem je odfiltrować w edytorze tekstu. Pozostałe 20 linii zapisało 3 inne procesy, a 75% z nich zawierało mojego winowajcę. Bardzo dziękuję za udostępnienie, @ Daniel
Joel Mellon

Dzięki Daniel. Byłem sfrustrowany przez wieki, że coś innego przechwytywało skrót przeznaczony dla jednej z moich aplikacji (a nawet gorzej, odtwarzając dźwięk pingowania!). uruchomiłem to, zobaczyłem może 4 aplikacje dzwoniące, jedna z nich otwierała „ping.aiff”, doprowadziła mnie prosto do winowajcy!
Biglig


0

KeyCue zapewnia wizualną informację zwrotną na temat skrótów klawiaturowych. Można go pobrać jako wersję próbną.

KeyCue od Ergonis

Skonfigurowałem go tak, aby dwukrotnie stuknąć i przytrzymać klawisz Command, aby wyświetlić wszystkie aktualnie aktywne skróty.


Po wypróbowaniu KeyCue wydaje mi się, że pokazuje tylko skróty klawiaturowe powiązane z poleceniami menu dla bieżącej aktywnej aplikacji. Ponadto wydaje się, że pokazuje globalne klawisze skrótów od Keybaord Maestro i może jedną lub dwie inne obsługiwane aplikacje. Czy wyświetla globalne skróty dla wszystkich aplikacji?
Paul

Uważam, że jest nieco tajemnicze, jakie klawisze skrótów są wyświetlane dla „innych” aplikacji. Myślę, że próbuje (ale nie do końca się udaje) pokazać globalne klawisze skrótów, które są odpowiednie dla tego, gdzie jesteś. Podręcznik użytkownika odnosi się w szczególności do Keyboard Maestro.
Gilby,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.