I found out you can accomplish this with BusyCal, which has iCloud support.
Unfortunately it comes with a $49.99 pricetag, which I am hesitant to pay for the sole purpose of adding custom intervals to reminders. I also prefer not to install a 3rd application in addition to Calendar and Reminders just for managing my tasks.
That's why I did some digging and found an alternative (though very cumbersome) way to accomplish this specifically for iCloud reminders, but probably for other CalDav accounts too. You'll also need to be comfortable with editing raw iCal files.
- Create a reminder for your iCloud account in Reminders.app and set it to repeat weekly.
- Locate the local cache of your iCloud calendars in ~/Library/Calendars. You should have one or more subfolders {UUID}.caldav. If you have multiple of these folders, you'll want to have a look in the
Info.plist
inside to determine the correct one. Look for the key PrincipalURL
which should be something like https://p01-caldav.icloud.com:443/272548408/principal/
for an iCloud account. Make note of the server name, in this case p01-caldav.icloud.com
.
- You will have one or more {UUID}.calendar subfolders, where one of these will be a calendar specifically for reminders. You should find a .ics file for the reminders you created inside its
Events
subfolder, then you know you found the right calendar. Have a look at the Info.plist
inside this calendar folder, and look for the value for CalendarPath
.
- Use a WebDav client like Transmit to connect to iCloud directly. Fill out the servername from step 2, your iCloud email address and password as credentials, and specify the value for
CalendarPath
(step 3) as the initial path.
- When connected, you should see one or more {UUID}.ics files. Locate the correct one for the reminder you want to edit (UUIDs should match with the ones in the local cache) and edit the file. Look for the line
RRULE:FREQ=WEEKLY
and edit that one to specify a custom recurrence. For my example I put RRULE:FREQ=WEEKLY;BYDAY=MO,TU,TH,FR
instead.
While Reminders.app on the Mac does not show anything different in the UI, I can see the change was effective on iOS:
