I’m coming up on year four of using a plain
todo.txt file and a simple bash script to manage my daily tasks in it, and I still love the CLI simplicity. But this year I’m juggling several different projects, and needed an easy way to see my todo list separated into sub-lists by project. Happily, the Todo.txt CLI is now extensible, which means several handy add-ons can make it do all sorts of things not included in the core script. One of my favorites is the
Projectview lists your todo.txt by project (which you notate with the
+ProjectName format in each task). Here’s what a regular listing of some of my current todo’s looks like, and then what
todo.sh ls command (which I’ve aliased to
t ls) outputs something like this:
There you can see I’ve got tasks prioritized and color-coded, with contexts listed with an @ sign (like @email and @github) and projects listed with a + sign (like +Smarterware and +ThinkTank). This is a fine view if you just want to tackle items based on priority alone, but not as well when you have a long list and want to make sure you’re moving along individual projects. Here’s where
projectview comes in.
With it installed, running a
todo.sh projectview command (to save keystrokes, I’ve aliased it to
t pv), I get this:
There you can see each project gets its own sub-heading, and then lists tasks associated with it underneath. If a task applies to more than one project projects–like #4 in my screenshots–it gets listed in each. Tasks not associated with a project get listed last.
Of course, if you just want to look at a single project’s task list, you can always do a
t ls +ProjectName command, no add-on required.
Once you’ve got the Todo.txt CLI installed (version 1.5 just released last night!), download projectview into your
~/.todo/actions/ directory and make it executable to start using it. Thanks a million to Paul Mansfield for this useful add-on; here’s a directory of more Todo.txt CLI add-ons for your command line pleasure.
For quick video primer on what life is like with todo.txt at the command line, check out a screencast.