My Current Todo.txt Setup (April 2020)


My Current Todo.txt Setup (April 2020)

Here's a little more technical detail on my current todo.txt setup.

The Apps

I started out with todo.txt command line interface from I still have this installed, but I am also using topydo for its reporting. Since both clients use the same text file format, you can go back and forth or run whichever version of a command you prefer.

topydo refers you to an old website for documentation, but you can download the HTML documentation (right click that link and save-as), and view it locally in a web browser.

I alias t to topydo. Most commonly I add new tasks via the command line, sometimes I will edit my todo.txt file directly. (e.g. to add +1 to the task I'm currently working on)

The Report

The main report I want to see is my tasks, grouped by project. The context for almost every task is "at my computer with internet access" so that's not usually the most relevant view. Grouping by project gives me a big picture view.

A few tricks I use. I create a project hierarchy by naming sub-projects +Foo+Bar (where Foo is the parent project). This keeps all the Foo related projects sorted together. For the task I am actively focusing on right now, I add a +1 project and then it shows up at the top of the list.

Project: 1
|21| 2020-04-27 Write a blog post about how I use todo.txt +Zymo+Website +1

Project: Zymo+Website
| 6| 2020-04-23 Create an RSS feed for blog posts using rfeed +Zymo+Website
|12| 2020-04-23 add a hidden preview div for better previews of web pages +Zymo+Website
|13| 2020-04-24 implement tags to organize and filter blog posts +Zymo+Website
|21| 2020-04-27 Write a blog post about how I use todo.txt +Zymo+Website +1

For new projects that don't have a bunch of active tasks yet, but which I want to keep on the list so they stay in mind, I create a placeholder task. I assign it a special priority P (you can use any upper or lower case letter for priority). If I have a text file for notes about this project, I reference that in the placeholder task.

Project: PINE
|17| (P) 2020-04-25 PINE (Participation Is Not Endorsement) projects/pine.txt +PINE

I run this report by running: clear ; topydo ls -g project -s priority,creation. Eventually I'll create an alias for that, but for now, since I run this in a dedicated bash shell and I'm still tweaking things, it's easy to just up-arrow + return whenever I want to refresh my list.


Topydo looks for a .topydo configuration file in various places, I store mine in my home directory. Here's what I have currently:


priority_colors = A:cyan,B:yellow,C:light-blue,P:light-green

In my ~/.bash_profile, I added source ~/Documents/todo/, so I can put some extra configruation in and keep it with the other todo files.

## config lives in ~/.topydo

alias t=topydo
alias td=topydo
alias na=next-action

(Now most of the config lives in .topydo, I used this more when todo.txt was the primary CLI.)


Here's an updated screenshot of how I interact with all this:

Work area