MacDevCenter    
 Published on MacDevCenter (http://www.macdevcenter.com/)
 See this if you're having trouble printing code examples


Flexible OmniOutliner

by Giles Turnbull
12/12/2003

omni- (in comb.) all.
-- The Little Oxford Dictionary.

When is an outliner not an outliner? When it does more than just outlines. The latest version of OmniOutliner supports a wide range of additional useful functions, and I'm going to breeze through many of them here today.

OmniOutOfTime

Let's start with something easy, like the ability to export your outlined data into iCal or even into your iPod. Many people think of an outline as a kind of supercharged to-do list, but there are other practical applications for an outliner, too. Ever considered maintaining web pages, writing a book, or even backing up your brain with an outliner?

The nice folks at the Omni Group maintain a list of useful scripts you can use in conjunction with OmniOutliner. One of the most recent additions is the Export to iCal script, which is trivially simple to put to use.

All you need to is grab the .dmg, unpack it, and drag the script file contained within to your Library/Application Support/OmniOutliner/Scripts folder. Yes, this could mean any of several different folders on your computer, but it depends on whether you intend to use the scripts only under your user account, share them with other users of the same computer, or share them across a network. If you're unsure, stick with the first option for now, and put the file in /Users/[Your User Name]/Library/Application Support/OmniOutliner/Scripts.

Then, fire up OmniOutliner, and you'll see the script has appeared under the Scripts menu. To successfully export your outlined to-do list to iCal, you need to get your outline set up in a certain way first. To get dated to-do items to appear as iCal to-dos, they need to be listed in a column with the word "Due" in the title, and the Column Type set as "date" in OmniOutliner's info inspector (see Figure 1).

OmniOutliner's info inspector, showing Column Type set as date
Figure 1. The Column Type setting in the Info Inspector.

Similarly, to get priority settings to show up nicely in iCal, you need a column titled "Priority" and set as "Number" type. Priorities need to entered as integers from zero to three, with zero being lowest priority.

Columns arranged and data entered, you're ready to export your outline to iCal (see Figure 2).

An outline ready to be exported
Figure 2. An outline ready to be exported.

Once the export is done, iCal starts automatically (if it was already running, the script can quit the program and relaunch it for you). Listed in your To Do Items pane are all of your outliner items, with the appropriate priorities and due dates visible there or, with more detail, in the Info pane (see Figure 3).

iCal showing exported data from OmniOutliner
Figure 3. iCal showing exported data from OmniOutliner.

You may be asking the obvious question: why not just create the to-dos in iCal in the first place? Or, if OmniOutliner is your preferred tool, why not just keep them there? Well, if you use OmniOutliner for special lists (not necessarily to-do lists), you may find it useful to be able to see those lists alongside all of your other usual to-dos. Alternatively, if you like having to-dos and calendar events in one place, but don't like iCal's system for adding new events (I'll fess up: I don't get along with iCal at all), this is one possible way of getting around it.

As a final extra little nugget of goodness, OmniOutliner allows you to put scripts on the toolbar alongside all of the other controls. Just use the Customize Toolbar menu as normal, and drag your chosen script to where you want it. As long as you have installed the script in the correct folder (as spelled out above), this will work. (See Figure 4.)

Script on the OmniOutliner toolbar
Figure 4. OmniOutliner's toolbar customized with the Export to iCal script.

OmniOutAndAbout

How about taking your OmniOutlines around with you in your pocket? You can do this too, if you have an iPod. There are two AppleScripts available from the same extras page mentioned above, rolled together in a disk image with some helpful extra information.

The disk image includes another script you can run to open the right installation folder; you don't even have to go digging around in the Finder. Then you copy over the script of your choice, Export as Contact for older iPods, or Export as Note for owners of newer machines (third generation) that support text notes.

There are limitations to what you can view comfortably on the small iPod screen, so multi-column outlines are best avoided. Also, the status of individual items (checked or unchecked) won't show; nor will indentations showing child-parent relationships within the outline.

Installing the iPod Scripts

All of that being said, it's just plain cool, and even possibly useful, to move outlines from your Mac to the iPod. Once you grab the script and the package opens, you get this screen:

Install screen
Figure 5. Installation screen for the iPod export script.

Follow the instructions on this screen, and soon you'll be exporting directly from Omni Outliner via the scripts menu.


Figure 6. iPod export (for 3G models) added to the Scripts menu.

For additional OmniOutliner-to-iPod export caveats, here are the notes directly from the README file:

OmniOutOfYourImagination

Some say that OmniOutliner could even be put to use as a tool for professional writers (a journalist and an author provide two of the three testimonials for the software at the top of its home page), but using the program this way might require a certain adjustment of the writer's way of thinking.

Writers tend to work with text files in editors and word processors designed for the task. However they design their working routine, they will usually have a draft of their work saved as a text file, and will use that as the basis for future drafts. The text is treated as a single unit, to be sculpted into shape. That's how I tend to work, anyway.

Before writing this review, though, I tried starting a new work of text in OmniOutliner, and it was an interesting new way of working. Each time you hit the Return key in OmniOutliner, you create a new outline item. You have to press Command-Return to make a carriage return within the item itself. This lends itself to a means of writing that I, for one, have not tried before: paragraph-by-paragraph control.

I just write as before (OmniOutliner uses the built-in, system-wide spell checker), hitting Return as I normally would, and the program turns my ramblings into a outlined document. I can study my masterpiece in different views, collapsing chapters or subheadings that I don't want to see so that I can concentrate on the ones I do. This works surprisingly well, helping to chop the text up into meaningful chunks without getting in the way of reading it as a whole.

That said, OmniOutliner is no word processor. Sure, it can process words, but that's not really what it was designed for. It's better for processing thoughts and ideas, but you could argue that any work of text, be it a high school essay or the next bestseller, is comprised of a series of thoughts and ideas turned into a coherent whole. There's certainly the potential for a writer to use this program to achieve that, but it takes a bit of getting used to.

One other writing-related note: if you use Microsoft Word as your word processor, then OmniOutliner enables you to export your outlines as Word docs, and the outline styling is preserved. You'll need OmniOutliner 2.2 or later; download the Export from OmniOutliner to Microsoft Word script from the Extras page. I have more detail on this in OmniExportExpert section later in this article.

OmniSpreadsheet

Think of a Mac-OS-X-native spreadsheet application, and you'll probably struggle to come up with anything other than Excel, or maybe AppleWorks (although, after doing a quick check, I did stumble across BC Spreadsheet, which looks kind of interesting). OmniOutliner's next hidden treat is the ability to act as an effective cruncher of numbers, offering some very nice spreadsheet-like functions.

Throw some numbers into an outline, use the Info panel to make sure those columns are of "number" type, and then switch on the "calculated summaries" option immediately underneath.

Lo and behold, OmniOutliner totals up all of the child items in a parent item figure. It's an ideal way of keeping track of expenses or the sales figures for a small business.

We found some good additional tips for Omni accounting over at Loud Thinking that you might want to take a look at if you're contemplating ditching Excel for simple accounting. A pretty good spreadsheet template is included in the Sample Documents download on the Extras page.

OmniExportExpert

If there's one thing you cannot accuse OmniOutliner's creators of, it's skimping on the export options. There are so many ways of getting your information out of OmniOutliner that some people might find it hard to pick one.

Built into the program are export options for HTML, XML (as in Keynote, too, as you'll see later in the article), OPML, plain text, or RTF. From the Omni Group's extras page, there's also a script that will export an outline into Microsoft Word, another potentially useful feature for wordsmiths. You need to download and install Late Night Software's XSLT Tools 1.0 to make it work.

The exported file is HTML, and if opened in Word under outline mode, retains all of its outline features. See Figures 7 and 8 for shots of an outline before and after being exported to Word.


Figure 7. The outline viewed in OmniOutliner ...


Figure 8. ... and exported to Microsoft Word.

OmniSteve

Possibly one of the best uses for OmniOutliner is to use it as a brainstorming tool for your next Keynote presentation. You can take advantage of Outliner's simple tools to organize your thoughts, then export them to Keynote where you can create and refine the design elements.

For many tech types, Outliner is a more comfortable environment (AKA "text") for working out ideas than Keynote's interface, which can distract you with managing visual elements while you're still at the "thinking" stage. Omni added XML-export capability in version 2.2, and specifically called out Apple's Keynote application in the preferences and export options.


Figure 9. Not only can you export your outline to Keynote, but you can specify the template and some basic styling, so much of the work is done before you ever open Apple's presentation app.

Then, when you are working in Keynote, you can open Outline view in the sidebar, and it should look just like what you created in OmniOutliner. Here are the "before" and "after" screenshots.


Figure 10. Here's my outline that I dashed off in Outline. I didn't have to spend any mental capital thinking about templates and other design elements. I merely focused on the ideas themselves.


Figure 11. Then I opened the exported Omni file in Keynote and switched to the outline view in the sidebar. It looks just like my original outline, but now I've got a big start on the design work.

I really like having a pure-text environment to use for brainstorming and organizing, before getting into the design phase of a presentation. Even if I didn't use any of the other Outliner goodies, I would consider keeping it in my applications folder just for this use.

In you're interested in learning more about Keynote and XML, I recommend that you check out David Miller's article "Keynote's XML Connections," right here on Mac DevCenter.

OmniOmni

And still, we've only scratched the surface of OmniOutliner's hidden talents. Other delights on the extras page include a widget to turn outlines into BrainForest Professional documents for viewing on a Palm OS computer, another that exports to LaTeX, and yet another that extends the built-in HTML export, giving you greater control over the look of the exported web page.

Further afield, Steve Ivy has created another HTML renderer for OmniOutliner; the Studio Log offers a fascinating look at using OmniOutliner as a script editor; and Mark Guzdial has been using it for initial outlining of articles, before using home-made scripts to export to LaTeX via BBEdit and TeXShop. Nifty.

There's plenty there to keep even the most devoted OmniAddict busy for weeks.

Giles Turnbull is a freelance writer and editor. He has been writing on and about the Internet since 1997. He has a web site at http://gilest.org.


Return to the Mac DevCenter

Copyright © 2009 O'Reilly Media, Inc.