Task list plugin for gitit
Haskell CSS
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


gitit-tasks is a plugin for gitit which allows for convenient task list management.


git clone git@github.com:catch22/gitit-tasks.git && cd gitit-tasks && cabal install --user

mkdir -p static/css
ln -sf ~/.cabal/share/gitit-tasks-0.1/static/css/tasks.css static/css/tasks.css

and add Network.Gitit.Plugin.Tasks to your wiki's gitit config.

Task Lists

Task lists are lists containing at least one task (and then, all list items are treated as tasks).


# Sample Tasks

- [ ] Buy some milk and water the plants (better complete this today than tomorrow).
- [ ] 2011-12-24 Buy Christmas presents (and have this task already on the radar today).
- [?] This task will have to be completed some time in the future (but does not bother us too much today).
- [?] 2010-12-24 @John @Jack #Fun #Stuff This should be done someday (oops, in fact John should have done this last Christmas).
- [x] This task has been completed. Yay!
- [x] 2011-01-01 This one was ready by the new year!
- [/] This task has been canceled. Nay :(
- [/] 2010-12-31 And we even know when this task has been canceled.



Observe that the last task has been highlighted because it is due.

Also note that, by default, only tasks which are open are displayed (i.e., tasks of the [ ] and [?] families). This can be changed by using the tasks: all page meta option:


Aggregating Tasks

It is often useful to aggregate tasks from multiple wiki pages into a single page (e.g., a user's homepage). There are three variants provided by gitit-tasks:

  1. Aggregating all tasks which are marked as today and which are not delegated to anyone else, as well as due tasks:

    [!tasks](Some Shared Project)
  2. Aggregating only those tasks which are due:

    [!duetasks](Scheduled Tasks)
  3. Aggregating all tasks which are marked as today or which are due (as in 1.), but only if they are explicitely delegated to us:

    [!tasksdelegatedtome](Other User's Home Page)

gitit-tasks dynamically replaces every link of the form of the above form by the list of relevant (top-level) tasks on the respective wiki page.