I recently bought OmniFocus for my iPad after finding other task management apps insufficient. The one real weakness I found in OmniFocus was the inability to link to tasks in other projects to indicate a cross-project dependency. (From my research online, I gather that most OmniFocus users think this is counter to accepted usage patterns and thus not a good idea. Nonetheless, it’s something I need to do.)
While doing research to figure out if this was possible, I found a discussion forum where an OmniFocus user mentioned that in the Mac version of OmniFocus (which I didn’t buy), it’s possible to copy the link to a task. I wondered if this was also possible in the iOS version.
I started by opening the task, clicking the “share” button and selecting “copy,” which yielded this:
omnifocus:///task/cIx7zMCx7iz?name=Test%20task¬e=This%20is%20a%20test.¶llel=true omnifocus:///task/cIx7zMCx7iz - Test task @parallel(true) @autodone(false) This is a test.
The task’s URL is there:
Next step: Can I use Workflow to parse just the task URL and copy it to the clipboard?
I have an action extension workflow with one step — View Content Graph. Running this workflow on the OmniFocus task, I could see that OmniFocus was passing the task URL to Workflow.
Using another action extension workflow that gets the URLs from the input and displays them using the Quick Look action, I determined — through a bit of trial and error by running it on various tasks — that the task URL is always the last URL that OmniFocus passes to Workflow.
The task URL can be easily retrieved using the Get Item From List action, so the workflow is just three steps:
The workflow is available here.