ref: a05459a8d6a5a190db2fe52a89ed22bf515834b4
dir: /README/
todo filesystem * this is an experiment. * * It's not the best, both design and implementation. * Usage: todofs path/to/dir the todo-directory must contain at least one file called `index`: key=config nextid=1 todofs -c path/to/dir initializes the directory with this index file. It will be filled with metadata when creating tasks and statuses. Console interface (ctl file): addstatus <name> - create a new status dump - write data back to disk. Shouldn't be needed. Task interaction: Imagine the following scenario: /mnt/todo/StatusA/1-First_Task/ /mnt/todo/StatusB/2-Second_Task/ ; cd /mnt/todo To move task 1 to StatusB, use create with the task id: ; touch StatusB/1 To edit a task, just open/read/write the task/data file. This will be forwarded to files-on-disk automatically. The data file can have a file extension, depending on the file extension. This should be used for plumbing. Adding a file extension using the filesystem is a TODO. To rename a task: ; mv StatusB/2-Second_Task 'StatusB/My other task' ; ls StatusB/2* 2-My_other_task To create a new task, create it: ; touch 'StatusA/New Task' ; ls StatusA 3-New_Task To change assignee/group: ; chgrp -o alice StatusA/3-New_Task ; chgrp engineering StatusA/3-New_Task ; ls -l StatusA ... alice engineering ... 3-New_Task It is also possible to change the metadata by file. The filesystem looks like this: /mnt/todo/StatusA/1-First_Task/title /mnt/todo/StatusA/1-First_Task/assignee /mnt/todo/StatusA/1-First_Task/group /mnt/todo/StatusA/1-First_Task/data (or data.extension)