When it comes to finding a To Do application I get highly specific. Top of my criteria is that there should be a good native app for both OS X and iOS. Next is a I want simple and easy, if it’s complex I just won’t do it. Third is that I’d like a text based save file. Finally I’d like command line tools and in a perfect universe a TextMate bundle for the file format.
Sounds impossible doesn’t it? Think again, TaskPaper from Hog Bay Software fulfils every requirement, almost. I do have to say that I am still working on getting the command line fu working. AppleScript support is excellent though and I have hopes, I’ve already found an AppleScript that adds tasks using Alfred that works well for me after some hacking to personalise it and make it a little easier to use.
Opening up a new document in TaskPaper will give you a nice welcome text which runs you through some of the most useful features and points you in the direction of more help. Once you’ve seen this text enough you can turn it off in Preferences. If you want a better guide then there is a 20 page PDF accessible via the Help menu.
TaskPaper is simple in execution. You define a list of tasks by just typing them with a ‘-‘ at the beginning, to add another task then a command return will go to the next line and add the ‘-‘ sign for you. Tasks can have subtasks by hitting tab before starting the new task, it will then become a child of the previous task.
Tasks can be broken down into different projects. Define a new project by starting a new line and ending it with ‘:’.
Finally, you can also enter notes. Any line that isn’t a task or project title becomes a note.
Once you have a number of projects you can focus down onto a single project by clicking on a small icon to the left of the project name.
When focussed down the arrow changes direction and a click on it will show the entire document again.
TaskPaper also supports tags, prepend a word with the ‘@‘ symbol and the word becomes a tag for that task. The ‘@done’ task has special meaning – it crosses out your task.
Moving items is easy, click and drag on the hyphen to move an item and click on the little arrow to move a project. The little arrow has another purpose, click on it to focus on the project. When you are focussed the arrow changes direction and a singe click brings you back to viewing the entire document. Clicking on the hyphen in front of a task will mark it as done with today’s date, another click will remove the @done tag.
At the top of the document window are three useful pop up menus, one for adding a new task, project or note, a second that lists each project and a third that lists each tag. The latter two allow you to quickly focus on a project or tasks with a specific tag.
The document window itself can be styled, the app comes with six themes and once you choose a theme you can tweak the colours of various elements to your liking. I have yet to delve into writing my own theme but I’m tempted since I would like a cross between the ‘Standard’ and ‘Terminal’ themes.
TaskPaper’s final touch is that it when it is running it gives you a menu in the menubar to select one of your open documents or a quick entry window.
TaskPaper seems a perfect intersection of ease of use and complexity. You can add as many projects as you like, split your tasks across multiple documents and use a plethora of tags if you want. Alternately you can have your list as simple as you like. Another example of the intersection is search. You can quickly search for a string but if you want TaskPaper has a fully featured search syntax that allows you to create a highly specific search.
The other beauty of TaskPaper is that while there are menu commands for almost everything you want to do you can just type text and use keyboard shortcuts to swiftly get things done.
TaskPaper is so simple and easy to use that I use it for many more things than tasks. For example, it’s perfect for packing lists before you travel. I write the list in TaskPaper and can tag the items as done as I find them around the house to get them ready to pack. Then, since it’s a text file, I can open the file in TextMate and quickly do a search and replace to take away the tags and start over when it’s time to pack.
There are a couple of quirks in TaskPaper that I’ve hit. The most common problem I have is that you have to be careful when moving items around the list as you can end up with the moved item at the wrong indentation level. The second is that you really don’t want to apply tags to a project as removing them gives TaskPaper problems.
At $30 for the Mac app TaskPaper is not exactly cheap but it is worth the cost. The iOS app is $10 and you can sync between your iPhone, iPad and Mac using DropBox. More on the iOS app in this post.
Update: I’ve done a little AppleScripting myself and have now written a TaskPaper to Remindersscript to add a task to Reminders easily.