What's the easiest way to bind F19 to open the calculator (on a Mac)

2

I currently use Quicksilver to open the calculator when I hit F19. I am afraid Quicksilver will die someday. What is the best way to get this functionality after Quicksilver gives up the ghost? Is there a built-in system method? (I'm on OS X 10.6.6)

shanebonham

Posted 2011-01-08T01:27:38.113

Reputation: 195

Answers

2

By the way, I ultimately solved this by purchasing the excellent Alfred Powerpack. It offers global hotkeys which were a snap to set up and work exactly as expected.

shanebonham

Posted 2011-01-08T01:27:38.113

Reputation: 195

5

One built-in way is to use Automator to create a Service, and then bind F19 to that service. One wrinkle is that you (apparently) cannot assign a function key directly to a service using the standard UI; but you can create an Application Shortcut to invoke the service by name.

First, create the Service with Automator.

  1. Start Automator. If you don't know where it is, use Spotlight.
  2. When prompted for a template for the new workflow, choose Service.
  3. At the top of the service workflow, is "Service receives selected" -- choose "No input" at the bottom.
  4. The Library should be visible on the left. If not, click Show Library in the toolbar.
  5. In the Library, search for "launch". "Launch Application" should appear.
  6. Drag it to the workflow.
  7. Choose Calculator in the popup for the action.
  8. Save this workflow with a name like "Launch Calculator"

The Service is saved in your home directory, in ~/Library/Services (where you can delete it if you later decide you don't want it). Now create the key binding.

  1. Under the Automator menu (actually almost any app), where Quit is, highlight Services
  2. In the menu to the right, Launch Calculator should already be listed as a "General" service. But it has no key assigned to it.
  3. Select Services Preferences... under it. This opens System Preferences, to the Keyboard Shortcuts page of the Keyboard panel.
  4. "Services" should be selected on the left.
  5. If you scroll all the way to the end on the right, you should see "Launch Calculator" under "General"
  6. You can double-click the blank area on the right end of the item -- where the keyboard shortcut is listed for the other ones that have something bound -- and when the text box appears, hold down a new key combo. But this does not work for function keys; it doesn't "take", and the text box doesn't go away, as it does with some other combo, like Ctrl-Option-Command-Asterisk -- at least not for me.
  7. So Click the + under the list box (to the left of "Restore Defaults") to create a new Application Shortcut
  8. Application: "All Applications". Menu Title: "Launch Calculator". Keyboard Shortcut: F19

Now switch to any other app and look at the Services menu. F19 should be bound, and so it will work with almost every app. (Two tidbits: it's not bound inside the System Preferences app the moment you create it, so you can't try it immediately; you have to switch away and come back for the menu to get updated. Second, the Calculator app does not have a Services menu, so you can't launch Calculator from Calculator, although the Launch Application action should handle that in theory, doing nothing since it is already active.)

Ken

Posted 2011-01-08T01:27:38.113

Reputation: 7 497

Thanks, Ken. That seems to do the trick. It feels like there might be more of a delay than with QS, but that might just be in my head. – shanebonham – 2011-01-10T16:51:13.347

Nice idea to map menu Services » Calculator! (One other method involves the command line as figured out by Daniel.)

– Arjan – 2011-01-10T17:41:41.673

@shanebonham I don't have anything to compare it to, but it does feel a beat slower than it should. @Arjan I figured there's a way to do it by editing a plist somewhere, but yikes! – Ken – 2011-01-10T22:53:30.640

There's also a bug where the shortcuts for services don't always work until you've clicked the services menu once. And the shortcuts don't work when the frontmost application doesn't have a menu bar or a services menu. – Lri – 2012-08-14T09:50:03.320