Update note: there is now an easier way, see bottom of this article.
I recently switched email clients on my Mac from Apple's default Mail app to MailMate.
There were multiple reasons for this, but the main one was being able to use it exclusively without taking my hands off the keyboard. Take a look at their site for a list of all the features.
I'm also a big user of Omnifocus for managing my various projects, and one feature I was missing was the Clip-o-Tron 3000 (yes, that's its real name) which lets you send emails for processing into your Omnifocus inbox via a keyboard shortcut in Mail app.
So I set out to find a way to emulate this with Mailmate.
If you sign up to use the Omni Sync Server, there's a feature in there called "Mail drop to inbox" which generates a custom email address that pushes anything sent to it straight into your omnifocus inbox.
This works, but you still need to forward the email and type in the destination address. So, onto step two: Keyboard Maestro.
If you don't know Keyboard Maestro, it's an amazing macro utility which you should own if you do any type of repetitive task on your mac. This MacWorld review of the latest version gives you a good overview of what it's capable of.
Anyway, here's how to put it all together:
Create a new Keyboard Maestro group
First we create a group that limits our macro to the MailMate application.
- Create a new group in Keyboard Maestro and name it Mailmate.
- Select the Available in all applications menu item and set it to Available in the following applications:.
- Hit the plus button and add the MailMate application.
Add the MailMate macro to the group
- Create a new macro inside the group, call it Send to Omnifocus.
- Create a hot key trigger and type the key combination you wish to use.
- Click the no action area to add the first action.
- Select Interface Control > Type a Keystroke from the action column.
- Type the Shift-Cmd-F keystroke (forward).
- Select Text > Insert Text from the action column.
- Leave the dropdown on Insert Text by Pasting.
- Enter your Omnisync maildrop email address into the field.
- Once again, select Interface Control > Type a Keystroke from the action column.
- Type the Shift-Cmd-D keystroke (send).
- Save your macro.
And there you have it: select an email in MailMate, hit your chosen keyboard shortcut, and a few seconds later that email is sitting in your Omnifocus inbox.
I hope this helped someone out there.
Update (Oct 4th 2013):
There is now an experimental MailMate bundle that integrates with Omnifocus. I've installed and tested it, it works perfectly and avoids the circus described above. More info in the comments for this ticket.