NOTE: Due to the time-consuming and frustrating nature of Packal's interface, I will no longer be posting updates to this workflow here. Please go to Alfred forums instead at: http://www.alfredforum.com/topic/917-reminders/
This workflow lets Alfred create new reminders in reminders.app, and show current reminders*. Basic Usage To use, just type "r reminder_text" into Alfred. E.g. "r check out some of Alfred's other workflows" to find an existing reminder with the search text*, or to create a new one. Actioning an existing reminder marks it as complete. Advanced Usage Hold option to view the new/existing reminder in Reminders.app, hold control to delete it instead of marking it complete. To set a reminder for a specific date, use any of the following commands:
r today release the hamsters into the wild r tomorrow bring about financial ruin upon my enemies r thursday have a banana r in 5 minutes drop everything r in 2 hours laugh out loud in random thoughts list r in 3 days 1 hour pick stuff up off the floor r on 24/12/13 to forget everything I know about things in movies r on 12 June 15 to come up with some interesting ideas r on 11 12 13 to check what the weather's like r on 31-12-99 23:22 to panic about the millennium bug r at 2pm to wait for nothing in particular
r thursday at 15.30 to ask some difficult questions
You can use most of the same keywords to show existing reminders, so for example "r tomorrow" will show you all reminders that are due tomorrow, "r in thoughts list" will show you the reminders in the "random thoughts" list, and yes, you can do combinations like "r tomorrow in thoughts list"!
All of the day keywords can be abbreviated to at least 3 letters, so you can do "r tod", "r tomo", "r thurs" and so on. Minutes can be abbreviated to "min" and "mins" and hours to "hr"
To set a priority, use an exclamation mark on its own at the end of the command, like "r get more milk !" (note the space there). If you want to be really flash, you can put 1/2/3 for increasing levels of priority. So "r get some sleep !1" creates a low-priority reminder, "r behave myself !2" is medium priority, and "r dance, always dance !3" is high priority.
Reminders from Applications
You can use "r this" to turn the current application into a reminder, such as the current page in Chrome or Safari, or the current Mail message. Again, combinations are possible, "r this today website to check out in procrastination list" is perfectly feasible! Currently supported applications: Safari, Google Chrome, Mail, Contacts/Address Book, Finder, Chromium, TextMate, TextEdit, Vienna, OmniFocus, WebKit Nightly, FoldingText, Google Chrome Canary. Please post with requests for other applications and I'll do my best to add support.
Getting help Type "r help" to show the above examples in Alfred
Dates & times
The order of d/m/y (as well as HH:mm) I believe will depend on your region settings in the OS.
The workflow tries to be smart about times, but due to needing to support both 12 and 24-hour clocks, you will get more predictable results when using "at 11am" rather than "at 11:00"
"r all" will show all current reminders (as will simply typing "r" with no keywords)* "r refresh" will show all current reminders and refresh the list* "r overdue" will display all overdue reminders* "radd" will show options just for adding reminders "rshow" will only show existing reminders* "rtest" is for debugging purposes and will identify anything that might be broken
If you want to change the default reminder list, edit the applescript property at the top, otherwise it will just use the first one (unless you use "in Y list" at the end).
* Not currently supported in OS 10.9
Note: OS 10.9 Mavericks
This workflow currently operates in a "write-only" mode in OS 10.9 Mavericks.
Due to an issue with 10.9 (and likely 10.9.1), I have removed some of the functionality– specifically the ability to view current reminders within Alfred. You can still use all the commands for adding new reminders, and in the event that the issue is fixed, I will restore full functionality. Read on if you want more details on why this is.
When using this workflow with 10.9, performance is extremely slow (14x slower than 10.8) due to an apparent bug in osascript (which may affect other Alfred workflows too, or might just be limited to accessing Reminder data). This means that fetching data from Reminders is taking around a minute or so per reminder. This is a reproducible bug with AppleScript that has nothing to do with Alfred or this workflow, which I have logged with Apple as of October 7 (#15163843), but has not yet been addressed (and as with other bugs, may never be).
The workflow is designed to use a caching process to store current reminders (as trying to access them directly on any OS version is somewhat slow), but even this can result in prolonged CPU spikes while the cache is built in 10.9, as well as general unresponsiveness of Reminders.
This is probably the best I can do for now until the bug gets fixed (which might never happen). I am genuinely sorry about this, and if I can figure out a way around it, I will do so, but ultimately the workflow has to communicate with Reminders via AppleScript to some extent.
Additional setup for OS 10.9
You will need to enable access to your reminders. You will be prompted to do this when you run the workflow, but if you need to check, go to
System Preferences > Security & Privacy > Privacy > Reminders
Make sure both "Alfred 2" (and "osascript", if it is shown) are enabled.