Todor? Todor, todor.
Todor is a simple Python tool that enables you to create plain-text todo lists on a per-project basis. Think of it as Git for your todos.
To install Todor, simply clone the repository and then add an alias to the
$ git clone https://github.com/daviesjamie/todor ~/Code/todor $ alias todor='~/Code/todor.py'
To use Todor, you first have to create a task list in your project directory
init command. Once this has been performed, then using any other
todor commands within the project directory (including any subdirectories)
will act upon that task list. However, if you are in a directory that is not
within the project's directory tree, then Todor will not access the project's
This enables you to create and act upon separate task lists for each project you work on, and as they are simply plain text files they can even be version controlled along with the contents of your project!
The following commands can be given to Todor:
Initialises a task list in the current directory.
add [-f|--file] <task>
Adds a task to the list.
-fflag is specified, the system
$EDITORis opened instead, and each line in the document when the editor is closed will be added as a task.
edit <prefix> <text>
Replaces the a task's contents with the supplied text.
The text argument can also be a substitution in the form
/match/replacement/to apply a find and replace on the existing task text.
Marks a task as completed. Multiple task prefixes can be supplied to mark them all as complete.
Deletes a task. Multiple task prefixes can be supplied to delete them all.
ls [-d|--done] [-s|--short||-l|--long] [-g|--grep]
Lists the tasks that have yet to be completed. All tasks are prefixed by unique identifiers, which are used to select tasks for use with other commands.
--doneflag can be given to instead list completed tasks.
--shortcan be used to only display the task text (and not their prefixes), and
--longcan be used to display the full task identifiers and not just the number of characters needed to make unique identifiers.
--grepcan be used to filter the task list to include only those with the given search term(s).