OmniFocus for the Web Reference Manual

Appendix C

OmniFocus Extended

OmniFocus as a standalone app is an incredibly powerful tool. Beyond what you can do with OmniFocus alone, the app interacts with other apps and services to help you get stuff done with even greater convenience and efficiency.

This appendix lists ways that OmniFocus can be used in tandem with other software to help you achieve your goals.

Today Extension

OmniFocus brings a status summary to your desktop with the OmniFocus Today extension, which you’ll find listed in the Extensions section of macOS System Preferences.

With the Today extension turned on, you can view items that are due soon and overdue in Notification Center, and when they’re complete, check them off right there — the items’ status updates in the app along with any changes you make.

Choose which items appear in Today notifications with OmniFocus’s Badges preferences.

To change the position of the OmniFocus widget in Notification Center, click Edit at the bottom of the Today pane.

Copy as TaskPaper

Most aspects of an OmniFocus item can be represented as tags in the plain text syntax used by Hog Bay Software’s to-do list app TaskPaper. The Edit > Copy as TaskPaper menu item provides an easy way to bring items and their properties (such as due date, tag, or repeat type) from OmniFocus to any other app that supports the TaskPaper tag syntax.

OmniFocus also supports pasting plain text lists formatted in TaskPaper syntax into the open window of an OmniFocus database. So while Copy as TaskPaper can be used to share OmniFocus items with TaskPaper itself, its primary use is as an intermediary between OmniFocus and other apps that support TaskPaper’s tag system.

This can be used to (for example) batch process dozens or hundreds of OmniFocus items at once, round-tripping them out from OmniFocus in the TaskPaper syntax, performing the batch processing actions, and bringing them back to OmniFocus without loss of important metadata.

See this support article for more details on TaskPaper syntax and a list of supported TaskPaper tags.

Archiving and Backup

When your database grows large, unwieldy, or full of obsolete items, or when you need to refer back to versions of your data from days gone by, the archiving and backup features of OmniFocus for Mac here here to lend a hand.

Creating an Archive

After a while of using OmniFocus every day, your database may become quite large, and especially if you synchronize with a mobile device, things could get quite slow. Most of the items are probably completed or dropped items that you rarely or never need to review, so OmniFocus includes a command to archive those old items to a different file, keeping your main database sprightly and nimble.

To archive your old data, choose Move Old Data to Archive from the File menu. A sheet appears with a date field; any items completed before that date, or dropped items that haven’t been changed since that date, will be moved to the archive.

OmniFocus saves your archive file in the same place as your main database.

  • Omni store version:

~/Library/Containers/com.omnigroup.OmniFocus3/Data/Library/Application Support/OmniFocus/

  • Mac App Store version:

~/Library/Containers/com.omnigroup.OmniFocus3.MacAppStore/Data/Library/Application Support/OmniFocus/

Where ~ is your home folder. If you ever want to look at your archived data, choose Open Archive from the File menu; your archive opens in its own window.

To retrieve items from an archive you’re browsing, drag and drop them into the desired location in your main database (copy and paste works too). In either case, a copy remains behind in the archives; the archived copy can be retained as a record or manually deleted to keep things tidy.

Restoring from a Backup

OmniFocus errs on the side of meticulous data preservation, automatically backing up your database once every two hours, in one of the following folders.

  • Omni store version:

~/Library/Containers/com.omnigroup.OmniFocus2/Data/Library/Application Support/OmniFocus/Backups/

  • Mac App Store version:

~/Library/Containers/com.omnigroup.OmniFocus2.MacAppStore/Data/Library/Application Support/OmniFocus/Backups/

OmniFocus keeps up to 100 backups of your database at a time, which comes to about 2 weeks worth if you run OmniFocus continuously (more for most people, since a backup can’t happen if OmniFocus isn’t open).

To restore a backed-up version of your database, choose Show Backups from the File menu, then double-click to choose a backup file to view. It’ll open in its own separate OmniFocus window so you can browse it and determine if it’s the one you want; if so, choose Revert to This Backup in the notice bar and it’ll replace your current database.

Printing

To print content from OmniFocus to paper (or save it as a PDF), first set up a window that contains exactly the data you want by focusing An icon indicating that this feature is part of OmniFocus Pro., selecting items in the sidebar, or expanding and collapsing rows in the outline. Then choose Print from the File menu. OmniFocus resizes the content to fit horizontally on the paper you’ve chosen.

Exporting

Your data belongs to you; if you want to send it to other applications, run scripts on it, publish it on the web, or do other exciting stuff with it that we haven’t even thought of, you’re more than welcome to write it out to the format of your liking.

To export your database, choose File > Export, and then choose a format and a location. The available formats are:

  • OmniFocus Document — This is an ordinary OmniFocus document, like the one that you use as your database. If you open such a file in OmniFocus, it appears in its own window and you can work with it normally, but settings specific to your database (such as custom perspectives and View options) don’t come along with it.

  • Plain Text — This is a lightweight plain-text representation of your data, able to be opened in the text editor of your choice.

OmniFocus’s plain text export is inspired by TaskPaper, the light to-do application from Hog Bay Software. As such the output should be roughly compatible and able to be imported to TaskPaper with a minimum of fuss; see Copy as TaskPaper for more on OmniFocus and TaskPaper compatibility.

  • Simple HTML — This is a single-file HTML representation of your data; the stylesheet and even the icons are embedded in the HTML. If you are proficient with CSS, you should be able to restyle the result however you like.

  • Comma Separated Values (CSV and CSV UTF–16) — CSV is a common syntax for applications old and new on all platforms: all of your data in a plain text file with its columns separated by commas. Once you have your data in CSV format, it’s easy to run scripts on it, convert it to some other format, or open it in applications that understand it (like OmniPlan). If you’re having trouble persuading other applications to read the non-ASCII characters in your CSV file, such as accented letters or non-Roman characters, try exporting with the UTF–16 CSV option.

  • Backup Document (OmniFocus) — This export option creates a file in a format (.ofocus-backup) that is essentially the same as the standard OmniFocus database format, with one key difference.

    Unlike a standard OmniFocus database file, when you open a backup in OmniFocus, the option to Revert to This Backup appears in a notice bar beneath the toolbar. Click this button to replace your local default database with the database contained in the backup.

Applescript Support An icon indicating that this feature is part of OmniFocus Pro.

With OmniFocus Pro you have access to powerful scripting tools using the built-in AppleScript library. To access the dictionary of scripting commands specific to OmniFocus, open AppleScript Editor and choose File > Open Dictionary (Shift-Command-O), then choose OmniFocus.app from the list that appears.

You can add scripts that live in your OmniFocus toolbar by placing them in the directory accessible from the Help > Open Scripts Folder menu item.

Check out the resources below to get started with ideas, tips, and help for adding automation to your OmniFocus workflow: