Todo.txt – A simple yet powerful todo manager for Linux

Recently, I discrovered todo.txt, a great todo list manager for people who feel comfortable with Linux’s command line.

The greatness of this tool is in its simplicity: the whole todo list is saved as plain text, and operations like adding/removing/prioritarizing/modifying/listing items are done through a very simple command line interface supplied in a bash script.

Other interfaces are also available, like Jabber/AIM bots, so you can achieve the same functionality through Google Talk (TM) or other IM clients. However, the command line interface is the easiest/coolest/most powerful.

Using the script is easy:

1. First you need to download a single bash script and a configuration file, you can find them in a zip archive here.

2. After you unzip the archive, you need to create a todo folder in you home directory:

mkdir ~/todo

3. Then, take the .todo configuration file from the extracted archive and move it to your home directory:

mv .todo ~/.

4. Edit the .todo configuration file and change the TODO_DIR variable into ~/todo

5. You may want also to change the colors for each priority in .todo configuration file (default colors assume a dark background for your terminal).

6. Take todo.sh and move it to /usr/local/bin so you can call it from any directory:

sudo mv todo.sh /usr/local/bin/.

7. Make todo.sh excutable:

sudo chmod +x /usr/local/bin/todo.sh

8. Edit the first line in todo.sh so it looks like this:

#! /bin/bash

9. You may want to add an alias in your alias file:

alias todo=’todo.sh’

That’s it, now you can start using todo.txt:

1. To add an item to the list:

todo.sh add “Learn python”

2. It’s convenient to add tags to your items:

todo.sh add +programming “Learn python”

3. To list the items:

todo.sh list

4. To list items of a specific tag (eg. programming):

todo.sh list +programming

5. To assign a priority to an item:

todo.sh pri ITEM_NUMBER PRIORITY

where ITEM_NUMBER is the number appears to the left of the item when you use the list option, and PRIORITY is a letter between A to C (You can extend this in the configuration file).

6. To list all items with priority B:

todo.sh listpri B

7. To mark an item as done:

todo.sh do ITEM_NUMBER

8. To archive all done items into done.txt (done.txt and todo.txt live in ~/todo/ directory)

todo.sh archive

9. To replace an item:

todo.sh replace ITEM_NUMBER +programming “learn how to write python scripts”


There are few more options available, you can see them in todo.sh help:

todo.sh -h

There is also a nice video tutorial here.

Enjoy

If you enjoyed this post, make sure you subscribe to my RSS feed!

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Reddit Post to StumbleUpon

No related posts.

Tags: , , ,

Saturday, October 18th, 2008 Linux

2 Comments to Todo.txt – A simple yet powerful todo manager for Linux

  • wily says:

    …or skip all of this, and:

    # vi ~/todo

    Done.

  • Amir Watad says:

    My guess is that you didn’t even try it.

  • Leave a Reply

    my email
    my photo
    Hi,
    My name is Amir Watad. I have a BSc. in biomedical engineering from The Biomedical Engineering school , Technion , Israel, and a BSc. in electrical engineering from The Electrical Engineering school , Technion , Israel.
    I'm a Verification Engineer in Mellanox Technologies Ltd.
    I love Linux, the Command Line and the OpenSource Community.
    I used to write Poems (Arabic) when I was able to find time for this.
    October 2008
    S M T W T F S
    « Aug   Nov »
     1234
    567891011
    12131415161718
    19202122232425
    262728293031  
    SEO Powered by Platinum SEO from Techblissonline

    Twitter links powered by Tweet This v1.7.4, a WordPress plugin for Twitter.