Todo
A powerful todo list workflow

Getting started
Keywords
todothis is the main keyword, and lets you get startedtodo <new task>will add a new tasktodowill display the list of taskstodo #will display the list of tagstodo @will display all items with a due date
add <new task>will add a new taskdonewill show you all items that have been marked as doneclearto remove items
TIP To see all items due for today, type
todo @today
Adding new items
- Typing
add a new taskwill create a new task titled a new task. This will be tagged #default - Typing
todo #work sign off documentwill create a task titled sign off document and tagged #work - Typing
add !! this is stickywill create a pinned item titled this is sticky, tagged #default - Typing
todo @today a new task for the daywill create a new item, due for today, titled a new task for the day

When adding items, add and todo keywords are interchangeable, although the key difference is add allows you to add items with the title twice; todo provides a more informative feedback on screen
Command modifiers
- Pressing
fnkey when selecting an item will enable edit mode for that item - this works for both todo items and tags- In edit mode, use the same syntax that you use to create a new todo - e.g.
#newtag new todo text. Todo will identify which portion you need to change and update them accordingly
- In edit mode, use the same syntax that you use to create a new todo - e.g.
Shiftwill allow you to mark an item as done. You can view all done items with the done keywordCmdwill help you delete either a todo item, and all items that match a specific tagCtrlwill help you pin/unpin a todo item. Pinned items will always be displayed first (they can be deleted as usual)Tabkey against a todo item, you will be shown all todo items with the matching tagEnterwill copy the text content of a todo item to the clipboard
Full keyword list
add(New item '{query}')clear(Clear Todo items - done list)clear(Clear Todo items - everything)clear(Clear Todo items - todo list)done(View completed Todo items)edit(Edit Todo item)export(Export all your items)features(Enable or disable features in Todo)format(Set default format for Todo lists)import(Import Todo items - clipboard)list(Manage Todo lists)reset(Reset Todo)tags(View Todo tags)todo(Manage a todo list using Alfred)
Lists

If you want more control over your todo items apart from tagging, pinning and setting due dates for them, you can split up your todo items with lists.
By default, Todo uses a list called todo, but you can create new lists using the list keyword.
- Typing
listwill display all available lists - Typing
list <name>will select a list titlednameif it exists or allow you to create a new list
At any point in time only one list will be active, and all actions performed by using the todo,add,import,export etc keywords will be working against the currently active list.
In list view, Cmd + Enter will help you to delete a list altogether.
Format
You can set the default format of new todo lists using the format command.
Type format to view and select a specific option.
- Classic YAML is the format Todo started with. Its a plain text format, but not very readable.
- Taskpaper format is inspired by the plain text format used by the Taskpaper app. The nice thing about this format is that the underlying todo list file is readable and editable. And if you use Taskpaper, you can work on these lists from there too.
When you set the default format, all new todo lists created using the list command will use that format.
Advanced Keywords
Todo is made to work out of the box by default, but in case you need more control the following commands may help:
setup {then select a folder in Alfred}. If you want to change the location of your todo items database file, use this option. Useful if you need it to set it up as a folder within Dropbox to sync your todo items between multiple computers having Todo.- Once you define a setup folder, all your existing todo database file will be moved over to the new location, and you can resume working with Todo. You can use the setup command multiple times. The todo database file is a simple text based format, you can open it and view it in your favourite text editor. (The format is YAML)
resetAs the name suggests, resets your Todo workflow (clears all todo items, resets the location of your todo database file to the default location)exportWill allow you to export your todo list as plain text, or specific tags if you use multiple tagsimport (file mode)Use this option and specify a text file to import contents from that. You can import a plain text .txt file with todo items listed one per line, or you can import a .taskpaper file. Some limitations exist for the Taskpaper file import - no support for subprojects, notes, and project names cannot have spaces in them, and are mapped to a Todo tag.import (from clipboard)This option will allow you to import the contents of your clipboard, rather than from a filefeatureskeyword will allow you to switch on various features.formatwill allow you to set the default format of new todo lists.
Features

Quick Create allows you to create new Todo items (when typing it in using the todo keyword) slightly faster. It prevents Alfred from disappearing and appearing when an item is added.
Anchored Search allows you to filter Todo items more quickly. With this option enabled, if you have a task description like This is a long description, you can quickly narrow down to that item by typing tiald
Smart Content - if you would like to add folders, URLs, to Todo, try adding them after Smart Content mode is switched on. It allows the following transformation


Smart Content - Page Titles, when enabled, will pre-fetch the web page title so that you get a better idea what a link will take you to, as in the example above.
This allows you to do multiple things, you can now group your favourite links, folders or files by a tag name. Smart Content works best when you have a hot key enabled to add a new Todo item.
Remember, smart content items are just simple todo items, so you can pin, tag, delete, mark as done etc as normal. Smart content only kicks in for all new items added, so existing items will remain untouched.
EggTimer2 in Edit mode when enabled will allow you to create alarms for todo items in Edit Mode. You must have the EggTimer2 workflow installed.
Syntax Guide
To create or edit todo items, you use the Todo item syntax. A todo item can be simply represented just the task description, or marked up with tags, pin status and a due date.
A full fedged task description would be like:
!!#tagthis is a task@mon
- The
!!is a shortcut that identifies the todo item should be pinned by deafault. #tagspecifies that the todo item should be tagged with the nametag.this is a taskis the text of the todo item@monis the due date specifier
Every section other than the task description is optional. All sections can appear anywhere.
Due dates
The following are supported
@todayitem is due today@tomorrowitem is due tomorrow@weekenditem is due next Sunday@nextweekitem is due next Monday@mon,@tue,…,@sunitem is due next specified week day@xditem is duexdays from today -@6dmeans item is due 6 days from now@xwitem is duexweeks from today@xmitem is duexmonths from today@fuzzy dateitem is due on the date specified.@1 Dec 2013,@Jan 2 2013,@1-13-2013et cetera are recognized
Clearing due dates
In item edit mode, enter @! to clear a set due date.
Credits
Lots of people have contributed with suggestions and feature ideas. In particular, the following folks from the Alfred Forum: