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:

- Test task @parallel(true) @autodone(false)
	This is a test.

The task’s URL is there: omnifocus:///task/cIx7zMCx7iz.

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.

  Workflow content graph showing OmniFocus task URL

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.

  OmniFocus task URL

The task URL can be easily retrieved using the Get Item From List action, so the workflow is just three steps:

  Workflow: Copy OmniFocus Task Link

The workflow is available here.

Airborne Sunset

Published on September 04, 2018

Butterfly on flower

Published on August 26, 2018