Create iCal events from anywhere

While I rely on iCal to help me track meetings and to dos, I’ve always found the actual process of adding new events and to dos much more complex than it need be. Typically I’ll be in some other application when I realize I need to create a new to do or event, so that entails launching iCal, finding the date on which I want to add the event, double-clicking to create the new event, then (thanks, 10.5) pressing Command-E to bring up the edit box. Creating a to do is somewhat easier, but only because iCal won’t let you pick a due date for your to do until after it’s been created. Thankfully, there’s a solution at hand—one that will let you create new events and to dos (to dos can only be created in 10.5), regardless of which program you may be running at the time. As a side bonus, you can even specify most of the fields at the same time, leaving only minor clean-up work to be done in iCal itself. Although you will have to use Automator, the two workflows you’re going to build are about as simple as they get.

We’re going to build two different (10.4 users can only use the first one) one-step workflows, one to handle new events, and the other for new to dos. We’ll then save these workflows as applications that can be called from anywhere via the Dock or your favorite keyboard-based launcher utility. Start by launching Automator, in the Applications folder. Depending on whether you’re running 10.5 or 10.4, the instructions will vary slightly. If you’re running 10.5, you’ll first see a “choose your starting point” screen. Click once on Custom, the click Choose. In 10.4, Automator will simply open. Under both OS versions, you’ll now be looking at the Automator interface, with a list of items on the left and a blank work area on the right.

If you’re running 10.4, click once on iCal in the left-hand column; in 10.5, click once on Calendar in the left-hand column. Now drag New iCal Events from the next column into the blank work area on the right. This action will create a new iCal event with the data you provide, but it can also be made to present a dialog box first, and then use the information provided in that dialog to create the event. To make the action work as an interactive dialog, we need to make one simple change. At the bottom of the action, click the Options button, then check the box next to the “Show this action when this workflow runs” option. (You can leave the “Show only the selected items” entry in its unchecked state.)

That’s the only required change, but feel free to change the Add To and Alarm settings—it doesn’t make a lot of sense to modify the Name or From/To section of the dialog, as those values are likely to change when you create each event. Here’s how my finished workflow looks:


Once you have the dialog set up as you’d like it to appear, select File -> Save. When the Save sheet appears, name your workflow (Create iCal Event, perhaps), and choose a save location such as your user’s Documents folder. Before clicking Save, however, click on the pop-up menu next to File Format, and select Application as the file format.

Congratulations, you’ve just created an application. To test it, quit Automator, find the application in the folder where you stored it, and double-click. (If you’re running 10.5, you’ll see a warning that this is the first time you’ve run this application; click Open.) After a brief delay, you’ll see an iCal event dialog on your screen; fill it in then click Continue. Your little mini-application will then silently add this new even to iCal—if iCal’s not running, it will launch, but regardless of its launch state, it won’t come to the foreground. I find this a much nicer way to add events to iCal, especially in 10.5, as it means I don’t usually have to muck with the ungainly floating box interface at all. There are a couple exceptions, of course. You can’t set multiple alarms (in 10.5), nor can you add notes or URLs to an event, without going into iCal itself. But for simple events, this solution works great.

For 10.5 users, you can build a very similar to do creation application. Launch Automator again, click on the Calendar entry in the left-hand column, and drag the New To Do Item action into the work area. As with the new event action, you need to click the Options button and specify the “Show this action” option. Customize the individual to do settings as you wish; here’s what my finished dialog looks like:


Just as with the first workflow, select File -> Save, name the application and choose a save location, and set the File Format pop-up to Application. Quit Automator and test your new to do creator—I actually like this one even more than the event creator, as this makes it a one-step process to create to dos.

To make your applications accessible from anywhere, just move them into the Dock. You could also store them in the Finder’s sidebar or toolbar. If you use a program launcher such as Butler, LaunchBar, or Quicksilver, or a keyboard macro tool such as Keyboard Maestro, you can even launch your programs via the keyboard. In my case, I used Butler to assign keyboard shortcuts to both, and I can now create events (Command-Control-E) or to dos (Command-Control-T) from any program at any time.

To comment on this article and other Macworld content, visit our Facebook page or our Twitter feed.
Shop Tech Products at Amazon