JetBrains Rider provides an easy way to track tasks and technical debt in your code — code items (comments, string literals, or identifiers) matching a specific pattern can be easily located in the editor as well as in the whole solution using the TODO window.
TODO items are highlighted in the editor and on the error stripe according to their types (Edit, Normal, Question, Warning, Error). Colors are configurable on the page or Rider settings Control+Alt+S.
By default, JetBrains Rider provides three predefined patterns for commonly used TODO items of the following types:
A comment containing
A comment containing
NotImplementedExceptionin the code - Edit
You can also define your own patterns, so that you could quickly access your specific technical debt items in the TODO window.
Define a custom TODO pattern
Open thepage of JetBrains Rider settings Control+Alt+S.
Click Add on the toolbar.
Specify a regular expression with keywords that you want to detect in comments. For example,
Optionally, specify whether the pattern is case sensitive.
Select an icon for the pattern to define how matched items will be colored in the editor and in the TODO window.
Click OK to add this pattern to the list.
You can also edit or remove existing patterns.
Click Save in the Settings dialog to apply the modifications and let JetBrains Rider choose where to save them, or save the modifications to a specific settings layer using the Save To list. For more information, refer to layer-based settings.
Navigate between TODO items
To navigate between TODO items in the current file, use TODO marks on the error stripe.
Study TODO items in the whole solution
Press Alt+6 or choosein the main menu.
In the TODO window that opens, click or to navigate to the next or previous item.
To locate TODO items in the editor, double-click them , press F4 or choose Jump to Source in the context menu .
Optionally, you can turn on Navigate with Single Click so that items are located in the editor as soon as they get focus in the tool window.
To study the source code of the selected item right in the window, click Preview Source on the toolbar.
Group and filter TODO items
Depending on the size and age of the codebase, there may be lots of TODO items. To focus on specific items, you can filter TODO items by scope or by custom filters.
Initial filtering is available with the tabs of the TODO window:
You can use the Current File tab to see just the TODO items in the file active in the editor.
The Default Changelist tab becomes available when you enable VCS integration for the current solution; this tab will list TODO items from files with uncommitted local changes.
In the Scope Based tab, we can use the Scope selector to pick places where Rider should search for TODO items. You can also click ... to create your own scope.
Further filtering is available with custom filters, which let you create groups of TODO patterns that you are interested in.
You can create custom filters either on the Edit Filters.page of JetBrains Rider settings Control+Alt+S or by clicking on the filter icon in the TODO window and choosing
TODO window controls
Tooltip and shortcut
Previous TODO Control+Alt+ArrowUp
Select the previous TODO item in the list.
Next TODO Control+Alt+ArrowDown
Select the next TODO item in the list.
Filter TODO Items
Select a filter or open the TODO dialog where you can edit the list of TODO patterns and filters as necessary.
Navigate with Single Click
When this toggle is selected, you can click items to open items in the editor. Otherwise, you can locate items in the editor by double-clicking them or pressing F4.
Expand All Control+NumPad-+
Click this button to expand all nodes.
Collapse All Control+NumPad--
Click this button to collapse all nodes.
Group by Project
Use this toggle to group TODO items by containing projects. Not available for the Current File tab.
Show a preview pane with the source code of the selected item in the corresponding file.
Jump to Source F4
Jump to the location of the relevant comment in the source code. Available only when you right-click a TODO item or a file.
Show the Local History submenu: