If yes, how ?
If not, is there a workaround to get similar functionality ?
EDIT:
What I mean is something like this :
// TODO line1
// line2
// line3
and line1, line2, line3 belong to the same TODO
and get highlighted with blue.
If yes, how ?
If not, is there a workaround to get similar functionality ?
EDIT:
What I mean is something like this :
// TODO line1
// line2
// line3
and line1, line2, line3 belong to the same TODO
and get highlighted with blue.
This is supported since 2018.3.
Multiline TODO comments
IntelliJ IDEA 2018.3 now supports multiline TODO comments, now the first and all subsequent TODO comment lines are highlighted in the editor and listed in the TODO Tool Window. Simply add an indent starting from the second line of your multiline TODO comment, and the IDE will differentiate it from an ordinary comment.
No, not for now.
This feature has been discussed, but not yet implemented.
EDIT/UPDATE:
It is implemented in 2018.3 version.
In my settings I'm using such a regex for multiline TODO:
\/(\/|\*)[ ]*\btodo\b(.|\n)*(\*\/|)
The only problem is that it doesn't highlight last */ symbols of multiline comment. If anyone can solve that, it would be great!
You can use FIXME and TODO using tabs as follows
//FIXME: first line
//<tab> second line
//<tab> third line
For more information please refer to the documentation
Do you mean this? using-todo-lists
/**
* todo multi-line
*
*/
Building on NonGrate's answer:
Go to settings, search for TODO settings, and replace the existing todo entry "\btodo\b.*" with:
(\btodo\b.*)|(\/\*(\*(?!\/)|[^*])*\btodo\b(\*(?!\/)|[^*])*\*\/)
Result:
You must use */ to close the highlight.
It uses 2 patterns:
Any other combinations may not work.
Note: You have to replace the existing regex to avoid having multiple instances of the same todo item appearing in the todo list.
This regex works for me:
(?:(?:todo|TODO)(?:\[[A-Z,a-z]+\-\d+\])?\s(\s*\b.*\b)*)|(?:\/\*\s*(?:todo|TODO)(?:\[[A-Z,a-z]+\-\d+\])?\s(?:(?!\*\/)[\s\S])*\*\/)
It basically looks for the following:
Single-line examples:
todo some very important stuff
TODO[SAOY-1376] An urgent bug fix described in the SAOY-1376
// todo some very important stuff
// TODO[SAOY-1376] An urgent bug fix described in the SAOY-1376
Multi-line examples:
/* todo assignee or something
a very important message
another thing
*/
/* TODO[SAO-13]
* a very important message
* another thing
*/