Back at the iOS 6 days, the easiest way to add multiple tasks to Omnifocus was through a built-in action in Drafts named List in Reminders. This action would turn every line of your draft into a reminder and Omnifocus can watch one of your lists in Reminders and convert any item added to it as a task. We're on iOS 8 and may find some better ways to make the most of this integration.
If there's one complaint Omnifocus earns is that its users have been maneuvering over improvised workflows to improve task creation on iOS. There's some progress on iOS 8 with the extension, nevertheless, it must interact with some content and I doubt most of your tasks have any sort of reference.
There's a workaround using Launch Center Pro to create a Share Sheet action, the benefit is that it works with more apps than just Omnifocus and you can select a project or a context, yet it demands an extra tap to choose Omnifocus in the Share Sheet and doesn't cover several tasks at once1 or setting due dates.
Drafts 4 brought many improvements over the original app and the List in Reminders action became more flexible since it became an action step, meaning you can use it in any action you have. Ben Whiting built an action with that goal for Things2 and this is my version for Omnifocus.
You can include notes along your reminders with a delimiter, which in the action I shared is
|, but you can define your own. Mesh these two together and you can replicate the functionality from Omnifocus' URL scheme3 using only the List in Reminders step on Drafts.
But here's the catch, if these apps can grab notes from reminders, couldn't they also pick due dates or even repetition? Indeed they do! If you set a reminder with a due date in your Omnifocus list, next time you open the app it will create the task with a due date or even set a repetition pattern. But how can we add multiple tasks with due dates to Omnifocus?
Fantastical 2 came out with Reminders integration, making it easy to create these tasks using natural language. You can assign a custom list to your reminder by starting or closing the sentence with a slash and the first letters to identify the list, considering that our target list's name is Omnifocus and we have no other list starting with the letter o, adding
/o to the end of our sentences should be enough.
There are a couple of tricks here we may want to pay attention. I'm using
/omnifocus to define my list just for safety when you install the action, in my case,
/o would work just fine. I set
reminder=1 to avoid adding prefixes to our sentences, different than other parameters, this one is not ignored when used along with
sentence. I decided to use
add=1 to avoid stopping in Fantastical to either create or cancel a task, hence, I also removed the
x-cancel on the callback for that reason.
The best trick from this action is the effective use of the
x-error parameter. To avoid infinite loops at recursive actions, Drafts has the
allowEmpty parameter, which set to NO stops the action if the draft is empty and throws an error. Since Drafts supports the
x-error parameter, you can trigger another action after you dismiss the alert, in our case, we open Omnifocus to process our reminders into tasks.
Recursive actions are definitely my favorite feature of Drafts as they allow us to process a single document into bits. If you prefer GoodTask over Fantastical 2 and don't mind losing repetitive tasks, you can tweak my action to recursively add reminders to GoodTask with natural language and set the
list parameter to your aimed list. Despite all, I'm hoping one day Omnifocus brings better URL schemes so we don't need to go so far to get more done.