Skip to content

Legacy Version (Alfred v2, Mac OS 10.11 or older)

Gabriel R edited this page Jun 17, 2019 · 5 revisions

This page covers the usage of the legacy version of the workflow. If you are using Alfred 2 or Mac OS 10.11 or older, this is the recommended version.

Download

Installation

  1. Download the files, resulting in an alfred-reminders-60 folder
  2. In Alfred's settings, create a new workflow
  3. Right-click it and choose "Show in Finder"
  4. Replace all the files in the folder with those from the download

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 (Mac OS 10.8 or older only), or to create a new one.

Actioning an existing reminder marks it as complete.  

Advanced Usage

(Mac OS 10.8 or older only) 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 in 1 days at 3pm to run amok
  • 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

(Mac OS 10.8 or older only) 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, Microsoft Word, Adobe Acrobat Pro, OneNote, Powerpoint.   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

help examples

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

Date example

 

Other keywords

  • (Mac OS 10.8 or older only) r all will show all current reminders (as will simply typing r with no keywords)
  • (Mac OS 10.8 or older only) r refresh will show all current reminders and refresh the list
  • (Mac OS 10.8 or older only) r overdue will display all overdue reminders
  • radd will show options just for adding reminders
  • (Mac OS 10.8 or older only) 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).

Note: OS 10.9 Onwards

This workflow currently operates in a "write-only" mode in OS 10.9 or later.

Due to an issue with OS 10.9 onwards, 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.   Note: this workflow will notify you if a newer version is available. To disable this functionality, change the property shouldCheckForUpdates to false.

 

Disclaimer

This workflow is provided as-is, use it at your own risk. I can't take any responsibility for anything bad that happens as a result of using it, including, but not limited to, loss of data, loss of sanity, spontaneous human combustion.

Feedback

By far the best way to give me feedback is to submit an issue on GitHub.