Skip to content

Instantly share code, notes, and snippets.

@tzuntar
Created August 9, 2020 13:30
Show Gist options
  • Save tzuntar/d8164a0f5738bee73129a4a248abe01f to your computer and use it in GitHub Desktop.
Save tzuntar/d8164a0f5738bee73129a4a248abe01f to your computer and use it in GitHub Desktop.
A simple text-based ToDo list format for Notepad++

A simple text-based ToDo list format for Notepad++

This is a language definition for a very simple / rudirimentary to-do list format.

I'm aware that there are dozens of similar formats already; this is just what I use

Usage

  • Download the ToDoList-LangDef.xml file and import it as a custom language definition in Notepad++ (Language menu > User defined > Define your language > Import...)
  • Create a .todo file and make your first to-do list

Format

The format is very simple, it consists of an unsorted list and [labels]. Download and open the todo-format.todo file below. It should end up looking like this: Rendered ToDo list format description

# A simple text-based ToDo list format
- use like a regular unsorted list
- two comment styles:
// C++ style comments - the whole line becomes a comment
/* C style inline/multiline comments */ which can be inserted between text
- mark sections with `#`:
# Some section
- add markdown-like *emphasis* to task descriptions
- use labels to describe task status:
- [TODO] / [_] / [ ] : unfinished tasks
- [DONE] / [x] / [X] : finished tasks
- [FIXME] / [HACK] / [!] : poorly finished tasks
- [PROGRESS] / [=] / [>] : tasks being worked on
- [FAIL] / [CANCEL] / [ABORT] / [ABANDON] / [/] : cancelled/failed tasks
- [MILESTONE] / [MS] / [~] : milestones
- [BACKLOG] / [BACK] / [FWD] / [FORWARD] / [-] : backlogged tasks
- describe task progress using percentages:
- [ ] <0%> Some action
- [>] <50%> Some other action
- [>] <78%> A third action
- [x] <100%> Yet another action
- multiple labels can be used simultaneously:
- [>] [~] <70%> Finish something important
- save as .todo to enable highlighting automatically
- all benefits of it being just plain text files
- easy sharing using cloud storage
- editable without special tools
- VCS support (diffs, merges, etc.)
<NotepadPlus>
<UserLang name="TODO List" ext="todo" udlVersion="2.1">
<Settings>
<Global caseIgnored="no" allowFoldOfComments="no" foldCompact="no" forcePureLC="0" decimalSeparator="0" />
<Prefix Keywords1="no" Keywords2="no" Keywords3="no" Keywords4="no" Keywords5="no" Keywords6="no" Keywords7="no" Keywords8="no" />
</Settings>
<KeywordLists>
<Keywords name="Comments">00// 01 02 03/* 04*/</Keywords>
<Keywords name="Numbers, prefix1"></Keywords>
<Keywords name="Numbers, prefix2"></Keywords>
<Keywords name="Numbers, extras1"></Keywords>
<Keywords name="Numbers, extras2"></Keywords>
<Keywords name="Numbers, suffix1"></Keywords>
<Keywords name="Numbers, suffix2"></Keywords>
<Keywords name="Numbers, range"></Keywords>
<Keywords name="Operators1"></Keywords>
<Keywords name="Operators2"></Keywords>
<Keywords name="Folders in code1, open"></Keywords>
<Keywords name="Folders in code1, middle"></Keywords>
<Keywords name="Folders in code1, close"></Keywords>
<Keywords name="Folders in code2, open"></Keywords>
<Keywords name="Folders in code2, middle"></Keywords>
<Keywords name="Folders in code2, close"></Keywords>
<Keywords name="Folders in comment, open">#</Keywords>
<Keywords name="Folders in comment, middle"></Keywords>
<Keywords name="Folders in comment, close">#</Keywords>
<Keywords name="Keywords1">[DONE]&#x000D;&#x000A;[x]&#x000D;&#x000A;[X]&#x000D;&#x000A;</Keywords>
<Keywords name="Keywords2">[FIXME]&#x000D;&#x000A;[HACK]&#x000D;&#x000A;[!]</Keywords>
<Keywords name="Keywords3">[TODO]&#x000D;&#x000A;[_]&#x000D;&#x000A;[ ]&#x000D;&#x000A;</Keywords>
<Keywords name="Keywords4">[PROGRESS]&#x000D;&#x000A;[=]&#x000D;&#x000A;[&gt;]</Keywords>
<Keywords name="Keywords5">[FAIL]&#x000D;&#x000A;[CANCEL]&#x000D;&#x000A;[ABORT]&#x000D;&#x000A;[ABANDON]&#x000D;&#x000A;[/]</Keywords>
<Keywords name="Keywords6">[MILESTONE]&#x000D;&#x000A;[MS]&#x000D;&#x000A;[~]&#x000D;&#x000A;</Keywords>
<Keywords name="Keywords7">[BKLOG]&#x000D;&#x000A;[BACKLOG]&#x000D;&#x000A;[BACK]&#x000D;&#x000A;[FWD]&#x000D;&#x000A;[FORWARD]&#x000D;&#x000A;[-]&#x000D;&#x000A;&#x000D;&#x000A;</Keywords>
<Keywords name="Keywords8"></Keywords>
<Keywords name="Delimiters">00* 01 02* 03 04 05 06&lt; 07 08&gt; 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23</Keywords>
</KeywordLists>
<Styles>
<WordsStyle name="DEFAULT" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
<WordsStyle name="COMMENTS" fgColor="424242" bgColor="FFFFFF" fontName="" fontStyle="2" nesting="0" />
<WordsStyle name="LINE COMMENTS" fgColor="424242" bgColor="FFFFFF" fontName="" fontStyle="2" nesting="0" />
<WordsStyle name="NUMBERS" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
<WordsStyle name="KEYWORDS1" fgColor="0000FF" bgColor="FFFFFF" fontName="" fontStyle="1" nesting="0" />
<WordsStyle name="KEYWORDS2" fgColor="FF8040" bgColor="FFFFFF" fontName="" fontStyle="1" nesting="0" />
<WordsStyle name="KEYWORDS3" fgColor="008040" bgColor="FFFFFF" fontName="" fontStyle="1" nesting="0" />
<WordsStyle name="KEYWORDS4" fgColor="DF7000" bgColor="FFFFFF" fontName="" fontStyle="3" nesting="0" />
<WordsStyle name="KEYWORDS5" fgColor="FF0000" bgColor="FFFFFF" fontName="" fontStyle="1" nesting="0" />
<WordsStyle name="KEYWORDS6" fgColor="FF00FF" bgColor="FFFFFF" fontName="" fontStyle="1" nesting="0" />
<WordsStyle name="KEYWORDS7" fgColor="00AEAE" bgColor="FFFFFF" fontName="" fontStyle="1" nesting="0" />
<WordsStyle name="KEYWORDS8" fgColor="00F03D" bgColor="FFFFFF" fontName="" fontStyle="3" nesting="0" />
<WordsStyle name="OPERATORS" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="1" nesting="0" />
<WordsStyle name="FOLDER IN CODE1" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
<WordsStyle name="FOLDER IN CODE2" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
<WordsStyle name="FOLDER IN COMMENT" fgColor="00F03D" bgColor="FFFFFF" fontName="" fontStyle="3" nesting="0" />
<WordsStyle name="DELIMITERS1" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="3" nesting="0" />
<WordsStyle name="DELIMITERS2" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
<WordsStyle name="DELIMITERS3" fgColor="0000FF" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
<WordsStyle name="DELIMITERS4" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
<WordsStyle name="DELIMITERS5" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
<WordsStyle name="DELIMITERS6" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
<WordsStyle name="DELIMITERS7" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
<WordsStyle name="DELIMITERS8" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />
</Styles>
</UserLang>
</NotepadPlus>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment