Managing To-Do Lists in Plain Text

The Problem

I’ve tried just about every to-do list/task manager under the sun. There are more on-line web sites that do this than you can shake a stick at. The problem is that you have to be online for them to work. Then, for my work, at least, there is the issue of putting potentially sensitive information to an untrusted and insecure online service. (Not to mention firewall issues.)

A Plain text solution

I finally gave up and just put it all in a text file, using a Lifehacker recommended format that has evolved into a standard at

Tasks all live in a todo.txt file and look something like:

(A) +ACME @review weekly report 
(A) +ACME @email Doug due:2013-03-29 
(B) +Misc Fill out timesheet 
+ACME Automate release procedure @build 
x 2013-03-08 +Misc Finished task

I’ve taken pieces of various python scripts to create my own custom that suits my needs and allows me to add items, list out my to-dos in various ways, mark items complete and archive them in a done.txt file.

This method has served me well over the years. I can sync a text file back and forth between my desktop and laptop over the local network, but really have wanted a way to group tasks by project. The todo.txt format only knows tasks, so every task has to have the +ProjectName on the line with task. This works ok unless you have a +ReallyLongProjectName. Typing long project names with every task…I just don’t have that kind of time. I ended up abbreviating project names.

Another option – TodoPaper

TodoPaper is windows-based to-do manager that has a format much simpler than the todo.txt:

  • Lines ending with a colon are projects.
  • Lines starting with a hyphen and a space are tasks.
  • All other lines are notes.

- Here is a task 
- Here is another task @today 
Here is a note.
- Here is a done task @done(2013-04-03)

You can add tags, with a special @done tag that identifies completed tasks.

Here’s what it looks like in TodoPaper:


TodoPaper works just like a text editor, but adds configurable highlighting to the lines so it is easy to see tasks and mark them done by selecting a check box. It also allows you to show/hide projects so you only display what you’re working on.

The cool thing is that although by default it saves files to a .todopaper extension, the files are just plain text and could as easily be saved to a .txt. The format is completely readable in a standard text editor.

Features of TodoPaper

There are a number of features that I really like about TodoPaper.

First of all, it allows you to add tasks to your list from a keyboard shortcut (Ctrl-Space by default), so you don’t have to switch over to the application if you’re in the middle of doing something else. You can select which project to put the task in, and give it a default project (like Inbox) to assign later.


You can also easily move tasks from one project to another by right-clicking the task:


Another thing that I like about TodoPaper is that it allows you to view your tasks in different ways.  Normally, my to-do list would have 20-30 different tasks in several projects. It might look something like this:


TodoPaper allows you to collapse different projects so you can focus on only one project at a time:


Or you can filter tasks by searching for a particular word or tag, so you only see the tasks that match:


TodoPaper also has an outline view, so you can easily navigate to a certain project in a file. You can also create multiple tabs of your to-do list with different search terms so that easily navigate between different search terms in a file.


And finally, once you’ve marked a bunch of tasks as done, you’d like to get them out of your way.  With TodoPaper, you can archive those @done tasks to an Archive project at the bottom of the file.


The tasks are tagged with an @archive(ProjectName) tag so you can see what project the task came from.


TodoPaper is useful tool in Windows for managing  a large, complex to-do list, but it still keeps it in a easily portable, plain text format.  I can sync my to-do list between my desktop and laptop just as I did before.

I would definitely recommend it with one caveat, TodoPaper is a little pricey at $30. It comes with a 15 day trial, so you can try out TodoPaper before you have to buy it.

If you’re interested, go check it out at Widefido.

Update: Jordan from Widefido is providing a 50% discount until April 15 on TodoPaper.  Use the word “balance” in in the coupon field when you check out. Thanks, Jordan!

(Note: I was given a free copy of TodoPaper for me to evaluate for a review.)


2 thoughts on “Managing To-Do Lists in Plain Text

  1. Pingback: TodoPaper Update | Not (quite) Balanced

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s