Imdone is text based kanban processor with a simple syntax that uses comment tags like TODO and FIXME and todo.txt format. This model allows the user to create and modify tasks using the keyboard and automatically establishes a link between their tasks and work. Get imdone or use the cli to see your projects board and this library in action.
Imdone aims to keep you in the flow of your work while capturing tasks to be accomplished later. Most kanban tools require the user to use a UI. Imdone lets you capture tasks in a simple text format that has roots in programming comment tags like TODO and FIXME and todo.txt format.
// TODO This is a task // TODO: This is a task // TODO:5 This is a task // TODO: A task with a description looks like this. // Every line after the task is part of the description until we find another // task, a blank comment line, or a line of code // - A list item // - Another list item
#TODO: This is a task #TODO:0 This is a task #to-do:0 This is a task <!-- #TODO: If you don't want your task to get converted to html in markdown files, put it in a comment. You can still add descriptive text, but don't forget to leave a blank line between the description and the comment end tag, or the comment end will become a part of your description. -->
Take a look at the source of this README.md. You'll probably find a few tasks in comments.
[This is a task](#todo:) [This is a task](#todo:10)
- Code style tasks will only be detected if the list name matches a string in the
code.include_lists
attribute in.imdone/config.yml
and the file extension exists in lib/languages.js. - List names in code style tasks must match this regular expression ([A-Z]+[A-Z-_]+?).
- Only code style tasks can be used in code files and must be in a line or block comment
- Code style tasks are only detected in comments for files with extensions listed in imdone-core/languages.js or the languages attribute in the
.imdone/config.yml
- Code style tasks are only detected in comments for files with extensions listed in imdone-core/languages.js or the languages attribute in the
- In Hash and markdown style tasks list name can be any combination of upper and lower case letters, underscores and dashes
- In Hash and markdown style tasks the list name must be followed by a
:
and a number which determines sort order in the list- Sort numbers can be reused, in which case tasks with the same sort number will be sorted alphabetically by text.
- Task text can have todo.txt formatting excluding the completion and priority markers.
- Task text can have markdown formatting
Imdone uses todo.txt +project/tag @context and meta:data
#DOING:20 This task was created on 2018-02-09 created:2018-02-09
#DOING:20 This task was completed on 2018-02-09 completed:2018-02-09
#doing:20 This task is due on 2015-02-09 due:2015-02-09
#doing:20 This task has a *madjs* tag +madjs
#doing:20 This task has a *madjs* context @madjs
#doing:20 This task has profile metadata profile:piascikj
- Tasks with metadata can be linked to external resources like other task mgmt systems and websites
- Add a
meta
attribute to.imdone/config.yml
- In this example
user:piascikj
would link to https://github.com/piascikj
"meta": {
"user": {
"urlTemplate": "https://github.com/%s",
"titleTemplate": "github profile for %s"
}
}
- task.found
- task.deleted
- file.modified
- initialized
- file.processed
- file.update
- file.empty
- file.read
- file.reading
- files.found
- files.saved
- config.update
- list.found
- list.modified
- tasks.moved
- tasks.updated
- error
- config.loaded
- Using TODO Comments to Keep You Programming in the Zone
- 5 ways using TODO comments will make you a better programmer
- I Still Use Plain Text for Everything, and I Love It
- Why Geeks Love Plain Text (And Why You Should Too)
- The Benefits of Using Plain Text | Terminally Incoherent
- The future of education is plain text · Simply Statistics
- Derry Birkett › Plain text is the best UX
- Tools – The Plain Text Project
- The Plain Text Workflow · Richard A. Lent, Ph.D.
- My Plain Text Workflow – Doyce Testerman
- Word Processors: Stupid and Inefficient
- Is the keyboard faster than the mouse? | Hacker News
- Blog | Personal Kanban
- Do TODO comments make sense? - Software Engineering Stack Exchange