You are <span class="caps">SUCH </span>a nerd. Anyway, this looks lovely for Backpack users.
Could you have hit <span class="caps">F11 </span>before taking the screenshots?
UPDATE: The latest Backpack Calendar and Reminder scripts for Quicksilver are available here.
I love the reminder and calendar functions in the Backpack products from the good guys at 37signals. I also love Quicksilver for making my computing life easier.
Quicksilver has a Backpack plugin that works fine for the other areas of Backpack, but is pretty useless for the Backpack Calendar and Reminders. All I want to do is create events and reminders from Quicksilver. I’ve been looking for this for awhile, and finally decided to roll my own.
Since I have no idea how to make a Quicksilver plugin other than using AppleScript, I went the AppleScript route. It took me a little time to decipher the appropriate Backpack API sections, mostly because they tell you that you need a “calendar ID” but don’t tell you where to get it.
To get this calendar ID, I looked at the source on my Backpack Calendar page and found where it listed my Calendars. The number next to these calendar names is the calendar ID we need for our scripts. I created a separate script for each calendar that I want to use. This means I perform fewer steps during the process in Quicksilver than if I built a choosing mechanism into the script (plus I don’t know how to do that). The block of code that contains my Calendar IDs looks like this (I split the second line into several, since it was so long. You should be able tot find it easily enough, though):
<p>Calendar
<select id="event_calendar_id"
name="event[calendar_id]">
<option value="47055" selected="selected">
Personal</option>
<option value="242256">Consulting</option>
<option value="242257">TNI</option></select>
You will also need your API code which you can obtain at the bottom of your Backpack Account page by clicking the “Show the API key” link.
Armed with these pieces of information, and after much trial and error to get the script right, I created an AppleScript (the tidbits that tell it to take the text from Quicksilver are borrowed from a script I found in a comment thread somewhere awhile back. The reminder of how to construct the shell script came from my colleague, Mark.) I’m tired of trying to create the code block, so I’ll just let you download the sample script.
You can open this script in Script Editor and continue from there. You’ll need to replace YOURAPIKEY with the API key from your accounts page, YOURCALENDARID with the ID of whatever calendar you want to send events to, and YOURUSERNAME with the username of your Backpack account.
You can then save this in the folder ~/Library/Application Support/Quicksilver/Actions. If this folder doesn’t already exist, you’ll need to create it. If you’re using the method I did, you’ll have several of these files. I named them things like “Personal Event.scpt” and “Consulting Event.scpt” so I can very easily call them up from Quicksilver. After saving them in this location, you’ll have to quit Quicksilver and relaunch it to get them to work. You might have to point Quicksilver to this folder specifically, but I don’t remember having to do that after I set it up the first time.
To use the script, then, you’ll just need to call up Quicksilver and type a period to enter text entry mode, then enter an event using the same syntax you would on the Backpack Calendar website. When you’re done typing, hit tab and call up one of the scripts. Hit enter, and you’re done. You should now see the event on your backpack calendar.

The next step was to come up with a way to enter reminders from Quicksilver. This one turned out to be even easier, although I went with the most basic functionality possible. After downloading this script, you’ll need to edit it in Script Editor and change the same variables as before, but you won’t have any Calendar IDs in this one. Save it in the same folder and restart Quicksilver again.
The only way I’ve found so far to enter a reminder is to give it a specified number of minutes. The API also allows for entering specific dates, but that has to be structured in a way I wasn’t up to creating a script for, especially since I already have the Calendar scripts for that. For the reminder, you’ll enter something like “+120 Check the car air filter,” hit tab, and call up the reminder script. This will enter a backpack reminder that will notify you in 2 hours that you need to check the air filter in the car.
The one downside of the reminder script I’ve found is that it gives a response after running the command, prompting quicksilver to activate again. This is not a big deal, as a quick press of the escape key or the Quicksilver hotkey will send it away again.
Next entry: Even Better Backpack and Quicksilver Integration
Previous entry: Geek Squad
You are <span class="caps">SUCH </span>a nerd. Anyway, this looks lovely for Backpack users.
Could you have hit <span class="caps">F11 </span>before taking the screenshots?
Much thanks for the post. I’m undergoing to <span class="caps">GTD </span>conversion now with my Mac, and this little script will most definitely help.
My primary use for Backpack was for the reminders. It worked great… I could get <span class="caps">SMS</span>ed before I was supposed to be somewhere and everything.
Then I found http://www.stikkit.com and its integration through Quicksilver. With Stikkit, you can type in “remind me to feed the cat at 6:30 pm” and Stikkit will use its smarts to interpret what you’ve typed in and remind you at 6:00 about feeding the cat.
My main complaint is how you can’t customize when it reminds you; it’s always 30 minutes before the event.
But the ability to say, “remind me next tuesday to feed the cat at 6:30 pm” is nothing short of magical.
Check it out. ( =
I’ve played with Stikkit in the past, and just couldn’t get used to it. I use 30 boxes now for events, which has a similar syntax to what you mentioned for Stikkit.