I’ve not been coy about my appreciation for Visual Studio or how it performs as an IDE for WordPress, but there are always things here and there I think are worth sharing either for the sake of making it a better experience or for improving our workflows.

Case in point:

How many of us work on codebases large enough that we’re writing comments, code, or other features that yield us dropping TODOs or FIXMEs throughout the code so we can focus on the task at hand?

I think our intentions are good. I mean, we do plan to come back to these, but if they aren’t documented in some way, it’s far too easy to come back and do then.

And sure, you can always do a “find all” at the end of a sprint or before the end of a project of whenever works best for you, but there are extensions that can do this for you.

Visual Studio Code TODOs, REVIEWs, and You

To some degree, I think we’ve all been there:

  • We’re working on a task, and we realize that it requires a bit more work than we anticipated, so we drop in a TODO with a comment about how we need to come back and clean it up,
  • Or perhaps we find a bug when working on another piece of code and though it works in the main case, it doesn’t handle edge cases very well, so we drop in a FIXME with the intent to come back and, you know, fix it.

And then we go about our business and rarely forget to come back to these notes. But there is an extension (well, actually, a few) that aim to fix that.

Visual Studio Code TODOs, REVIEWs, and FIXMEs

After trying three different extensions for this, I’ve found that TODO Highlight is the most feature complete an easiest one with which to work when trying to handle TODOs throughout a codebase.

It handles:

  • Allows you to edit the configuration in settings.json
  • Works with the command palette
  • Displays the information for each file, the path, the line number, and so on.

Granted, some may not encounter this problem. But for the rest of us, I’ve found this extension to be the best as it relates to finding all of the various keywords, having the most versatile support, and having the most customizable options.