Visual Studio Code extension for highlighting TODO, HACK, FIXME, etc. comments.
Install from Visual Studio Marketplace
- Very minimal and fast.
- Useful defaults to cover most use cases.
- Supports Bash, CSS, Elixir, Erlang, HTML, JavaScript, LaTeX, Lua, Markdown, Perl, PHP, Python, R, Ruby, SQL, TypeScript, and any other language with C-style comments (
//or/* */). - Doesn’t add distracting highlights to the scrollbar.
- Supports light and dark modes out of the box, and doesn’t come with insanely bright colors by default.
By default the extension highlights the most popular comment tags:
- Warning comments, bold and darker color:
BODGE:,BUG:,HACK:,KLUDGE:,UGLY:,XXX:,@bodge,@bug,@hack,@kludge,@ugly, and@xxx. - Informational comments, just bold:
DEBUG:,FIX:,FIXME:,NOTE:,TODO:,UNDONE:,@debug,@fix,@fixme,@note,@todo, and@undone.
You can override the these keywords and their styles.
You can change the following options in the Visual Studio Code setting:
| Description | Setting | Default |
|---|---|---|
| Groups of patterns to highlight | todoTomorrow.patterns |
See below |
Matches are case-sensitive, and only two forms of each keyword are matched: @pizza or PIZZA. However, the case of keywords in the config file is ignored.
See all supported decoration options.
Here’s how a config file would look like with default options:
{
"todoTomorrow.patterns": [
{
"keywords": ["debug", "fixme", "fix", "note", "todo", "undone"],
"fontWeight": "bold"
},
{
"keywords": ["bodge", "bug", "hack", "kludge", "ugly", "xxx"],
"fontWeight": "bold",
"light": {
"color": "#4c4b4e"
},
"dark": {
"color": "#dcd5c0"
}
}
]
}Most existing extensions for highlighting TODO and FIXME comments. (for example, this or this) have very bright colors by default; they also show the comments on the scrollbar. This makes them very distracting. TODO and FIXME comments don’t need to be resolved immediately, and in many cases, they can stay in the codebase for a long time. They are more like tips and warnings for the code reader. I usually write lots of TODO comments when I write code, and I don’t want them to distract me — most I will resolve before sending code to review.
The same way we highlight important information in text using bold and italic, we can highlight comments using bold for TODO comments (I consider them informational) and bold with slightly darker text color for HACK and FIXME comments (I consider them warnings). There’s no need to make them scream at you with an obnoxiously bright pink background.
That’s exactly what Todo Tomorrow does out of the box.
The changelog can be found on the Changelog.md file.
Check out my other Visual Studio Code extensions:
- Just Blame: Git Blame annotations, inspired by JetBrains editors
- Emoji Console Log: insert
console.log()statements with a random emoji - Mini Markdown: minimalist kit for comfortable Markdown writing
- New File Now: create new files from the command palette
- Notebox: take quick notes in the bottom panel
- Reveal in Ghostty: reveal current project or folder in Ghostty
- Reveal in Nimble Commander: reveal current project or folder in Nimble Commander
- Squirrelsong Light Theme: low contrast non-distracting light theme for web developers
- Squirrelsong Dark Theme: low contrast non-distracting dark theme for web developers
This software has been developed with lots of coffee, buy me one more cup to keep it going.
Bug fixes are welcome, but not new features. Please take a moment to review the contributing guidelines.
Artem Sapegin, and contributors.
MIT License, see the included License.md file.



