Start a new Mail message from any application

Does your Mac usage involve sending lots of e-mail messages? So much so that you’d love to be able to send an e-mail from any application, regardless of whether or not Mail is already running?

While OS X provides some Services to send e-mail based on selected files or e-mail addresses, there’s no global “I’d like to start a new e-mail message” command. But with just a bit of work, and an AppleScript from Mac OS X Hints reader Wout Mertens, you can create your own command to do just that.

This hint works in both OS X 10.5 and 10.6, though it’s easier to implement in 10.6, thanks to its ability to create new Services, and assign keyboard shortcuts to those services; I’ll provide instructions for both versions of OS X. The first step is generally the same in both systems—you need to enter the following AppleScript.

If you’re running 10.5, open Script Editor; in 10.6, launch Automator and select Service from the template chooser that appears. Once Automator is open, set the two pop-up menus at the top of the work area to “no input” and “any application.” Then find the Run AppleScript action and drag it into the blank work area on the right side of the Automator window. Remove all the code that appears there, and replace it with the following (or, in 10.5, copy and paste the following code into Script Editor):

tell application "Mail"
  set t to make new outgoing message
  set visible of t to true
  activate
end tell

If you’re running 10.5, save this as an AppleScript, and then download Spark, which you can use to assign a keyboard shortcut to your newly-created AppleScript. There are other programs that can do this as well, so feel free to substitute another that you may be more familiar with.

In 10.6, save your Service with a relevant name (New e-mail, say), and then open the Keyboard Shortcuts tab of the Keyboard System Preferences panel. Select Services in the left-hand column, then scroll down in the right-hand column to the General section. You should see your newly-created service listed there; double-click to the right of its name, and you can create a new keyboard shortcut.

Because this keyboard shortcut will be available in all applications, you’ll want to make sure it’s unique—use some combination of Shift, Control, Command, and Option plus your activation key to insure it doesn’t conflict with any other shortcuts. I assigned mine to Shift-Control-Option-N, for example. I also found that some combinations just didn’t work, for no apparent reason; if that happens to you, just try another shortcut.

Once you’ve created a keyboard shortcut, you’ll be able to start a new e-mail from any application, even those (like Firefox) that don’t support Services. There may be some programs where it won’t work, but in my testing, I didn’t find any (on my 10.6 system, at least).

Subscribe to the MacWeek Newsletter

Comments