MacOS – How to assign a service keyboard shortcut for a specific application (non global)

automatorgoogle-chromekeyboardmacos

I would like to assign a keyboard shortcut to an Automator created service.

  • This must be working only for the application the service was created for.
  • It should override the default application keyboard shortcut (if any).

Example: Using my text editor, if I press F5, I want it to launch a reload Chrome tab service as explained on Stack Overflow Mac: reloading document in Chrome or Firefox?, but without activating the normal function associated to this key in the software.

Best Answer

Going from your example, I assume:

  • You have an existing Automator service that reloads a Chrome tab.
  • It is set to work in TextEdit only.
  • It is installed (in ~/Library/Services).

To set an application-specific shortcut then:

  1. Open System Preferences > Keyboard
  2. Go to the Shortcuts tab and choose App Shortcuts at the bottom of the list.
  3. Create a new shortcut:

    • Restrict the shortcut to TextEdit
    • The name must be exactly the same as the menu title of the service