Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>Yet Another TODO HighlighterNew to Visual Studio Code? Get it now.
Yet Another TODO Highlighter

Yet Another TODO Highlighter

element30

|
1 install
| (0) | Free
Highlight and list TODO, FIXME, HACK, and other keywords in your code
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Yet Another TODO Highlighter (YATH)

Highlight and list TODO, FIXME, HACK, and other keywords in your code.

Features

  • In-editor highlighting — configurable foreground and background colors per keyword
  • Sidebar panel — activity bar panel listing all TODOs organized by keyword type
  • Click-to-navigate — jump from any sidebar item to its exact source location
  • Hierarchical config — .todo-highlighter.json files merge from outer to inner directories, with inner values taking precedence and keywords deep-merged
  • Include/exclude patterns — control which files are scanned with glob patterns
  • Theme-aware UI — sidebar adapts to your VS Code color theme

Configuration

Create a .todo-highlighter.json file in your project root (or any parent directory):

{
  "keywords": {
    "TODO": { "foreground": "#ffff00", "background": "#ffff0022" },
    "FIXME": { "foreground": "#ff1493", "background": "#ff149322" },
    "HACK": { "foreground": "#ff8c00", "background": "#ff8c0022" }
  },
  "includePattern": "**/*.{ts,js,svelte,py,go,rs}",
  "excludePattern": "**/node_modules/**",
  "debounceDelay": 200
}

Config fields

Field Type Required Description
keywords Record<string, { foreground, background }> yes Keywords to highlight with their colors
includePattern string yes Glob pattern for files to scan
excludePattern string no Glob pattern for files to exclude
debounceDelay number no Milliseconds to debounce decoration updates (default: 200)

Config merging

Config files are searched from the current file's directory up to the filesystem root. When multiple .todo-highlighter.json files are found:

  • Scalar fields (includePattern, excludePattern, debounceDelay) from inner configs override outer ones
  • keywords objects are deep-merged — inner keyword entries override outer ones with the same name, and unique keywords from both levels are preserved

Requirements

VS Code 1.106.0 or later.

License

MIT

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft