Using Hook with Apple Reminders
You can use Hook Pro (3.2.2 Pro or later) with Apple Reminders with certain limitations. The main thing is that currently you would need to paste the script below into Hook’s Script Editor (or something similar).
Benefits: you can connect your reminders to the rest of your digital life!
Copy Link, Copy Markdown Link and Hook to Copied Link
By default, Hook’s Copy Link and Copy Markdown Link in Apple Reminders return links of the form x-apple-reminder://. You can paste those links anywhere. You can even use them on your iPad or iPhone. And you can “hook” them (i.e., bidirectionally link them) to other items in Hook.
Here is an example Markdown link:
[Update mySleepButton female voice packs](x-apple-reminder://81A20K3B-0X9B-4B35-805B-3BC12J080CB6) .
Of course, you can also paste Hook garnered links directly in Reminders.
Hook to New > Apple Reminders
Due to Apple Reminders’ lack of automation for linking, Hook to New > Reminders is not available. In other words, when you invoke Hook in any item, and choose
Hook to New..., you won’t see “Apple Reminders”.
However you can use Hook to New on a reminder. For instance, you can select an Apple reminder, bring up Hook, click the Hook title bar, and choose Hook to New… > Text Document, Apple Notes, or anything else you see in that menu.
Search for Apple Reminders bookmarks in Hook
To find Apple Reminders items you’ve processed with Hook, simply
- invoke Hook
- enter search mode (with ⌘F or a click)
url:"x-apple-reminder"and hit the return key
Then, your bookmarks of Apple Reminders will be listed in the search results.
Integration script to use Hook with Apple Reminders (Pro user)
To use Hook with Apple reminders:
- Open Hook’s Script Editor preference pane
- click on “+” in bottom left corner of the window,
- select Apple Reminders from the dialog box,
- click on the “Get Address” tab, and
- copy and paste the following into that tab,
- click the save button at the bottom right of that (preferences) window.
Here’s the script.
set sysinfo to system info
set osver to system version of sysinfo
considering numeric strings set isMonterey to osver ≥ "12" end considering tell application "System Events" tell its application process "Reminders" tell its window "Reminders" tell its splitter group 1 tell its UI element 3 tell its UI element 2 tell its UI element 1 if isMonterey then set reminderOutline to first UI element whose selected of UI element 1 is true set theReminderName to value of UI element 2 of UI element 1 of UI element 1 of reminderOutline else set reminderOutline to first UI element whose selected is true set theReminderName to value of UI element 2 of UI element 1 of reminderOutline end if end tell end tell end tell end tell end tell end tell end tell tell application "Reminders" try set theReminder to the first reminder whose name is theReminderName set theURL to the id of theReminder as text set theURL to do shell script "echo \"" & theURL & "\"|sed 's/x-apple-reminder:\\/\\//x-apple-reminderkit:\\/\\/REMCDReminder\\//g'" return "[" & theReminderName & "](" & theURL & ")" on error errMsg display dialog "ERROR: " & errMsg end try
After doing that, in Apple Reminders select a Reminders item, and invoke Hook as you normally would (e.g., ⌃H).
For the following reasons, this integration is not included in Hook itself (i.e., Pro users need to copy and paste the script themselves).
Apple Reminders lacks an API (adequate automation support) for linking. So, Hook uses “User Interface (UI) scripting” to control Apple Reminders. As discussed elsewhere on this site, UI scripting can be slow and potentially brittle — if Apple were to modify the Reminders UI the methods to get links to Reminders items might fail. Apple’s automation for copying scripts is particularly slow if you have thousands of reminders (worse for slower Macs). So when you try to invoke Hook in Apple Reminders you might get a dialog box, and Hook might wait for a while.
Another caveat is that, so far, this integration has only been vetted on macOS 11 (Big Sur) and macOS 12 (Monterey).
Also, this only works with iCloud reminders, not local reminders.
The good news
Using x-apple-reminder:// links (URLs) copied by Hook does not involve UI scripting, so it should not be slow.
Once you copy a link to an Apple reminder with Hook, that link should work for as long as Apple honors its Reminders links, urls which one may assume is “for good.”
Gratitude and see also…
- Thanks to @zsbenke who contributed integrations and discussed this on the forum. See Is Reminders App Linkable? – Discussion & Help – Hook Productivity Forum
- If you’re a Learn OmniFocus customer, you can learn how to do Checklists in Apple Reminders – Learn OmniFocus.