OmniFocus includes support for the TaskPaper text format, which can be used both for importing items into OmniFocus or sharing items from OmniFocus somewhere else.
Of course, you may be wondering “what exactly is TaskPaper text?” — quoting from the TaskPaper Users Guide:
TaskPaper knows about four things: projects, tasks, notes, and tags. As you type, these items are auto-formatted so that your lists are easier to read.
To create a project, type a line ending with a colon:
Groceries:
To create a task, type a line starting with a dash followed by a space:
- Milk
To create a note, type any line that isn’t recognized as a project or task:
This is a note that I added.
To create a tag, type the @ symbol followed by a name. Tags can optionally have a value (or list of comma separated values) in parentheses after the tag name:
@priority
or
@priority(1)
or
@priority(1,2)
Use
Tabs
to indent items under other items and create structure. UseShift-Tab
to undo this structure. Put these things together to make lists:Groceries: - Eggs - Lettuce - Milk @priority(1)
Type your lists in this simple plain text format, and TaskPaper makes them look nice. TaskPaper doesn’t force a particular system on you; it provides basic list making elements for you to use as you see fit.
TaskPaper Tags vs OmniFocus Tags
OmniFocus uses tag to mean something different than it does in TaskPaper. Therefore, to help avoid confusion, we will refer to TaskPaper tags as “parameters”.
OmniFocus imports and exports the various non-note metadata attached to an item as TaskPaper parameters. We currently support the following parameters:
Parameter |
Description |
---|---|
@autodone(bool) |
Whether the item automatically completes itself when its children are complete (true ) or not (false ). |
@defer(date) |
Defer until date , e.g. 2016-04-19 5pm or next Thursday -3d |
@done(date) |
Completed on date |
@due(date) |
Due on date |
@estimate(time span) |
Estimated duration, e.g. 2h for 2 hours or 3w for 3 weeks. |
@flagged |
Present when an item is flagged |
@parallel(bool) |
Whether children are parallel (true) or sequential (false) |
@repeat-method(method) |
The repeat method: fixed , start-after-completion , or due-after-completion |
@repeat-rule(rule) |
An ICS repeat rule (see RFC244557), e.g. FREQ=WEEKLY;INTERVAL=1 |
@tags(string) |
The tag or tags to assign. Use commas to separate a list of multiple tags. |
If you’re trying to figure out how to format TaskPaper text to paste into OmniFocus, the best thing to do is create your item in OmniFocus, then use Edit > Copy as TaskPaper and paste it into a text editor. You’ll see every tag attached to the item and the correct formatting.
Default Parameters
When copying OmniFocus items as TaskPaper, the @autodone
and @parallel
parameters will always be included. It is, however, possible to exclude those parameters when they are set to a default value — e.g. if you have the Default Project Type in OmniFocus set to Parallel, then you will only see the @parallel
parameter included when copying sequential projects and action groups. If you would like to do that, tap on this link to change this hidden preference.