Hi there, something I’ve missed in gruntfuggly.todo-tree from wayou.vscode-todo-highlight is TODO selection in multi-line comment blocks:

It looks like the current default is:
((//|#|)"
~
And here's my version:
"todo-tree.regex.regex": "((//|#|;|\\*)[ ]*($TAGS)[^\\n]*)|(/\\*(\\*?\\s*)*($TAGS)(.|\\n|\\r)*?\\*/)|(<!--\\s*($TAGS)(.|\\n|\\r)*?-->)"
I just slightly modified @tylerbrockett version to allow this kind of TODO, that I use regularly:
/**
* Some comment
* TODO here is a test
*/
And here's my version:
"todo-tree.regex.regex": "((//|#|;|\\*)[ ]*($TAGS)[^\\n]*)|(/\\*(\\*?\\s*)*($TAGS)(.|\\n|\\r)*?\\*/)|(<!--\\s*($TAGS)(.|\\n|\\r)*?-->)"I just slightly modified @tylerbrockett version to allow this kind of TODO, that I use regularly:
/** * Some comment * TODO here is a test */
This is a much simpler regex that does the same thing:
"todo-tree.regex.regex": "(?:(?://|#|<!--|;|/\\*\\*?|\\*)\\s*($TAGS)|^\\s*- \\[ \\])"
Starting with the default regex, I made the capturing groups non-matching (except the one that needs to be), and I added \\*?|\\* to support multi-line JS-style comments. That's it. The default regex doesn't match the entire comment, since all you need to find is the TODO part. I don't see why you'd need to match to the end of the comment.
@bruceauyeung The reason I prefer not to enable multi-line TODOs by default is that they are too many potential formats. The extension searches all files regardless of type, so it really is up to the user to customise the regex to make it work for them. As you've found, the regex can quickly get complicated, so it would be very difficult to try and maintain a default regex that works for everybody.
I've added the regexs above to the wiki page though.